レヴィ・フライト
定義 1 2
ランダムウォーク $X_{t}$ のステップ単位のインクリメント $X_{t} - X_{t-1}$ が ヘビーテール を持つ 安定分布 であれば、これを レヴィ飛行Lévy flightと呼ぶ。
説明
レヴィ飛行は主にユークリッド空間における点の移動が断続的な大きな跳躍を含む特徴を持つ確率過程であり、ブラウン運動が単なる拡散であるのに対して、レヴィ飛行は 超拡散superdiffusion を示す。跳躍は外れ値のような概念とは異なり確率過程自体に内在し、渡り鳥やバッタの群れのような生態系の大移動を説明・シミュレーションする応用がある。
シミュレーション
百聞は一見に如かず、実際に見るのが最も理解しやすい。以下は2次元で総タイムステップ1000を設定してレヴィ飛行を直接シミュレーションしたものだ。
ご覧の通り、短い区間を動くことが多いが、時折非常に長い線分を残して遠くへ跳躍する様子が見える。一方で次は我々がよく知るブラウン運動だ。シミュレーション終了時点で彼らが移動した距離を実感するには座標の単位を見ればよい。
自己相似性 2 3
レヴィ飛行は自己相似性を持つ確率過程であり、その軌跡はインクリメントの確率分布の確率密度関数が十分大きな $x$ に対して次のような $f$ で表されるとき、フラクタル次元 $\alpha$ を持つとされる。 $$ f(x) \sim {\frac{ 1 }{ x^{1 + \alpha} }} $$
コード
以下はジュリアで書かれたシミュレーションコードだ。
using Distributions, LinearAlgebra, Plots
default(legend = :none, color = :black, aspect_ratio = 1)
MvCauchy = MvTDist(1, zeros(2), Matrix(I(2)))
tend = 1000
XY1 = cumsum(rand(MvCauchy, tend), dims = 2)
anime1 = @animate for t in 1:tend
plot(XY1[1, 1:t], XY1[2, 1:t], size = [400, 400])
end
gif(anime1, "levy.mp4")
XY2 = cumsum(randn(2, tend), dims = 2)
anime2 = @animate for t in 1:tend
plot(XY2[1, 1:t], XY2[2, 1:t], size = [400, 400])
end
gif(anime2, "brownian.mp4")
シミュレーションで注意すべき点は、二変量コーシー分布は多変量正規分布と異なり座標ごとにコーシー分布をサンプリングするのではなく、多変量 $t$-分布から自由度が1の場合としてサンプリングすべきである点だ。
Barthelemy, P., Bertolotti, J. & Wiersma, D. A Lévy flight for light. Nature 453, 495–498 (2008). https://doi.org/10.1038/nature06948 ↩︎
Nolan, J. (2004). Stable distributions. https://prac.im.pwr.edu.pl/~burnecki/Materials/chap1.pdf: p14. ↩︎ ↩︎
Chechkin, A. V., Metzler, R., Klafter, J., & Gonchar, V. Y. (2008). Introduction to the theory of Lévy flights. Anomalous transport: Foundations and applications, 129-162. https://doi.org/10.1002/9783527622979.ch5 ↩︎
