Reports

Twitter: @mtknnktm.

Prey-Predator系における能力の進化 - 5. Agent-Based Simulationの手続き

これまで

Prey-Predator系における個体能力の進化において,前回(d:id:swarm_of_trials:20080821)までに,個体間の相互作用と進化する個体の能力について考察してきました.
今回はエージェントベースモデルによる進化シミュレーションの手続き・フレームワークについてメモしておきます.
この方法は被食者・捕食者系だけでなく,進化ゲーム理論に基づいたエージェントベースシミュレーションでは,だいたい同様のやり方でできると思います(ただし以下には今回のためだけのトリック(?)が少し含まれています).

手続き

  1. 集団を構成するエージェントを作成(初期集団)
  2. 集団からランダムに1個体を選択し削除
  3. 各個体の適応度を計算
  4. 集団から適応度に比例した確率で1個体を選択し,その個体を複製(一定確率で突然変異も)し,集団に加える
  5. 一定確率で集団中の個体と外部との置き換えをする(集団から1個体選択し,ランダムに生成した個体に置き換える)
  6. 2-5を十分長い時間繰り返す

このやり方では,死ぬ確率は全個体同じ(ステップ2)で,子孫を残せる確率は適応度に比例すること(ステップ3,4),外部との個体の流入出があること(ステップ5)を仮定しています.
ステップ5は,有限集団効果(確率的な揺らぎ)による種(ここでいう被食者や捕食者)の絶滅を防ぐための手続きです.場合によってはこれはなくても(むしろないほうが)簡単になっていいかもしれません.

このやり方で

やってみたいと思います.