1

我想为每只海龟分配一个随机布尔变量,但我没有看到一个可以模拟伯努利分布的平局的函数。

这很接近,但很尴尬:

ifelse random-in-range 0 1 < .5 [set expensive? false]
[ set expensive? true ]

有人知道更好的方法吗?

4

1 回答 1

5

几个选项:

  • one-of [ true false ]

  • random 2 = 1

  • random-float 1 < 0.5- 如果您需要修改概率,以获得您想要的任何伯努利分布

如果我在模型中处理很多概率性的东西,我喜欢添加

to-report probability [ p ]
  report random-float 1 < p
end

作为一个简单的速记。

另外,请注意,ifelse您的代码中是多余的。你可以做,set expensive? one-of [ true false ]或者选择你喜欢的方法。

于 2015-03-06T03:06:46.857 回答