InvaderZ - 遺伝的アルゴリズムで進化する新世代のインベーダーゲーム

S 20181115 113807

画面上部から迫り来るインベーダーを砲台で打ち落としていく「インベーダーゲーム」。シューティングゲームの先駆け敵存在として、歴史に名を残すゲームです。

本日紹介する「InvaderZ」は、このインベーダーゲーム風のシステムを踏襲し、敵の"InvaderZ"が遺伝的アルゴリズムによって徐々に進化する、ユニークなシステムを実装したゲームです。

砲台との距離によってフィットスコアが計算され、最も成績のよかったインベーダーの遺伝子を元に、形状や動きが進化した次世代のインベーダーが次々と作られていくシステムです。

InvaderZの遊び方

InvaderZはJavaScriptによって作成されたオープンソースソフトです。自分でダウンロードして実行することもできますが、ライブデモをブラウザ開いて遊ぶのが簡単です。

S 20181115 115336

左右の矢印キーで砲台を動かし、スペースキーで球を発射してインベーダーを撃退します。インベーダーを5体通過させてしまうとゲームオーバーです。

S 20181115 115912

Generation(世代)が進む毎に、インベーダーが最適化されていく様子がわかります。インベーダーの形状は動きに影響していて、世代が進むことでより打ち落とされずらいインベーダーが誕生することが期待されます。

まとめ

InvaderZは遺伝的アルゴリズムをインベーダーゲームに取り入れるというユニークなアイデアからRedditHacker Newsでも注目を集めています。ゲームとしての完成度は改良の余地がありそうですが、遺伝的アルゴリズムをゲームに取り入れる考え方には興味深いものがありそうです。

スポンサーリンク