Markov Chain Monte Carlo

Table of Contents

prev_button up_button next_button

1. 平衡モンテカルロシミュレーション

熱統計力学で使われる平衡(あるいは修正)モンテカルロ法は, 「ありそうな状態を次々と生成しながら平均を取る」というつかえる方法である. モンテカルロ配置の原子レベルの挙動を見ることで統計力学が直感的に理解できる. もっとも単純な格子モデルを通して,平衡モンテカルロ法および正準集団を理解する.

2. Monte Carloのコンセプト

平衡統計力学の最終目標は,観測可能な量を, それに対応する微視的な状態関数の平均として求めることである. 古典的統計力学では, 観測可能な量に対応する位相空間関数\({\rm Obs}(\textbf{p},\textbf{q})\) は 適切に重みづけされた微視的状態の平均がとられる. 正準集団では,状態の重みは\(\exp(-E_i/kT)\) と分かっているので, ランダムな"Monte-Carlo"試行によって作られた状態を求め, その重み付き平均をとる操作を重ねることによって,いずれ正準集団平均

\begin{equation} \left< {\rm Obs}(\textbf{p},\textbf{q}) \right> = \frac{\sum {\rm Obs}_i \exp(-E_i/kT)}{\sum \exp(-E_i/kT)} \end{equation}

に収束する.

この直接的に平均を求めるサンプリング法は 自由度が数個以上の興味のある系では実用的ではない. なぜなら,相空間の多くの部分は無視すべき確率しか持たないからである. ランダムなサンプリングは無駄が多く無謀である. しかし,平均という意味では この式の分母にあたる状態の総和が不可欠であり, 相空間の全領域を見渡す必要があるように思えた.

このジレンマを解決するうまい方法がMetropolisらによって提案された \footnote{N.~A.~Metropolis, A.~W.~Rosenbluth and M.~N.~Rosenbluth, A.~H.~Teller and E.~Teller, J.~Chem.~Phys., 21(1953), 1087.}. この方法は, 配位空間における比較的小さなエネルギー変化\(\Delta E(\simeq kT)\) と, それを温度の対数と比較する \(\exp(-\Delta E/kT)\) に比例した状態遷移確率をもとにした, 単純で使える方法であり,その平均操作は

\begin{equation} \left< {\rm Obs} \right> = \frac{\sum {\rm Obs}_i}{\sum 1} \label{Average} \end{equation}

となり,陽な重みがいらない.

モンテカルロ配置の列は,非対称な動きから生成される. ポテンシャルエネルギーを減らすような動きはすべて受け入れられる. ポテンシャルエネルギーを増やすような動きは, 確率\(\exp(-\Delta E/kT)\) で受け入れられる. この方法は確率密度が最終的に\(\exp(-E/kT)\) に収束することを保証する.

3. 平衡モンテカルロシミュレーションの原理

では,非対称なサンプリングによって どのようにして正準集団の平均が得られるのかを見よう \footnote{上田顕,コンピュータシミュレーション(-マクロな系の中の原子運動-), (1990 朝倉書店), p.90}.

3.1. Markov過程と遷移確率

平衡モンテカルロ法は状態の生成に マルコフ過程(Markov process) を使う. これはひとつの状態\(\mu\) から, 新しい状態\(\nu\) を生成するルールを定めている. \(\mu\) から\(\nu\) へ移る確率を 遷移確率(transition probability) と呼び, Markov過程においてはすべての遷移確率が現在の状態\(\mu, \nu\) だけで決まり, それ以前に系がどんな状態を経てきたかにはよらない. 遷移確率\(P(\mu \rightarrow \nu)\) は次の 総和則(sum rule) を満たさなければならない.

\begin{equation} \sum_\nu P(\mu \rightarrow \nu) = 1 \label{Eq:SumRule} \end{equation}

なぜなら,Markov過程は\(\mu\) という状態が与えられたら, 必ず何らかの状態\(\nu\) を生成しなければならないからである.

モンテカルロシミュレーションにおいては, Markov過程を繰り返し適用し, 状態の Markovの連鎖(Markov chain) を生成する. 例えば,\(\mu\) という状態から始めて,次の状態\(\nu\) をつくり, それをまたMarkov過程に食わせて次の状態を作るという操作を繰り返す. このMarkov過程は, どのような初期状態から始めても最終的な分布状態が 正準集団になるように選ぶ必要がある. これを実現するためには,Markov過程にさらに2つの条件, "エルゴード性"と"詳細つり合いの条件", を課す必要がある.

3.2. エルゴード性

エルゴード性(ergodicity) 条件とは,

十分に長いあいだMarkov過程を続ければ, 系のすべての状態に他の状態からたどり着くことが可能でなければならない

という要件である. エルゴード性条件から, 直接に一度の遷移でたどり着くMarkov過程の遷移確率のいくつかは0でも構わない ことが分かる. ただし,どのような2つの状態を取り出しても, 遷移過程を何度か繰り返せば その2状態を結ぶ確率が有限の値をとる行き方が少なくともひとつは存在する必要がある. このような条件を満たせば,Markov過程は平衡状態に落ち着くことが保証されている. この定理の証明は Karlin\footnote{S. Karlin, A First Course in Stochastic Processes(Academic Press, 1966),訳:佐藤健一,佐藤由身子:確率過程講義(産業図書,1974).} を参照されたい.

3.3. 詳細釣り合いの条件

Markov過程へ課すもう一つの制約は, Markovの連鎖で生成する分布が平衡状態において正準分布であることを保証するためである. これは平衡状態がいったいどのような状態であるかを記述することから導くことができる. 平衡状態においてはいかなる状態\(\mu\) に対しても,そこから他へ移る確率と, 他からそこへ移る確率とが等しいことが必要である. これを状態\(\mu\) をとる確率を\(p_\mu\) , 状態\(\nu\) をとる確率を\(p_\nu\) として表現すると

\begin{equation} \sum_\nu p_\mu P(\mu \rightarrow \nu) = \sum_\nu p_\nu P(\nu \rightarrow \mu) \end{equation}

となる.これはまた,総和則(\ref{Eq:SumRule})式を使えば

\begin{equation} p_\mu = \sum_\nu p_\nu P(\nu \rightarrow \mu) \end{equation}

と簡単に書くこともできる.これを実現するにはそれぞれの遷移確率すべてが

\begin{equation} p_\mu P(\mu \rightarrow \nu) = p_\nu P(\nu \rightarrow \mu) \end{equation}

という条件が成り立てばよい. これが 詳細釣り合いの条件(condition of detailed balance) と呼ばれる所以は, 粒子のミクロな動きによる状態\(\mu\) から\(\nu\) への遷移の起こる頻度が, 逆の\(\nu\) から\(\mu\) への頻度と等しいためである.

こうして得られたMarkov連鎖の平衡状態が正準分布をとるようにするには, それぞれの状態の存在確率\(p_\mu\) と\(p_\nu\) の比が正しく \(\exp\) に比例するようにすればよい.すなわち

\begin{equation} \frac{P(\mu \rightarrow \nu)}{P(\nu \rightarrow \mu)} = \frac{p_\nu}{p_\mu} = \exp\left(-\frac{E_\nu-E_\mu}{k_{\rm B}T}\right) \end{equation}

である. この条件と総和則(\ref{Eq:SumRule})式とが 遷移確率\(P(\nu \rightarrow \mu)\) に課すべき制約である. 図1(a)のように2つの状態\(\mu, \nu\) で\(E_\nu>E_\mu\) であると考えよう. \(\Delta E = E_\nu-E_\mu\) ととるとこの値は正となり, 状態\(\nu\) から\(\mu\) へは確率\(1\) で系を遷移させる. 逆に\(\mu\) から\(\nu\) へは確率\(\exp(-\Delta E/k_{\rm B}T)\) で 遷移させれば良いことが分かる. 言葉を換えれば,エネルギーを下げる遷移はすべて認め, エネルギーを上げる遷移は確率\(\exp(-\Delta E/k_{\rm B}T)\) で認めればよい. 遷移の採択率(acceptance ratio)を図1右パネルに示している. さきに述べたモンテカルロのサンプリングのアルゴリズムは, この結果に基づいている. この原理によって, 正準分布で表された熱平衡状態を実現することが保証される.

mcmc.002.png
図1 状態の遷移を示す模式図.2つの状態\(\mu, \nu\) で\(E_\nu>E_\mu\) と仮定している.右パネルは遷移の採択率(acceptance ratio)を示している.}

4. いくつかの注意点

ここでは,物理学のミクロ状態を実現する 熱平衡モンテカルロからMCMCの動作を解説しました. MCMCは,ここで紹介したアニーリング法以外に

  • 初期配置と試行傾向

を組み合わせることで,Bayse予測などの 多様なシミュレーションに適用可能です. それぞれにいくつものパッケージが用意されているので その解説を利用ください.

ここで紹介するシミュレーテッドアニーリングの実装は 簡単で直観的なため, 最適化手法の一つのパターンとして身につけておくと 応用範囲が広いです.

Author: Shigeto R. Nishitani

Created: 2026-07-02 Thu 18:22

Validate