2022.10.24

先端技術探訪

この世のすべてを把握する?モンテカルロ計算とは?

この世のすべてを把握する?モンテカルロ計算とは?

ギャンブルの手法を用いることで、現実には把握することが困難な事象を予測(シミュレーション)する「モンテカルロ計算」という数値解析があります。ギャンブルということなら“一か八か”のはずなのに、限りなく現実に近い結果が得られるという不思議な手法についてのお話をお届けします。

カジノの本場の地名に由来

モンテカルロ計算、正確にはモンテカルロ法と呼ばれるシミュレーション計算は、もともとは中性子が物質内でどのように動き回るのか、その挙動を探るために考案されたものです。

考案者は、数学と原子核物理学の分野の科学者スタニスワフ・ウラム。1946年頃のこと、ウラムはトランプのひとりゲーム、ソリティアを最後までやれる割合がどのくらいになるかを考えていました。たった52枚のカードで成り立つゲームでさえ、すべての可能な組み合わせを計算するには、膨大な計算が必要になります。そこで、ウラムはある程度の回数だけゲームを試行することで、近似的な結果が得られることに着目しました。さらに、この考え方を物質内の中性子の挙動に適用すると、少ない計算でも中性子が拡散する現象が“ある程度”シミュレーションできることに気づいたのです。

ウラムはこのアイデアを同僚のジョン・フォン・ノイマンに話しました。ノイマンをご存じの方も多いでしょう。彼は20世紀における最重要人物のひとり。爆発物の衝撃波分野の大家で、経済学のゲーム理論の成立に貢献しただけでなく、現在の汎用コンピュータの直接の始祖と呼べる「ENIAC」という電子計算機の概念と基本構成を構築した天才科学者です。

このアイデアは確率的ゲーム(=ギャンブル)を、乱数を用いて数学的に定式化することから、カジノの本場モナコ公国にちなみ、ノイマンによって「モンテカルロ法」と命名されました。

ノイマンとウラムは早速「ENIAC」でモンテカルロ法による核分裂現象のシミュレーションを実施し、その有効性を確認したのでした。

乱数:任意の範囲内の数字が不規則かつ等確率に現れるように数列化されたもの(乱数列)。統計の無作為抽出や暗号に使う。

あらゆる「偶然」を計算し尽くす

と、ここまで説明してきましたが、それでも「なんのことやら?」という人のために、コイントスを例に、もう少しわかりやすく解説してみましょう。

コインの裏表が出る確率は1/2というのは常識レベルの話です。仮に確率計算がわからなくても、実際にコインを投げれば(=実験)、裏と表それぞれが出た回数を投げた回数で割って、近似解を求めることができます。しかし、数回試した程度では、結果が偏ることもあるため、実験の試行回数をできるだけ多くする必要があります。

とはいえ、数百回もコイントスをしてみるというのは、人間なら音を上げてしまうかもしれないですね。その点、コンピュータなら0と1だけ出力される乱数を使い、0が裏、1が表と決めれば、何万、何十万、何百万回もシミュレーションすることができます。そうして試行回数が増えるほど、シミュレーション結果が理論値の1/2に限りなく近づくため、確率を直接計算できなくても、乱数を使ったシミュレーションにより解を得ることができるというわけです。

物質中の中性子の挙動といった複雑なものでも、中性子が物質中のどの原子とどんな反応をするか、反応で中性子がもつエネルギーがどう変わり、どの方向にどれだけ飛んでいくか等を乱数で決め、何百万、何千万、何億回と繰り返せば、現実の挙動に近似した解が得られるというのがモンテカルロ法の基本的な考え方です。

このモンテカルロ法、現在では、原子物理学の分野はもちろんのこと、純粋数学の分野や経営、金融、交通などの工学分野、コンピュータ囲碁プログラム、コンピュータグラフィックス、マーケティング、プロジェクトマネジメント、生物学、生態学、社会心理学などなど、実に幅広い領域で活用されています。

量子コンピュータの活用に期待

乱数を用いるモンテカルロ計算は現実離れした計算量が必要です。たとえば、清水建設が開発した放射線治療(リニアック)室の放射線遮蔽設計アプリは、モンテカルロ法を代替する簡易計算式を開発・適用することで、計算の劇的な効率化を実現したものですが、裏を返せば、より精緻な遮蔽設計のために従来どおりにモンテカルロ法を使うとなると、数週間を要するほど複雑かつ膨大な計算が必要になるということ。放射線治療室から漏洩する放射線の線量を把握するという限定的なシチュエーションでさえ、それほどの計算リソースが必要になります。さらに、放射線の輸送過程を模擬するモンテカルロ法で取り扱える中性子やガンマ線の数は、数億から100億程度が現在の限界ですが、実際の原子炉やリニアック室ではわずか1秒の間にその1億〜100億倍以上もの中性子やガンマ線が発生しているということで、現実の発生数にはるかに及ばない数しか模擬できないのが現状なのだそうです。

ここでブレークスルーとして期待されているのが、現在の汎用コンピュータとは桁違いの計算能力があるとされる量子コンピュータの活用。量子コンピュータが実用化されれば、数週間を要するモンテカルロ計算も数時間、数分で完了できるようになるかもしれません。

ところで、コンピュータの始祖「ENIAC」はモンテカルロ法による中性子の振る舞いの把握に活躍しましたが、「ENIAC」の功績のひとつに、気象の数値シミュレーションがあります。大気の挙動を流体力学による解析で把握・予測しようというのは、現代でもスーパーコンピュータの重要な活用領域のひとつ。実際に集中豪雨発生の期間予測や台風の最大風速の予測など、モンテカルロ法を用いたシミュレーションは研究が進んでいます。ここにさらに量子コンピュータが適用されたら、今よりも精度が高く革新的な気象予測ができるようになるでしょう。局所的な集中豪雨や土砂災害の激甚化・頻発化が予想されるこれからの時代に、ますます必要とされる技術となり、また、建物や施設の耐災害性能を考慮し開発するうえでも、有益な知見を提供するようになっていくはずです。

野崎 優彦
さまざまな企業のコミュニケーション活動をお手伝いしているコピーライター。株式会社モーク・ツー所属。