Netlogo:Netlogo 可以只为一个特定的补丁设置无限数量的海龟吗?

Netlogo: Can Netlogo set up an infinite number of turtles for only one specific patch?

Netlogo 可以只为一个特定的补丁设置无限数量的海龟吗?补丁是道路设置。这个 link 是那个特定补丁的图像。 https://i.stack.imgur.com/DdBF0.jpg 下面是示例代码。然而这还没有完成。

turtles-at 0 0 of patch min-pxcor 0 ; this is not compleated

不太确定你问的是什么,但是一个补丁上的海龟数量没有限制(保存计算机内存施加的限制)。

此外,您可能正在寻找的代码类似于:

turtles-on patch 0 0

用于左侧补丁和

turtles-on patch 1 0

正确的补丁。

根据 Bryan 的回答,虽然您的 计算机 会有一个限制 - 模型中的海龟数量越多(在任何补丁上)你的模型将使用更多的内存。所以简短的回答是,据我所知,没有办法只对 Netlogo 说 "Spawn infinite turtles on this patch."

但是,如果通过无限,您真的只想要足够多的海龟,您不会 运行 从它们中进行特定的交互,您可能可以通过在该补丁上生成大量海龟或通过根据需要发芽更多(我的偏好)。

对于第一个选项,您可以在同一个补丁上放置一堆海龟:

to setup
  ca
  reset-ticks
  ask patch 0 0 [
    sprout 10000
  ]
  ask patch 0 0 [
    print count turtles-here
  ]
end

或者,如果您在补丁上的海龟用完了或以某种方式变得不可用,只需根据需要增加更多的发芽,以保持您的数量足够多以完成您正在尝试做的事情。这是一个示例,其中红海龟走到有 "infinite" (1000) 只蓝海龟的斑块,link 走到其中一只蓝海龟,然后把它们带走。然而,在每个 tick 结束时,"infinite" 补丁检查是否少于 1000 turtles-here。如果有,它会生成足够多的海龟,使计数恢复到 1000。在新文件中尝试此代码:

to setup
  ca
  reset-ticks
  infinite-sprout
  source-sprout

end

to go

  ask turtles with [ color = red ] [
    fd 0.5
    if any? ( turtles-on patch-ahead 1 ) with [ color = blue ] [
      create-link-with one-of turtles-on patch-ahead 1 [
        tie
      ]        
      set color green        
    ]
  ]
  ask turtles with [color = green] [
    move-to patch-right-and-ahead 90 1
    if pycor = max-pycor [
      ask link-neighbors [ 
        die
      ]
      die
    ]
  ]

  infinite-sprout
  source-sprout
  tick

end


to source-sprout
  ask patch max-pxcor 0 [
    if not any? turtles-here and random 3 = 1 [
      sprout 1 [
        set shape "arrow"
        set color red
        set heading 270
      ]
    ]
  ]
end

to infinite-sprout
  ask patch 0 0 [
    if count turtles-here < 1000 [
      sprout ( 1000 - count turtles-here) [
        set shape "circle"
        set color blue
      ]
    ]
  ]
end

然后像这样设置你的界面:

如果你 运行 那个模型一段时间,你会看到在每个 tick 结束时,补丁 0 0 的 count turtles 恢复到 1000,有效地给你一个海龟的无限来源 "use up." 这是否满足您的需求?