今日の遺伝

遺伝的アルゴリズム考察

・育成型弾幕STG試作

もう日付が変わっているわけだが。

巨大なボスが出るようなSTGを妄想していたら、多関節→ツリー構造→遺伝的アルゴリズムと変な具合に思考が飛躍したので、遺伝的アルゴリズムについて調べてみた。AI関係の本とかをあさったりもしたが結局Wikipedia以上の情報はなかったし、それで恐らく全てなのだろう。

興味深いので使ってみたいと思っているのだが、思いつく使い道がAIの作成と弾幕の作成しかない。しかし遺伝的アルゴリズムの前提として、遺伝子の評価値の導出が簡単であるということがあるそうなので、AIも弾幕もあまり合わない。

AIは格ゲーか戦略系のゲームを考えているが、評価値を求めるにはAI同士を戦わせる程度しか思い浮かばず、十種類の個体を十世代進めるだけでも結構な時間を要しそうなので厳しい。それで作るAIが一つだけならまだしも、格ゲーであればキャラクターごとに別のAIにする必要があるのでさらに時間がかかる。あとひとつの遺伝子に相当する、AIの思考モジュールの単位をどう扱うかという問題もあって難しそう。

弾幕は、評価値を求めるには人間が避けるか弾幕を避けるAIを作って避けさせるぐらいしか浮かばないのだが、前者では人間の労力が大きすぎ、後者ではまともなAIをどう作るかという問題が生じる。弾避けAIを作るには、人間が作ったまともな弾幕を使って学習させるのがいいのだろうが、それもまた手間がかかる。

遺伝的アルゴリズムについてこういった思考を展開したあと、ツリー構造が使いたくなったので育成型弾幕STGを試作してみた。ボスを育成して大きく・強くしていくというコンセプトで試作してみたのだが、頭に描いていたイメージよりも美しさが全くなかったので没ろうかと思っている。ボスのデザインをもっと愛着がわくようなものにすればいいのかもしれないが、それだと巨大化させていくうちにどんどん妖怪になっていくので幾何学的な図形にするしかない。

構造がいかにも遺伝的アルゴリズムを使いたくなる形だったのだが、やはり評価値が越えられない壁として立ちはだかる。