论文精读:Learning Robust Perceptive Locomotion for Quadrupedal Robots in the Wild——可信时看地形,失真时相信身体

论文信息

  • 题目:Learning Robust Perceptive Locomotion for Quadrupedal Robots in the Wild
  • 作者:Takahiro Miki、Joonho Lee、Jemin Hwangbo、Lorenz Wellhausen、Vladlen Koltun、Marco Hutter
  • 机构:ETH Zürich、KAIST、Intel
  • 期刊:Science Robotics, Vol. 7, Issue 62, eabk2822, 2022
  • 论文:arXiv:2201.08117
  • DOI:10.1126/scirobotics.abk2822
  • 作者项目页:Robust Perceptive Locomotion
  • 实验平台:ANYmal-C
  • 关键词:Teacher–Student、Belief State、GRU、Attention Gate、Elevation Map、Graceful Degradation、Sim-to-Real

一句话结论

这篇论文的核心不是让机器人永远信任地形图,而是训练一个带记忆和 attention gate 的 belief encoder:外部感知可靠时用它提前抬脚、调整姿态并高速通过;遇到雪、植被、透明障碍、反光、遮挡或里程计漂移时,则用本体历史修正错误地形信念,并平滑退化为盲走。

最简流程:

仿真真值地形 + 接触/摩擦/外力
↓ PPO
privileged Teacher
↓ action + latent
噪声高度采样 + 本体历史
↓ 模仿 + 重建
GRU belief + attention gate
↓
可部署 Student policy

ANYmal 完成 Etzel 山徒步路线

原论文图 2:ANYmal 走完 2.2 km、累计爬升 120 m、最大坡度 38% 的 Etzel 山环线。除重新固定脱落的脚套和更换电池外,无人工干预且零跌倒。图片来源:Miki et al., 2022。

1. 论文要解决的核心矛盾

外部感知和本体感知各自解决不同问题。

信息 优点 根本缺点
Exteroception(深度相机/LiDAR/高程图) 在接触前看到台阶、沟壑和坡度 会缺失、漂移、遮挡,也不知道表面是否可支撑
Proprioception(关节、IMU、身体响应) 稳定、可靠,能感知真实接触和滑动 只能在碰到地形后反应

只用本体感知的 2020 方法非常稳,但面对高台阶时必须先撞上去,再用 foot-trapping reflex 重新抬脚。这限制了速度和动作的平滑性。

反过来,如果策略无条件信任 elevation map,那么一块海绵、透明亚克力、雪或一次里程计漂移就可能造成灾难。

因此真正的问题是:

如何让策略在没有手写规则的情况下,自己判断“现在应该信相机,还是信脚下的物理反馈”?

2. 这篇论文相对 2020 Blind Locomotion 改了什么

2020 工作已经建立了一个重要基线:Teacher 看特权信息,Student 用本体历史重建 Teacher latent。

2022 工作在此基础上加入了三个关键元素:

  1. Student 还接收脚周围的高度采样;
  2. 用 GRU 维护跨时间的 belief state;
  3. 用 attention gate 决定外部感知应该直接注入多少。

它的目标不是用视觉取代盲走策略,而是:

可靠 exteroception → 预见地形,快速且平滑
不可靠 exteroception → 依靠 proprioception,保住鲁棒性

3. Teacher–Student 训练总览

Teacher–Student 训练和真机部署总览

原论文图 6(核心方法图):Teacher 在仿真中读取真实环境状态;Student 从噪声高度采样和本体观测中同时模仿动作并重建环境 latent;真机只部署 Student。图片来源:Miki et al., 2022。

3.1 Teacher 看到的信息

Teacher 的状态包括:

  • 可部署的本体观测;
  • 真值高度采样;
  • 足端接触状态、接触力与法向;
  • 每只脚的摩擦系数;
  • 大腿和小腿是否碰撞;
  • 施加在机身上的外力与外力矩;
  • 每条腿的 airtime。

Teacher 用 PPO 训练。由于它直接看到环境真值,不必同时解决“从噪声中猜地形”和“学会走路”两个难题。

3.2 Student 的两个监督目标

Student 不只模仿 Teacher action,还要重建 Teacher 的特权 latent。可概括为:

L=∥ats−atT∥2+∥l^t−ltT∥2\mathcal L = \|a_t^s-a_t^T\|^2 + \|\hat l_t-l_t^T\|^2

动作损失告诉 Student “怎么动”,latent 损失则告诉它“应该如何理解当前环境”。

4. 策略究竟看到什么

4.1 Proprioception

输入 维度
速度命令 3
机身姿态 3
机身速度 6
关节位置 / 速度 12 + 12
关节位置历史(3 帧) 36
关节速度历史(2 帧) 24
关节目标历史(2 帧) 24
CPG 相位信息 13

4.2 Exteroception:208 个脚周围高度点

论文不把整张 elevation map 直接输入网络,而是在每只脚周围用 5 个同心圆采样:

半径 0.08 m 0.16 m 0.26 m 0.36 m 0.48 m
采样点数 6 8 10 12 16

每只脚 52 点,四条腿合计 208 点。这个表示有三个工程优点:

  • 输入直接围绕落脚和抬脚问题;
  • 不依赖固定的相机或 LiDAR;
  • 维度远小于完整地图。

代价是丢失原始点云中的外观、材质、纹理与真正 3D 结构。

5. Belief encoder:不是滤波一张图,而是估计可用于控制的环境状态

Student 先将每只脚的高度采样编码成 24 维,四只脚合计 96 维 exteroceptive latent:

lte=ge(ote)∈R96l_t^e=g_e(o_t^e)\in\mathbb R^{96}

再用两层、每层 50 hidden units 的 GRU 整合历史,形成 120 维 belief state:

bt′=GRU⁡(otp,lte,bt−1)b_t'=\operatorname{GRU}(o_t^p,l_t^e,b_{t-1})

这个 belief 要同时表示:

  • 地形高度;
  • 接触与地面法向;
  • 摩擦和外部扰动;
  • 外部感知的可信程度。

关键点是:belief 不等于 elevation map 的去噪结果。 它是一个为动作决策服务的隐状态,可以融合地图、关节反应、机身滑动和过去记忆。

6. Attention gate 是整篇论文最关键的结构

如果只有 GRU,网络必须把所有当前地形细节缓慢压入 hidden state,可能损失精确高度。因此论文加了一条从当前 exteroceptive latent 到 belief 的 gated skip connection:

αt=ga(bt′)∈R96\alpha_t=g_a(b_t')\in\mathbb R^{96}

bt=gb(bt′)+pad⁡(lte⊙αt)b_t=g_b(b_t')+\operatorname{pad}(l_t^e\odot\alpha_t)

可以把 αt\alpha_t 理解为 96 个连续的“信任旋钮”:

  • 地图干净时,gate 打开,保留精确、当前的地形细节;
  • 地图噪声很大时,gate 关闭,策略更依赖 GRU 记忆和本体感知;
  • 不需要手写“点云少于 N 就切换 blind mode”之类阈值。

这不是高层的二选一 mode switch,而是在 latent 通道级别连续调整信任。

7. 高度图会怎样骗过机器人

真实环境中 elevation map 的缺失、虚假障碍和漂移

原论文图 3:红点是输入策略的高度采样。反光金属、雪、低垂树枝、植被、深雪、里程计漂移和遮挡都会让 elevation map 缺失或提供错误几何。图片来源:Miki et al., 2022。

7.1 传感器失效

  • 反光金属地面产生大量 depth outlier,地图上像一条沟;
  • 雪反射率高且缺少纹理,双目相机可能得到空地图;
  • 黑暗、烟尘、水面、透明材料也会产生类似问题。

7.2 2.5D 表示失效

Elevation map 每个 (x,y)(x,y) 只能存一个高度,因此无法同时表示地面和上方树枝。低垂树枝或天花板可能被投影成一堵高墙。

7.3 几何正确,物理意义错误

相机看见的植被、海绵或雪面可能在几何上是“平面”,但脚落下去会下陷。纯视觉几何无法回答“这个表面能否承重”。

7.4 位姿估计导致地图失效

湿滑或可变形表面破坏了足式里程计的稳定支撑假设。位姿漂移后,连续点云被错误拼接,地图也随之扭曲。

8. 高度噪声不是单一 Gaussian noise

高度采样噪声、belief encoder 和学生训练细节

原论文图 7:训练中对采样点、单脚和整段 episode 分别注入噪声,并用带外感知 gate 的 GRU 形成 belief。图片来源:Miki et al., 2022。

对脚 ll 附近采样点 pp,训练输入大致为:

xp=rpcos⁡θp+ϵpx+ϵfx+wxx_p=r_p\cos\theta_p+\epsilon_{px}+\epsilon_{fx}+w_x

yp=rpsin⁡θp+ϵpy+ϵfy+wyy_p=r_p\sin\theta_p+\epsilon_{py}+\epsilon_{fy}+w_y

hp=h(xp,yp)+ϵpz+ϵfz+wz+ϵoutlierh_p=h(x_p,y_p)+\epsilon_{pz}+\epsilon_{fz}+w_z+\epsilon_{outlier}

这里有四个尺度:

  1. Per-point / per-step noise:模拟局部深度抖动;
  2. Per-foot / per-step noise:一只脚周围整块地图同时偏移;
  3. Per-foot / per-episode offset:模拟持续的地图注册误差;
  4. Intermittent outlier:模拟偶发的大幅错测。

训练轨迹会在 nominal、offset 和 noisy 三种条件间随机切换,概率分别为 60%、30%和 10%。噪声大小还随 Student curriculum 逐步增加。

这种分层噪声比“每个点独立加白噪声”更接近真实建图故障,因为真实错误往往具有空间相关性和时间持续性。

9. 动作空间仍然带有步态先验

策略不直接输出 12 个力矩,而是输出:

at=⟨Δϕl,Δqi⟩a_t=\langle\Delta\phi_l,\Delta q_i\rangle

  • Δϕl\Delta\phi_l:每条腿的相位偏移,共 4 维;
  • Δqi\Delta q_i:每个关节的位置残差,共 12 维。

标称足端轨迹 p(ϕl)p(\phi_l) 用三次 Hermite spline 生成抬脚和落脚轨迹,再通过解析逆运动学转成关节目标:

qi∈ltarget=IK ⁣(p(ϕl+Δϕl+Δϕ0))+Δqi∈lq_{i\in l}^{target}=IK\!\left(p(\phi_l+\Delta\phi_l+\Delta\phi_0)\right)+\Delta q_{i\in l}

这提高了样本效率和真机稳定性,但也意味着它不是完全无先验的 end-to-end torque policy。

10. Reward 的设计思路

总体上包含:

  • 水平速度与 yaw 速度跟踪;
  • 惩罚与命令正交的速度;
  • 限制机身垂向速度、roll/pitch 角速度;
  • 足端 clearance;
  • 大腿、小腿和膝部碰撞;
  • 关节速度、加速度和软限位;
  • 动作一阶/二阶平滑性;
  • 力矩和支撑脚滑动。

一个很有意思的细节是 foot-clearance reward 直接使用脚周围高度采样。这让 exteroception 不只是网络输入,还与动作目标建立明确联系:前方地形更高时应该提前抬脚,但平地上不要无谓高抬。

11. 三个最说明 belief 如何工作的实验

海绵、透明障碍、完全失明和湿滑平台下的 belief 更新

原论文图 5:红点是 elevation map 输入,蓝点是从策略内部 belief 解码出的地形。它展示策略如何利用接触反馈推翻错误视觉,以及传感器完全遮挡时如何退化为本体感知运动。图片来源:Miki et al., 2022。

11.1 看得见但踩不住:海绵块

Elevation map 把海绵当成实心高台,策略因此预先抬脚。但脚落下后海绵无法支撑,本体反馈与预期不一致。belief 随即把对地形高度的估计向下修正,而且足端离开后仍保留这个记忆。

11.2 看不见但确实存在:透明亚克力

传感器把透明台阶当成平地。机器人先按平地走,碰到后 belief 把地形估计向上修正,并切换为跨越动作。

海绵和透明障碍构成一组对称实验:

海绵:视觉说“有”,身体说“没有支撑”
透明块:视觉说“没有”,身体说“有硬障碍”

11.3 完全盖住传感器

作者物理遮住传感器,策略收到随机噪声地图。机器人无法再提前预测楼梯,前脚会撞到立面,下台阶时也会较重地落脚;但它依然能通过身体响应修正 belief,完成上下楼梯而不跌倒。

这正是 graceful degradation:性能变差,但系统不灾难性失效。

12. Exteroception 实际带来了多大收益

感知策略与纯本体感知基线的真机对比

原论文图 4:感知策略和 2020 纯本体感知基线在高台阶、障碍路线和速度上的对比。图片来源:Miki et al., 2022。

12.1 高台阶

  • 纯本体基线从 20 cm 左右开始明显失败;
  • 本文策略可靠跨越最高 30.5 cm 的台阶;
  • 接近 32 cm 以上时,策略会犹豫或侧向避开,而不是盲目冲撞。

收益来自接触前适应:前脚提前抬高,机身前倾,为后腿腾出跨越空间。

12.2 速度

指标 本文 纯本体基线
平地前进/横向速度 1.2 m/s 0.6 m/s
转向角速度 3 rad/s 0.6 rad/s
20 cm 障碍上的速度 无明显减速 被障碍卡住

外部感知的最大价值不只是“走过之前走不过的地形”,更是把反应式运动变成预测式运动,从而在安全的同时提高速度。

13. Attention gate 和 GRU 的消融怎么读

GRU、MLP 以及有无 attention gate 的消融对比

原论文补充图 S2:GRU 在特权信息重建和跨台阶成功率上优于 MLP;对 GRU 和 MLP,加入 attention gate 都能进一步提升结果。图片来源:Miki et al., 2022。

作者比较了四组结构:

  • GRU + gate(本文);
  • GRU without gate;
  • MLP + gate;
  • MLP without gate。

结论是:

  1. GRU 比 MLP 好,说明不能只靠单帧判断地形可信度;
  2. 对 GRU 和 MLP,gate 都能改善表现;
  3. 小噪声时,有 gate 与无 gate 的差异更明显,因为可靠 exteroception 值得通过 skip connection 充分利用;
  4. 大噪声时,两者差距缩小,表明 gate 关闭后结构会趋近本体感知模型,没有牺牲 blind robustness。

因此 gate 的意义不是“噪声大时还能硬用视觉”,而是“视觉可靠时别浪费,不可靠时也别被它害死”。

14. Sim-to-Real 的关键工程选择

14.1 不把传感器绑死在 policy 里

真机管线先将 LiDAR 或主动双目点云融合成 robot-centric elevation map,再采样 208 个高度点。因此作者可以在不重新训练、不微调的情况下更换外感知传感器。

14.2 随机化的不只是机器人动力学

训练同时覆盖:

  • 地形形状和难度课程;
  • 摩擦、外力和接触变化;
  • 高度采样的局部噪声、整脚偏差、episode 偏差和 outlier;
  • 从轻噪声到严重失真的学生课程。

14.3 真机控制链保留了经验先验

它仍使用状态估计、elevation mapping、CPG/FTG、逆运动学、位置目标和底层关节控制。学习策略处于这条工程链中,而不是从原始像素直接到电机力矩。

15. 真实部署的含金量

15.1 Etzel 山长时间徒步

  • 路程 2.2 km;
  • 爬升 120 m;
  • 最大坡度 38%;
  • 31 分钟到达山顶,快于路标给出的人类 35 分钟;
  • 全程 78 分钟,与徒步规划器的 76 分钟基本一致;
  • 无跌倒。

这比短时障碍演示更能证明 robustness,因为长时间部署会累积位姿漂移、地图误差、温度、电量和机械扰动。

15.2 DARPA Subterranean Challenge

该控制器作为 CERBERUS 队的默认 locomotion controller,支持 4 台 ANYmal 在 tunnel、urban 和 cave 三类场地中自主探索超过 1700 m,没有一次跌倒。

环境同时包含烟尘、雾、水、低光、碎石和复杂楼梯,这正是传感器和地图最容易失效的场景。

16. 这篇论文的局限

16.1 Elevation map 是 2.5D 瓶颈

它无法正确表示悬空物、洞穴和同一 (x,y)(x,y) 上的多层结构,也丢失材质与纹理。

16.2 它只隐式使用不确定性

Belief 会学会降低对外感知的信任,但系统没有显式输出一个校准的 uncertainty。遇到狭窄悬崖或踏石后方遮挡区域时,策略可能错误假设地面连续并踩空。

16.3 建图和位姿估计不是端到端学习

经典模块完成点云配准与 elevation map 构建,policy 无法反向调整这些模块。优点是可解释、传感器无关;缺点是前端丢掉的信息后端无法恢复。

16.4 能够鲁棒行走,不等于能完成极端敏捷技能

策略仍然围绕周期步态和局部速度命令构建。需要跳跃、攀爬、低姿钻越或复杂技能组合的任务,还需要后续 ANYmal Parkour 和 Parkour in the Wild 等工作。

17. 与前后三篇工作的关系

工作 外部感知 核心能力 主要代价
2020 Challenging Terrain 无 本体历史推断地形,高鲁棒性 只能接触后反应,速度受限
2022 Robust Perceptive Locomotion elevation map 高度采样 attention belief 在外感知与本体感知之间平滑切换 2.5D 地图丢失材质和悬空结构
2025/2026 Parkour in the Wild 多相机深度图 多专家蒸馏、RL 微调、多技能和 active perception 训练复杂,深度 Sim-to-Real 难

从研究演化看,2022 工作完成了最关键的中间一步:它证明给一个鲁棒的 proprioceptive controller 加入视觉,不必然要牺牲安全性;关键是让融合机制学会什么时候不应该信视觉。

18. 如果我要复现,建议怎么拆

Step 1:先复现纯本体 locomotion

不要一开始就加 elevation map。先确保机器人在平地、坡地和小台阶上能靠本体反馈稳定行走。

Step 2:训练 privileged Teacher

先给 Teacher 真值高度点、接触、摩擦和外力,验证它是否能提前抬脚、前倾机身并稳定通过大台阶。

Step 3:实现多尺度高度采样

先使用仿真真值 height field,将每只脚附近的同心圆采样变换到正确机器人坐标系,再单独测试回转、坡地和跨台阶时采样点是否与脚保持一致。

Step 4:先做 GRU belief,再加 gate

保留四组消融:MLP/GRU × gate/no gate。如果只看最终 reward,很难判断 belief 是否真正学到可信度;应同时解码地形、接触和摩擦。

Step 5:从结构化噪声开始

依次加入:

per-point jitter
→ per-foot offset
→ episode-level drift
→ intermittent outlier
→ 运行中切换 noise regime

每次只加一类,观察 gate、动作误差和 privileged reconstruction 如何变化。

Step 6:专门做矛盾信息测试

不要只测随机噪声。至少包含:

  • 输入说有台阶,但物理上是可压缩表面;
  • 输入说是平地,但物理上有障碍;
  • 整张地图持续漂移;
  • 中途完全丢失 exteroception;
  • 地图恢复后,策略能否重新使用它。

19. 最容易误读的地方

误读 1:Attention gate 就是一个视觉开关

它是 96 维 latent 通道级别的连续权重,不是单一 Boolean mode。

误读 2:解码出的蓝色地形就是策略内部显式地图

解码器只是训练后的分析工具。Belief latent 不必以可解释地图的形式存储信息。

误读 3:有了视觉就不需要碰撞反射

透明、柔软、反光和遮挡地形仍必须靠物理接触消除歧义。本文的价值是把预测与反射结合,而不是消灭反射。

误读 4:这是 raw depth end-to-end policy

它使用经过状态估计和 elevation mapping 得到的 208 个高度采样,不是原始深度图。

误读 5:零跌倒意味着对所有地形都有保证

零跌倒是作者报告的部署结果,不是形式化安全证明。论文也明确讨论了悬崖遮挡、踏石和超出运动技能范围的失败边界。

20. 我认为最值得记住的三点

20.1 Robust perception 不是把传感器做到永远正确

真实世界中不存在永不失效的深度传感器和地图。更实际的目标是让控制器识别它们什么时候不可信,并在信息不足时保持稳定。

20.2 身体是对视觉的最终校验器

视觉提供接触前预测,物理交互提供接触后真值。海绵与透明障碍实验说明,稳健智能需要在这两者之间持续校正。

20.3 Graceful degradation 比平均性能更关键

感知正常时走得快是性能;感知完全失效时只是走得慢、动作变笨,却不会直接跌倒,才是可部署性。

21. 最终评价

这篇论文的价值不在于某个新的 RL 优化器,而在于它给出了一个非常清晰的安全融合原则:

外部感知负责“提前知道”
本体感知负责“最终验证”
记忆负责“保留过去证据”
attention gate 负责“动态分配信任”

与纯盲走相比,它走得更快、更平滑,能提前处理高台阶;与纯视觉相比,它可以在雪、反光、植被、透明物和传感器完全遮挡时继续行走。

它对后续感知运动工作的最大启发是:感知融合不是把多个传感器特征拼接起来,而是学会在不同证据之间分配信任。

参考资料

  1. Miki et al., Learning robust perceptive locomotion for quadrupedal robots in the wild, arXiv:2201.08117
  2. Science Robotics 期刊记录
  3. 作者官方项目页与视频
  4. Lee et al., Learning Quadrupedal Locomotion over Challenging Terrain
知识共享许可协议