ライフゲームとバリエーション【2】 | すた・ばにら

すた・ばにら

2019/11/29にYahoo!ブログ「すた・ばにら」より移植処理しました。

 

先に紹介したソフトウェアでは、生誕・維持・死滅の条件を自由に設定してシミュレーションを行うことができる。ライフゲームが生命体の過疎や過密が次世代に与える影響を示唆するかも知れないという問題から離れて、純粋に確率的な問題を元に別のルールを考えてみた。

 

これまで試した限りでは、殆どの設定条件は初期配置とはあまり関係なく「つまらない」結末を迎えてしまう。たちどころに死滅し、小さな固定あるいは推移パターンを残して一面が「荒野」になるか、逆に有史以来どの都市も体験したことのないほど生きた住民で埋められ超過密状態へ移るか、放送を終えた後のテレビが砂の嵐を表示するが如く、生と死のセルがランダムに推移するかである。

 

これよりはもう少し興味深いパターンとして、17/35ルールなるものを見つけた。これは「近傍に存在する生きたセルが3個または5個なら誕生し、1個または7個なら維持、それ以外は死滅」というルールである。

 

この場合でいろいろな初期配置を設定して世代を進めてみると、オリジナルのライフゲームと同様の現象が観察される。世代が進んでも不変で推移するものや、一定のサイクルを巡回するパターンが存在する。前者では2個の生きたセルが頂点で接して近傍にそれ以外の生きたセルがない環境であり、再度近傍に生きたセルが訪問しな限り、現状維持で推移する。

 

後者では例えば次のようなパターンがある。これは4サイクルで推移する。
イメージ 1
4サイクル推移するパターンは他にもある。2サイクルのパターンもあり、稀だが3サイクルも存在するようだ。もっと長いサイクルで推移するパターンが存在するかどうかは(現在の17/35ルールは元よりその他の変種においても)分からない。このあたりの事情は、数論の世界の「友愛数」や「社交数」に似たものがある。

 

充分多くの生きたセルを含む初期配置を与え、それが世代推移でどのように変化するかを観察してみた。

 

このソフトでは、マウスでセルをクリックすることで任意に生きたセルを設定できるし、乱数配置ボタンを押せば、一定個数ずつランダムに生きたセルをばらまいてくれる。沢山の生きたセルを設定するのにボタンをクリックし続けるのは大変だが、幸いキーボードのPキーを押しっ放しにすれば高速に配置できる。

 

ランダムに配置した場合、数百個程度ではなかなか世代推移で持続できない。だんだんと島が萎んで単一パターンや巡回パターンのみの配置に帰着されてしまう。巡回パターンも今のところ最多でも4サイクルで推移するものである。もっと長いサイクルで推移するものが存在するか、あるいはどこまでも持続する初期配置は存在するかが興味の対象となる。

 

以下は、初期配置で2,000個程度を置いてスタートさせた直後の状態である。

 

イメージ 2

 

面白いことに、初期配置はランダムだから正方形領域の中で均等に散らばっているものの、世代推移させるとすぐに一定の外周を持つ島状となる。それも島が2つに千切れることはあまりなく、正方形領域に収まる程度の島がうねうねと蠢いている。

 

注意すべきなのは、あくまでも正方形領域の内で扱っているので、領域の境界部では例外的な処理が施される点である。無限に広がる平面ではないし、上下左右で繋がっているわけでもない。したがって端部では近傍となるセル個数が異なる。ここがどう処理されるかは、ソフトウェアの仕様にも依るかも知れない。正方形領域内でかなり長期間持続できる初期配置も、実際には領域からはみ出して無限に広がっていくことがあり得る。

 

こうしたソフトウェアの仕様に目をつむって複数回実行させ、概ね以下のような傾向を持つことが分かった。

 

(1) どの初期配置も有限世代後には単一または複数サイクルから成る比較的小さな「群島」だけを残した壊滅状態になる。

(2) 十分長期な世代変遷を得るには初期配置では2,000個程度の生存者が必要である。

(3) 初期盤面の面積は9,025(95×95)だが世代進行時は概ね1,600~3,200個程度で推移する。

(4) 生存者が初期盤面の30%を越えることはない。また、初期盤面の10%を割ると殆ど回復せず滅亡に向かう。

 

(1)は一見驚異的に思えるかも知れないが、有限な広さの盤面で進める限り実は自明なことである。この盤面内でいつまでも滅亡に向かわない事態があるとすれば、それは非常に長いあるサイクルを巡回する場合に限られる。盤面が有限だから、その上に展開される生死パターンも有限である。

 

簡単な計算で分かるが、9,025セルを持つ盤面で取り得るパターンは 2^9025 通り存在する。これは確かに非常識なほど大きな数(十進法で書き下せば2717桁)であるが、有限な値である。1秒に1パターンで推移するなら、2^9025 秒以内に必ず初期配置と同じパターンへ到達してしまう。そして恐らくはそれよりもずっと短い時間で既に出た別のパターンへ到達し、巡回することになるだろう。もっとも明確な巡回パターンを発見し、私たちの目の色が黒いうちにその巡回長を突き止めることが可能であるか否かとなればまた別問題である。

 

(2)以下は、これまで調べてきた間の経験則に基づくものであり、絶対的なことは言えない。あくまでも初期配置をランダムに設定した場合である。もっとも頻繁に観測されるシナリオを挙げてみよう。

 

神は9,025セルの地に2,000人前後の種を蒔いた…

彼(彼女)らには性別はなく、専ら近傍の環境によってのみ増減を演ずる運命である…
そして神は命じた…「与えられた運命に沿って動け」
そう…”産めよ殖やせよ”とは一言も言わなかった…

彼らは近傍なしでは生きていけない定めであるせいか、世代推移が始まった後すぐに寄り集まった…
外周は不定形で、世代が進む毎に不定期に変化する…

彼らの員数が短い世代で急増したり急減したりする事象は滅多に起こらない…
概ね穏やかに減りまた増える…
地の端には寄り付かないようで、常に一定幅を保って暮らしている…

員数が1,000を割ったら、それは彼らの非常事態である…
増殖活動が奏効する場合もあるが、員数が減るほど死滅の危機が近づいてくる…
特に員数が400あたりを割り込めばもはや回復は絶望的で、先に待つのは死滅のみである…

 

特に興味深いのは、外周部で例外的処理が行われることを差し引いても、今まで試されたすべての初期配置が例外的な若干の群島のみを残して滅亡に向かったという事実である。即ち1~4サイクルで推移する小さないくつかの群島だけが残り、ゼロにならない代わりにもう永遠に増えることもなく巡回するパターンに落ち着く。

 

その巡回パターンへ陥るまでの平均経過世代数は全く予測できない。ランダムに2,000程度配置しても僅か数百世代で終焉することがあれば、数十万世代経た後にやっと巡回パターンへ入る事例もある。これまで試行された中でもっとも長続きしたパターンでは実に57万世代を超えている。

 

それであるにもかかわらず、いずれも有限時間内に結果が現れている。57万世代を超えて終焉したケースも、実行時間レベルで言えば精々十数分である。盤上で取り得るパターンが 2^9025 通りという途方もない大きさであることを考えれば、数百万、数千万世代の持続があってもおかしくはない。しかし実際には思ったよりも早い終焉を迎えている。

 

これは盤上の末端部処理の都合で異なる状態の配置が次世代処理によって同一状態へ押し込められているのが原因かも知れない。彼らの生活可能領域が二次元方向へ無限に続くならもっと長い持続があり得るだろうし、そもそも巡回せずどこまでも無限に勢力拡大する初期配置もあり得るだろう。

 

2~4サイクルという短い巡回を持つ群島はいくつか存在するものの、それよりも長く構成員も多い巡回群は今のところ見つかっていない。この事実について、本質的には異なるものの先の数論に関する特定のグループ - 即ち友愛数や社交数を初めとする連鎖 - の存否について、類似した説明が出来るのではなかろうかと気付いた。