最新版Unity ML-Agent使用方法

  1. 安装anaconda,并且选择Python3.6版本的。目前ml-agent只支持Python3.6版本的。
  2. 安装过程中勾选配置环境变量。如果最终没有配置好,可以手动配置如下:
    C:\ProgramData\Anaconda3\Scripts
    C:\ProgramData\Anaconda3\Scripts\conda.exe
    C:\ProgramData\Anaconda3
    C:\ProgramData\Anaconda3\python.exe
    
    • 安装后,需要打开一次Anaconda Navigator,以完成安装。
    • 通过在命令行输入:anaconda -V 可以查看到anaconda版本,就是安装成功。
  3. 打开Anaconda Prompt。创建一个新的工作环境。
    conda create -n ml-agents python=3.6
    
  4. 通过如下命令,进入到刚刚新建的ml-agents环境。
    activate ml-agents
    
  5. 安装机器学习工具Tensorflow
    pip install tensorflow==1.7.1
    
  6. 克隆Unity的机器学习工程。
    git clone https://github.com/Unity-Technologies/ml-agents.git
    
  7. 安装运行ML-Agents工具包需要的python包。
    pip install mlagents
    
    pip install mlagents --no-cache--dir //忽略缓存,重新下载安装
    
  8. 如果要修改训练环境,还需要安装环境依赖。
    //通过Anaconda Prompt,进入克隆下来文件的ml-agents文件夹
    cd ml-agents-envs
    pip install -e .
    cd ..
    cd ml-agents
    pip install -e .
    
  9. 用Unity打开克隆文件中的UnitySDK文件夹。其中都是Unity提供好的工程。
  10. 设置发布平台为(PC, Mac and Linux Standalone)
  11. 选择Other Settings->Scription Runtime Version 为 .NET 4.6 Equivalent or .NET 4.x Equivalent
  12. 修改Jupyter notebook的启动目录。
    • 打开cmd,运行jupyter notebook --generate-config生成.jupyter文件夹,其中包含jupyter的配置文件。
    • 打开用户目录下.jupter,其中有个jupyter_notebook_config.py文件,打开文件,找到c.NotebookApp.notebook_dir = '',去掉前面的注释符号’#’,修改为c.NotebookApp.notebook_dir = 'E:\\UnitySpace\\ml-agents',也就是我们克隆下来的工程文件夹。
    • 但是有可能启动的文件夹仍然没有变化。找到Jupyter Notebook快捷方式,右键属性,删除“目标”中的“%USERPROFILE%”。
  13. 例如,打开UnitySDK中的3DBall场景。找到Prefabs中的3DBall,直接对该预制体的修改可以应用到场景中所有它的实例身上。修改3DBall中的Agent的Behavior Name(例如:3DBall_001)。这将表示我们将要训练的一个新模型的名字。很重要!!!
  14. 与该名字对应的,还要通过Jupyter打开ml-agents/notebooks/getting-started.ipynb,修改env_name = "../envs/3DBall_001"
  15. 还可以通过Jupyter打开ml-agents/config/trainer_config.yaml文件,修改其中的训练配置。包括训练方式,训练的步数等。
  16. 打开anaconda prompt;输入activate ml-agents进入到unity机器学习工作空间。
  17. 然后cd到克隆工程的文件夹中,cd E:\UnitySpace\ml-agents
  18. 然后输入开始训练的命令,mlagents-learn config/trainer_config.yaml --run-id=3DBall_001 --train注意修改id后的名字。
  19. 等待出现下面一句话。就可以开始运行Unity了。
    最新版Unity ML-Agent使用方法_第1张图片
  20. 点击运行按钮后,就可以看到训练正在进行。
    最新版Unity ML-Agent使用方法_第2张图片
  21. 通过TensorBoard以图表的方式观察训练的过程。
    • 另外启动一个anaconda prompt窗口
    • activate ml-agents
    • cd E:\UnitySpace\ml-agents
    • tensorboard --logdir=summaries --port=6006
    • 得到如下信息:
      最新版Unity ML-Agent使用方法_第3张图片
    • 打开浏览器,输入上图红线标记的链接,就能观察到图表。
  22. 等待训练完全结束,自动退出后。就能在ml-agents/models文件夹中找到一个3DBall_001-0的文件夹,其中保存着训练好的模型.nn文件。
  23. 将训练好的.nn文件,移动到3DBall项目下的TFModels文件夹中。
  24. 然后,再将TFModels文件夹中的该文件,拖动到Prefabs/3DBall/Agent中的Model属性中。
  25. 保存,运行。

你可能感兴趣的:(Unity,ml-agent,强化学习)