首页 > 解决方案 > 如何询问代表股票 x% 的海龟死亡?

问题描述

我是 Netlogo 的新手,我的 CAS 如下:我有 100 只海龟,海龟有两个变量高度和宽度,从高度我可以计算库存。我知道如何让 x% 的海龟随机死亡,让海龟有确定的价值更小或更大的死亡;或删除 30% 的库存。

但我的情况有点不同,我想从海龟身上移除 15% 的海龟高度值最小,换句话说,我想问海龟高度值最小的海龟死去,这样死海龟的数量代表 15% 的库存,无论数量多少。

任何提示或帮助?我尝试执行以下操作,但我知道这不起作用:

turtles-own [ sh sto  ]
Globals [Stock death_severity]
to setup
  ca
  crt  100 [
    initialize_ITGM
    set sto   1.5 * sh + random 50
    setxy random-xcor random-ycor
  ]
  reset-ticks
end
to go
  cal-stock
  remove-turtles
end
to cal-Stock
  set stock sum [sto] of turtles
end

to remove-turtles
if death_severity = "light_severity" [
  ask turtles with-min [sh] [die]
  set stock 0.20 * (Stock)]
end

to initialize_ITGM
  set sh  random-float 2   
end

标签: netlogodie

解决方案


https://ccl.northwestern.edu/netlogo/docs/dictionary.html#min-n-of

ask min-n-of (0.15 * count turtles) turtles [sh] [die]

推荐阅读