行为空间设置,去和之间的东西

时间:2016-01-21 14:57:10

标签: netlogo

我有一个创建网络的模型,并在setup中选择种子节点,然后在go中运行传染过程。对于多次运行,我想避免重新生成网络。如果我创建了两个程序full-setuppart-setup,是否有办法让BehaviorSpace第一次full-setuppart-setup进行所有其他运行?

我正在考虑ifelse behaviorspace-run-number上的 myGraphics.beginLinearGradientFill(["#000","#FFF"], [0, 1], 0, 20, 0, 120).drawRect(20, 20, 120, 120); ,但我不认为我可以保证1号跑是第一个击中处理器的。

2 个答案:

答案 0 :(得分:0)

如果将同步运行设置为1将确保1是第一个命中处理器。

另一种仍然使用同步运行的方法是手动运行一次,使用nw扩展名(或者只是export-world和import-world)保存你的集合,并为剩余的运行加载它。

答案 1 :(得分:0)

如下设置命令如何:

ifelse count turtles = 0
  [ setup-full ]
  [ setup-partial ]
如果需要,

用适合您模型的条件替换count turtles = 0

我永远不会记住从BehaviorSpace运行中重用世界状态的确切语义,当它运行或不运行时。无论如何,这是一个值得怀疑的功能,可能会在未来的NetLogo版本中消失;见https://github.com/NetLogo/NetLogo/issues/105