编程获得正态分布的随机数
问题:给一个可以生成一致分布(Uniform Distribution)的随机数发生器,例如C标准库stdlib提供的rand(). 如何获得满足正态分布(Gaussian Distribution)的随机数。
Box-Muller方法:
假设 U, V 是在 (0, 1] 之间一致分布的相互独立的随机数,用它们生成两个相互独立的正态分布的随机数X, Y
X = sqrt(-2ln(U)) * cos(2 * pi * V)
Y = sqrt(-2ln(U)) * sin(2 * pi * V)