首页 > 解决方案 > NetLogo:关于如何监控分配给所有海龟的各种标志的状态?

问题描述

我应该怎么做才能监控分配给所有海龟的各种标志的状态?作为一种可能性,我们可以考虑使用行为空间吗?但这并不顺利。有知道的人可以吗?

标签: netlogomonitorbehaviorspace

解决方案


如果您想使用 BehaviorSpace 记录单个海龟变量的值,请查看以下答案:

https://stackoverflow.com/a/52406247/487946

但是如果您只想在模型运行时在 NetLogo 中监控这些值,您可以使用输出小部件。

这是一些示例代码:

turtles-own [ flag1? flag2? ]

to setup
  clear-all
  create-turtles 10 [
    set flag1? one-of [ true false ]
    set flag2? one-of [ true false ]
  ]
  update-output
end

to go
  ; flip a couple of random flags
  ask one-of turtles [ set flag1? not flag1? ]
  ask one-of turtles [ set flag2? not flag2? ]
  update-output
end

to update-output
  clear-output
  foreach sort turtles [ t ->
    ask t [ output-show (list flag1? flag2?) ]
  ]
end

它会给你带来什么样的结果:

样本输出

当然,您可以像格式化输出一样花哨。你会有点闪烁,但它确实有效。

请注意,也可以使用动态创建的临时绘图笔绘制单个海龟的值。有关类似内容的示例,请参见其他答案:

https://stackoverflow.com/a/41600187/487946


推荐阅读