LoginSignup
4

More than 3 years have passed since last update.

UnityでML-Agentsの環境構築!!

Posted at

初めました強化学習です。
今回は開発環境の構築をします。

開発環境

下記のスペックで行います。
 - OS : Windows 10 Pro
 - CPU : Core(TM) i5-8400 @2.80GHz
 - GPU : NVIDIA GeForce RTX 2060 (6Gのやつ)
 - メインメモリ : 8G

開発環境構築

構築手順を記載します。順番違ったらごめんなさい。

CUDA 9.0インストール

tensorflowが9.0に依存するのでこのバージョンをインストールします。
サイトからCUDAのインストーラーをダウンロードしてきます。
 1.PNG

NVIDIA のGPUを計算用に使用する為のソフトウェアをインストールします。
ドライバーはCUDAインストーラーからインストールしない事をお勧めします。
画像はバージョン違うけど気にしないでね。
3.PNG

cuDNNをインストール

 今回はTensorflowのGPU版も一緒にインストールするのでこの作業を行います。
サイトはここにあります。
ログインしてからダウンロードして解凍したCUDAフォルダをインストールしたCUDAフォルダに入れてください。

Visual Studio インストール

サイトからダウンロード
めんどくさいので省略。
  

Anaconda インストール

これもサイトからダウンロード
うまくいかない時はおそらくSSH認証がうまくできない人だと思います。
めんどくさいのでアーカイブから古いバージョンをダウンロードします。

仮想環境の構築はお好みで、
Numpyを再インストール

pip unsinstall numpy
pip install numpy==1.14.5

Tensorflowのインストール

pip install tensorflow==1.7

mlagentsのインストール

pip install mlagents

後、僕の環境ではこれも必要そうだったので入れました。
docoptのインストール

pip install docopt

Unity インストール

サイトからダウンロードしインストール。特になし。

TensorFlowSharp プラグイン

調べると色々なGithub上でリンクがありますが、
こちらから拾ってきます。

Unity ML-Agent

Githubからプロジェクトをダウンロードしてください。
適当な場所に解凍してください。

Unityのセットアップ

プロジェクトの作成とアセットの追加とプラグインとインポートを行います。

プロジェクトの作成

プロジェクト名:適当(自分はML Projectとしました。)
プロジェクト作成場所:適当

アセットの追加

(Unityプロジェクト/Assets)にML-Agentのフォルダを一式格納します。
6.PNG
ML-Agentsのフォルダにはサンプルが入っています。
不要な場合はExsamplesフォルダを削除してください。

プラグインのインポート

Unityのメニューから「Assets」→「Import Package」→「Custom Package」選択。
7.PNG
「TensorFlowSharp プラグイン」を選択。
8.PNG
「Import」をクリックしプラグインをインポートします。
9.PNG
でここまでやっていくと、下になんか出てます。
image.png
とりあえず探した結果、これっぽいのでファイルを修正します。
Unityの「Console」のエラー項目をダブルクリックしてエラーの出ているファイルを開きます。
image.png
「using System.Runtime.Remoting.Messaging;」の行を削除し保存します。
するとエラーが消えますね。

ビルド設定

ラストスパートです。
Unityのメニュー「File」→「Build Settings」を選択。
「Player Settings」をクリックし、Inspectorウィンドウで設定を行います。
12.PNG

「Resolution and Presentation」の以下の設定に変更します。

設定 説明
Run in Background チェック バックグラウンド実行の有効化
Display Resolution Dialog Disabled Resolutionダイアログを非表示

13.PNG

続いて「Other Settings」の設定項目を以下の設定にします。

設定 説明
Scripting Runtime Version Experimental (.NET 4.x Equivalent) Scripting Runtimeのバージョン設定
Scripting Defined Symbols ENABLE_TENSORFLOW Tensorflowを利用することを指定
Api Compatibility Level* .net 4.x .NET 4 API へのアクセスを指定

14.PNG

以上でUnityのセットアップを完了しました。

動作確認

一応、mlagentsのコマンドが動くか確認します。
コンソール画面を開き以下のコマンドを入力します。

activate <anaconda仮想環境名>

仮想環境がアクティベートされたコンソール画面で
ML-Agentsのフォルダ階層まで移動します。(ml-agents-master\ml-agents)

cd ./ml-agents-master\ml-agents

最後におまじないをドーン。

mlagents-learn

そうすると以下のようなかっこいいロゴがコンソール上に現れます。
なんか警告出てますが、疲れたので無視します。

15.PNG

長かったですが、これで準備が整いました。

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
4