【ML-Agents】AIにサッカーをやらせるとどうなる?

AIにサッカーをやらせるとどうなる?「ML-Agents」機械学習(ML-Agents)

Unityの公式から、ML-Agentsという強化学習ライブラリが配信されています。
今回はこのライブラリのサンプルであるサッカーを開いて、動作を確認してみます。

ML-Agentsのダウンロード

GitHubからダウンロードできます。

Unity-Technologies/ml-agents
Unity Machine Learning Agents Toolkit. Contribute to Unity-Technologies/ml-agents development by creating an account on GitHub.

インストール方法は、公式のドキュメンテーションで詳しく解説されていたので、そちらをご覧ください。

下記リンクはRelease 12のものです。
https://github.com/Unity-Technologies/ml-agents/blob/release_12_docs/docs/Installation.md

サンプルを試してみた

今回はサッカーのサンプルを試してみます。

動画での確認はこちら

2対2でサッカーをする「SoccerTwos」というサンプルと、2人のキッカーと1人のキーパーがゴールを死守する「StrikersVsGoalie」というサンプルがありました。

プログラムを見てみると、ボールに触れるか点数を入れるとプラスの報酬が与えられ、時間経過か点数を入れられることでマイナス報酬が与えられていました。なお、得点による報酬を最重視しているようで、数値が高くプログラムされていました。

SoccerTwosのデモシーン

SoccerTwosの画像

ゲームが開始すると、中央にボールが生成されます。得点を入れるか、制限時間を超えるとリセットされます。

StrikersVsGoalieのデモシーン

StrikersVsGoalieの画像

こちらのシーンもSoccerTwosと同様、ゲーム開始と同時に中央でボールが生成されます。得点か制限時間の時間のオーバーでリセットされます。

相違点はプレイヤーの人数とゴールが片方塞がれている点です。

感想

AIの強化学習の様子は人間の学習方法と類似していて、興味を持ちました。

ゲームエンジンのUnity・ライブラリ共に無料で利用できるので、気になった方は試してみてはいかがでしょうか?

タイトルとURLをコピーしました