中学生の頃、パソコン雑誌でライフゲームを知った。これは今でも僕を魅惑し続ける奇跡のようなシミュレーションだ。鳥肌が立つほど奥が深い。

ライフゲームは、ゲームっていうから誤解されやすいんだけど、いわゆるテレビゲームではなく、生物の誕生と死滅を、オセロの盤面のような世界で表現するシミュレーションなんだ。

コンウェイというイギリスの数学者が1970年に考案したらしい。結構昔だ。

ライフゲームはルールさえ知っていれば、紙と鉛筆できてしまう。

まず始めに、格子を描いて適当なマスに○を描く。 各○が生物一匹一匹を表している。

誤解しやすいことなんだけど、ライフゲームの生物は動かない。その場に居続けるか、死んで消えるか、新しく生まれるか、それだけなんだ。

生物が次の世代も生きるか、それとも死ぬかは、周りの8個のマス(セルって呼ぶことにする)に他の生物が何匹いるかで決まる。下の図の赤の生物に着目しよう。この生物の周りを薄いピンクで示した。周りに2匹か3匹の生物がいると次の世代も生きながらえる。この生物の周りには2匹の生物がいるので、次の世代も生きることができる。

それ以外の場合、つまり1以下でも4以上では、次の世代で死んで消えてしまう。
寂しいと死んじゃうし、ぎゅうぎゅうでも死んじゃうってことだね。

それぞれの生物に対して周りにいる生物の数を数えてみる。そして、死んでしまうものを赤で、生きるものを緑で数字を書いてみる。

あと、生物のいないセルでも、周りに3つの生物がいると次の世代で新しく生物が生まれる。これは水色で3と示した。

よって、生き残る生物と生まれる生物を合わせると、第2世代の生物は下のようになる。

ルールはこれだけ。

まとめるとこんな感じ。

  1. 生きている生物は、周りに2匹か3匹の生物がいると次の世代も生きる。それ例外は死ぬ。
  2. 生物がいないところでは、周りに3匹の生物がいると、新しく生まれる。

同じようにして第3世代を計算すると、下のようになるね。

こんな感じで永遠と続けていく。これが、ライフゲーム。

で、どこが面白いの?

そう思うかも知れない。それに答えるとすれば、「こんなにシンプルなルールなのに、想像を越える色々な動きをするパターンがあるから」、だ。まあ、見ててよ。

さて、手で描くのが大変になったらプログラムで動かそう。手で描くと時間がかかるけど、プログラムだと一瞬だ。するとパターンが動いて見える。

下のプログラムはJavaScriptという言語で書いている。ポームページ上で動くからとっても便利。

RUNを押すと始まる。タップで生物を作ったり消したりもできる。





はじっこのセルの扱いだけど、ここでは、端の生物は次の世代で必ず死ぬようにしている。

他に、ゲームみたいに左右上下を繋げていしまうというやり方もある。

さて、次は、いろいろな面白いパターンを紹介しよう。そして、もっと大きいフィールドで遊んでみよう。

02 へ

トップに戻る