突然変異はデコの『ダーウィン4078』で学びました。
遺伝的アルゴリズムを使い、世代を重ねることによって学習するビックバイパーが、ファミコン版『グラディウス』の1面をクリアするまでの動画がニコニコ動画にアップされ、話題になっています。
動画は続きより。遺伝のチカラ、とくとごらんあれ。
この動画では6フレーム(1/10秒)ごとに、8方向+停止という移動行動と、Aボタンを押すか押さないかという遺伝子をビックバイパーに持たせて、良い結果を出した上位の個体10体から次の世代を作り、1面クリアを目指しています。
スコアと生存時間を5:1の割合で評価基準として設定しており、この基準が高いほど良い結果を出した個体となります。
このプレイの状況をざっくりと説明すると、目隠しをして正確に6フレームごとに移動と攻撃のコマンドを入れているという状況です。敵の出現パターンや動き、パワーアップや地形などは全く学習されません。
パワーアップに必要なパワーカプセルは得点としての評価しかなく、パワーアップを決定させるBボタンも60フレームに1度押すというアルゴリズムで行なっているため、必然的にスピードアップしか選択されない形になっています。
序盤の10世代ぐらいまでは、生存時間が減ってきて退化しているように見えるのですが、実は得点はUPしており進化しているのがわかります。45世代ぐらいになると、動きが同化して成長の収束を感じますが、突然変異もあり収束から新たな成長に繋げている感じです。火山をクリアする190世代や、最終型の224世代の動きを見ると、よくここまで成長したもんだと子を持つ親の気分が味わえますよ。
生物が環境に対して適応し進化するアルゴリズムをゲームに使うなど、一体誰得なんだと思いますが、こういう知識の無駄遣い...大好きっ! 動画の作者は、『スーパーマリオブラザーズ』でも同じ取り組みを行ない、動画をアップしていますので、気になる方はチェックしてみてください。
次回作は、グラディウスの2面を同じ遺伝的アルゴリズムでクリアを目指すそうなので、そちらも期待したいですよね。
【人工知能】グラディウスを学習させてみた(1面)【GA】[ニコニコ動画(原宿)]
(神尾武司)
関連記事