ランダムウォーク
ある値が、一定時間ごとに、これまでの状態には依存せずにランダムに(確率分布に従って)変動するようなプロセスを ランダムウォーク と呼びます。 ランダムウォークでは、ある値 が からはじまり、時刻 と の間の の変化量が確率変数 と表される時、時刻 における の値 は次のように表されます。
ブラウン運動といった物理現象はランダムウォークと結びつけて解析が行われています。 また、金融工学では、株価の変動をランダムウォークとみなして利得やリスクの推定を行う理論があります。
1 次元のランダムウォーク
Processing で横軸に時間 、縦軸にランダムウォークする値 を取ったグラフを描画してみましょう。
y の変化量は とします。
以下のプログラムは、 を 0 以上 width
未満の範囲で変化させ、 を折れ線グラフでプロットします。
See the Pen コンピューティング2 4-16 by Yosuke Onoue (@likr) on CodePen.
また、上記のプログラムを 1 フレームごとに 1 ステップ進むようなアニメーションに改変したプログラムは以下のようになります。 キー入力によって新たな線を引くようになっています。
See the Pen コンピューティング2 4-17 by Yosuke Onoue (@likr) on CodePen.
2 次元のランダムウォーク
次に、 がそれぞれ独立にランダムウォークする場合を試してみます。
の初期値が (width / 2
, height / 2
) で、変化量がそれぞれ として表されているとき、2 次元空間上に座標の変化をアニメーション表示するプログラムは以下のようになります。
See the Pen コンピューティング2 4-18 by Yosuke Onoue (@likr) on CodePen.
画面の中心から線が不規則に動き回っていることが確認できます。
ブラウン運動
溶媒中の微粒子が、分子の運動によって不規則に動くような現象を ブラウン運動 と呼びます。 微粒子や分子は力学的な運動を行なっていますが、大量の分子が微粒子に不規則に衝突することで、微粒子の動きも不規則となります。 このとき、微粒子の動きがランダムウォークとなることが証明されています。 Einstein によるブラウン運動の理論的な解明は、分子や原子の存在の証明につながりました。
参考:
以下は 500 個の点がランダムウォークするプログラムです。
See the Pen コンピューティング2 4-19 by Yosuke Onoue (@likr) on CodePen.
点の動きはブラウン運動と同じような振る舞いをしていることが確認できます。
ランダムウォークの期待値
ランダムウォークの性質から、 と () は独立です。 そのため、 とすると の期待値と分散は以下のように表されます。
の変化量がそれぞれ で表されるランダムウォークについて考えます。
初期値を (width / 2
, height / 2
) としたとき、100 ステップ後の座標の期待値をモンテカルロシミュレーションによって計算してみます。
1 フレームごとに 1 つの点をプロットし、期待値を計算していきます。
See the Pen コンピューティング2 4-20 by Yosuke Onoue (@likr) on CodePen.
100 ステップ後の座標は、期待値である (width / 2
, height / 2
) を中心に分布していることが確認できます。
赤い点で表される値も大体期待値通りとなっています。
また、分散はステップ数に比例するので、ステップ数が小さければバラツキが小さく、ステップ数が大きければバラツキが大きくなります。
ランダムウォークと中心極限定理
中心極限定理 によると、期待値 、分散 の独立な確率変数列 において、 は が十分に大きい時に正規分布 に従います。 すなわち、ある値の変化量が中心極限定理が成り立つような確率分布に従っていて、十分なステップ数をとるようなランダムウォークでは、確率分布によらず最終的な値は正規分布に従うことができます。
例えば、 の初期値が 0、変化量が の 100 ステップのランダムウォークについて考えます。 最終的な の値のヒストグラムを描画するプログラムは以下のようになります。
See the Pen コンピューティング2 4-21 by Yosuke Onoue (@likr) on CodePen.
の変化量自体は一様分布であるにも関わらず、100 ステップ後の座標は正規分布のようになっていることが確認できます。