広島経済大学 高石哲弥教授 -乱数の応用「マルコフ連鎖モンテカルロ法」の実用性-

広島経済大学 高石哲弥教授に独自インタビュー

乱数の応用には、様々な分野での問題解決や解析に役立つ手法が存在します。その中でも特に注目されるのが、モンテカルロ法とマルコフ連鎖モンテカルロ法です。

これらの手法は、乱数を用いて複雑な問題を解決するための強力なツールとして広く活用されていますが、具体的にはどのような手法なのでしょうか。

そこで今回は、モンテカルロ法とマルコフ連鎖モンテカルロ法の仕組みや実用性について、広島経済大学の高石教授に詳しくお話を伺いました。

独自インタビューにご協力いただいた方
高石哲弥教授

広島経済大学 教養教育部 教授
高石哲弥(たかいし てつや)

広島大学理学部物理学科卒、ハイデルベルグ大学理論物理学研究所DFG研究員、チューリッヒ工科大学Swiss Center for Scientific Computing博士研究員等を経て広島経済大学教授に就任。

目次

様々な場面で利用される手法「モンテカルロ法」とは

一般社団法人日本スポーツ広告協会編集部:まず初めに、モンテカルロ法は何か、その方法論が生まれた経緯や具体的な活用例を含めて、身近な事例を挙げて具体的にご説明いただけると幸いです。

高石教授:モンテカルロ法は、乱数を利用して様々な計算やシミュレーションを行う手法です。これには、コイントスのようなランダムな事象も含まれています。

乱数を使って、様々な問題を解析したり、シミュレーションを行ったりする手法を、一般的にモンテカルロ法と呼びます。

したがって、特定の用途に限らず、乱数を利用して様々なことを行うことができます。例えば、大量の数値計算やシミュレーションを効率的に行うことができます。また、そういったことを可能にする手法の総称がモンテカルロ法であり、逆に言うと、乱数を利用して何かを行う場合、それはモンテカルロ法であると言えるでしょう。

ネットや書籍などを調べると、モンテカルロ法の歴史については諸説があり、はっきりとした結論が得られないことが分かります。発祥に関する記述や詳細な経緯については異なる記述が見られることもありますが、一般的に、モンテカルロ法は数学者であるジョン・フォン・ノイマンという人が考案したと言われています。

また、モンテカルロ法という名称の由来についても、複数の説があります。カジノでのランダムな出来事に関連することから、カジノで有名なモナコの都市モンテカルロに由来するなどの説がありますが、はっきりとしていません。ただし、モンテカルロという都市の名称から来ているらしいということは一般的に言われています。


一般社団法人日本スポーツ広告協会編集部:ありがとうございます。色々な説があるのですね。また、先ほどコイントスのお話が出ましたが、その仕組みがモンテカルロ法とどのように関係しているのでしょうか。

高石教授:まず、コイントスとは、コインを投げてその表裏を確認することです。正確なコインであれば、表と裏が出る確率はそれぞれ2分の1です。

例えば、表が出たら右に進み、裏が出たら左に進むといった行動を繰り返すとします。10回繰り返した場合にどの位置にいるかを知りたいと考えた場合、結果は試行を繰り返す度に異なる可能性があります。

つまり、表と裏がちょうど半々に出る場合、行ったり来たりして最後は元の場所に戻ります。しかし、もし10回の試行で全て表が出た場合、右の方にずっと進んでいることになります。ただし、全て表が出る確率は非常に低いでしょう。一般的には、表と裏が半々ぐらい出る確率が高いため、行ったり来たりすることが予測されます。

では、実際にコインを使った実験を行って、その結果を観察してみましょうという場合、10回試行して、その後さらに10回、またその後10回と繰り返し、多くの試行を行うことで特定の位置にいる確率がより明確になります。

例えば、100回や1000回の試行を繰り返すことで、真ん中に位置することが最も多いことが分かり、右や左に位置する確率が少ないことが明らかになるでしょう。

このように、試行回数を増やすことで特定の位置にいる確率の傾向がより明確になります。理論的にはコインが2分の1の確率であると分かっていても、そのコインが正確に2分の1の確率でない可能性も考えられます。

その場合、実際にコインを投げて試行すると、例えば10回試行した際に一番確率の高くなる位置は、真ん中ではなくやや右側に偏っているかもしれません。コインが正確に2分の1の確率でない場合、そのような偏りも生じる可能性があります。

サイコロもある目の出る確率は6分の1の確率であるはずですが、実際の結果は誤差や偏りが生じることがあります。このように、場合によっては異なる結果が出るといったことが起こり得ますが、正確なコインの場合は2分の1の確率で表が出ることになります。

したがって、理論的にどのような結果が得られるかが分かっている場合はいいですが、モデル化をした際には、実際に試行してみないと確率がはっきりと分からない場合があります。ここで「確率分布」という話が出てきます。

前述したように、特定の要因によって結果に偏りが生じる可能性があります。単純な場合は問題ありませんが、複雑な場合は特定の確率分布から乱数を生成する必要があります。そのため、コンピューターを使用して試行を繰り返し、実際に右や左に移動する確率を調査する方法もあります。

このような応用は、コイントスと関連していますが、コイントスは比較的簡単な例です。様々な現象やモデルに適応した場合、独自の確率分布が存在し、コンピューターで乱数を生成して実際の結果を調査することで、実際にどうなるかを調べることが可能です。

一般社団法人日本スポーツ広告協会編集部:とても分かりやすい説明をありがとうございます。コイントスという単純な事象についても、不規則なケースを考慮し、複雑な分析を行うことができるのですね。

高石教授:また、今述べたのはあくまでも1つの手法であり、乱数を使用したモデリング手法は他にも多くあります。

例えば、シミュレーションを行う際に、シミュレーションの方程式に基づいてオブジェクトが移動する様子を見たい場合があります。そこにランダム性が必要な場合には、ランダムな動きを乱数を用いて導入し、オブジェクトが最終的にどのような動きをするかを試行することができます。

知りたい情報に応じて、例えば平均値を知りたい場合は、多くの乱数を生成してその平均値を計算することができます。このように、乱数を使用したモデリング手法は、様々な場面で利用されています。

その乱数を用いてシミュレーションの際の方程式を考える時に乱数を用いて答えを出すこともモンテカルロ法と言います。具体例を挙げると、数値計算において関数の積分値を求める際に、乱数を用いて積分値を推定することもあります。

また、現在私が行っているのは、株価のデータ解析です。株価はランダムに上下する傾向がありますので、そのようなランダム性に従って、例えば乱数を生成して株価の動向を予測することがあります。

株価の動きは予測が難しいですが、コンピューターを使って乱数を生成し、繰り返しシミュレーションを行うことで、株価の動向を理解することができます。要するに、モンテカルロ法は乱数を使って何かを求める手法であり、その適用範囲は広範囲にわたり色々な使い方があるということです。

一般社団法人日本スポーツ広告協会編集部:ありがとうございます。理解するには非常に複雑なイメージでしたが、具体的な例を考えると身近に感じます。

マルコフ連鎖との融合「マルコフ連鎖モンテカルロ法」

一般社団法人日本スポーツ広告協会編集部:では、今のお話を踏まえて、モンテカルロ法の一種である「マルコフ連鎖モンテカルロ法」について、初心者向けに教えていただけますでしょうか。

高石教授:モンテカルロ法は乱数を利用する手法であると述べましたが、それではどのように乱数を生成するのか、という疑問が生じます。確率が2分の1のようにシンプルな場合は簡単ですが、実際にはそう簡単な場合ばかりではありません。

確率分布には、マイナス1が出る確率や0が出る確率、1が出る確率、2が出る確率など、様々なパターンがあります。確率分布が、単純な山型ではなく、複雑な形状をしていることがあり、どの部分が最も頻繁に発生するかが明確にならないことがあります。

そういった複雑な確率分布から乱数を実際に生成することは難しい場合があります。マルコフ連鎖モンテカルロ法は、このような複雑な確率分布から乱数を生成する手法の1つであると言えます。

では、マルコフ連鎖とは一体何なのかという話ですが、マルコフ連鎖とは、乱数を生成する際に、ある状態から次の状態へと遷移していく過程を指します。

具体的には、ある時点で乱数を生成し、その結果をもとに次の乱数を生成します。この時、前の状態や過去の履歴は考慮されず、現在の状態だけが次の乱数の生成に影響を与えます。

例えば、このことを天気予報に例えて説明すると、明日の天気は現在の天候にのみ依存しており、過去の天候や昨日の天気は関係ありません。つまり、今日が晴れであれば、昨日が雨だろうが雪だろうが関係なしに明日は今日の天気にのみよって決まるということになります。

そして同様に、明日の天気が決まれば次の日の天気も決まるという風にどんどん連鎖していきます。このように、現在の状態から次の状態が確率的に決定される過程をマルコフ連鎖と呼びます。

そして、そのマルコフ連鎖を利用して乱数を生成する手法をマルコフ連鎖モンテカルロ法と言います。これによって、過去の乱数生成の結果を考慮せずに、現在の状態から次の乱数を生成することが可能になります。

マルコフ連鎖モンテカルロ法を使用する利点は、確率分布が与えられたとしても、適切な確率をどのように生成すればよいかが分からない場合に役立つことです。

つまり、マルコフ連鎖モンテカルロ法は、モンテカルロ法の一種であり、乱数を発生させる方法の1つです。この方法を使用することで、複雑な確率分布の下で必要な乱数を効率的に生成し、その乱数を利用して特定の計算を行うことが可能です。

例えば、ある確率分布の下でのコイントスを行うとする例では、マルコフ連鎖モンテカルロ法を用いてその確率分布での乱数を生成し、その乱数を用いて右に進むか左に進むかを判定し、全体としてどのようになるかを把握するということになります。また、平均値などの特性も計算することができます。

一般社団法人日本スポーツ広告協会編集部:なるほど。マルコフ連鎖モンテカルロ法は、確率分布の複雑さに挑むための有力なツールなのですね。

金融業界におけるモンテカルロ法の応用

一般社団法人日本スポーツ広告協会編集部:高石様は、金融の時系列解析においてマルコフ連鎖モンテカルロ法をご活用されていると伺っております。

また、オプションの計算にもモンテカルロ法が使用されているとのことですが、例えば金融業界でこれらの手法を利用する場合、メリットやデメリットにはどのようなものがあるでしょうか。

高石教授:金融の時系列解析では、確率的変動ボラティリティモデルを使用したことがあります。このモデルのパラメーターを金融の時系列データに適合させることで、実際のデータをうまく説明できるようにします。したがって、パラメーターの推定が重要となります。

これらのパラメーターは確率変数(乱数)のような性質を持ち、その確率分布の下で乱数を生成する必要があります。しかし、金融の時系列データは複雑であり、簡単に推定することは難しいです。そのため、パラメーターの推定にはマルコフ連鎖モンテカルロ法を使用しました。

モンテカルロ法を使用すると、乱数を利用することで計算が可能になるため、コンピューターを使用する際には効果的であり、メリットとしては、その意味でやりやすいという点が挙げられます。

乱数を生成するという作業を繰り返し、その結果の平均値を求めるという作業です。つまり、100回の試行よりも1000回試行した方がもっと精度が良くなるということであり、精度を高めるためにはより多くの乱数が必要になります。そのため、乱数を生成するためのコンピューターの計算能力が必要になります。

しかし、必要な乱数が増えると計算量も増え、コンピューターの処理時間が長くなる可能性があります。この点がデメリットと言えますが、最近のコンピューターの性能向上により、この問題は緩和されています。モデルの複雑さによっては、乱数の生成や計算に時間がかかる場合もありますが、簡単なモデルでは問題なく処理できることもあります。

次に、オプションの計算に活用するメリットとデメリットについてお話ししましょう。オプションは株価の上下変動を考慮する金融商品です。その価格の変動パスをシミュレーションし、将来の株価の分布を予測するために乱数を多数生成します。

オプションの価格を計算する際には、解析的な方法が適用できる場合もありますが、いくつかのオプションには解析的に値が求められない場合もあります。その場合は乱数を用いることになりますが、高い精度の結果が求められる場合は、大量の乱数が必要です。

乱数を使用する利点は、乱数さえ振れれば簡単に解析できるという点ですが、高い精度を求める場合は多くの乱数が必要となり、応用面では、使用方法やモデルによって効率的な乱数生成方法が必要になります。

「精度を高めて結果を求めようと思うと大量の乱数が必要になってくる」という基本的な考え方は同じであり、効率的な方法を使えば少ない計算時間で正確なものが求められるので、各モデルに合わせた乱数生成方法を選択する必要があります。

いずれにせよ、乱数を増やすと、計算に必要なリソースも増えるため、ある程度の精度で計算を打ち切ることが一般的でしょう。パソコンや計算機は無限の計算を行うことができないので、モデルごとに現実的な時間枠やリソースをある程度考慮して乱数を使用することになります。

例えば、平均値を求める場合、10個のサンプルよりも100個または1000個のサンプルをといったように多くのサンプルを使用した方が、より真の平均値に近づく傾向があります。乱数の効率的な生成方法は、使用するモデルにもよりますが、マルコフ連鎖モンテカルロ法は乱数を効率的に生成する手法の一つでよく利用されています

ただし、マルコフ連鎖モンテカルロ法においても、どのようにマルコフ連鎖モンテカルロ法を実行するかについて色々な方法があります。

一般社団法人日本スポーツ広告協会編集部:そこにも色々と方法があるんですね。

高石教授:どの方法を選択するかによって、乱数を生成する効率も異なってきます。実際には様々なマルコフ連鎖モンテカルロ法が存在し、モデルごとに使える方法や使えない方法があると言われていますが、マルコフ連鎖モンテカルロ法を使用すれば効率的に乱数を生成できるでしょう。

ただ、他にも様々なモンテカルロ法以外の手法が存在するため、モンテカルロ法だけが使用されているというわけではありません。

あとは、少し違う話にはなりますが、最近はAIや機械学習があり、企業の方でも機械学習を利用して株価の変動の大きさを推定するような手法が使われ出しています。今後はAIや機械学習といった手法も利用されてゆくと思いますが、モンテカルロ法は実際に様々な分野で広く活用されていますので、今後も有用な手法であると考えられます。

[2024年3月19日 記事公開]

目次