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

NetLogo无人机模型优化:解决堆叠及异常位移问题

无人机堆叠与强制位移问题修复方案

核心问题

  • 无人机(暂命名为people)出现堆叠在同一白色斑块的情况
  • 修改代码后虽能避免堆叠,但已停留在空闲斑块的无人机被强制移动,无法稳定停留

问题根源

  1. 原目标选择逻辑是瞬时判断:多个无人机可能同时选中同一个“当前无人”的斑块,后续移动后造成堆叠。
  2. 更新后的代码在接近目标时才检查冲突,此时无人机已临近目标,切换目标会导致已停留的无人机被强制位移——只要附近有其他无人机就触发重新选目标,忽略了自身已稳定停留的状态。

修复方案

1. 新增斑块占用标记,避免目标冲突

给斑块添加is-occupied?属性,标记是否被无人机占用,从根源上避免多无人机选中同一斑块。

2. 优化停留逻辑,禁止强制位移

仅在未到达目标且目标已被占用时切换目标;已稳定停留的无人机,只要满足电量条件,就保持不动,不触发目标切换。

修改后的完整代码

关键修改说明

  • 斑块新增is-occupied?属性,实现目标斑块的排他性选择,从根源避免堆叠。
  • 无人机到达白色斑块时标记占用,离开(返回充电)时取消标记,确保斑块状态实时更新。
  • 仅在未到达目标且目标已被占用时触发目标切换,已稳定停留的无人机不会被强制移动。
  • 充电完成后选择目标时,仅筛选未被标记为占用的白色斑块。

额外建议

  • 后续可将people重命名为drones,提升代码语义清晰度。
  • 可根据需求调整energy-level和stay-at-patch中的电量阈值,匹配实际任务场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 01:28:23