0

如何在 BehaviorSpace 中使用品种自己或海龟自己的变量。当我尝试它时,出现“全局变量不存在”的错误。

我不能将这些变量用作全局变量,因为每个品种/海龟在每次运行期间都需要拥有自己唯一的变量值。

4

1 回答 1

0

您不能在 BehaviorSpace 中使用breeds-own或变量。turtles-own

当您想为每个单独的人设置一个潜在的唯一值时,您通常使用breeds-ownor变量。如果这您想要的,那么尝试通过 BehaviorSpace 进行设置是行不通的。(尽管如果您更详细地解释您的需求,我们可能会建议一种解决方法。)turtles-own

如果您只是想要整个品种的独特价值,那么这很容易。您可以为每个品种创建不同的全局变量(通常带有滑块小部件或数字输入框)。假设您有以下品种:

breed [ frogs frog ]
breed [ mice mouse ]

然后,您可以拥有一个名为的滑块mice-var和另一个名为的滑块frogs-var,并在您需要在代码中访问该值时引用它们。例如:

to setup
  clear-all
  create-frogs 10 [
    set label frogs-var
  ]
  create-mice 10 [
    set label mice-var
  ]
end

在 BehaviorSpace 中,您可以更改两个全局变量:

["frogs-var" 1 2 3]
["mice-var" "A" "B" "C"]

然后你会运行一次,所有的青蛙都被标记1,老鼠被标记A,另一个运行是1and B,然后是1and C2依此A类推...

于 2014-08-12T14:56:04.590 回答