Unity上で強化学習によるAIを利用するにはUnity ML-Agentsという開発ツールが知られていますが、この度、Unity ML-AgentsがAmazon SageMaker RL上で動作する環境がML Solutions Labの協力のもと作成され、github上に公開されています。(https://github.com/aws/amazon-sagemaker-examples/blob/master/reinforcement_learning/rl_unity_ray/rl_unity_ray.ipynb)
本セッションは、この機能の原理と使い方について解説することがメインとなります。 Unity ML-Agents自体は、オンプレのマシンでも利用できますが、なぜAWSの、しかもAmazon SageMaker RL上で利用すると嬉しいのか、利点を解説し、開発までの全体像を解説します。次に後半では、実際に自分のゲームにキャラクターAIを組み込むにはどうしたらいいのか、Unity ML-AgentsのAPIの使い方を中心にコードレベルで解説した後、そのバイナリをAWSにアップロードして実際にSageMaker RLのJupyter Notebookの画面でコードを確認しながらどのようにAIを学習させ、推論を実行し、シミュレーションをするのかを順を追って詳しく解説します。最後に、この応用例として、作成したキャラクターAIをゲーム環境内で自由に動かし、行動をシミュレーションさせることによって、ゲーム内の新規ステージやフィールドのデバッグやレベルバランスの調整のためにも応用できることを説明します。