当只有少数补丁更新值时,使用补丁变量或创建新代理(哪一个更好?)

时间:2013-11-05 02:52:49

标签: performance patch agent netlogo

我必须为不同的乡村地图设置运行一些代码,现在我的网格是20 * 20补丁,但我也将拥有高达60 * 60的网格大小,所有补丁现在都有2个变量存储和食物级别,只有10个补丁将使用他们的食物级变量,我可以继续使用相同的设置,或者我可以创建10个其他海龟(例如树)并为它们分配食物级别并删除补丁的食物级别,您认为是哪种方式更好?

1 个答案:

答案 0 :(得分:1)

这两种方法似乎都明显优于我,只考虑到您所说的信息。仅补丁方法似乎有点简单,所以我想我现在仍然坚持这一点,但保持在你的脑海中切换的想法,以防你后来发现一旦你的模型更精细那里切换到目前尚不明显的海龟会有好处。

请注意,如果您需要经常patches with [food-level > 0],则需要花费时间扫描所有补丁以找到带有食物的补丁。如果结果证明你的模型存在性能问题,那么使用海龟就可以解决它。但是食物上的十个补丁总是相同的,那么你可以在设置过程中运行patches with [food-level > 0]一次,并将得到的补丁集存储在一个全局变量中,这也可以解决性能问题。