Netlogo:有计划地移动海龟并可视化它们的路径

Netlogo: move turtles in a planned way and visualize their paths

我在硕士论文中的一个关键主题上需要一些帮助。

想象一下 2 种乌龟,乌龟车和乌龟房。 所以乌龟车被放置在世界的特定区域,乌龟屋被随机放置。

主要objective龟车走遍所有房屋return到起始位置

案例研究示例: 2车5房

假设我定义了以下路径向量: 路线:[0 2 3 1 4, 5 5 6 5 6]

第一部分随机放置要访问的房屋,然后是相应的汽车将进行访问,即汽车 5 访问房屋 0 2 和 1,汽车 6 访问房屋 3 和 4。

我使用每只海龟的 ID,具体取决于使用的海龟总数。 也就是说,使用给定的路线矢量,可以自动查看我的汽车以访问它们各自的所有房屋(按照它们插入矢量的顺序,如上所述)。

我的问题是,知道了vector route,如何让小车选择去哪里return到起点。

如果有人能帮助我,我将不胜感激。

这里是一些代码,用于获取输入路线向量并为每辆车创建路线。车房配对取自。这是解释最清楚的形式,如果你能从那个答案构造filter版本,那就更优雅了。

globals [ route-vector ]
breed [cars car]
cars-own [ route ]

to setup
  clear-all
  set route-vector [ 5 10 15 20 25 0 1 2 0 1 ]
  create-turtles 3 [ setxy random-xcor random-ycor ]
  make-routes
  reset-ticks
end

to make-routes
  let houses sublist route-vector 0 (length route-vector / 2 )
  let carlist sublist route-vector (length route-vector / 2 ) (length route-vector)
  ask cars [ set route [] ]
  (foreach carlist houses
    [ [the-car the-house] ->
      ask cars with [who = the-car] [ set route lput the-house route ]
    ]
  )
end

请问一个关于使用路线变量实际沿路径移动的单独问题。但是请尝试自己动手,这样您就可以展示您的代码并描述需要修复的地方。