如何让每 10 ticks 只让一定比例的海龟死亡?
How to let only a certain percentage of turtles die every 10 ticks?
在这里尝试了所有有点适用的解决方案都无济于事之后,我仍然想看看是否有人可以帮助我。
我有一种乌龟(性工作者)按布尔变量 [trust?] 划分,并希望使两种类型之一的特定 percentage/certain 数量(不太重要)退出模型 [ die] 每 10 个滴答数。
我尝试了以下但失败了:
试图让一半退出,但是:杀死全部或大部分,而不是一半。 :
ask n-of (count sexworkers / 2) sexworkers [ die ]
这个有效但杀死了太多。如果在任何给定的补丁上有超过 2 名性工作者,则除一名外,其他人都会死亡。我可以将它设置为百分比吗?
ask patches with [count sexworkers-here >= 2]
[ ask one-of sexworkers-here [ ask other sexworkers-here[die]]
]
这也会在每 10 个刻度上杀死所有的东西,对我来说太多了
ask sexworkers with [trust?][ if ticks - birth-tick > 10 [die] ]
;所有信任的性工作者在超过 10 个 ticks 时都会死亡
应该杀死一定比例但由于布尔值 属性 而不是基于数字的
而缺少报告变量
ask min-n-of (0.5 * count sexworkers with [trust?]) sexworkers with [trust?] [XXXXXXREPORTERXXXX]
[die]
您的第一个密码是正确的。在新模型中试试看:
to testme
clear-all
create-turtles 150 [set color red setxy random-xcor random-ycor]
print count turtles
ask n-of (count turtles / 2) turtles [ die ]
print count turtles
end
您将问题描述为代码被杀死的次数过多。我怀疑你多次调用它。例如,试试这个版本:
turtles-own [trust?]
to testme
clear-all
create-turtles 150
[ set color red
setxy random-xcor random-ycor
set trust? random-float 1 < 0.1
]
print count turtles
print count turtles with [trust?]
ask turtles with [trust?]
[ ask n-of (count turtles / 2) turtles [ die ]
print count turtles
]
end
它指定 10% 的海龟具有 TRUE 信任?然后要求每只海龟杀死一半还活着的海龟。你做过这样的事吗?
在这里尝试了所有有点适用的解决方案都无济于事之后,我仍然想看看是否有人可以帮助我。
我有一种乌龟(性工作者)按布尔变量 [trust?] 划分,并希望使两种类型之一的特定 percentage/certain 数量(不太重要)退出模型 [ die] 每 10 个滴答数。
我尝试了以下但失败了:
试图让一半退出,但是:杀死全部或大部分,而不是一半。 :
ask n-of (count sexworkers / 2) sexworkers [ die ]
这个有效但杀死了太多。如果在任何给定的补丁上有超过 2 名性工作者,则除一名外,其他人都会死亡。我可以将它设置为百分比吗?
ask patches with [count sexworkers-here >= 2]
[ ask one-of sexworkers-here [ ask other sexworkers-here[die]]
]
这也会在每 10 个刻度上杀死所有的东西,对我来说太多了
ask sexworkers with [trust?][ if ticks - birth-tick > 10 [die] ]
;所有信任的性工作者在超过 10 个 ticks 时都会死亡
应该杀死一定比例但由于布尔值 属性 而不是基于数字的
而缺少报告变量ask min-n-of (0.5 * count sexworkers with [trust?]) sexworkers with [trust?] [XXXXXXREPORTERXXXX]
[die]
您的第一个密码是正确的。在新模型中试试看:
to testme
clear-all
create-turtles 150 [set color red setxy random-xcor random-ycor]
print count turtles
ask n-of (count turtles / 2) turtles [ die ]
print count turtles
end
您将问题描述为代码被杀死的次数过多。我怀疑你多次调用它。例如,试试这个版本:
turtles-own [trust?]
to testme
clear-all
create-turtles 150
[ set color red
setxy random-xcor random-ycor
set trust? random-float 1 < 0.1
]
print count turtles
print count turtles with [trust?]
ask turtles with [trust?]
[ ask n-of (count turtles / 2) turtles [ die ]
print count turtles
]
end
它指定 10% 的海龟具有 TRUE 信任?然后要求每只海龟杀死一半还活着的海龟。你做过这样的事吗?