2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Win10でUnity ML-Agents release_6 Install から 環境テストまで。

Last updated at Posted at 2020-09-02

#はじめに

前回Unity ML-Agentsを使ってから新たにメジャーバージョンが出たのでとりあえず実行環境を整えていきます。

参考: Unity Ml-Agents Installation

困ったことがあったら公式を見ること。英語は読むこと。

実行環境

バージョン
Windows 10 1909
Unity 2018.4.26f1
Python 3.6.6
ML-Agents Release 6

ML-Agentsは現時点でUnstableでない最新のRelease 6を使用します。

またRelease 6は、Unityの2018.4もしくはそれ以降、Pythonは3.6.1もしくはそれ以降を使用しなければならない点に注意してください。

#まずは仮想環境作成

Anacondaで仮想環境を作成して元の環境と分けられるようにしておく。

conda create -n ml-agents

pythonのバージョンを指定したい場合は(バージョン3.6とすると)、

conda create -n ml-agents pyhton=3.6

仮想環境を作成後はactivateします。

conda activate ml-agents

これで仮想環境作成は終了。

#ML-Agents Release 6のセットアップ

UnityとPythonのインストールは済んでいるものとします。

まずはGithubからToolkit Repositoryをcloneします。

git clone --branch release_6 https://github.com/Unity-Technologies/ml-agents.git

--branch release_6はrelease 6を指定するタグで、これを除くとmasterブランチのリポジトリをcloneすることになります。masterブランチは最新ですが、unstableなバージョンです。

##com.unity.ml-agentsパッケージをUnityにインストール

先ほどクローンしてきたレポジトリ内にcom.unity.ml-agentsがフォルダがあるのでそれをUnityにインストールする。

  1. Unityを開き、Window -> Package Managerを開く
  2. Package Managerウィンドウの +ボタンをクリックする
  3. Add package from disk...を選ぶ
  4. com.unity.ml-agentsフォルダを開く
  5. package.jsonファイルを選択する

##Pythonのmlagentsパッケージをインストールする

pip3 install mlagents

#Getting Started ガイドを試す

参考: Getting Started Guide

このガイドにEnvironmentを理解する項目があるのですが、自分で環境作成をするならしっかりと読んだ方がいいです。

今回はお試しなのでまずは3DBallのpre-trained modelを使います。他にもいろんなサンプルがあるのでいろいろ試してみましょう。

##pre-trained modelを試す

  1. Project/Assets/ML-Agents/Examples/3DBall/Scenes から 3DBallを開く

  2. ProjectウィンドウからAssets/ML-Agents/Examples/3DBall/Prefabsを開き、3DBallを展開してAgent prefabをクリックする

    Note: 3DBallのプラットフォームは3DBall prefabを使用し作られている。よって12個のプラットフォームを全てアップデートする代わりに、3DBall prefabをアップデートすることによって変更できる。

  3. Projectウィンドウから、Assets/ML-Agents/Examples/3DBall/TFModelsの3DBallをInspectorウィンドウのAgentのBehavior ParametersのModelにドラッグする。(既に設定されているが、それぞれの学習結果をNNModelとして保存しModelに設定することで学習結果を確認できる。)

  4. Sceneの各3DBallのAgentのBehavior ParameterのModelが3DBall(NNModel)になっていることを確認する。

  5. このModelで使用するInference DeviceをCPUにセットする(GPUを使用する場合はGPU)

  6. Unity EditorのPlayボタンを押して3DBallが実行されていることを確認する

##強化学習で新しいモデルを学習させる

  1. terminal windowを開く

  2. Cloneしたml-agentsレポジトリに移動する

  3. 以下のコマンドを実行する

mlagents-learn config/ppo/3DBall.yaml --run-id=first3DBallRun
```

  1. "Start training by pressing the Play button in the Unity Editor"というメッセージが出たら、UnityのPlayボタンを押して学習を始める
  2. 学習結果がml-agents/resultsに格納されるので、first3DBallRunをProjectウィンドウにドラッグしコピーする
  3. Projectウィンドウからfirst3DBallRun/run_logsの3DBallを3DBall prefabのBehavior ParameterのModelにドラッグする
  4. UnityのPlayボタンを押して学習結果を確認する

##トレーニングの進行を確認する

先ほど学習した結果をtensorboardで確認する

tensorboard --logdir results

上のコマンドを実行すると、自身のブラウザのhttp://localhost:6006で確認できる

#まとめ
以上でインストールからテストまでは終了です。
間違いや不足点などございましたらおしらせ下さい。

また、自身で何をしたか確認する等の目的で書いたものなのでわかりづらい点などがあるかと思います。基本的には自身で公式のドキュメントを読んで実行するのがいいと思います。

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?