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

1 次查看(过去 30 天)
I would like to generate the same set of unique random numbers within PARFOR in order to reproduce my simulation.

回答(1 个)

Sanchali Purandare
Sanchali Purandare 2011-1-16
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.

类别

Help CenterFile Exchange 中查找有关 Parallel for-Loops (parfor) 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by