AIでシンプルな「ライフ・シミュレーター」を作ってみた

最近、AIとゲームを作る遊びを楽しんでいます。
つまりゲームを作る作業をゲーム的な遊びとして楽しむわけですが、これが結構楽しくて、AI(Gemini)とプロンプトで会話しながら、ブラウザ(JavaScript)で遊べるプログラムを作ってみました。

今回作った「ライフシミュレーション」はシンプルですが中々面白い動きをします。
原始的な狩猟社会をモデルにしたもので、マップの上に大地と水と森を適当に配置して、そこに40人程度の男(青点)女(赤点)をスポーンして放置するとどうなるか?を観察するものです。

画像をクリックするとゲームが始まります)

【シミュレーションのルール】

・マップのサイズは40x40で初期はランダムに生成される。(リロードで生成)
・シミュレーションは「START / PAUSE」で一時停止ができる。
・初期の住人として性別もランダムな40人の20歳の成人が生成される。
・住民はユニークな名前を持ち個別に区別され、男は青点、女は赤点で表示される。
・生きるために水と森からの食料で生命を維持する。
・住民には平均的な寿命があり一定の確率で死亡する。
・寿命以外に事故や病気等によって一定の確率で死亡する場合がある。
・年齢的に結婚適齢期(15-45歳)に男女が出会うと一定の確率で結婚する。
・結婚すると家(白い四角)を建てるが、 水の上には家は建てられない。
・現状はインブリードの近親交配も認めている。
・家を建てると家を起点として生活を始める。
・一定の確率で子供が生まれる。(最大5名)
・子供は10歳までは親の資源で生活し、10歳以上になると自活する。
・水は普遍的で枯渇することはないが、森は資源量があり食べ尽くすと無くなる。
・森は一定の確率で森の隣か水の隣で成長する。
・人が移動したところは獣道として踏み固められる。
・獣道では森は成長しないが、人が通らなくなると再び大地に戻る。
・移動するためにはコストが掛かり、水や森は移動コストが増大する。
・獣道は移動コストが低く、結果的に村が形成される。
・マップはパレットを選択してドラッグすると変更できる。
・「Inspector Mode」監視モードを選択した場合、住民をクリックすると年齢や家族構成等を表示できる。


実験の結果、あまり水や森の資源が豊かだと住民は移動しなくなり、結果的に獣道も発達せず村も形成されない。また移動量が減ると出会いも少なくなるので、結婚の確率が下がり子孫も繁栄しない。つまりある程度の枯渇状態が社会の発展に寄与するという結果になりました。当然と言えば当然の結果で、ある程度正しいシミュレーション結果だと思います。

現状の設定では人口爆発で森を食い尽くしたあと、2世帯10人ほどが生存し続け、千年くらい放置しても全滅することなく安定します。 不思議な現象ですが、40x40のマップサイズに起因しているのか?面白い結果です。

ライフゲーム(セル・オートマトン)のような数学的なお遊びと違うのは、環境という場と生体の区別があり、生体は運動しますが、それにはコストとエネルギーが必要で、獣道という概念を入れることで、荒廃と再生の自然のバランスをシミュレーションしています。

マップエディターを搭載しているので、色々なマップを作って実験してみてください。また途中でマップ変更するとどうなるか?「神の手」的な遊びもできます。シンプルなルールですが、究極的に削ぎ落としたライフシミュレーターじゃないかと思います。




Amazon M5Stack Cardputer
M5Stack Cardputer


Amazon M5Stack Cardputer
M5Stack Cardputer


Amazon WOODEN.CITY 3D 木製機械モデルセット Willys 4x4
WOODEN.CITY 3D 木製機械モデルセット Willys 4x4


Amazon ROKR 立体パズル 木製 スチームエンジン 蒸気機関車
ROKR 立体パズル 木製 スチームエンジン 蒸気機関車


Amazon ROKR 3Dピンボールマシン
ROKR 3Dピンボールマシン


Amazon 帆船模型
帆船模型


このブログの人気の投稿

空き缶スターリングエンジンの作り方

カードサイズの小さなコンピュータ「M5Stack Cardputer ADV」でソフトシンセは作れるか?

ちっちゃなコンピュータとAIとの付き合い方 M5Stack Cardputer ADV

ファミコンゲームの作り方「X6 Game Player」

Scratchでどこまで作れるか? ゲーム作成ツールとしての実力

小さなシンセサイザーを作っています。M5Stack Cardputer-ADV

この冬の暇つぶしみっけ! TIC-80 tiny computer

実際に動く木製エンジンの作り方 「Wooden engine」

プラダンでカヤックを自作する。【総集編】

レトロゲーム開発環境のTIC-80は流行っているのか?