導入
キネティックモンテカルロ (KMC) 法は、既知の速度で発生するプロセスをシミュレートするコンピューター シミュレーション モンテカルロ法です。このようにして、マスター方程式に従って進化するシステムの動作を正確にシミュレートすることが可能になります。
これは、計算時間がほとんどかからず、大規模な時間と空間の探査を可能にする方法です。これにより、特に確率の低い現象を研究することが可能になります。
レートは事前にわかっている必要があり、アルゴリズムはそれを使用するだけです。
動的モンテカルロ アルゴリズムにはいくつかの名前があります:滞留時間アルゴリズム、 Bortz-Kalos-Liebowitz (BKL) (Bortz 1975)、 n 倍方法アルゴリズム、動的モンテカルロ アルゴリズムまたは方法、またはGillespie アルゴリズム(Gillespie 1976) …

アルゴリズム
時間に依存しない転送速度

動的モンテカルロ アルゴリズムは、初期状態から可能な最終状態のセットへのシステムのランダムなジャンプをモデル化するために使用され、時間tで行われたジャンプの総数N tがFishのプロセスによってモデル化されます。各ジャンプの終了時に、初期状態と新しい状態の間の遷移の結果が評価されます。シミュレーションの停止、転送レートの変更の有無にかかわらず、新しいシミュレーション ステップなどです。

アルゴリズムを理解するために、このセクションでは、2 つの連続するジャンプを分ける時間間隔の間、転送レートが一定のままであると仮定します。これは、均一なポアソン過程に対応します。アルゴリズムは次の手順で与えられます。
- t 0 を現在時刻として表します。
- システムのすべての転送速度Γ iのリスト( i = 1,…, N ) を作成し、総転送速度をΓ tot = ∑ Γ iとします。
- システムが初期状態を離れるまでの時間T は、式T = – ln( U )/Γ totで与えられます。ここで、 U は0 と 1 の間に均一に分布する確率変数です。
- 0とΓ totの間に一様に分布する 2 番目の乱数U’ を選択します。これは、遷移の最終状態をランダムに選択するために使用されます (反対の図を参照)。
- U’ が0とΓ 1の間にある場合、システムは状態 1 に遷移します。 Γ 1とΓ 1 +Γ 2の間では、システムは状態 2 に遷移します。 U’ がS i -1とS iの間にある場合 ( S 0 = 0 )、 $$ { S_i = \textstyle\sum_{j=1}^i \Gamma_j } $$、システムは状態iに遷移します。
- 対応する計算を実行して、この移行を考慮してください。
- 時間をt 0 + Tに変更し、ステップ 1 を繰り返します。
- ステップ 3 の理論的根拠
- 確率変数T は、システムが初期状態を離れるまでの待ち時間を表します。その確率密度は、 t ∈ [0, +∞[の場合、 ρ T ( t ) = Γ tot exp( − Γ tot t )です。ステップ 3 で使用される式は、変数U = exp( – Γ tot T)の変化に対応し、同じ確率密度を与えます。 $$ {\rho_T(t) = \rho_U(u) \left|\frac{du}{dt} \right|} $$]0, 1]でρ U ( u ) = 1 を考えるとします。
- ステップ 5 の理論的根拠
- 最終状態が状態iである確率はp i = Γ i ⁄ Γ totであり、これは以下に等しい
- $$ {p_i = \frac {\Gamma_i} {\Gamma_\text{tot}} = \frac {S_i-S_{i-1}} {\Gamma_\text{tot}} = \int_{S_{i-1}}^{S_i} \frac{1}{\Gamma_\text{tot}}du’ = P(S_{i-1}
このアルゴリズムは、時間の経過に伴うシステムの進化をシミュレートし、先験的な停止条件を持ちません。実際には、時間が特定の値を超えるか、システムが特定の回数のジャンプを行ったときにループが停止します。システムが時間の経過とともにたどる一連の状態i は、モンテカルロ軌跡と呼ばれます。次に、このループを繰り返すことにより、統計分析を適用できる多数の軌跡を取得します。軌跡は互いに独立しているため、動的モンテカルロ アルゴリズムを並列化するのは簡単です。
時間の経過とともに変化する転送速度
Γ i が時間に依存すると仮定すると、アルゴリズムは本質的に同じですが、 UとU’をTと最終状態iに関連付ける式は異なります。
- Tは次の式で与えられます。 $$ { \int_{t_0}^{t_0+T} \sum_{i=1}^N \Gamma_i(t) dt = -\log u } $$T を見つけるにはこれを逆にする必要があります。
- 合計Siはt = t 0 + Tで評価されます。これは、時刻t 0 + Tまでシステムがまだ初期状態にあるという事実に由来します (Chotia 2008)。この「記憶」の欠如はマルコフ過程の特徴です。
