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

问题描述 投票:0回答:1

我在一个行业(世界)建立了公司(海龟),这些行业要么在国内生产(在家中的公司位置> ycor),要么将其生产外包(离岸公司位于<ycor)。我给他们一个公司 - 自己叫做离岸外包?无论是真还是假都回答了。在设置时,他们还获得了公司自己的公司级自动化,其在0和1之间是随机的。

现在,我希望其中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

我不知道如何在这里最好地混合ifmin命令。有什么建议?

if-statement netlogo min percentage agent-based-modeling
1个回答
1
投票

不知道你为什么要为此投票,这似乎是一个明智的问题。无论如何,没有必要混合minif,你可以简单地ask 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
]
© www.soinside.com 2019 - 2024. All rights reserved.