Netlogo 被要求前往特定区域的海龟都聚集在一个地方

Netlogo 被要求前往特定区域的海龟都聚集在一个地方,netlogo,agent,agent-based-modeling,Netlogo,Agent,Agent Based Modeling,我正在写一个捕食者-猎物模型,其中捕食者有一个小型的内部机器学习模型来决定它将在哪个栖息地捕猎 如果捕食者在前一天没有成功捕猎,他们会随机选择四种策略中的一种。每种策略都有一个独特的栖息地,它们可以在其中狩猎。然而,尽管它们都从环境的随机区域移动到一个中心位置,然后用钢笔模式向下“绘制”,而忽略环境的所有其他部分,我不明白为什么 我尝试了许多代码组合来解决这个问题,它总是做同样的事情。我的最新尝试如下 if strat = "strat1" [ifelse any? patches i

我正在写一个捕食者-猎物模型,其中捕食者有一个小型的内部机器学习模型来决定它将在哪个栖息地捕猎

如果捕食者在前一天没有成功捕猎,他们会随机选择四种策略中的一种。每种策略都有一个独特的栖息地,它们可以在其中狩猎。然而,尽管它们都从环境的随机区域移动到一个中心位置,然后用钢笔模式向下“绘制”,而忽略环境的所有其他部分,我不明白为什么

我尝试了许多代码组合来解决这个问题,它总是做同样的事情。我的最新尝试如下


    if strat = "strat1" [ifelse any? patches in-cone 0 250 with [habitat = "rugged slope"]
      [set target-patch min-one-of patches in-cone 0 250 with [habitat = "rugged slope"] [distance myself]
 face target-patch
  fd 1]
      [face one-of patches with [habitat = "rugged slope"]
        fd 1]]

    if strat = "strat2" [ifelse any? patches in-cone 0 250 with [habitat = "gentle slope"]
      [set target-patch min-one-of patches in-cone 0 250 with [habitat = "gentle slope"] [distance myself]
 face target-patch
  fd 1]
      [face one-of patches with [habitat = "gentle slope"]
        fd 1]]

    if strat = "strat3" [ifelse any? patches in-cone 0 250 with [habitat = "rugged forest"]
      [set target-patch min-one-of patches in-cone 0 250 with [habitat = "rugged forest"] [distance myself]
 face target-patch
  fd 1]
      [face one-of patches with [habitat = "rugged forest"]
        fd 1]]

        if strat = "strat4" [ifelse any? patches in-cone 0 250 with [habitat = "gentle forest"]
      [set target-patch min-one-of patches in-cone 0 250 with [habitat = "gentle forest"] [distance myself]
 face target-patch
  fd 1]
      [face one-of patches with [habitat = "gentle forest"]
        fd 1]]

  ]
end
正如你所见,他们被告知前往某些地区,但结果如下(附图片)


捕食者离开巢穴(粉色),尽管有独特的命令去哪里,它们只是在中间相遇和画画。 我认为我们可能需要更多地查看您的代码,以了解这些区域是如何分布的。但问题可能是圆锥体0 250中的
补丁将只查看捕食者当前所在的补丁(半径为0)。因此,如果(比如)捕食者位于
habitat=“sleet slope”
的斑块上,那么目标斑块就是捕食者所在的斑块。如果栖息地不是“缓坡”,这可能是最有可能的,那么即使附近有一个特定的缓坡栖息地,其路径也会毫无目的。

斑块颜色是否表示栖息地类型?嗨,是的!因此,根据查尔斯的回答,如果他们看不到很远,那么他们将面临正确类型的随机补丁。如果它们靠近边缘,则任何类型的大多数面片都将远离边缘,因此它们被绘制到中心。一旦它们处于中心位置,栖息地就会向各个方向移动,它们基本上是沿着随机方向移动,直到它们移动得太远,而大部分又在它们后面,所以它们会向内移动。如果你关闭“世界包装”,我猜它们会随机移动到任何地方。如果是这样,这就是你的问题。