如何检查变量是否具有所有代理的相同值?

时间:2014-08-27 17:15:17

标签: netlogo

我确信这是一个新手问题,但我仍然习惯了NetLogo所以请原谅我。

我正在使用我为品种创建的变​​量作为标志。如果所有品种的变量值都相同,我认为我的旗帜开启了,我采取了一定的行动。如何检查变量在NetLogo中对所有代理/品种的值是否相同?

例如:

breeds-own [ flagvariable ]

如何检查所有品种flagvariable = 1

谢谢。

1 个答案:

答案 0 :(得分:1)

而不是让flagvariable成为品种自己的变量,它应该是海龟自己的变量,因为它是所有海龟共有的。然后,您可以使用all?检查所有海龟是否将其设置为特定值:

all? turtles [ flagvariable = 1]

或者,如果您不关心价值是什么,可以使用remove-duplicates确保它们都具有相同的价值:

length remove-duplicates [ flagvariable ] of turtles = 1

在此,我们会计算当前有多少flagvariable个不同的值。如果它恰好是1,那么我们就知道所有的海龟都有相同的价值。