NetLogo 中的 path-where 命令
path-here comand in NetLogo
我有基本的 NetLogo 命令问题。
我想要一组移动代理(海龟)访问一个补丁变量(称为veg)并根据它们加载糖的能力(大小)收集一定量的(糖)。我正在尝试使用patch-here命令,但是在NetLogo字典中没有patch-here如何使用的例子,我也不知道如何向海龟们请教一个问题,请教他们是否收集了根据您的尺寸从该补丁中获取足够的糖。有人对如何操作或在哪里可以找到此信息有任何建议吗?
ask turtles [
patch-here veg > 0.6
set sugar (sugar - metabolism)
]
因为你问的是海龟,所以不能直接访问patch变量,需要先访问patch,才能访问patch里面的变量。
ask bees
[ ask patch-here
[ if veg > 0.6
[ set sugar (sugar - metabolism) ]
]
]
或者你可以使用of命令简化代码,并使用这里的补丁作为你要检查的补丁的位置。
ask bees
[ if [veg] of patch-here > 0.6
[ set sugar (sugar - metabolism) ]]
要使用 patch-here
,您需要将代码修改为:
ask turtles
[ if [veg] of patch-here > 0.6
[ set sugar (sugar - metabolism)
]
]
然而,每只乌龟都位于一个补丁中 - 即使用于显示乌龟的图片很大并且跨越许多补丁,乌龟本身也被认为位于一个点,在一个补丁中。 NetLogo 巧妙地使用了坐标系统——因为乌龟只能在一个地方,如果你使用一个补丁变量名,它会假设你想要乌龟所在的补丁。
因此您可以将其简化为:
ask turtles
[ if veg > 0.6
[ set sugar (sugar - metabolism)
]
]
请注意,我在删除 of patch-here
时删除了 [ ]。
但您可以进一步简化为:
ask turtles with [veg > 0.6]
[ set sugar (sugar - metabolism)
]
所以如果你是用patch-here
获取海龟所在的patch的变量值,那么直接使用变量即可。 patch-here
的典型用途是查找同一块上的其他海龟。
我有基本的 NetLogo 命令问题。
我想要一组移动代理(海龟)访问一个补丁变量(称为veg)并根据它们加载糖的能力(大小)收集一定量的(糖)。我正在尝试使用patch-here命令,但是在NetLogo字典中没有patch-here如何使用的例子,我也不知道如何向海龟们请教一个问题,请教他们是否收集了根据您的尺寸从该补丁中获取足够的糖。有人对如何操作或在哪里可以找到此信息有任何建议吗?
ask turtles [
patch-here veg > 0.6
set sugar (sugar - metabolism)
]
因为你问的是海龟,所以不能直接访问patch变量,需要先访问patch,才能访问patch里面的变量。
ask bees
[ ask patch-here
[ if veg > 0.6
[ set sugar (sugar - metabolism) ]
]
]
或者你可以使用of命令简化代码,并使用这里的补丁作为你要检查的补丁的位置。
ask bees
[ if [veg] of patch-here > 0.6
[ set sugar (sugar - metabolism) ]]
要使用 patch-here
,您需要将代码修改为:
ask turtles
[ if [veg] of patch-here > 0.6
[ set sugar (sugar - metabolism)
]
]
然而,每只乌龟都位于一个补丁中 - 即使用于显示乌龟的图片很大并且跨越许多补丁,乌龟本身也被认为位于一个点,在一个补丁中。 NetLogo 巧妙地使用了坐标系统——因为乌龟只能在一个地方,如果你使用一个补丁变量名,它会假设你想要乌龟所在的补丁。
因此您可以将其简化为:
ask turtles
[ if veg > 0.6
[ set sugar (sugar - metabolism)
]
]
请注意,我在删除 of patch-here
时删除了 [ ]。
但您可以进一步简化为:
ask turtles with [veg > 0.6]
[ set sugar (sugar - metabolism)
]
所以如果你是用patch-here
获取海龟所在的patch的变量值,那么直接使用变量即可。 patch-here
的典型用途是查找同一块上的其他海龟。