正規分布の近似(1)

よく正規分布にしたがう乱数を生成したいときがある。
これにはBox-Muller transformというものがあって、
これで正しく乱数が得られて、
仕事でもこれを使っている。


http://ja.wikipedia.org/wiki/%E4%B9%B1%E6%95%B0%E5%88%97


しかし、世の中に正確に正規分布に従う現象などほとんどない。
それなりに正確でより簡単に乱数を得る方法はないだろうか。

一様乱数×10

サイコロを何回か振れば正規分布に近くなる、
という話をよく聞く。
ここではサイコロでなくて一様乱数を10回生成して足し合わせる。
標準正規分布(平均0、分散1)を得るには、
これに用いる一様乱数は、
平均0、分散1/N(N=10とおいた)でなければならない。
[-a, a)の一様乱数とすると、

 \sigma^2 = \int_{-a}^{a}x^2\frac{dx}{2a} = \frac{1}{N}

これより、

 a = \sqrt{\frac{3}{N}}

となる。
この一様乱数をN回たす作業を1億回繰り返し、
標準正規分布と比較した。



けっこう、差があるな。