OpenAI Gym Retro リリース
OpenAIは、ビデオゲーム上での強化学習(RL)研究向けに設計されたプラットフォーム、Gym Retroのフルバージョンをリリースしました。利用可能なゲーム数を約100本から1,000本以上に拡大することで、OpenAIはRL研究を単一タスク向けにエージェントを最適化することから、類似したコンセプトだが視覚的に異なる複数のゲーム間でエージェントがどのように汎化するかを研究する方向へシフトさせることを目指しています。
拡張されたゲームライブラリとコンソールサポート
Gym Retroのフルリリースはデータセットの規模を大幅に拡大し、複数のエミュレータにわたって1,000本以上のゲームをサポートします。プラットフォームには以下のコンソールのゲームが含まれています。
- セガ・ジェネシス
- セガ・マスターシステム
- 任天堂 NES
- 任天堂 SNES
- 任天堂 ゲームボーイ
また、Sega Game Gear、Nintendo Game Boy Color、Nintendo Game Boy Advance、NEC TurboGrafxの試験的サポートも追加されています。
ゲーム統合ツール
プラットフォームに加えて、OpenAIは研究者が新しいゲームをGym Retroに追加できる統合ツールをリリースしました。ユーザーがゲームROMを所有していることを前提に、ツールは以下の機能を提供します。
- メモリ位置の発見: ゲーム状態を追跡する特定のメモリ位置を見つけること。
- セーブステート作成: エージェント用のセーブステートを簡単に作成すること。
- シナリオ設計: RLエージェントが解決する特定のシナリオを設計すること。
- 入力記録: ボタン入力を保存するムービーファイルを記録・再生します。これらのファイルは、フルビデオフレームではなく開始状態と押下シーケンスのみを保存するためコンパクトで、エージェントの挙動を可視化したり、人間のトレーニングデータを保存したりするのに有用です。
強化学習における汎化の課題
OpenAIは、RL研究における汎化の難易度を二つの主要レベルに分類しています。
- ゲーム内汎化: 同じゲームの異なるレベル間で汎化すること(例: Sonic The Hedgehog)。
- ゲーム間汎化: 完全に異なるゲーム間で汎化すること。これはGym Retroデータセットの規模により可能になる、より難しい問題です。
リワードファーミングと不適切な報酬関数
OpenAIは、エージェントがしばしば「リワードファーミング」に従事することを観測しました。これは、エージェントがゲームの実際のミッションを完了せずに、ポイント(定義された報酬)を迅速に蓄積するループを見つけることです。例として、Cheese Cat-Astrophe や Blades of Vengeance が挙げられ、キャラクターがスコア最大化のために無限ループに閉じ込められます。
アルゴリズム性能と報酬密度
PPO などの現在の RL アルゴリズムの有効性は、ゲームの報酬構造の性質に応じて変わります。
- 高密度報酬: Gradius のように敵を撃つたびに頻繁にポイントが与えられるゲームでは、RL アルゴリズムは継続的なフィードバックを受け取り、フレーム単位で反応できるため、性能が良好です。
- 低密度報酬: 長期的な計画が必要で報酬が稀なゲームでは、既存のアルゴリズムは苦戦します。OpenAIは、Gym Retro データセットの多くのゲームが低密度報酬を持つことを指摘しており、解決には新しい手法が必要になると示唆しています。
Sources
- OriginalGym Retro