If statement 如何以最低价值份额要求特定份额的海龟?

If statement 如何以最低价值份额要求特定份额的海龟?,if-statement,netlogo,min,percentage,agent-based-modeling,If Statement,Netlogo,Min,Percentage,Agent Based Modeling,我在一个行业(世界)中设立了公司(海龟),这些公司要么在国内生产(在国内的公司位于>ycor),要么将其生产离岸化(离岸公司位于

我在一个行业(世界)中设立了公司(海龟),这些公司要么在国内生产(在国内的公司位于>ycor),要么将其生产离岸化(离岸公司位于 现在,我希望有30%的公司自动化水平最低,将生产转移到<0 ycor,并报告:离岸?=真的

breed [ firms firm ]

firms-own [
 firm-level-of-automation   ;; initially random between 0 and 1
 offshored?   ;; true or false
]

to go
tick
ask firms [
 set firm-level-of-automation 0 + random-float 1

 if min [ firm-level-of-automation ] of firms [
   count firms * 0.3 firms [ setxy random-xcor random-between ( -10 ) -1   ;; distribute randomly abroad in an area < 0 ycor
   set offshored? true ] ] ]
end
品种[公司]
公司拥有[
公司自动化水平;;最初在0和1之间随机
离岸?;对还是错
]
外带
打上钩
询问公司[
设置固定自动化水平0+随机浮动1
如果企业的最低[企业自动化水平][
统计公司*0.3家公司[setxy random xcor random(-10)-1;;在小于0 ycor的区域内随机分布
设置离岸?为真]]]
结束

我不知道如何在这里最好地混合使用
if
min
命令。有什么建议吗?

不知道你为什么会被否决,这似乎是一个明智的问题。无论如何,没有必要混合
min
如果
,你可以简单地
要求
值较低的30%海龟做你想做的事。在字典中查找
min-n-of
原语,您将需要如下内容:

ask min-n-of (0.3 * count firms) firms [firm-level-of-automation]
[ setxy random-xcor random-between ( -10 ) -1 
  set offshored? true
]

谢谢你的回复。你的建议奏效了,非常感谢!