我是一个NetLogo新手。我正试图限制在一个圆圈中产生的海龟数量,以便海龟不会相互叠加。到目前为止,我已经尝试了以下的方法 这个问题在这里有一个所有补丁的列表,每个补丁都会有海龟产卵,但对于我的圈子来说,海龟还是太多了。出于好奇,我试着只在以下情况下产卵 turtle number mod PRIME NUMBER
是 0
但并不是只有两只海龟产卵,还有更多! 而在我的情况下,补丁本身并不重要,因为我的模型不是真正的空间。我的模型不是真正的空间模型。resize-world
和 set-patch-size
是为了保持大小一致,因为如果没有它们,可视化就会变得很小,而且我还不知道如何重新设置。
这是我最小的工作示例。
breed [people person]
to setup
clear-all
make-people
end
to make-people
resize-world 0 30 0 30
set-patch-size 20
ask patches
[
ask people
[
set shape "circle"
]
sprout-people (1)
layout-circle people 15
]
end
这是它产生的结果
我怎样才能让海龟的间距变大,而不是挤在一起?
你的基本问题是,每个补丁都在创建一个人(sprout
),然后将其放入圆圈中。有三个不同的命令用于创建海龟代理。sprout
是一个补丁创建乌龟的地方,通常用来控制新乌龟的位置。由于空间对你没有意义,更好的方法是使用 create
命令,并简单地指定你想要的数量,增加或减少数量,直到间距满足你的需求。试着这样做,改变50,直到你得到你想要的东西。
to make-people
create-people 50
[ set shape "circle"
]
layout-circle people 15
end
对于世界的大小--你可以进入界面,使用设置下拉框来设置你想要的尺寸。