住民は赤と青の2タイプに分かれています。彼らは隣人が自分と同じ色なら満足します。隣に住む自分と違う色の住民が一定比率以上になると不満を感じ、引っ越しを考えます。各色の住民が入り乱れて住んでいる状態からスタートし、不満を感じた住民は隣に空き区画があればそこに移動する、ということが繰り返されたとします。すべての住民が同じ原理で動くので、玉突きのように状況は転々として変わっていきます。それを効率よく追跡するため、コンピュータによるシミュレーションを行います。
自分と同じ色の隣人が周囲にいる比率の下限(自分とは違う色の隣人の比率の上限)をRとしましょう。たとえばR=0.5の場合、隣人のうち50%以上が自分と同じ色なら満足し、それより少ないなら不満を感じて移動するというわけです。それ以外にR=0.8、0.3のケースについてもシミュレーションを実行しました。図2は、それぞれのケースで赤と青の住民がどう分布するに至ったかを示しています。
どのケースを見ても、赤は赤同士、青は青同士で集まる傾向があり、分居が起きていることがわかります(完全には分離しておらず、赤と青はいたるところで隣り合っています)。これらのケースの違いは、R=0.5や0.3のケースでは住民の移動が終わり、一種の均衡に達しているのに対して、R=0.8のケースでは、住民の移動が何万回繰り返しても終わらないことです。たまたま赤と青が空間上で完全に分離した状態に達すれば住民の移動は止まります。しかし、放っておくと自然にそうした状態になるわけではなさそうです。
興味深いのはR=0.3でも分居が生じることです。なぜなら、全住民が隣人の70%までが違うタイプでもよいと考えているわけですから、異なるタイプの住民に対してかなり寛容な態度をとっているように思えます。しかし実際には分居が生じています。つまり、せめて30%は同じタイプの住民がいてほしいという、わずかな同類志向があるだけで強い差別心があるケースと変わらない結果になるということです。
分居がどれだけ起きるかは、住民がいない区画がどれだけあるかにも左右されます。そうした条件をいろいろ変えてシミュレーションしてみたい人は、「MASコミュニティ」というサイトで「artisoc」と呼ばれる専用ソフトを入手することをお薦めします。図3のように、レバーを動かして条件を設定し、シミュレーションの進行を格子空間上の分布やグラフを通して眺めることができます。意欲のある人は自らルールを書き換え、住民のタイプを増やしたり、各住民の行動ルールを変えたりしてもよいでしょう。