机器人成功完成了徒步旅行
三个要点
✔️ 使用特权信息的教师和学生策略的两阶段策略学习
✔️ 考虑到传感器的不确定性,纳入外部信息
✔️ 在登山道上跑得和人一样快
Learning robust perceptive locomotion for quadrupedal robots in the wild
written by Takahiro Miki, Joonho Lee, Jemin Hwangbo, Lorenz Wellhausen, Vladlen Koltun, Marco Hutter
(Submitted on 20 Jan 2022)
Comments: Science Robotics, 19 Jan 2022, Vol 7, Issue 62.
Subjects: Robotics (cs.RO)
code:![]()
本文所使用的图片要么来自论文、介绍性幻灯片,要么是参考这些图片制作的 。
简介
在这篇文章中,我们介绍了一篇论文,通过结合从传感器获得的外部信息和每个关节的位置等内部信息,我们成功地创造了一个四足机器人,它可以非常稳定和快速地移动,以至于它可以以与人类相同的速度跑完一条徒步路线。这篇论文是这里之前一篇文章的续篇。本文与前文的主要区别在于,利用外部信息使机器人对地形的适应性更强。
在原始论文作者的网站上有一个机器人的操作视频,这将有助于你更好地了解它。
结果
首先,我们要看一下我们所创建的控制器的性能。实际的文件从不同的角度描述了性能,包括室内和地下测试,但在这里我们将重点讨论在阿尔卑斯山最具特色的徒步旅行的结果。
围绕瑞士Etzel山的徒步旅行进行了测试。赛道长2.2公里,高度差为120米。为了完成这条路线,徒步旅行者必须经过陡峭的山丘、高台阶、岩石表面、湿滑的地面和树根。事实上,考虑到运动强度,徒步旅行计划者的难度指数是三个级别中最难的。
实施拟议方法的机器人成功地在78分钟内完成了这一困难的课程,没有摔倒过一次。这与徒步旅行规划师建议的人类76分钟相当。而在上升过程中,他们以31分钟到达半程,比人类的预期时间快了4分钟。
方法
本节介绍用于配置控制器的方法。它包括以下三个阶段
- 学习老师的措施
- 学生政策学习
- 在现实世界中进行部署
我们将在下一节中更详细地研究这些问题。
学习老师的措施
我们将学习一种教师策略,利用特权信息来选择最佳行为,以便以后在学习学生策略时参考。该系统被训练成在随机生成的地形上遵循恒定的速度。该算法是PPO,策略由多层感知器(MLP)表示,该感知器被训练为输出每个行动的平均值和方差。
观察状态和行为
观察状态由三组信息组成:内部观察状态、外部观察状态和特权信息。内部观察状态包括身体和每个关节的位置和速度,而外部观察状态包括每条腿在五个不同半径上采样的空间高度。特权信息包括在现实世界中无法观察到但对行走有用的信息,如地板的摩擦系数。
我们使用中心模式生成器(CPG)来构建行动空间。首先,我们准备一个腿尖轨迹,以实现基本的周期性行走运动。这意味着,如果我们指定一个腿和它的相位,我们可以确定它的尖端位置。然后通过分析解决位置的反运动学问题,计算出关节的位置。在这一点上,飞机是可以行走的,但我们可以对每条腿的相位和关节位置进行微调,以便在更困难的地形中获得灵活性。这意味着,动作空间有16个维度,4个维度用于4条腿的相位修改,12个维度用于12个关节的修改。
措施的结构
该解决方案由三个MLPs组成。该解决方案由三个MLP组成:一个外部观察状态编码器、一个特权信息编码器和主网络。这些编码器中的每一个首先将外部观察状态和特权信息转换为更紧凑的潜在表示,然后与内部观察状态一起输入到MLP。编码器也在学习学生措施的过程中使用,从而帮助转移教师措施所获得的知识。
奖励
我们将对遵循目标速度的人给予正奖励,对违反约束的人给予负奖励。第一个正向奖励是飞机的速度在目标速度上的投影,如果速度高于目标速度,则奖励+1,如果低于目标速度,则奖励呈指数衰减。为了实现更平稳的运动,引入了消极的奖励,如对身体方向的限制,或对个别关节的速度或翻滚的惩罚。
课程设置
为了逐步提高措施的性能,使用了两种课程:一种是自适应地生成地形,另一种是在学习过程中改变噪音和奖励。对于第一种,我们使用粒子过滤技术来生成最有效的地形供代理学习。第二种是根据迭代的情况,改变决定噪声和奖励的惩罚项的重要性的系数。这与自适应地形生成不同,后者的数值只是由迭代次数决定。
学生政策学习
一旦我们创建了一个可以使用特权信息在各种地形中运行的教师措施,我们就把这些知识提炼成一个可以只使用现实世界中的信息采取行动的学生措施。我们使用与学习教师策略时相同的环境,但在外部观察中加入噪音。这种噪声模拟了在现实世界中可能遇到的外部观察状态的各种错误。
当然,也没有可以直接观察特权信息的传感器,所以我们采用了一种方法,用一系列外部和内部观察到的状态来捕捉无法观察到的信仰状态的信息。
学生策略由一个递归信念状态编码器和一个MLP组成。信念状态编码器接收一个内部观察状态、一个嘈杂的外部观察状态的潜在表示和一个递归网络的隐藏状态,并返回一个信念状态。这个信念状态和内部观察状态被输入到策略中,由策略决定行动。我们学习将信念状态与外部观察到的状态和特权信息的潜在表征相匹配。这使得信仰状态拥有关于环境的信息,可以帮助我们行走。
MLP的结构与有监督策略的结构相同,有监督策略的训练网络可以直接使用。这有助于加快训练的早期阶段。
学习是通过监督下的学习进行的,它使两种损失最小化:行为损失和重建损失。行为损失是由教师和学生的行为测量的平方误差给出的,用于纠正学生的行为,使其像教师一样。重建损失被计算为无噪声高度样本特权信息和信仰状态解码器之间的平方误差。
高度样本随机化
在学生措施的训练过程中,一个参数化的噪声模型被用来向采样的高度信息注入随机噪声,这是一种外部观察状态。两种类型的测量误差被模拟出来
- 测量点的水平错位
- 身高差异
这些都是由正态分布的样本值决定的。差异也是由映射的可靠性决定的,这将在后面讨论。
这两个噪音被应用于三个范围,每个范围都有不同的方差。每个扫描点、每条腿和每个情节。扫描点和腿部的噪声每小时重新采样一次,而剧情的噪声在剧情之间是固定的。
此外,为了应对不同的现实条件,在剧情开始时确定映射的可靠性,并相应地使用噪声。有三种类型的噪声:几乎没有噪声、高偏移和高噪声,其百分比为60%、30%和10%。
最后,为了学习不同地形之间的平滑过渡,在模拟器上将地形划分为一个网格,在扫描高度时,为每个单元设置的不同偏移量被加入。
信念状态编码器
为了整合内部和外部信息,我们引入了一个门控编码器。这是一个受到门控RNN和多模态信息融合启发的想法。
编码器学习α,一个自适应门控因子,以控制外部信息通过的速度。
首先,内部和嘈杂的外部状态的潜在和隐藏表征被RNN编码,以获得即时信念状态。然后,眼前的信念状态被用来计算注意力向量α,这决定了有多少外部信息被纳入信念状态。
在解码器中使用类似的门来重建特权信息和外部观察状态;RNN架构使用门控循环单元(GRU)。
实施
最后,我将描述现实世界的实现。我们用ANYmal C做机身,它有两个不同的传感器配置:一个圆顶激光雷达传感器和一个英特尔Real Sense D435深度传感器。有两种不同的传感器配置,一个圆顶激光雷达传感器和一个英特尔Real Sense D435深度传感器,该策略使用PyTorch进行训练,部署时不需要拍摄和微调。高程图以20Hz的速度更新,而测量值则以50Hz的速度移动。
快速映射是通过使用GPU的并行处理实现的。这在保持稳定和快速处理以及快速行走速度方面发挥了重要作用。
摘要
外部感知允许在地形预测的基础上进行快速和优雅的运动,并能在接触发生之前纠正步态。如果外部感知不完整或不正确,控制器会顺利过渡到完全依赖内部感知。对外部和内部感知的整合是持续学习的,这使得该方法易于使用,不需要启发式或手工制作的规则。
至于未来的扩展,论文中提到了三点。第一个是关于明确地利用信息的不确定性。目前,当没有信息时,我们只使用内部信息,并假设图像是平的。因此,如果信息不确定,机器人可以向前移动一条腿来检查地板的状况。第二点是对外部数据的处理。目前,我们没有直接处理从传感器获得的数据,但我们通过插入一个称为高程图的层,建立一个不依赖于传感器类型的模型。然而,在创建高程图的过程中,有一些信息被遗漏了,因此,直接使用从传感器获得的原始信息进行控制会更有效。最后,人们提出的另一个问题是不可能实现与正常行走相差甚远的运动。例如,当腿被卡在一个狭窄的洞里或越过一个高台阶时,就不可能恢复。
与本文相关的类别