Reports

Twitter: @mtknnktm.

Boid にノイズを加えて相転移させた

はじめに

次の文献の追実験をしてみました.
ちなみに,以下で書いていることの中には,元の論文に書いて無い私の感想や解釈なども混じっているので注意してください.

文献

Boid(鳥もどき)は鳥の群れのような動きを,各鳥に簡単な行動ルールを与えるだけで再現するモデルで,複雑系の代表的なモデルの一つです.
やったことは,この記事のタイトル通りで,各鳥の動きにノイズを加えて相転移現象を観察してみました.

この論文では,単純な非平衡自己組織化モデルとして,Boid(自己組織化による鳥の群れ)を用いて,そこに内在している相転移の性質を調べるのが目的のようです.
このモデルそのものは現実の具体的な現象と直接対応するわけではありませんが,私たちの身の回りには非平衡な自己組織化のように見える現象はたくさんあり,非常に重要かつおもしろい現象だと思います.
特に,心臓のポンプのような動き(各細胞が同期して振動),私たちの思考(ニューロンによる動的なパターン形成?)などのように多くの生命現象は非平衡な自己組織化現象だと思います.

モデル

この論文では一般的な Boid をよりシンプルにしたモデルを用いています.シンプルですが Boid の特徴的な振る舞いを十分に表していると思います.
おおまかにどのようなものかというと,

  • エージェント(鳥)は一定の速さで移動する.
  • 自分の近く(半径 r 以内)にエージェントがいれば,それらの進行方向の平均に自分の進行方向θを変える.
  • ただし,進行方向には常に一定のノイズηが加えられる.

というものです.

以下で具体的に記述します.
エージェントは L \times Lのトーラス空間を移動します.
エージェント i の移動は位置 \vec{x}_iを次式に従って更新することで表現されます.

 \vec{x}_i(t + 1) = \vec{x}_i(t) + \vec{v}_i(t) \Delta t(1)

ここで,速度 \vec{v}_i (t)のノルム |\vec{v}_i (t)|は一定で v とします.
 \vec{v}_i (t)の角度(移動方向)を \theta (t)とし,移動方向の変化は次式に従って更新することで表現します.

 \theta_i (t + 1) = <\theta(t)>_r + \Delta \theta(2)

 <\theta(t)>_rはエージェント i の半径 r 内にいるエージェントの方向 \theta(t)の平均です.この項によってエージェントは同じ方向を向いて移動するようになります.
 \Delta \thetaは範囲 [-\eta/2, \eta/2]の一様乱数です.これはエージェントの移動に関するノイズです.

実験

エージェントの群れ行動の秩序度合いを表す値として以下を考えます.
 v_a = \frac{1}{Nv} \left| \sum _{i=1}^N \vec{v}_i \right|
秩序度 v_aは全エージェントが同じ方向を向いていれば 1 に,完全にバラバラならば 0 になります.
よって,この値だけでエージェント群の振る舞いについて大まかに知ることができます.

ということで,ノイズηがエージェント群の秩序度v_aに与える影響について見ていきたいと思います.
その他のパラメータは,v = 0.1,r = 1.0,L = 20,N = 1000,Δt = 1.0 に設定してシミュレーションしました.

十分に時間がたった後の v_aの平均に関するηの影響を下図に示します.
f:id:swarm_of_trials:20081224220349p:image
ノイズηが小さいときはv_aは 1 に近く,非常に秩序立った振る舞いをしていることが分かります.
v_aがそれなりの値を持っているのはη = 3.0 ぐらいまでで,それ以上ではv_aはほとんど 0 になっています.
この図ではそれほどはっきりしていませんが,Nを非常に大きくすると,v_aがそこそこの値のときと 0 に近いときの境界は明確になり,それは相転移であることが予想されます.
論文中ではこの境界(臨界点)においていろいろ調べていて,相転移の臨界点における特徴的な性質が存在していることを示しており,ほぼ相転移であると言っていいと思います.

次に,η = 0.01のときのスクリーンショットを示します.水色の軌道は適当に選んだエージェントの過去300ステップ(300Δt 時間)の軌道です.
f:id:swarm_of_trials:20081224220348g:image
非常に大きな一つの群れとなり,また水色の軌道も方向性を持っていることから,秩序立った振る舞いをしていることがわかります.

以下はη = 2.5のときのスクリーンショットです.
f:id:swarm_of_trials:20081224220347g:image
η = 0.01と比べるとややバラバラしてますが,群れがある程度できていること,水色の軌道からそれなりに方向性をもっていることから,ある程度は秩序立った振る舞いをしていると言っていい手思います.

以下はη = 4.0のときのスクリーンショットです.
f:id:swarm_of_trials:20081224230925g:image
エージェントの向き・位置関係はバラバラで,また,水色の軌道もランダムに動いているだけのように見え,秩序は無いと言っていいと思います.

まとめ

集団行動をする力(秩序化の力)とバラバラの方向を向く力(乱雑化の力)の2つのせめぎ合いによって,群れ行動をする相とバラバラに行動する相が現れ,その間に相転移が存在することが示唆されました.
この論文では前者が式2の<\theta(t)>_r,後者が \Delta \thetaです.

論文ではノイズηだけでなく,密度 N/Lに関しても相転移が起こることや,こういった非平衡系における相転移について議論されています.
興味のある方は読んでみてください.