概要
Unityでcartpoleの環境し,ML-Agetnsを使って学習させます.
ML-Agentsを使った学習を行う人の助けになればいいと思っています.
学習を行うための流れはこのようになります.
- ML-Agentのインストール
- モデル(CartPole)の作成
- モデルの学習
この記事では「2.モデルの追加」について説明します.
cartpole作成
ここでは,こちらに表示されているようなcartpoleを作成していきます.
まず,シーンとして「CartPole」と名付けて作成します.シーンとは、Unityのプログラム上の場面、画面を指します。 Unityゲームは、複数の画面で構成されており、タイトル画面、ゲーム画面、ゲームクリア・ゲームオーバー画面、スコア画面等、複数の画面が含まれます。 こうした画面をシーンと呼び、それぞれのシーンをタイトルシーンやゲームシーンのように呼びます。
画面下部にあるProjectウィンドウから必要なファイル・シーンを作成します.
まずAssetsの中にCartPoleフォルダを作成します.フォルダは左クリックしてからCreate->folderから作成することができます.またFile/New Sceneから新しいシーンを作成しCartPoleと名付けて作成したフォルダに保存します.
また上記のフォルダは以下のような役割があります.
- Material
- カートやポールなど実際にシーンで使用するオブジェクトなどを入れる
- Script
- TFModels
Materialにはカートやポールなど実際にシーンで使用するオブジェクトなどを入れます.
次にsceneを開いてHierarchyウィンドウから以下のようにオブジェクトを追加します.オブジェクトの追加は左クリックしてから3D objectを追加してください.
追加する3D Objectはcube, sylinder,planeを一つづつ追加します.それぞれの名前はCart,Pole,Planeの名前で追加します.またCartとPoleはTrainingAreaという空のオブジェクトをCreate Emptyから作成し,そこに入れます.
それぞれの大きさ・位置はこちらの画像を参考にしてください.数値の変更はInspectorウィンドウから変更できます.