NetLogo:从两种海龟中随机选择一只

NetLogo: selecting random one turtle from two kinds

在NetLogo中,假设AAA和BBB是海龟的名字。

one-of AAA in-radius 1

会在半径1以内的AAA中挑选一只乌龟。同理,

one-of BBB in-radius 1 

会在 BBB 中选择半径 1 内的一只乌龟。

我想从 AAA 和 BBB 组中随机挑选一只乌龟。例如,如果有 3 个 AAA 和 2 个 BBB 满足条件。我想从 5 只乌龟中随机挑选一只乌龟。我该怎么做?

如果您只想 select 特定品种的海龟,您可以使用 "with" 原语来检查实际的海龟是否是其中一个品种的成员:

one-of turtles in-radius 1 with [member? self aaa = true or member? self bbb = true]

如果你有大量的品种,那么创建一个统一的代理集是有意义的,其中包含你想要包括的品种的所有海龟:

let as_and_bs (turtle-set aaa bbb)
...
one-of as_and_bs in-radius 1