Unity ML-Agentsによる強化学習

2021年04月13日

B4になりました鶴田です。 僕は「Unityを用いた強化学習」を題材に研究をしています。今回はその話です。

Unityは、ゲーム制作をする際に用いられるゲームエンジンで、3Dゲームが作れるように優秀な物理エンジンを備えています。なので、質量や重力、速度、摩擦などを考慮した、現実に似た空間をコンピュータ内に作ることが出来ます。そういうわけで、Unityはシミュレーション環境として有用なのです。

現在僕が行っているのは、ML-Agentsというツールを使用して、Unity内で強化学習の実験をするというものです。具体的には、道に配置したエージェント(ロボット)にカメラを付け、そのカメラ画像からエージェントの進むべき方向を決定できるよう学習させます。 以下に、実際に実験の様子を載せておきます。

Unity_1.png まず、T字路を作成して学習させました。このときはちゃんとエージェント(青い立方体)が目的地(赤い立方体)にたどり着くように、うまく学習してくれました。

Unity_2.png 続いて、複数の形状の道を混ぜて学習させました。このときは形状によっては目的地に到着できない学習結果になってしまいました。失敗です。修正すべき点はいくつか思い当たるので、 改善して成功させたいです。

Unityは、ゲーム開発だけでなく、VRやARアプリの開発、シミュレーション、アニメーション作成など、ほんとにたくさんのことができるみたいです。 今後、強化学習以外にも、楽しそうなことをいろいろ試していきたいです。 去年の夏ごろになんとなく始めたUnityですが、今はやってよかったと思っています。脱Unity初心者を目指して頑張ります!

読んでくださりありがとうございました。それではさようなら。