NVIDIA Corp. 的研究团队多年来一直致力于应用图形处理单元或 GPU 技术来加速强化学习。这家总部位于加利福尼亚州圣克拉拉的公司上周宣布了 Isaac Gym 的预览版,这是其用于人工智能和机器人研究的新物理模拟环境。
NVIDIA表示,强化学习 (RL) 是机器学习中最有前途的研究领域,它已显示出解决复杂问题的巨大潜力中国机械网okmao.com。基于 RL 的系统在具有挑战性的任务中取得了超人的表现,从围棋和国际象棋等经典策略游戏 到星际争霸 和 DOTA等实时计算机游戏 。
此外,强化学习方法也有望用于机器人应用,例如解决魔方 或 通过模仿动物学习运动。NVIDIA 声称现在更容易进行 RL 训练,因为曾经需要数千个 CPU(中央处理单元)内核的任务现在可以使用 Isaac Gym 的单个 GPU 进行训练。
带有 Isaac Gym 和 NVIDIA GPU 的 RL 超级计算机
到目前为止,大多数机器人研究人员被迫使用 CPU 内核集群来进行训练 RL 算法所需的物理精确模拟。在一个较为知名的项目中,OpenAI 团队使用了近 30,000 个 CPU 内核(由 920 台计算机组成,每台计算机具有 32 个内核)来训练其机器人解决魔方问题。
在类似的任务中, 学习灵巧的手动操作,OpenAI 使用了 384 个系统的集群,具有 6,144 个 CPU 内核和 8 个 Volta V100 GPU。它需要近 30 小时的培训才能达到最佳效果。这种在手的立方体物体定向对于灵巧的操作来说是一项具有挑战性的任务,具有复杂的物理和动力学、许多接触和高维连续控制空间。
Isaac Gym 包含一个此立方体操作任务的示例,供研究人员重新创建OpenAI 实验。该示例支持训练循环和前馈神经网络,以及有助于模拟到现实转移的物理属性的域随机化。NVIDIA 表示,借助 Isaac Gym,研究人员可以在大约 10 小时内在单个 A100 GPU 上取得与 OpenAI 超级计算机相同水平的成功。
端到端 GPU RL
Isaac Gym 通过利用 NVIDIA 的 PhysX GPU 加速模拟引擎实现了这些结果,使其能够收集机器人 RL 所需的体验数据。
NVIDIA 称,除了快速的物理模拟外,Isaac Gym 还支持在 GPU 上进行观察和奖励计算,从而避免出现严重的性能瓶颈。特别是,消除了 GPU 和 CPU 之间昂贵的数据传输。
该公司表示,以这种方式实施时,Isaac Gym 可以实现完整的端到端 GPU RL 管道。
Isaac Gym 提供 API
Isaac Gym 提供了一个基本的应用程序编程接口 (API),用于创建和填充机器人和对象的场景,支持从 URDF 和 MJCF 文件格式加载数据。每个环境都根据需要复制多次,并且可以同时模拟而无需与其他环境交互。
Isaac Gym 提供了一个基于 PyTorch 张量的 API 来访问物理模拟工作的结果,允许使用 PyTorch JIT 运行时系统构建 RL 观察和奖励计算,该系统将执行这些计算的 Python 代码动态编译为 CUDA 代码,并在其上运行GPU。
观察张量可以用作策略推理网络的输入,产生的动作张量可以直接反馈到物理系统中。NVIDIA 表示,观察、奖励和动作缓冲区的推出可以在整个学习过程中保留在 GPU 上,无需从 CPU 读回数据。
英伟达表示,这种设置允许在单个 GPU 上同时运行数万个环境,使研究人员能够轻松运行以前需要在其桌面本地本地运行整个数据中心的实验。
英伟达艾萨克健身房人工智能
资料来源:英伟达
Isaac Gym 还包括一个基本的近端策略优化 (PPO) 实现和一个简单的 RL 任务系统,但用户可以根据需要替换替代任务系统或 RL 算法。此外,虽然包含的示例使用 PyTorch,但用户还应该能够与基于 TensorFlow 的 RL 系统集成,并进行一些进一步的定制。
NVIDIA 列出了 Isaac Gym 的以下附加功能:
支持各种环境传感器——位置、速度、力、扭矩等。
物理参数的运行时域随机化
雅可比/反向运动学支持
该公司表示,其研究团队一直在将 Isaac Gym 应用于各种项目,可在其博客上找到。
NVIDIA Isaac Gym 入门
NVIDIA做出了以撒软件开发工具包(SDK)提供的最后一年。它建议对机器人应用程序的强化学习感兴趣的研究人员或学者下载 并试用 Isaac Gym。
Isaac Gym 的核心功能将作为 NVIDIA Omniverse 平台和 NVIDIA Isaac Sim(基于 Omniverse 的机器人模拟平台)的一部分提供。在此之前,NVIDIA 表示将向研究人员和学者提供这个独立的预览版本,以展示基于 GPU 的端到端 RL 的可能性并帮助加速他们的工作。