モンテカルロシミュレーション

モンテカルロシミュレーション

(1)モンテカルロ法とは

確率的シミュレーション。ランダム法ともいわれる。乱数を用いて、かつ、それを繰り返すことで、法則や統計値を見積もること。たとえば、天気予報の降水確率70%などという計算は、雲の動きなどを予想して確率的に計算するモンテカルロ法を使っていると言える。天気予報は1回だけに限れば外れるかもしれないが、繰り返して統計的に考えると、確率値を求めることができる。
シミュレーションはすべてモンテカルロ法とは限らず、不確実性が発生する場合に限定されるが、不確実性、つまり乱数的に起こる方が、シミュレーションとしては一般的であろう。

(2)事例

モンテカルロ法を使うと、乱数を使って確率計算することで、円周率の計算もできる。
なので、単に予測だけではなく、乱数を使うことで、数学的な計算ができたりする。

→このとき、なぜ乱数を使うのかがポイント。全パターンを計算すればいいという話もあるが、それはとんでもない計算量になる。だから、乱数を使うのが効率的なのである。

(3)乱数は本当に正しい乱数か。

人間が適当に数字を言って乱数を取ろうとしても、偏りがでる。自分でアルゴリズムを作っても、偏りがでるロジックになる危険もある。
⇒疑似乱数、ある程度確立された乱数発生器を使うべきだろう。といっても、PythonやExcelなどでいいと思う。


分散減少法を使うともう少しスマートに計算できる