Open Source Robotics

精选高质量开源机器人项目、工具和软件,推动机器人社区发展。

Robot Parkour Learning

作者: Ziwen Zhuang, Zipeng Fu, Jianren Wang, Christopher Atkeson, Sören Schwertfeger, Chelsea Finn, Hang Zhao · CoRL 2023

许可协议

  • 开放获取
  • 论文: CC BY 4.0

以下内容均依据论文全文,按其 CC BY 4.0 许可协议使用;其中的图已注明作者。

一句话总结

两阶段 RL(先是可穿透的障碍物,再是真实碰撞)训练五种跑酷技能;DAgger 将它们蒸馏为一个深度图像策略,在低成本的 Unitree A1 和 Go1 机器人上机载运行。

为何重要

该策略在低成本四足机器人上仅使用机载计算、机载深度感知和机载电源运行,无需参考运动数据,并且同一训练流程驱动了两款机器人(A1 和 Go1)。在作者的对比中,正是软约束预训练才让攀爬和跳跃变得可以学会。

问题

跑酷要求机器人感知障碍物,并在高速下从多种敏捷技能中做出选择,但以往的学习方法要么给出多样但无视觉的技能,要么给出基于视觉但专门化的技能,并且使用多项奖励函数或没有自我中心视觉的动物动作捕捉数据。对于低成本的小型机器人来说,障碍物相对于身体尺寸很大,机载深度感知在快速运动中存在滞后(以 1 m/s 运动时 0.2 s 的延迟就是 0.2 m 的误差),而且跑酷会把电机推到极限。

提出的方法

每种技能(攀爬、跳跃、爬行、侧倾、奔跑)都在 IsaacGym 中用 PPO 训练,使用特权障碍物信息,以及一个关于接近 1 m/s 的前进速度、机械能和保持存活的奖励。第一阶段使障碍物可穿透,并在自动课程下惩罚穿透体积和深度(软动力学约束,受直接配点法启发);第二阶段在真实碰撞下微调。随后,DAgger 将五个专家策略蒸馏为一个 GRU 策略,它以本体感知和 48×64 深度图像为输入,部署时采用匹配的深度预处理和 25 Nm 的力矩截断。

关键见解

  • 在早期允许机器人穿过障碍物,并配合穿透惩罚和自动课程,解决了探索问题:没有它,以及使用 RND 探索基线时,都学不会攀爬或跳跃。
  • 由前进进度、机械功率平方和存活奖励组成的单一奖励就产生了全部五种技能,无需逐技能调节奖励,也无需运动数据。
  • 策略需要记忆:攀爬时,后腿必须根据早先深度图像中看到的障碍物尺寸行动,因此 GRU 策略能成功,而 MLP 策略会失败。
  • 用 DAgger 在动作空间中蒸馏,可以把网络权重各不相同的专家策略合并为一个视觉策略,而 RMA 式的隐空间蒸馏无法做到这一点。
  • 仿真(截断、高斯噪声、随机伪影)与真实相机(截断、空洞填补、空间和时间滤波)之间的深度图像经过匹配;攀爬失败时的重试行为在没有编程的情况下自然涌现。

主要结果

  • 真实 A1 室内测试,每种设置 10 次试验:攀爬 0.40 m(机器人高度的 1.53×)成功率 80%,跃过 0.60 m 间隙(机器人长度的 1.5×)成功率 80%,从 0.2 m(机器人高度的 0.76×)下爬过成功率 90%,并通过侧倾挤过 0.28 m 的缝隙;在所有比较的方法中最好,包括 A1 内置的 MPC 控制器。
  • 蒸馏后的跑酷策略在仿真中的成功率(100 次试验 × 3 个随机种子,测试障碍物比训练时更难):攀爬 86%,跳跃 80%,爬行 100%,侧倾 73%,奔跑 100%。
  • 仿真中的基线:Blind 在攀爬、跳跃和侧倾上为 0%,爬行为 13%;MLP 攀爬 0%,跳跃 1%;No Distill 在攀爬、跳跃和侧倾上为 0%;RMA 只在侧倾上运行,为 74%。
  • 用软动力学预训练训练的专家 oracle 在攀爬、跳跃、爬行和侧倾上的平均成功率约为 95%;没有软动力学预训练时,攀爬和跳跃均为 0%。
  • 在户外,机器人跃过了两张石凳之间 0.6 m 的间隙,攀上了连续的 0.42 m 台阶,并从一辆露营推车下爬过。
  • 训练成本:每个专家策略在一台配备 Nvidia 3090 的机器上进行 12 h 软动力学训练加 6 h 硬动力学训练;蒸馏在四台机器上进行,每台配备一块 3090。

局限

  • 仿真环境是手工构建的,因此只有在仿真中加入新的障碍物环境时,才能学习新技能(作者指出)。
  • 策略只使用深度;利用 RGB 及语义信息进行训练留待未来工作(作者指出)。
  • 由于机载计算有限,机载深度只以 10 Hz 刷新,而策略以 50 Hz 运行,使用最新可用的深度嵌入。
  • 真实世界的定量测试只在 A1 上进行,每种设置 10 次试验;0.28 m 侧倾任务没有给出真实世界的成功率。

对领域的影响

入围 CoRL 2023 最佳系统论文奖决选,被引用 356 次。作者将其作为一个用于训练和部署敏捷运动策略的开源系统来介绍;项目页面链接了代码仓库。

摘要

跑酷是腿式运动的一项重大挑战,它要求机器人在复杂环境中快速越过各种障碍物。现有方法通过使用参考动物数据或复杂的奖励,要么生成多样但无视觉的运动技能,要么生成基于视觉但专门化的技能。然而,自主跑酷要求机器人学习既基于视觉又多样的可泛化技能,以感知并应对各种场景。在这项工作中,我们提出了一个系统,使用简单的奖励、无需任何参考运动数据,学习一个包含多种跑酷技能的单一端到端视觉跑酷策略。我们开发了一种受直接配点法启发的强化学习方法来生成跑酷技能,包括攀越高障碍物、跃过大间隙、从低矮障碍物下爬过、挤过狭窄缝隙以及奔跑。我们将这些技能蒸馏到单一的视觉跑酷策略中,并利用其自我中心深度相机将其迁移到一台四足机器人上。我们证明,我们的系统能让两种不同的低成本机器人自主选择并执行合适的跑酷技能,穿越具有挑战性的真实世界环境。

链接

  • arXiv 2309.05665: https://arxiv.org/abs/2309.05665
  • DOI 10.48550/arXiv.2309.05665: https://doi.org/10.48550/arXiv.2309.05665
  • PDF: https://proceedings.mlr.press/v229/zhuang23a/zhuang23a.pdf
  • 代码: https://github.com/ZiwenZhuang/parkour
  • 项目主页: https://robot-parkour.github.io/

本网站需要 JavaScript 才能正常运行。请启用 JavaScript 以浏览我们的开源机器人项目。