ボックスミュラーのアルゴリズム
仕事で、乱数生成が必要になったので、アルゴリズムだけ備忘録を残します。
pythonであれば、numpyを使うのですが、業務によってはライブラリを使わない場合もあります。
参考にしたのは、下記の文献です。
- 作者: 東京大学教養学部統計学教室
- 出版社/メーカー: 東京大学出版会
- 発売日: 1992/08
- メディア: 単行本
- 購入: 26人 クリック: 308回
- この商品を含むブログ (21件) を見る
このシリーズは3冊あるようで、3冊とも購入しました。
最近の書籍には珍しく?数式だったり証明が記述されており、
中身は充実してると思います。初版から20年以上たっていますが、
いまだに売れているということからも、この本の評価がわかると思います。
(もしかしたら、大学の教科書として使われていることが多いのかもしれませんが)
ちなみに、「人文・社会科学の統計学」については、経済学における統計学の使われ方も多少記述されており、
「ほうほう」と思わせてくれるものもありました。
- 作者: 東京大学教養学部統計学教室
- 出版社/メーカー: 東京大学出版会
- 発売日: 1994/07
- メディア: 単行本
- 購入: 4人 クリック: 32回
- この商品を含むブログ (14件) を見る
以下、アルゴリズムです。
プログラムを書く場合は、一様乱数を呼び出せば、どの言語でもいけると思います。
一様乱数U1、U2から
により得られるX_1とX_2は互いに独立に標準正規分布N(0,1)に従う。
ちなみには自然対数である。
一般の正規分布に従うZの場合は、
上記のXに対して、下記の線形変換で求める。