如何在 Monte Carlo 实验中获取每个模拟 运行 的种子值?

How to get the seed value for each simulation run in a Monte Carlo experiment?

我是 运行 Monte Carlo 使用 'random seed' 选项进行多次迭代实验以进行独特的模拟运行。似乎是,在其中一些运行中发生了奇怪的事情,输出数据表明了这一点。

我想收集每个 Monte Carlo 运行的种子值,以便在实验后使用 'fixed seed' 选项手动重现奇怪的运行。由于我没有找到 'getSeedValue' 函数 - 我该怎么做?

我已经尝试过建议的解决方案: 但是出现空指针异常。

seed value options

Error of copied solution from link

我会说,如果不能 100% 确定您无法获得随机种子,您需要使用您可以控制的种子,使用您自己的随机性...通常您可以在自定义随机中使用类似这样的东西发电机

new Random(getCurrentIteration()*100000+getCurrentReplication())

然后如果你得到一个错误,你可以知道这个错误发生在哪个迭代和哪个复制中,并且你可以在你的模拟实验中使用相同的种子。

因此,如果它发生在第 143 次迭代和第 5 次复制中,那么您将在主模拟实验的随机生成器中放入以下内容>

new Random(143*100000+5)