Elementary Cellular Automaton (ECA)

SVG に対応したブラウザが必要です.Internet Explorer 8 以下は未対応です.Firefox, Google Chrome, Opera, Safari 等で閲覧下さい.

Rule: Periodic: FPS (1–20):

解説

Elementary Cellular Automaton (ECA) のデモです.ECA とは,時刻 $t+1$ の座標 $n$ の状態が,時刻 $t$ の座標 $n-1$, $n$, $n+1$ の状態だけから決まる,空間1次元の2値セルオートマトンのことです.例えば,ルール184と呼ばれるものは次のルールで時間発展が決まります:

時刻 $t$ の状態111110101100011010001000
時刻 $t+1$ の状態10111000

これがルール184と呼ばれる理由は,“10111000” が2進法で読むと184になるからです.このことから,ECA のルールは 0–255 の256通りがあることがわかります.$U^{(t)}_n \in \{0, 1\}$ を時刻 $t$,座標 $n$ の状態とすると,ルール184は次のように離散力学系として書くことができます: \[ U^{(t+1)}_n=\varphi_{184}(U^{(t)}_{n-1}, U^{(t)}_n, U^{(t)}_{n+1}), \] ここで, \[ \varphi_{184}(1, 1, 1)=1,\quad \varphi_{184}(1, 1, 0)=0,\quad \varphi_{184}(1, 0, 1)=1,\quad \varphi_{184}(1, 0, 0)=1,\quad \varphi_{184}(0, 1, 1)=1,\quad \varphi_{184}(0, 1, 0)=0,\quad \varphi_{184}(0, 0, 1)=0,\quad \varphi_{184}(0, 0, 0)=0. \]

ECA はたったこれだけの単純なものですが,様々な現象を観察することができます.Stephen Wolfram は ECA を観察し,十分時間が経った後の系の様子によって次の4種類に分類しました:(i) 変化しなくなる; (ii) 周期的な変化を続ける; (iii) カオスになる; (iv) 複雑なパターンが形成される.

このプログラムでは,右端と左端がつながった周期境界条件の下での ECA の時間発展を計算できます.一番上が時刻0で,マウスでクリックすることで初期状態を変えることができます.

なお,デフォルトが上で挙げたルール184となっているのは,これが超離散系の世界では Burgers Cellular Automaton (BCA) として知られているためです.ルール184は,各粒子が右に向かって進むと思えば,

という極めて単純なルールに従って動くと思うことができます.これを,交通流モデルを単純化したものだとみなすこともできます.BCA はその名の通り離散 Burgers 方程式の超離散化として得られます.興味のある方は参考文献をご覧下さい.

参考文献

ソースコード