我试图修改以前的Netlogo Predator-Prey model以符合我的目的。我遇到的麻烦是我想控制掠夺者在遭遇遭遇猎物时杀死猎物的概率,我不确定如何去做。我知道我需要一个接口侧的滑块而且我有这个(' kill-probability')但是将它一起放入代码是另一回事。
以下是我尝试改编的模型部分:
to catch-sheep ;; wolf procedure
let prey one-of sheep-here ;; grab a random sheep
if prey != nobody ;; did we get one? if so,
[ ask prey [ die ] ;; kill it
set energy energy + wolf-gain-from-food ] ;; get energy from eating
end
任何和所有帮助将不胜感激。
答案 0 :(得分:0)
这里的逻辑是在区间[0,1]中得到一个随机数(如果以百分比形式考虑,则在[0,100]中),如果随机数小于滑块值,则执行操作。滑块控制概率。因此,使用滑块名称' kill-probability'并假设它从0到1运行,修改你的代码如下:
to catch-sheep
let prey one-of sheep-here
if prey != nobody and random-float 1 < kill-probability ; this is the line I changed
[ ask prey [ die ]
set energy energy + wolf-gain-from-food ]
end
如果您的滑块是百分比,请改用random 100 < kill-probability