我试图随机选择2个邻居,就像我们有从“邻居”命令中选择8个邻居的设施一样,选择我们使用neighbors4
命令的4个邻居但是如果我们想要随机选择2个邻居怎么办?来自8个邻居。
我想做这样的事情:
ask n-of 2 patches from neighbors with [pcolor = white]
[set pcolor blue]
但是,因为没有from
命令,所以我不知道它是如何工作的。
答案 0 :(得分:4)
你非常接近!你想要的是:
n-of 2 neighbors with [pcolor = white]
但如果可能少于两个白色的邻居怎么办?在这种情况下,我建议使用at-most-n-of
reporter defined in this answer。
答案 1 :(得分:3)
你基本上已经解决了这个问题:
neighbors
(或者在您的情况下为neighbors with [condition]
)返回n-of
期望的代理集,因此您只需要
[
ask n-of 2 neighbors with [pcolor = white] [ set pcolor blue ]
]