AIに『ファイナルファイト』の最終戦を倒させてみた…何が起きた?

Reddit r/MachineLearning / 2026/5/4

💬 オピニオンDeveloper Stack & InfrastructureTools & Practical UsageModels & Research

要点

  • 著者はアーケードゲーム『ファイナルファイト』で、デモから学習する行動模倣(Behavior Cloning)によりエージェントを訓練し、1面でどこまで到達できるかを評価しました。
  • トレーニングと評価の実装上の問題として、MultiBinaryの行動表現からエミュレータ入力へのアクション空間のリマッピング、軌跡のアラインメント/オフセットのバグ、さらにLSTMポリシーが評価時と手動ロールアウト時で挙動が異なる点などが挙げられています。
  • エージェントは一定の進展はできるものの、一貫性や生存面で課題が残っており、当該環境では模倣学習だけでは限界があることを示しています。
  • 著者はGAIL+PPOで行動模倣を超える性能向上を試す予定で、データが限られたBCの改善、BC→PPOへの移行手法、部分観測への対応についてコミュニティの助言を求めています。
  • 実験の全体プロセスと結果はGitHubリポジトリで共有されており、他者が追試・確認できるようになっています。
I Trained an AI to Beat Final Fight… Here’s What Happened [p]

みなさん、こんにちは。

私はクラシックなアーケードゲーム(Final Fight)で、行動のクローン学習(Behavior Cloning)をいろいろ試してきました。その結果を共有し、コミュニティの皆さんからフィードバックをいただければと思っています。

セットアップはかなりシンプルです。まず、純粋にデモからエージェントを学習させました(最初は報酬設計の調整はなし)。その後、ステージ1でどこまで到達できるか評価しました。さらに、GAIL + PPO も組み合わせて、模倣を超えてどれくらい性能が向上するか見ていく予定です。

いくつか面白い課題が出てきました:

  • アクション空間のリマッピング(MultiBinary → エミュレータ入力)
  • 軌跡のアラインメント問題(obs/action のオフセットのバグ)
  • LSTMポリシーが、評価時と手動ロールアウト時で挙動が異なる
  • メモリに全部読み込まずに、ロールアウトを効率よく管理すること

エージェントはすでにある程度進められますが、それでも一貫性や生存性にはまだ苦戦しています。

ぜひご意見を伺いたいです:

  • 限られた軌跡でのBC性能の改善
  • BC → PPO へ移行する際のベストプラクティス
  • これらの環境における部分観測への対処

全プロセスと結果を見てみたい場合はこちらがコードです:
notebooks-rl/final_fight at main · paulo101977/notebooks-rl

どんなフィードバックでも大歓迎です!

submitted by /u/AgeOfEmpires4AOE4
[link] [comments]