Netlogo:获取分配给特定代理的链接

时间:2017-02-19 11:06:41

标签: netlogo

我有两个代理商,中心个人

个人拥有自己的名为 value 的变量。链接有自己的变量,称为强度

我想编写一种方法,允许集线器选择具有最高的个人,并且已经与集线器建立了链接,以加强链接,增加链接的变量强度

但是,最大强度可以达到的是一个名为max_strength的全局变量。如果强度量接近此上限。我想选择下一个最佳人选。

我想问一下如何执行此操作?

非常感谢!

1 个答案:

答案 0 :(得分:0)

有多种方法可以解决这个问题。我跟着:

ask hubs [
  let candidates my-links with [ strength < max-strength ]
  if any? candidates [
    ask max-one-of candidates [ [ value ] of other-end ] [
      set strength strength + 1 ; or whatever you want to increase it by
      if strength > max-strength [ set strength max-strength ]
    ]
  ]
]

是否需要if strength > max-strength [ set strength max-strength ]取决于max-strength是否是力量增加的精确倍数。您也可以使用set strength min (list (strength + 1) max-strength)来实现同样的目标。