モンテカルロ法は理論的に興味深いだけでなく、実際の数学的問題・工学・金融・物理など様々な場面で具体的な計算に活用されています。
「モンテカルロ法、具体的にどんな問題に使うの?」「実際の計算例を見てみたい」という方に向けて、本記事では積分計算・確率計算・統計的推定・数値解析の代表的な具体例を、計算手順とともに詳しく解説します。
理論を具体例で理解することで、実際に応用できる力が身についていきます。
モンテカルロ法の具体例は「積分・確率・統計推定・シミュレーション」の4領域が中心
それではまず、モンテカルロ法が活躍する4つの主要領域の概要を解説していきます。
モンテカルロ法の活躍領域:①数値積分(解析的に解けない積分を近似)、②確率・期待値の計算(複雑な確率事象の統計的推定)、③統計的推定(ベイズ推定・パラメータ推定)、④物理・工学シミュレーション(粒子輸送・システム信頼性)。これらすべてに乱数サンプリングが共通の道具として使われる。
具体例1:sin関数の数値積分
解析的に解けるシンプルな例として、∫₀^π sin(x)dx の計算でモンテカルロ法を確認してみましょう。
真の値:∫₀^π sin(x)dx = [-cos(x)]₀^π = -cos(π)+cos(0) = 1+1 = 2
モンテカルロ推定:区間 [0,π] 上の乱数 xᵢ を N 個生成し、π × (1/N) × Σsin(xᵢ) を計算
N=100,000 で通常 1.99〜2.01 程度の推定値が得られる
解析解がわかるためモンテカルロ法を使う必要はありませんが、手法の検証・精度確認に有用な例です。
具体例2:多次元球の体積計算
より実用的な積分例として、n次元単位球の体積計算があります。
n次元超立方体 [-1,1]ⁿ の中にランダム点を生成し、ユークリッドノルムが1以下の点の割合を計算することで n次元球の体積を推定します。
次元が上がると体積の割合が急激に小さくなる(次元の呪い)という現象が直感的に体感でき、数値解析の教育に有用です。
具体例3:モンティ・ホール問題の検証
モンティ・ホール問題は「3つのドアのうち1つに賞品があり、1つを選んだ後にはずれドアが開けられる。ドアを変えるべきか」という有名な確率パズルです。
理論的には「変えた方が2/3の確率で当たる」ですが、直感に反するため多くの人が疑問を持ちます。
モンテカルロ・シミュレーションで10万回試行すると、確かに「変える戦略」の勝率が約66.7%になることが統計的に確認でき、確率論の直感的理解に役立ちます。
統計的推定への具体的応用
続いては、統計的推定の場面でのモンテカルロ法の具体例を確認していきましょう。
ブートストラップ法による信頼区間推定
ブートストラップ法は、観測データから復元抽出を繰り返すことで、推定量の標本分布を統計的に推定するモンテカルロ的手法です。
たとえば50個のデータの中央値の95%信頼区間を求めたい場合、50個のデータから50個を復元抽出する操作を1万回繰り返し、各回の中央値を計算します。
得られた1万個の中央値の2.5パーセンタイルと97.5パーセンタイルが95%信頼区間の推定値です。
解析的な信頼区間が計算困難な複雑な推定量にも適用できる強力な手法です。
ベイズ更新とMCMCの具体例
コインが公平かどうかを判定したい場面を考えます。
事前分布として偏りパラメータ p に一様分布 Uniform(0,1) を設定し、10回コインを投げて7回表が出た場合のベイズ更新を行います。
尤度関数:L(p|データ) ∝ p⁷(1-p)³
事後分布:Beta(8, 4) 分布(解析解が存在する場合)
MCMCでのサンプリング:メトロポリス法でp の事後分布からサンプリングし、事後平均≈0.67、95%信頼区間≈[0.39, 0.89] が推定される
この例では解析解があるためMCMCは不要ですが、より複雑な階層モデルや非線形モデルではMCMCが不可欠になります。
信頼性解析の具体例
機械システムの部品 A・B・C が直列接続されており(1つでも壊れると全体が故障)、それぞれの寿命が指数分布・ワイブル分布に従う場合のシステム信頼性計算も典型的な応用例です。
各部品の故障時間を確率分布からサンプリングし、システムの故障時間(最小値)を計算する操作を10万回繰り返すことで、システム信頼性・平均寿命・設計寿命内の故障確率が統計的に推定されます。
物理・工学シミュレーションの具体例
続いては、物理・工学分野でのモンテカルロ法の具体的な使用例を確認していきましょう。
| 具体例 | 使う乱数・分布 | 求める量 | 分野 |
|---|---|---|---|
| 中性子輸送シミュレーション | 指数分布・角度分布 | 中性子フラックス・遮蔽厚 | 核物理 |
| イジング模型の相転移 | メトロポリス法 | 磁化・比熱・相転移温度 | 統計物理 |
| 分子動力学の熱力学量 | マルコフ連鎖 | 自由エネルギー・構造転移 | 計算化学 |
| ゲームAI(モンテカルロ木探索) | 乱択プレイアウト | 最善手の推定 | AI・ゲーム理論 |
イジング模型のモンテカルロシミュレーション
統計物理学におけるイジング模型は、磁性体の相転移を研究するための基本モデルです。
各格子点に上または下のスピンが配置され、メトロポリス・アルゴリズムによってスピンをランダムに反転させながら、系を熱平衡状態へと導きます。
十分なMCMCステップ後の磁化・比熱・磁気感受率などの物理量を計算することで、相転移温度(キュリー温度)を数値的に決定できます。
モンテカルロ木探索(MCTS)とゲームAI
囲碁AIで革命を起こしたモンテカルロ木探索(MCTS)も、モンテカルロ法の重要な応用例です。
ゲームの各局面から乱択プレイアウト(ランダムに手を選ぶ)を大量に行い、勝率を統計的に推定することで最善手を選びます。
DeepMindのAlphaGoもMCTSと深層学習を組み合わせており、モンテカルロ法がAI技術の発展に貢献しています。
金融デリバティブ価格評価の具体例
ヨーロピアン・コールオプションの価格を、ブラック・ショールズ公式ではなくモンテカルロ法で求める場合を考えます。
手順:
1. 幾何ブラウン運動に従う株価経路を N 本シミュレート
2. 各経路の満期時の株価 Sᵢ を計算
3. 各経路のペイオフ max(Sᵢ – K, 0) を計算(K は行使価格)
4. ペイオフの平均を無リスク金利で割り引いてオプション価格を推定
バリアオプション・アジアンオプションなど解析解のないエキゾチックオプションでもこの手法が使え、実務上の価値が高いです。
まとめ
本記事では、モンテカルロ法の具体的な計算例として、数値積分・確率検証・統計的推定・物理シミュレーション・金融応用の多様な事例を紹介してきました。
円周率推定・sin関数の積分・モンティ・ホール問題・ベイズ推定・イジング模型・金融デリバティブ価格評価など、各分野での具体例がモンテカルロ法の汎用性と強力さを示しています。
理論だけでなく実際に手を動かしてコードを書き、様々な問題でモンテカルロ法を試してみることが、深い理解への近道です。
さらに発展的な応用として、MCMC・MCTS・量子モンテカルロなどへの展開も視野に入れてみてください。