Unity ML-Agents 工具包
Unity 机器学习代理工具包 (ML-Agents) 是一个开源项目,它使游戏和模拟可以作为训练智能代理的环境。我们提供基于 PyTorch 的最先进算法实现,帮助游戏开发者和业余爱好者轻松训练用于 2D、3D 和 VR/AR 游戏的智能代理。研究人员还可以使用提供的简单易用的 Python API,利用强化学习、模仿学习、神经进化或其他方法训练代理。这些训练好的代理可以用于多个目的,包括控制 NPC 行为(在各种设置中,如多代理和对抗),自动测试游戏构建以及在发布前评估不同的游戏设计决策。ML-Agents 工具包对于游戏开发者和 AI 研究人员都是互利的,因为它提供了一个中心平台,可以在 Unity 丰富的环境中评估 AI 的进展,并使其向更广泛的研究和游戏开发者社区开放。
特性
- 17+ 示例 Unity 环境
- 支持多种环境配置和训练场景
- 可灵活集成到您的游戏或自定义 Unity 场景中的 Unity SDK
- 支持通过多种深度强化学习算法(PPO、SAC、MA-POCA、自博弈)训练单代理、多代理合作和多代理竞争场景
- 支持通过两种模仿学习算法(BC 和 GAIL)从示范中学习
- 快速轻松地添加您自己的自定义训练算法和/或组件
- 可轻松定义复杂任务的课程学习场景
- 通过环境随机化训练强健的代理
- 使用按需决策实现灵活的代理控制
- 使用多个并发的 Unity 环境实例进行训练
- 利用 Sentis 提供的本地跨平台支持
- 从 Python 控制 Unity 环境 控制
- 将 Unity 学习环境包装为 gym 环境
- 将 Unity 学习环境包装为 PettingZoo 环境
请参阅我们的 ML-Agents 概览 页面,了解所有这些特性的详细描述。或直接访问我们的网络文档。
发布 & 文档
我们最新的稳定版本是 Release 21
。点击
此处
开始使用最新版本的 ML-Agents。
您还可以查看我们新的网络文档!
下表列出了我们所有的发布版本,包括正在积极开发且可能不稳定的 main
分支。以下是一些有用的指南:
- 版本页面 概述了我们如何管理 GitHub 发布以及每个 ML-Agents 组件的版本控制过程。
- 发布页面 包含发布之间的更改详情。
- 迁移页面 提供了如何从早期版本的 ML-Agents 工具包升级的详细信息。
- 表中的 文档 链接包括每个发布版本的安装和使用说明。请务必始终使用与您使用的发布版本对应的文档。
com.unity.ml-agents
包已通过 验证 用于 Unity 2020.1 及更高版本。验证包的版本号为 1.0.x。
版本 | 发布日期 | 源代码 | 文档 | 下载 | Python 包 | Unity 包 |
---|---|---|---|---|---|---|
develop (不稳定) | -- | source | docs | download | -- | -- |
Release 21 | 2023年10月9日 | source | docs | download | 1.0.0 | 3.0.0 |
如果您是一名对 Unity 作为 AI 平台感兴趣的研究人员,请参阅我们关于 Unity 和 ML-Agents 工具包的参考论文的预印本:点击此处。
如果您使用 Unity 或 ML-Agents 工具包进行研究,我们请求您引用以下论文作为参考:
@article{juliani2020,
title={Unity: A general platform for intelligent agents},
author={Juliani, Arthur and Berges, Vincent-Pierre and Teng, Ervin and Cohen, Andrew and Harper, Jonathan and Elion, Chris and Goy, Chris and Gao, Yuan and Henry, Hunter and Mattar, Marwan and Lange, Danny},
journal={arXiv preprint arXiv:1809.02627},
url={https://arxiv.org/pdf/1809.02627.pdf},
year={2020}
}
另外,如果您在研究中使用了 MA-POCA 训练器,我们请求您引用以下论文作为参考:
@article{cohen2022,
title={On the Use and Misuse of Absorbing States in Multi-agent Reinforcement Learning},
author={Cohen, Andrew and Teng, Ervin and Berges, Vincent-Pierre and Dong, Ruo-Ping and Henry, Hunter and Mattar, Marwan and Zook, Alexander and Ganguly, Sujoy},
journal={RL in Games Workshop AAAI 2022},
url={http://aaai-rlg.mlanctot.info/papers/AAAI22-RLG_paper_32.pdf},
year={2022}
}
其他资源
我们有一个 Unity Learn 课程,ML-Agents: Hummingbirds,提供了 Unity 和 ML-Agents 工具包的简要介绍。
我们还与 CodeMonkeyUnity 合作制作了一系列教程视频:点击此处,了解如何实现和使用 ML-Agents 工具包。
我们还发布了一系列与 ML-Agents 相关的博客文章:
- (2021年7月12日) ML-Agents 玩躲避球
- (2021年5月5日) ML-Agents v2.0发布:现在支持训练复杂的合作行为
- (2020年12月28日) Unity ML-Agents 团队祝您节日快乐!
- (2020年11月20日) Eidos-Montréal 如何创建网格传感器以改进训练代理的观察
- (2020年11月11日) 2020 AI@Unity 实习生致敬
- (2020年5月12日) ML-Agents Unity 包 v1.0发布!
- (2020年2月28日) 使用 ML-Agents 通过自我对战训练智能对手
- (2019年11月11日) 使用 ML-Agents 让您的代理训练速度提升7倍
- (2019年10月21日) AI@Unity 实习生助力塑造世界
- (2019年4月15日) Unity ML-Agents Toolkit v0.8:在真实游戏上更快的训练
- (2019年3月1日) Unity ML-Agents Toolkit v0.7:迈向跨平台推理的一大步
- (2018年12月17日) ML-Agents Toolkit v0.6:改进了大脑和模仿学习的易用性
- (2018年10月2日) Puppo,小柯基:使用 Unity ML-Agents Toolkit 让可爱超载
- (2018年9月11日) ML-Agents Toolkit v0.5,全新 AI 研究资源现已推出
- (2018年6月26日) 用好奇心解决稀疏奖励任务
- (2018年6月19日) Unity ML-Agents Toolkit v0.4 和 Udacity 深度强化学习纳米学位
- (2018年5月24日) 在 Unity 中进行模仿学习:工作流程
- (2018年3月15日) ML-Agents Toolkit v0.3 Beta 发布:模仿学习、反馈驱动功能等
- (2017年12月11日) 在真实游戏中使用机器学习代理:初学者指南
- (2017年12月8日) 推出 ML-Agents Toolkit v0.2:课程学习、新环境等
- (2017年9月19日) 介绍:Unity 机器学习代理工具包
- 概述强化学习概念 (多臂强盗 和 Q学习)
更多来自 Unity 的内容
社区与反馈
ML-Agents Toolkit 是一个开源项目,我们鼓励并欢迎大家贡献。如果您希望贡献,请务必查看我们的 贡献指南和 行为守则。
对于 ML-Agents Toolkit 的安装和设置问题,或关于如何最好地设置或训练代理的讨论,请在 Unity ML-Agents 论坛上创建新线程,并确保尽可能详细地描述问题。如果您在使用 ML-Agents Toolkit 时遇到任何其他问题或有特定的功能请求,请 提交 GitHub 问题。
请通过回复 这个论坛帖子告诉我们您希望在 ML-Agents Unity 包中看到哪些样本。
您的意见对我们非常重要。只有听取您对 Unity ML-Agents Toolkit 的想法,我们才能不断改进和发展。请花几分钟时间 告诉我们。
如有其他问题或反馈,请通过 ml-agents@unity3d.com 直接与 ML-Agents 团队联系。
隐私
为了改善 Unity ML-Agents Toolkit 的开发者体验,我们在编辑器中增加了分析功能。 请参阅 Unity 隐私政策中的“Unity 被动收集的信息”部分。