1

我想在 (- infinity , infinity ) 上生成一些伪随机数,标准差s和均值m的高斯分布。关于如何做到这一点的任何建议?我将不胜感激在正确方向上的任何帮助,因为那里似乎有大量文献来说明如何最好地生成伪随机数。

4

1 回答 1

1

您可以使用统一随机数生成器和适当的算法生成高斯分布(也称为正态分布)购买。查看 [stackoverflow 链接到高斯算法][1]

你真的想从 +/- 无穷大开始吗?那有意义吗?

一个简单的算法是 Box-Muller 方法。

正常区 随机数 = SQRT(-2*LN(RAND()))*SIN(2*PI()*RAND())

如果使用完美的均匀随机数生成器和无限精度来实现,Box-Muller 方法在数学上是精确的。(哎呀……在那个公式中,mu/mean = 0 和 sigma = 1 并且随机 # 介于 0 和 1 之间)参见http://mathworld.wolfram.com/Box-MullerTransformation.html

于 2013-08-02T04:13:39.927 回答