Netlogo - 使用行为空间动态更改每个实验的运行时间

问题描述 投票:0回答:1

我从行为空间多次运行模型。每次根据从外部数据源导入的数据(例如,在典型的一天中生产的最后一次转换的结束时间),运行时间长度需要不同。如何在行为空间中这样做?

netlogo
1个回答
1
投票

您可以使用BehaviorSpace实验中的停止条件手动限制运行的长度。您需要一个全局来跟踪要运行的刻度数,然后您需要在模型的设置部分填充它:

globals [ ticks-to-run ]

to setup
  reset-ticks
  set ticks-to-run random 150 ; replace `random 150` by the data you load from your external source
end

to go 
  tick
end

这假设您在Setup命令中运行setup,在Go命令中运行go。然后在你的停止状态下添加ticks > ticks-to-run,一旦它超过你的ticks-to-run,你的模型就会停止。另外,在这种情况下,请确保您的时间限制为0,因为任何值都会在您的自定义ticks-to-run限制之前停止模型运行。

© www.soinside.com 2019 - 2024. All rights reserved.