我有一个模拟,其中代理围绕物理网格交换与主题相关的主题。我进行了一项研究,并希望完美地复制它,但只有一个修改 - 稍微调整一下“转移”参数,以便想法以较慢的速度交换。
为了尝试获得完美的复制,我使用了导出/导入世界程序。当我使用导入的世界从刻度0重新运行模拟并且没有更改任何参数时,模型是相同的。我得到相同的输出,代理移动并具有相同的交互,一切都是相同的。大
但是,当我使用相同的导入世界从零刻度重新运行模拟,但稍微调整一个参数(transfer_rate)时,代理会以不同的方式在物理空间中移动,遇到与原始模拟不同的代理,最终我得到不同的结果。
也许通过调整一个参数,伪随机数以某种方式改变了?除了这一个transfer_rate参数调整之外,有没有人知道有什么方法可以完全控制和保持一切?也许有一个简单的解决方案。
感谢大家的时间。
答案 0 :(得分:2)
两种可能性可能有所帮助。您可以尝试with-local-randomness
来隔离受transfer_rate更改影响的随机进程。或者,一个模拟无论如何都没有真正告诉你任何事情,所以你可以远离试图完全匹配动力学,只需运行多个模拟,然后比较两组模拟。