You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在NetLogo中所有斑块被着色时让海龟停止运行?

需求:NetLogo实现海龟完成斑块覆盖后停止并记录tick数

需要实现的功能:当海龟把所有红色斑块都改成蓝色后,停在最后一个被着色的斑块处,同时记录运行所用的tick数。

现有代码

修改方案

核心思路是跟踪剩余未着色的红色斑块数量,当数量归0时停止海龟行动。具体修改步骤如下:

  1. 添加全局变量跟踪剩余红色斑块
    在代码最顶部添加全局变量,用来记录还未被改成蓝色的红色斑块数:
  1. 初始化剩余斑块数
    修改setup过程,在最后加入计算初始红色斑块数量的代码:
  1. 更新剩余斑块数并添加停止判断
    修改search过程,每次把红色斑块改成蓝色时同步减少剩余斑块数,且提前判断是否已完成所有着色:
  1. 控制go循环停止
    修改go过程,当剩余红色斑块为0时,不再执行海龟行动和tick计数:

修改完成后,当最后一个红色斑块被改成蓝色时,remaining-red-patches会变为0,海龟在下一次执行search时会直接停止,go循环也会终止,此时界面显示的ticks数值就是整个过程所用的时间。

内容的提问来源于stack exchange,提问作者echakee

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 02:33:25