我需要在每个刻度上随机选择一只乌龟,并测试其品种以运行某些命令。完成的步骤:
选择了一只乌龟,并调出了动作块:ask one-of turtles [action]
在操作块中,检查所选的乌龟是否在breed1
或breed2
中;然后,根据乌龟的品种,应用两个公式之一(请参见下面的代码)。
if (breed = breed1)
[
set q random-float 1
set c q
set potential_1 (1 + d) * (1 - c)^(d)
]
if (breed = breed2)
[
set c random-float 1
set potential_2 (1 + (1 / d))*(1 - c)^(1 / d)
]
end
[当我使用ask one-of breeds1
和ask one-of breeds2
时,potential_1
和potential_2
的两个图均正确显示了预期的值。但是通过这种方式,我不会在每个刻度上选择两只,而是一只乌龟,一只用于品种1,另一只用于品种2。我不想要这个。相反,如果我使用ask one-of turtles
(如上所示),则发生的情况是该图显示了一些“离群值”。当我使用ask one-of turtles
和to action
时,请查看下面的图像(由于更改了参数值,第二和第三幅图像的趋势有所不同):
[也许还有另一种方法来选择一只乌龟并根据乌龟的品种运行action
中的命令之一。你有什么主意吗?如何解决“异常值”问题?