我正在Matlab中编写一个代码,用于计算几个总体结果,如总投资和总生产率。为了表明所获得的结果不是随机种子的问题,我需要运行蒙特卡罗模拟。我知道如何在Matlab中修复种子,但我不知道如何运行蒙特卡罗,例如M = 200,这样我就可以轻松地在我感兴趣的结果中引用随机种子的值?
答案 0 :(得分:0)
要运行蒙特卡罗模拟,您可以在以后需要时再现,您只需要在每次迭代开始时捕获随机数生成器的状态:
for mcIteration = 1:200
rngSeed(mcIteration) = rng;
%# your code here
end
使用rng(rngSeed(i))
,您可以将生成器还原到要重现的任何种子。