0

我正在基于 Rebellion 模型在 NetLogo 中运行模拟,其中一些代理变得活跃,但可以被其他代理停用。

我的问题是,如何保持活跃代理的最高价值?当所有代理都被停用时,模拟结束。我在模拟过程中计算了活跃代理的数量:

使用 [active?] 计数代理,

但我想不通,如何保存这个数字的最高值。我知道,我可以在每一步测量跑步,但由于重复次数,我宁愿只保存这个最大次数。

问候,马切克。

4

1 回答 1

0

您可以将迄今为止遇到的最大值保存在全局变量中,并在达到新的最大值时更新它:

globals [
  max-active-agents
]

to setup
  set max-active-agents 0
end

to go
  let nb-active-agents agents with [ active? ]
  if nb-active-agents > max-active-agents [ 
    set max-active-agents nb-active-agents
  ]
end
于 2012-04-18T18:39:59.663 回答