ml-agents: Unityゲームおよびシミュレーション内でインテリジェントなエージェントをトレーニングするためのツールキット

ml-agents: Unityゲームおよびシミュレーション内でインテリジェントなエージェントをトレーニングするためのツールキット

何を解決するか

ゲーム開発者やAI研究者が、Unityゲームやシミュレーションをインテリジェントなエージェントのトレーニング環境として利用できるようにします。これにより、カスタムトレーニング環境を一から構築する必要がなくなり、複雑なNPCの行動、自動ゲームテスト、およびゲームデザインの決定事項の評価が可能になります。

仕組み

このツールキットは、UnityシーンをPyTorchベースの機械学習アルゴリズムに接続するPython APIとUnity SDKを提供します。深層強化学習(PPO, SAC, MA-POCA, self-play)、模倣学習(BC, GAIL)、およびニューロエボリューション(neuroevolution)を含む、さまざまなトレーニング手法をサポートしています。ユーザーはカリキュラム学習シナリオを定義し、環境のランダム化を使用して堅牢なエージェントを作成し、その後、ネイティブなクロスプラットフォームのInference Engineを使用してデプロイできます。

対象者

  • ゲーム開発者: インテリジェントなNPCを作成したり、ゲームビルドのテストを自動化したりするため。
  • AI研究者: Unityの豊かな3D/2D/VR/AR環境を、新しいAIアルゴリズムを評価するためのプラットフォームとして利用するため。
  • ホビーユーザー: 自身のゲームに最先端のAIを簡単に実装するため。

ハイライト

  • 多様なトレーニング手法: 強化学習、模倣学習、およびニューロエボリューションをサポート。
  • マルチエージェント対応: シングルエージェント、協力的なマルチエージェント、および競争的なマルチエージェントのシナリオのトレーニングが可能。
  • 統合の準備完了: 他のAIツールとの互換性のために、GymまたはPettingZoo環境としてラップすることが可能。
  • 拡張性: ユーザーがカスタムのトレーニングアルゴリズムやコンポーネントを追加することを可能にする。
  • スケーラビリティ: 複数の同時実行されるUnity環境インスタンスにわたるトレーニングをサポート。

Sources