サイト構成 | 連絡先,業績など | コンピュータ実習 | データの扱い | コンピュータ活用 | 教材(公開) | サポートページ |
ユースケース:Windows で Unity ML-Agents ツールキットを試したい
特記事項: Unity の利用条件、ライセンス条項を確認し、利用すること
特に、次の事項に当てはまらない場合には、よく確認すること
ここで行うこと
目次
サイト内の関連Webページ
注意事項. Chocolatey を使うと、種々のソフトウエアのインストールが楽になる. このとき、インストールしたソフトウエアの利用条件、ライセンス条項は必ず、確認すること.
特に、次のことに気をつけること
※ 「行いたい」というときには、それぞれのソフトウエアの利用条件、ライセンス条項を確認すること
Windows の 「アプリと機能」で、インストール済みのプログラムを見る。 次のソフトがある場合には、アンインストールする
今からインストールを行うので、混乱を防ぐため
注意事項. Chocolatey を使うと、種々のソフトウエアのインストールが楽になる. このとき、インストールしたソフトウエアの利用条件、ライセンス条項は必ず、確認すること.
特に、次のことに気をつけること
Chocolatey の Web ページの記載の手順に従う.
新しい画面に変わるので確認する
※ 実行のとき、エラーメッセージが出ないことを確認すること
choco install -y git.install cmake.install wget 7zip.install
※ システム環境変数Pathは、すでに存在するはず.
次のように,「C:\Program Files\CMake\bin」を付け加える.
C:\ProgramData\chocolatey\bin C:\Program Files\Git\cmd C:\Program Files\CMake\bin
Windowsの画面の表示では、円マークになる
いまのコマンドプロンプトで次を実行し,エラーメッセージが出ないことを確認.
refreshenv where git where git-gui where cmake where cmake-gui where wget
※ 実行のとき、エラーメッセージが出ないことを確認すること
choco install -y anaconda3 python2
「conda config --remove channels conda-forge」でのエラーメッセージは無視して良い
「C:\tools\Anaconda3\Scripts\conda upgrade --all」で、y か n かを尋ねる質問が出たときは、続行したいので「y」
C:\tools\Anaconda3\Scripts\conda config --remove channels conda-forge
C:\tools\Anaconda3\Scripts\conda upgrade --all
C:\tools\Anaconda3\Scripts\conda clean --packages
※ 「反応が遅いなあ」と思ったら、Enter キーを押してみる.
コマンドプロンプトで,次のコマンドを実行
choco upgrade -y all
※ システム環境変数Pathは、すでに存在するはずなので、編集
※ 先頭部分が次のようになるように編集
※ すでに、Pathのなかに、一部分含まれているときは、 その部分を並び変えて、下の順序に一致させる
C:\Program Files\Git\cmd C:\Program Files\CMake\bin C:\Tools\Anaconda3 C:\Tools\Anaconda3\Library\mingw-w64\usr\bin C:\Tools\Anaconda3\Library\usr\bin C:\Tools\Anaconda3\Library\bin C:\Tools\Anaconda3\scripts C:\Python27\ C:\Python27\Scripts C:\ProgramData\chocolatey\bin
Windowsの画面の表示では、次のように、円マークになる
新しく、 Windows で,コマンドプロンプトを管理者として実行.
そして、次のコマンドを実行する
python, pip については、C:\tools\Anaconda3のものが先頭にあることを確認すること. その他については、エラーメッセージが出ないこと.
where git where git-gui where cmake where cmake-gui where python where ipython where pip where conda
python --version
※ エラーメッセージが出なければ OK.
conda info
※ バージョン番号が表示されれば OK.下の図とは違うバージョンが表示されることがある
python -c "import numpy; print( numpy.__version__ )"
このとき 「Original error was: DLL failed: 指定されたモジュールが見つかりません」 というエラーメッセージが出ることがある.
Windows のシステム環境変数 Path に「C:\Tools\Anaconda3\Library\bin」を含めてから、 新しいコマンドプロンプトで実行してみる
端末で,次のコマンドを実行.
conda create -n ml-agents python=3.6
conda info -e
これで、もとからの Python 環境と, 新規作成されたPython 環境(Python のバージョン 3.6,名前は ml-agents)の共存できた。
コマンドプロンプトで,次のコマンドを実行し,Python 環境(名前は ml-agents)に切り替える
activate ml-agents
※ もとの Python 環境に戻るときは「exit」
いま作成した Python 環境で、パッケージの更新などの前準備を行う
端末で,次のコマンドを実行.
activate ml-agents
conda の行は1行ずつ実行
「conda config --remove channels conda-forge」は,conda のチャンネルに「conda-forge」が入っていたら削除する操作(エラーメッセージが出たとしても無視してください).
conda config --remove channels conda-forge
conda upgrade --all
conda clean --packages
エラーメッセージが出ないことを確認
conda info
しばらく待つ
※ Unity などをインストール済みのときは、違った画面になる
※ 実行のとき、エラーメッセージが出ないことを確認すること
choco install -y unity unity-standard-assets unity-linux
https://github.com/Unity-Technologies/ml-agents/blob/master/ml-agents/requirements.txt の記述に従う
いま作成した Python 環境に、種々の Python パッケージをインストールする
端末で,次のコマンドを実行.
activate ml-agents
時間がかかるので待つ
conda install -y tensorflow=1.7.1
conda install -y protobuf=3.6.0
conda install -y grpcio=1.11.0
conda install -y opencv numpy scipy scikit-image matplotlib pillow conda install -y -c spyder-ide spyder conda install -y jupyter pytest docopt pyyaml cython
Windows のコマンドプロンプトで、次のコマンドを実行
1.7.1が表示されることを確認
python -c "import tensorflow as tf; print( tf.__version__ )"
端末で,次のコマンドを実行.
activate ml-agents
※ 実行のとき、エラーメッセージが出ないことを確認すること
cd C:\tools rmdir /s /q ml-agents git clone https://github.com/Unity-Technologies/ml-agents.git
mkdir c:\pytools cd c:\pytools rmdir /s /q imgaug
conda install -y opencv cython scikit-image scipy git clone https://github.com/aleju/imgaug cd imgaug python setup.py build python setup.py install
「pip install」の後ろは、半角スペースと半角ピリオド
※ 実行のとき、エラーメッセージが出ないことを確認すること
cd C:\tools\ml-agents cd ml-agents pip install .
端末で,次のコマンドを実行.説明が表示されれば OK.
※ 実行のとき、エラーメッセージが出ないことを確認すること
mlagents-learn --help
Unity はゲームエンジン.ここでは、Unity を起動し、Unity ML-Agents の設定を行う
https://github.com/Unity-Technologies/ml-agents/blob/master/docs/Basic-Guide.md の記述に従う
スタートメニューを使って起動するのが簡単
Unity ID を持っていないときは、「Sign in with google」などでログインするか、「create one」をクリックして Unity ID を作る
すでに、「Sign in with google」でログインしたことがある場合は、次のような画面が表示される
Unity の利用条件、ライセンス条項を確認し、利用すること
「Edit」 →「Project Settings」 →「Player」 と操作する
次の URL からダウンロードする
https://s3.amazonaws.com/unity-ml-agents/0.5/TFSharpPlugin.unitypackage
うまくダウンロードできないときは、 https://github.com/Unity-Technologies/ml-agents/blob/master/docs/Basic-Guide.md のWebページを開き、 「Setting up the ML-Agents Toolkit within Unity」のところにある 「Download」をクリック
ダウンロードしたファイルを実行する
次のような画面が開くので「Import」をクリック
少し待つ
Unity のプロジェクトの画面で、 「Assets」 →「ML-Agents」 →「Plugins」 →「Computer」のディレクトリに、TenforFlow のファイルがあるのを確認する
マウスの右ボタンを押しながらマウスを動かすと、回転する
マウスのホイールで、前後移動するする
※ 階層の画面(Hierarchy window)は、ゲームオブジェクトの階層構造が表示される画面
Ball3DBrain ゲームオブジェクトのプロパティである Brain 要素の Graph Modelフィールドにドラッグする
※すでに設定済みの可能性があるが念のため
これで、事前学習済みのモデルが設定できた。
「Play ボタン」をクリックして、実行を開始する。
事前学習済みのモデルでバランスをとる様子を確認できる
※ 階層の画面(Hierarchy window)は、ゲームオブジェクトの階層構造が表示される画面
うまくボールを受け止めることができていないことを確認する
※ 実行中のときは保存できないので、実行を停止してから保存する
これで、学習を始める準備ができた.Unity の画面は閉じないこと
端末で,次のコマンドを実行.
activate ml-agents
cd C:\tools\ml-agents
「\」でなく「/」を使う
mlagents-learn config/trainer_config.yaml --run-id=1 --train
セキュリティ警告が出た場合には許可する
copy C:\tools\ml-agents\models\1-0\editor_Ball3DAcademy_1-0.bytes C:\tools\ml-agents\UnitySDK\Assets\ML-Agents\Examples\3DBall\TFModels
※ 階層の画面(Hierarchy window)は、ゲームオブジェクトの階層構造が表示される画面
※ 実行中のときは保存できないので、実行を停止してから保存する
結果を確認する