gpt4 book ai didi

NetLogo 实验设置

转载 作者:行者123 更新时间:2023-12-03 16:18:28 24 4
gpt4 key购买 nike

我正在使用 Netlogo 中的模型,但在理解如何设置“实验”时遇到了问题。在我的模型中,我有一个矩阵,其中包含我感兴趣的所有值(总共 6 个),并且只要满足条件(每次 X 海龟被杀死),矩阵就会更新,基本上捕获快照那个时候的模型。矩阵中的先前值被清除,因此矩阵是 1x6,而不是 10000x6 矩阵,每个快照仅更新一行。

我想做的是设置一个实验来运行我的模型数百次,每次为前 X 个快照收集这个矩阵,或者直到发生 Y 个刻度。但是我在实验设置中看不到这样做的方法?

这可能吗,还是我必须创建 100x6(100 个快照)然后以某种方式将该矩阵导出到 CSV?

我从来没有在 Netlogo 中进行过实验,所以这可能非常容易做到,或者完全不可能。

最佳答案

如果我正确理解您的问题,那么您希望在运行期间以特定滴答声报告 6 个值。这些刻度是通过满足条件而不是特定数量的刻度来选择的。 NetLogo 有一个名为 BehaviorSpace 的实验管理工具。设置数百次运行很简单( slider 上的任何输入可能具有不同的值等)。仅在某些刻度上输出并不是那么简单。

BehaviorSpace 对话框在每个刻度或仅在末尾都有一个复选标记。如果您将其设置为每个刻度,那么您可以在每个刻度上自动导出您的六个数字。在您的情况下,这样做可能比尝试偶尔输出更容易。您可以添加第七个报告器,该报告器是真/假,以确定矩阵是否正在重置。然后,您在后处理中所要做的就是选择第七个报告者为真的行。

如果要为恰好 N 个快照运行模型,则还需要设置一个全局变量,该变量在每个快照点递增。然后,您的 BehaviorSpace 设置将使用该计数器作为停止条件。

关于NetLogo 实验设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60538386/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com