モンテカルロ法による円周率の計算

 モンテカルロ法とは確率には直接関係ない問題を確率も用いて解くという方法です。
正方形の中に適当に点を打つとき、その点が正方形の一辺を直径とする円の円内にある確率は

円内にあった点の数÷打った全数

となります。また、でたらめに点を打つので次のようなことも言えます。

正方形の一辺を直径とする円の面積÷正方形の面積
正方形の一辺の長さをLとすると上の式は次のようになります。

((L÷2)×(L÷2)×π)÷(L×L)
=(L×L×π÷4)÷(L×L)
=π÷4
となります。

理論的には点を打つ数を増やせば増やすほど円周率に近づくはずですが、
コンピューターが乱数を余り正確に発生することができないので実際はそんなに良い値はでません。
もちろん同じ数の点を打っても円周率の値は変わります。

右の図は,一辺が2の正方形の中に1000個の点をランダムに(でたらめに)コンピューターで打ってみたものです。半径1の円内の点は*で,円外のものは*で表したものです。
ちなみに*が768個あるので確率的には78.6%が円内にあったことになります。面積4の78.6%なので,円の面積は約3.144となります。
よって,半径1の円の面積が分かったのでこの場合これよりπ=3.144となるのです。
このようにして円周率を求める方法をモンテカルロ法(Monte Carlo methods)というのです。下の枠の中に数字を入れると同じような原理により円周率を求めます。大きい数字を入れれば入れるほど理論上は実際の値に近い値が出てきます。絵は出ませんが...
ちなみに,モンテカルロという言葉,ギャンブル場で有名なモナコの町名にちなんでつけられたそうである。モンテカルロ法とはこれだけではなく乱数(ランダムに選ばれた数)を使って物理や数学の問題を解く方法のことで,ビュッフォンの針もその一種である。

個点を打ってみたところπ=です。


πの求め方へ戻る