機械学習周りのプログラミング中心。 イベント情報
ポケモンバトルAI本電子書籍通販中

汎用行動選択モデルの3vs3対応 part11 行動の強化学習とパーティ生成の交互実行(結果の評価)【PokéAI】

前回、パーティ生成と学習の反復により、各反復で生成されるパーティが定性的に改善されていることを確認しました。 今回は、各反復での学習結果で上位100パーティを抽出し、反復10回分のパーティを混合した1,000パーティでレーティングバトルさせます。反復間での強さの違いを確認するため、パーティが抽出された反復ごとにレートの平均を計算し、下図に示します。

f:id:select766:20210424161314p:plain
各反復で強かったパーティを混合して対戦させてレートを付与し、反復ごとにレートの平均を算出した結果

反復3までは強さが向上していますが、そのあとは若干弱くなってしまっています。現状の学習手法では、計算時間を延ばしても強さの向上に限界があることがわかりました。

レートトップ10のパーティを示します。

レート パーティ
1821 カビゴン,LV55,かいりき,のしかかり,じしん,ソーラービーム
ミルタンク,LV50,のしかかり,どろかけ,じしん,かいりき
メガニウム,LV50,のしかかり,ソーラービーム,かいりき,どろかけ
1797 カビゴン,LV55,のしかかり,じしん,ソーラービーム,かえんほうしゃ
ギャロップ,LV50,つのドリル,ふみつけ,かえんほうしゃ,のしかかり
ケンタロス,LV50,ふみつけ,かえんほうしゃ,のしかかり,つのドリル
1789 カビゴン,LV55,のしかかり,じしん,かいりき,いわくだき
プテラ,LV50,じしん,スピードスター,いわくだき,はがねのつばさ
グライガー,LV50,じしん,かいりき,スピードスター,いわくだき
1784 カビゴン,LV55,じしん,ちきゅうなげ,のしかかり,どろかけ
ニョロボン,LV50,ちきゅうなげ,どろかけ,ハイドロポンプ,のしかかり
サワムラー,LV50,かいりき,ロケットずつき,どろかけ,のしかかり
1769 カビゴン,LV55,かえんほうしゃ,サイコキネシス,のしかかり,じしん
サンダー,LV50,ドリルくちばし,10まんボルト,どろかけ,かみなり
ドククラゲ,LV50,ふぶき,なみのり,ハイドロポンプ,ヘドロばくだん
1768 カビゴン,LV50,じしん,のしかかり,かみなり,すてみタックル
ドードリオ,LV55,そらをとぶ,すてみタックル,のしかかり,ゴッドバード
ガルーラ,LV50,かみなり,じしん,のしかかり,すてみタックル
1767 カビゴン,LV55,じしん,かみなりパンチ,どろかけ,のしかかり
ミルタンク,LV50,かみなりパンチ,のしかかり,どろかけ,じしん
エアームド,LV50,どろかけ,ゴッドバード,はがねのつばさ,そらをとぶ
1767 バンギラス,LV55,げんしのちから,10まんボルト,じしん,かえんほうしゃ
ギャラドス,LV50,10まんボルト,たきのぼり,のしかかり,かえんほうしゃ
ガルーラ,LV50,のしかかり,10まんボルト,じしん,かえんほうしゃ
1765 カビゴン,LV55,おんがえし,サイコキネシス,かえんほうしゃ,ばくれつパンチ
ヤドラン,LV50,ばくれつパンチ,かえんほうしゃ,サイコキネシス,おんがえし
ムウマ,LV50,おんがえし,サイケこうせん,ずつき,サイコキネシス
1764 カビゴン,LV55,おんがえし,じしん,ロケットずつき,どくどく
ハッサム,LV50,おんがえし,どくどく,はがねのつばさ,ロケットずつき
スターミー,LV50,どくどく,ロケットずつき,たきのぼり,おんがえし

やはりカビゴンが極めて強いという結果になりました。前回考察したように、控えのポケモンについては課題が残ります。

トップのパーティの行動を確認しました。

カビゴン,LV55,かいりき,のしかかり,じしん,ソーラービーム
ミルタンク,LV50,のしかかり,どろかけ,じしん,かいりき
メガニウム,LV50,のしかかり,ソーラービーム,かいりき,どろかけ

基本的に、カビゴンが圧倒的に強いためごり押しになります。タイプ相性によってのしかかりとじしんを使い分ける単純な戦法でした。1vs1ではドンファンカビゴンに有利でしたが、ドンファンメガニウムソーラービームで倒されてしまうので補完ができていました。

カビゴンゴローニャモルフォンのパーティとの対戦では、相手に対し有利なポケモンへの交換を繰り返しつつダメージを蓄積するサイクル戦のようにも見える戦略が見えました。

結局のところ、補助技を使ったトリッキーな戦略というのは現れず、カビゴンの攻撃技で大暴れするのが最適解という結果でした。交代により不利な相手への対策も少しはできるようになったといえます。しかし、交代を繰り返すばかりで無駄にダメージを蓄積してしまうループに陥る場合もあり、交代という選択肢がないほうが良いように思われる状況もありました。

3vs3のまとめ

汎用行動選択モデルを用いた1vs1バトルの手法を拡張し、3vs3バトルへ対応させました。そのために、交代を含めた入出力の拡張、バトルが長くなることに対応した補助報酬の提案などを行いました。これにより、3vs3バトルでのパーティ生成、行動の強化学習の一連の流れを実現することができました。得られた結果はカビゴンの攻撃技を連打するのが最強で、一部の状況では交代を有効活用するサイクル戦のような戦略を確認することができました。補助技の活用はまだ成功しておらず、より長期的な戦略をとれるような学習手法を確立することが今後の課題です。

このシリーズはいったん終了として、ゲーム木探索系の手法を進めようと思います。PokéAIの第4巻の物理本を発行できる機会があったら、第2版として3vs3バトルについて追記したいと考えています。