Unity 用ml-agents机器学习造个游戏AI吧(1) (Windows环境配置)
前言:以前觉得机器学习要应用于游戏AI,还远得很。最近看到一些资料后,突发兴致试着玩了玩Unity机器学习,才发觉机器学习占领游戏AI的可能性和趋势。

使用Unity ML-Agents Toolkit训练的可爱柯基犬Puppo | Unity官方开发者社区
- 机器学习训练出的游戏AI,模型可能数据庞大,但是这完全可以部署于服务器。
- 目前绝大部分游戏AI都是人工制作,工作量庞大。机器学习可以解放生产力,放台主机训练让其自己培养出更实的AI。
ML-Agents介绍
Unity Machine Learning Agents (ML-Agents) 是一款开源的 Unity 机器学习插件, 使得我们得以在游戏环境和模拟环境中训练智能 agents。
它可以使用 reinforcement learning(强化学习)、imitation learning(模仿学习)、neuroevolution(神经进化)等机器学习方法,通过简单易用的 Python API进行控制,对 Agent 进行训练。
此外一提,本文之所以在Windows环境来运行机器学习,是因为对于穷苦学生党来说,尤其是疫情期间剩下一台装不下双系统的笔记本,是无奈的选择。因此如果有条件,尽量还是推荐使用Linux来跑机器学习。
Unity ML-Agents Toolkit Github项目
由于ML-Agents Toolkit项目还在不断更新,还没有一个比较稳定的版本,因此应当留意github项目的版本更新文档有什么新改动。本文目前是使用第三个正式发行版的ML-Agents Toolkit项目。
环境配置
环境示例:Windows 10 + Unity2018.4.1f + Anaconda3 + python 3.8 + CUDA toolkit 10.1 + cuDNN 7.6.5 + tensorflow 2.1.0
要注意各软件版本应当互相匹配,特别是CUDA、cuDNN和tensoflow有版本对应。
1.下载/安装Unity(2018.4或更高版本)
2.下载/安装python(3.7或更高版本)
3.下载/安装/配置Anaconda3
3.1 下载并安装Anaconda3
https://www.anaconda.com/distribution/#windows


3.2 更改环境变量
编辑系统变量的"Path"变量,添加下面这些新路径:
%UserProfile%\Anaconda3\Scripts
%UserProfile%\Anaconda3\Scripts\conda.exe
%UserProfile%\Anaconda3
%UserProfile%\Anaconda3\python.exe
4.配置GPU训练环境
4.1 下载并安装CUDA 10.1通用并行计算架构
https://developer.nvidia.com/cuda-10.1-download-archive-update2
4.2 下载 Nvidia cuDNN 7.6.5深度神经网络的GPU加速库(需要注册Nvdia账号)
https://developer.nvidia.com/cudnn
4.3 添加cuDNN库到CUDA
将下载好的cuDNN库cuda目录的三个文件夹(bin,include,lib),复制覆盖到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1文件夹里。

4.4 再次更改环境变量
添加系统变量:"CUDA_HOME",变量值为
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1
编辑系统变量"Path",添加如下路径:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\lib\x64
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\extras\CUPTI\libx64
系统变量"Path"所有添加的路径如红框圈起来:
4.5 配置GPU训练环境
首先要打开Anaconda Prompt窗口 (可以通过在windows开始菜单搜索)

打开之后,首先要创建一个新的Conda环境,输入如下命令(根据自己具体python版本):
conda create -n ml-agents python=3.8
中间会有问要不要安装新包,输入y并回车就完事了。
为了使用这个环境,还得先激活它,输入如下命令:
activate ml-agents
输入后会看到左边()里的内容变成ml-agents
然后为了安装tensorflow,输入如下命令:
pip uninstall tensorflow
pip install tensorflow-gpu
安装成功界面如下:
5.下载并安装 Unity的ml-agents插件
(如果重新打开了一个新的Prompt窗口记得得重新激活ml-agents)
下载方法:
- 可以直接去github克隆 Unity ml-agents 项目下来 https://github.com/Unity-Technologies/ml-agents
- 或者执行如下git命令:
git clone --branch latest_release https://github.com/Unity-Technologies/ml-agents.git
然后在Anaconda Promptc窗口定位到你clone项目的目录ml-agents文件夹的ml-agents-envs文件夹(本文clone项目路径在C:\project),并使用pip install -e .命令。
cd C:\project\ml-agents\ml-agents-envs
pip install -e .
之后,同样地,对项目目录ml-agents文件夹里的ml-agents文件夹使用pip install -e .命令。
cd C:\project\ml-agents\ml-agents
pip install -e .
如果提示找不到setup.py,说明定位路径不对,要检查一下。
结语
看到这里就已经证明该配置好的配置好了,终于可以关掉电脑,去泡杯咖啡好好休息一下了。如果还想继续的话,不妨看看下一篇博文。
下一篇博文将介绍一个Unity ml-agents 强化学习的入门案例:
作者:KillerAery
出处:http://www.cnblogs.com/KillerAery/
本文版权归作者和博客园共有,未经作者同意不可擅自转载,否则保留追究法律责任的权利。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了