How do I reproduce the same set of unique random numbers within PARFOR in Parallel Computing Toolbox 5.0 (R2010b) ?

I would like to generate the same set of unique random numbers within PARFOR in order to reproduce my simulation.

Answers (1)

This could be done in the following manner:
seeds = randi(2^31-1,1,10, 'int32')
parfor ii=1:10
rdstm = RandStream.create('mrg32k3a');
reset(rdstm, seeds(ii));
x(ii,:) = rdstm.randn(1,1);
end
In the code above, each loop iteration will create a new random stream and will initialize it to some random seed that comes from the outside. So this way as long as you start from the same set of seeds, you can reproduce the simulation. Also,each loop iteration will create its own random number independent of each other loop iteration.

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Asked:

on 16 Jan 2011

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!