NetLogo:正态分布

时间:2014-08-08 16:59:11

标签: netlogo

我有变量"承诺"管理滑块,但我希望海龟接受它,以便通过正态分布分发信息。

to uncouple
if coupled?
 [ if (couple-length > commitment ) or
     ([couple-length] of partner) > ([commitment] of partner)
    [ set coupled? false
      set couple-length 0
      ]
 end 

1 个答案:

答案 0 :(得分:1)

很难解释您的问题,但可能您不希望正常分发。我想你可能会接受以下内容,其中p-breakup是一个长寿命夫妻在调用这个过程时分手的概率。

to-report expired?  ;; turtle proc
  report 
    coupled? and (
          (couple-length > commitment )
          or 
          ([couple-length] of partner > [commitment] of partner)
              )
end

to uncouple  ;; turtle proc
  if expired? [
    set coupled? (random-float 1 < p-breakup)
    if not coupled? [
      set couple-length 0
      ask partner [set couple-length 0]
    ]
  ] 
end

我从你的问题中假设commitment是适用于所有夫妻的全球常数。 (如果没有,您的规范中似乎存在冗余。)我还会注意到有更好的方法来处理随机分解。 (具体来说,确定夫妇组建时的终止日期,并保留一个时间表,以便每个蜱只需要与时间长的夫妇一起工作。)