I think that Dynare should be deterministic-returning the same results of the same runs in the same environment, computer and software versions. This makes it easier to reproduce results, debug code and analyzing issues such as this one. If we are doing something crazy with the initialization of the chains, it is more obvious in a deterministic setup than in a random one.
In R2012a, I have warning that we are calling randn('state') when state is not set. I think that corresponds to what Marco is seeing in R2009a. When I touched that part of the code the last time, I forgot that we need to replace these instances of randn('state') with our own function that manages the different version of Matlab.
I will look into it
Best
Michel
On 08/29/2012 09:44 AM, Stéphane Adjemian wrote:
Hi Marco,
This is obviously a bug. If we have to set seeds in the metropolis (I am still not convinced by that but Michel is) we should have a seed specific to each chain.
Best, Stéphane.
On 29/08/2012 09:38, Marco Ratto wrote:
Dear All,
I am doing some work with metropolis and I noted that the seeds for parallel chains are initialized at the same status, so that the chains only differ by the first point, but the random sequences are the same: this implies that sequences for each parameter from different chains are correlated (just compare the values from different blocks stored in files _mhxx_blck1.mat _mhxx_blck2.mat). I am wandering if this is on purpose or this behavior is not desirable.
best Marco
Dev mailing list Dev@dynare.org https://www.dynare.org/cgi-bin/mailman/listinfo/dev