【问题标题】:Selecting values from bounded normal distribution in NetLogo从 NetLogo 中的有界正态分布中选择值
【发布时间】:2014-01-16 10:45:22
【问题描述】:

我正在尝试让 Ne​​tLogo 按照 stackoverflow 中上一个问题中的建议从有界随机正态分布中提取值

NetLogo : How to make sure a variable stays in a defined range?

具体来说,我要求模型根据经验数据创建一个大小不同的圆形主范围

set homerange patches in-radius ((sqrt (( random-normal-in-bounds [ 54.4 35.8 19 151 ] * 1000000)/ pi))/ 100)

to-report random-normal-in-bounds [mid dev mmin mmax]
  let result random-normal mid dev
  if result < mmin or result > mmax
    [ report random-normal-in-bounds mid dev mmin mmax ]
  report result
end

但是,我不断收到随机正常范围内预期 4 个输入的错误。我确定这是我在做的傻事,但对我来说它看起来像 4 个输入(54.4、35.8、19、151)。关于我做错了什么有什么建议吗?提前致谢!

【问题讨论】:

标签: netlogo


【解决方案1】:

我认为您的错误是由 [] 引起的,您不需要这些括号。

更新:

to test
clear-all
let homerange  nobody
let radius sqrt (( random-normal-in-bounds  54.4 35.8 19 151  * 1000000)/ pi) / 100 
crt 1 [
set homerange  patches in-radius radius
]
ask homerange  [set pcolor violet]
end
to-report random-normal-in-bounds [mid dev mmin mmax]
  let result random-normal mid dev
  if result < mmin or result > mmax
    [ report random-normal-in-bounds mid dev mmin mmax ]
  report result
end

【讨论】:

  • 谢谢 Marzy。我试过了,但我仍然得到错误。真的很奇怪。
  • 这是我的错!问题在于调用函数 random-normal-in-bounds 54.4 35.8 19 151
  • random-normal-in-bounds 54.4 35.8 19 151 中的 [] 导致了错误
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-05-18
  • 1970-01-01
  • 2015-08-28
  • 1970-01-01
  • 2019-04-27
  • 1970-01-01
相关资源
最近更新 更多