イウしキー Advent Calendar 2023-12-17 ライフゲームとは何か
初めに
想像以上に何を書けばいいのか悩みました。というのも書きたい内容が紹介であって解説ではないからです。
とりあえず美味しい部分は「ライフゲームの面白い性質」以降です。形だけでも覚えてもらって、興味を持ってもらえたら満足です。
ライフゲームとは
ライフゲームとは、セル・オートマトンの一種です。このセルオートマトンは二次元平面に正方形のセルを隙間なく敷き詰める形で配置されます。また、このセルは縦横に十分大きな長さだけ続いています。イメージとしては全てのセルが正方形のエクセルみたいな感じです。そしてライフゲームの各セルは生と死の二種類の状態を持ちます。
ライフゲームは現在のそれぞれのセルの状態を参考に次の世代へと遷移し、その時それぞれのセルは規則に従い、状態が決定されます。
規則
ライフゲームではいくつかのルールに従って次の世代へと遷移します。
まず初めに、誕生するパターンです。もし現在自身の状態が死状態の時、周囲8マスのうち丁度3マスが生状態の場合、そのセルは次の世代では生状態になります。
次に生存パターンです。もし現在自身の状態が生状態の時、周囲8マスのうち2マスまたは3マスが生状態の場合、そのセルは次の世代では生状態になります。
最後に、それ以外のあらゆるケースでは、そのセルがどのような状態であったかには関わらず、次の世代では死状態になります。
動かす
とりあえずライフゲームを体験できるページを表示してお茶を濁します。他にもGoogleで「ライフゲーム」と検索すると背景がライフゲームであることに気がつけます。
ライフゲームの面白い性質
ライフゲームの面白いパターンにOTCA metapixelと呼ばれるものがあります。これはライフゲーム上でライフゲームを実行可能であるということを表すものであり、上で説明した簡単な規則で複雑な計算を可能にしていると言うのがあります。これはチューリング完全などといった話になるのですがここで話す内容ではないので割愛します。
個人的に好きなライフゲームのパターン
グライダー
これはグライダーというパターンでライフゲームに登場する移動パターンの中で最も簡単なものです。これは4世代経過すると、位置こそ異なるものの、元の形へと戻ってきます。好きな理由は可愛いからです。
銀河
これは銀河というパターンでライフゲームに登場する振動パターンの一つです。これは8世代経過すると同じ位置で元の形に戻ります。好きな理由はかっこいいからです。
グライダー銃
これはグライダー銃というパターンでライフゲームに登場する繁殖パターンの一つです。これは30世代ごとに同じ位置に戻り、グライダーを生成します。好きな理由はロマンがあるからです。
結局何が伝えたいか
ライフゲームは単純な規則で動いていますが、魅力的なパターンを多く持ちます。作り方によっては複雑な計算などを行わせることも可能です。
いままで今までライフゲームを知らなかった人に、とりあえず知って興味を持ってもらいたい。そう思ったので作りました。