【发布时间】:2021-06-08 15:15:09
【问题描述】:
我有一个 300x300 的世界,每个单元格为 10m。我使用 sprout 命令为每个补丁生成 1 个海龟。每个海龟执行一系列程序,将结果写入补丁并死亡。但是在死亡时,使用“die”命令时会同时死亡 1 只海龟。有什么办法可以一次性杀死所有创建的海龟?
提前致谢
【问题讨论】:
-
谢谢,但是当我使用: to proc1 ask turtles [ set ene (ene - euse) ask my-home [ set energy-of-my-agent [ ene ] of my-agent ] if outputData ? = true [ outputData-1 ] ;die ] clear-turtles end 出现:你不能在海龟上下文中使用 proc1,因为 proc1 是仅观察者。
-
您应该将代码添加到问题中。
clear-turtles在观察者上下文中运行,这意味着它使您的proc1也在观察者上下文中运行,但是您是从ask块内的某个位置调用它,这会将其置于海龟上下文中。您必须从海龟上下文外部调用它或将clear-turtles移动到代码中的其他位置(我无法建议,因为我看不到它)。
标签: netlogo