Random 在netlogo中绘制一个随机的beta分布

Random 在netlogo中绘制一个随机的beta分布,random,netlogo,Random,Netlogo,我试图生成一个品种拥有的变量,它从Netlogo中的随机beta分布中提取它的值 我在网上找到了“bc”代码示例,但我正在努力使其适应我的需要。现在,为了方便起见,我使用 create-breed 500 [ set target_factor random-normal 0.9 0.05 if target_factor > 1 [set target_factor 0.9999999999] if target_Factor < 0.5 [set target_fa

我试图生成一个品种拥有的变量,它从Netlogo中的随机beta分布中提取它的值

我在网上找到了“bc”代码示例,但我正在努力使其适应我的需要。现在,为了方便起见,我使用

create-breed 500
 [
  set target_factor random-normal 0.9 0.05
  if target_factor > 1 [set target_factor 0.9999999999]
  if target_Factor < 0.5 [set target_factor 0.5000000001]
 ]
这里所有的“集合”变量都是全局因素

老实说,从数学上讲,我对这件事一无所知。如果有人能帮我修复这个记者(或者如果一个程序也能工作,那也没关系)。因此,我创建品种的最终代码是:

create-breed 500
 [
  set target_factor random-beta
  if target_factor > 1 [set target_factor 0.9999999999]
  if target_Factor < 0.5 [set target_factor 0.5000000001]
 ]
创建500个品种
[
设置目标系数随机β
如果目标系数>1[设置目标系数0.9999999]
如果目标_系数<0.5[设定目标_系数0.5000000001]
]

有人问我这个问题,因为显然rngs扩展已经有一段时间没有更新了,我想我也应该在这里发布。下面是使用内置gamma分布生成器绘制beta的代码

to-report random-beta [ #alpha #beta ]
  let XX random-gamma #alpha 1
  let YY random-gamma #beta 1
  report XX / (XX + YY)
end
to-report random-beta [ #alpha #beta ]
  let XX random-gamma #alpha 1
  let YY random-gamma #beta 1
  report XX / (XX + YY)
end