セルオートマトンによるパターン形成宮田愛

1(指導教員：郡宏)

はじめにのように表す:

1.1 パターン形成

ci (t + 1) = ψ(ci−1 (t) + ci (t) + ci+1 (t))

世の中はきれいで不思議な模様 (パターン) に満ちあ
ふれている．貝殻や魚の模様，雲，葉脈，体の形など数えきれない程である．そのような模様がどのように出来るかという「パターン形成」の問題については，実験的にも数理的にも多くの研究がなされてきた．特に，セルオートマトンという空間と時間の両方が離散的な数理モデルが用いられてきた．この研究では，生物のパターンを再現することを目的とし，セルオートマトンモデルのパターン形成について調べる．

ここで ψ は，状態変化の規則を与えるもので，局所遷移関数と呼ばれる．
c = 0, 1, 2 の場合，総和として取りうる数の種類は，
sum(t)=0,1,2,3,4,5,6 の 7 通りであり，ψ(sum(t + 1))
は，0,1,2 のいずれかを取る．このとき，規則 ψ は37 = 2187 通り考えられる．
例として次の規則を考える：

1.2 チューリングモデル
生物の発生においてなぜさまざまなパターンが自動的にでてくるのかという問題を最初に考えたのは，アラン・チューリングという数学者である [1]．
チューリングは，まず色素細胞の活性の高さを示す活性化因子と，色素細胞の活性の高さをさげる抑制因子という，2 つの化学物質を想定した．このとき系に空間的な構造があり，抑制因子が活性化因子に比べて拡散係数がずっと大きい場合には，活性化因子のピークが周期的に繰り返されるパターンが現れることを見出した．この 2 つの化学物質の化学反応の相互作用によるパターン形成のモデルをチューリングモデルといい，熱帯魚の体表や貝殻の縞のパターンはチューリングモデルによって理解できると考えられている．

2sum(t)6543210ci (t + 1)

1100210

すべてのセルオートマトンの規則を系統的に列挙する
ために，この表の下の値の列を 3 進数列と解釈する．この表における数値列は 1100210 であり，これを 3 進数と見なし，10 進法に直すと，993 となるのでこのコードをコード 993 と番号付けする．

2.3 シミュレーション結果
このセルオートマトンについて単一の灰色セルを初期配置とした場合のシミュレーションを行った．図 1に示すように単純な規則から複雑なパターンができた．

一次元セルオートマトン

2.1 セルオートマトン
セルオートマトンとは，格子状のセルと単純な規則による離散的計算モデルである [2]．
まず，簡単な例をあげる．ある帯状の物体を長さ方向に M 個のセルに分割する．一方の端から，セル 1，セル 2…セル M と番号をふっていき，それぞれのセルが離散的状態変数 c を取るとする．
…

…

ci−1 (t)ci (t)

ci+1 (t)…

図 1: 総和的セルオートマトン (コード 993)．横軸が…

セル，縦軸が時間 (下向きに発展) である．状態 0 を白，状態 1 を灰色，状態 2 を黒として表した．

あるセル i の左側にある r 個のセルならびにセル i の右側にある r 個のセルの集合を，セルの半径 r の近傍セルと定義する．c 自身を含めると，この近傍は 2r + 1個のセルとなる．
以下では，i 番目のセルの時刻 t における状態をci (t) と表記する．次の時刻 t + 1 には，セルの状態はci (t + 1) となる．

3

貝殻模様のシミュレーション

3.1 Ingo Kusch と Mario Markus によるセルオー
トマトンモデル
このモデルは確率的な反応-抑制モデルで，一次元配列を用いて貝殻の模様等をシミュレーションするものである [3]．セルは 2 状態のみで，時間ステップ t でc(t) は 0(休止，無着色) か 1(活性，着色) のどちらかをとるとする．セルが次の時間ステップで活性化されるか非活性化されるかは，各セルに存在する化学抑制

2.2 総和的な規則
各セルが 3 状態をとり，近傍半径を 1 とするセルオートマトンを考える．時刻 t + 1 におけるセルの状
態 ci (t + 1) は時刻 t における両隣にあるセルの状態
ci−1 (t), ci+1 (t) と自己のセル ci (t) に依存しており，次71

因子の量 I(t) に依存する．中央セル c の半径 r 近傍中の活性化セルの数を N で表す．c(t + 1) と I(t + 1) を計算するときに，さらに 2 つの中間状態を考える．すなわち，x = c, I について，x(t) → x1 → x2 → x(t + 1)と定義する．
オートマトンの規則は以下の (i)〜(vi) である．
(i) 抑制因子の減少
図 2:

もし I(t) ≥ 1 ならば，I1 = I(t) − 1，さもなければ I1 = 0

左は本シミュレーション結果 (パラメータ値：r = 1, R = 17, w1 = 1, w2 = 1, m0 = m1 = 0,p = 2 × 10−3 )，右 は Neritina (Vittina) coromandeliana の画像 (http://www.gastropods.com/3/Shell(ii) ランダムな変動による活性因子の産生8203.shtml)

もし c(t) = 0 なら，確率 p で c1 = 1，さもなければ c1 = c(t)(iii) 活性因子による抑制因子の産生もし c1 = 1 なら I2 = I1 + w1 ，さもなければ
I2 = I1(iv) 活性因子の拡散による活性因子の産生もし c1 = 0 かつ N > {m0 + m1 I2 } なら c2 = 1，
さもなければ c2 = c1(v) 抑制因子の拡散I(t + 1) = {hI2 i}(vi) 抑制因子による活性因子の抑制
もし I(t + 1) ≥ w2 なら，c(t + 1) = 0，さもなけ
れば c(t + 1) = c2
ここでの h·i の表記は，半径 R の近傍にわたって平均をとること，また {·} は最も近い整数値をとることを意味する．
このモデルには，実験者が操作できる 7 個の自由パ
ラメータ r, R, w1 , w2 , m0 , m1 , p がある．ここで R は抑制因子の拡散の長さであり，その近傍の平均が規則(v) で規定されている．また，w1 は各時間ステップで生成される抑制因子の量であり [規則 (iii)]，w2 はそれを超えると次の時間ステップでセルが不活性化される閾値である [規則 (iv)]．半径 r は活性化が伝播する長さで，m0 は抑制因子がない [すなわち規則 (iv) でI2 = 0] ときに常にセルを活性化する閾値であり，m1は抑制因子の値 I2 に依存するもうひとつの活性化の閾値である．p は非活性化されたセルがランダムな変動によって活性化される確率である [規則 (ii)]．このオートマトンは，活性化と非活性化セルをランダムに配置し，各セルが初期条件 I(0) = 0 からスタートする．

図 3:

上は本シミュレーション結果 (パラメータ値：r = 2, R = 0, w1 = 10, w2 = 48, m0 = m1 = 0,p = 2 × 10−3 )，下は Olivia porphyria の画像 (http://www.seashellhub.com/Olividae.html)

4

まとめと今後の課題

セルオートマトンモデルを用いて，貝殻模様のシミュレーションをすることができた．また，パラメータや色を自由に変更できるアプレットを作成した．
アプレットの改良，美しい模様を作るために新しいセルオートマトンモデルを提案することが今後の課題である．

参考文献[1] 巌佐 庸，生命の数理，共立出版 (2008)

3.2 シミュレーション結果[2] セルオートマトンと複雑系 (http://www001.upp.
so-net.ne.jp/suzudo/tutorial.html)

このセルオートマトンについての発展を図 2，3 に示す．このように，パラメータ値によって様々な模様が現れ，貝殻と大変似た模様を作ることができる．

[3] Joel L. Schiﬀ，セルオートマトン，共立出版 (2011)72