一句话定位

RSS 2021 的腿式机器人里程碑:把 sim-to-real 拆成”特权信息 base policy π + 在线估计环境 extrinsics 的 adaptation module φ”两阶段——φ 只用最近 0.5s 的本体感觉状态-动作历史,在不到 1 秒内估出一个 8 维环境隐向量 ẑ,让一只 12kg 的 Unitree A1 在完全仿真训练、零真机微调的条件下走过沙地、泥地、油面、草丛、碎石、上下台阶等大量训练时从未见过的地形。

背景与定位

论文提出的范式是 privileged base policy + online extrinsics estimation(在线系统辨识的神经网络化),与同期 learning-quadrupedal-locomotion-challenging-terrain(Lee et al. 2020, ETH/Intel)的 teacher-student 蒸馏是一对孪生工作,但两者在”student/adaptation 用什么、何时适应”上分道扬镳:

  • Lee et al. 2020(最接近的对比工作):teacher 有特权信息,student 用 TCN 从长历史蒸馏出一个盲式策略;但它依赖手工的预定义轨迹生成器(PMTG)与学习到的 actuator network 等领域知识。RMA 明确宣称不用任何 reference trajectory / 预定义足端轨迹生成器,靠仿生能量学奖励从零学出步态。
  • 域随机化(Tobin 2017 / Peng 2018):训练时对参数加宽范围求鲁棒,但”用鲁棒性换最优性”,学出过度保守的策略。RMA 把它当 Robust baseline 打。
  • 在线系统辨识 / 隐向量优化(Yu et al. 2017 SysID;Peng et al. 2020 AWR):在真机上用 rollout 优化系统参数或隐编码。RMA 的核心洞察是——不必辨识真实物理参数 e_t,只需直接估计 extrinsics z_t(“如何改变行为来纠偏”的低维非线性投影),这解决了参数可辨识性问题(不同参数可能对可观测量有相同效果),且端到端优化保证 z 的估计”导向正确动作”而非”ground-truth 正确”。
  • 适应速度是核心卖点:RMA 适应耗时 <1s;论文点名 Peng et al. [41] 需要采集 4–8 分钟(50 个 5–10s 的 episode)数据才能适应——在机器人还没学会走路时采这种数据会摔坏硬件。

作者把 φ 类比为 Kalman 滤波器:从可观测历史推断隐状态。训练侧类比为”给定 (输入, 输出) 对用神经网络逼近优化问题的解映射”,即把系统辨识从优化问题变成一次前向推理。

模型架构

RMA = base policy π + adaptation module φ,两者在部署时异步、无中央时钟并行运行。

状态 / 动作空间

  • 状态 x_t ∈ R^30:12 关节位置 + 12 关节速度 + 躯干 roll/pitch(2)+ 4 个二值足端接触指示。
  • 动作 a_t ∈ R^12:12 个可动关节的目标关节角(位置控制),经 PD 控制器转成力矩 τ = Kp(q̂ − q) + Kd(q̇̂ − q̇),其中 q̇̂ 设为 0。
  • 特权环境向量 e_t ∈ R^17:质量及其在机身上的位置(3 维)+ 电机强度(12 维)+ 摩擦(标量)+ 局部地形高度(标量)。

Base policy π

  • 3 层 MLP,隐藏维 128。输入 (x_t ∈ R^30, a_{t-1} ∈ R^12, z_t ∈ R^8),输出 12 维目标关节角。
  • 部署时 100 Hz。

Environment factor encoder μ(仅训练阶段用)

  • 3 层 MLP(隐藏 256、128),把 e_t ∈ R^17 编码成 extrinsics z_t = μ(e_t) ∈ R^8
  • 关键:z 是 e 的低维非线性投影,8 维即够,把可辨识性歧义压掉。

Adaptation module φ

  • 先用 2 层 MLP 把最近的 state/action 嵌成 32 维表示;
  • 再用 3 层 1-D CNN 沿时间维卷积捕捉时序相关,各层 [输入通道, 输出通道, kernel, stride] = [32,32,8,4]、[32,32,5,1]、[32,32,5,1]
  • 展平后线性投影得 ẑ_t = φ(x_{t-k:t-1}, a_{t-k:t-1})。历史长度 k = 50(对应 0.5s)。
  • 部署时 10 Hz(因为要处理 50 步历史,算得慢)。

异步部署设计(论文强调这是”seamless deployment on low-cost robots”的关键):φ 每 ~0.1s 更新一次 ẑ(10 Hz),π 用最近一次的 ẑ 以 100 Hz 出动作,两个进程无同步、无对齐时钟。合理性在于 extrinsics 变化慢、机器人状态变化快,二者解耦。论文实测:若不解耦、直接让 base policy 吃状态-动作历史,(a) 步态不自然、仿真性能差,(b) 板载只能跑到 10 Hz,(c) 失去异步设计。

数据

RMA 完全在仿真中训练(RaiSim 模拟器),无真机数据、无仿真标定。

  • 地形:RaiSim 内置 fractal terrain generator(fractal octaves=2、lacunarity=2.0、gain=0.25、z-scale=0.27)。对地形不做课程,从固定难度随机采样地形剖面。
  • 环境随机化范围(Table I,训练 / 测试)
    • Friction: 训练 [0.05, 4.5] / 测试 [0.04, 6.0]
    • Kp: [50, 60] / [45, 65]
    • Kd: [0.4, 0.8] / [0.3, 0.9]
    • Payload (kg): [0, 6] / [0, 7]
    • Center of Mass (cm): [-0.15, 0.15] / [-0.18, 0.18]
    • Motor Strength: [0.90, 1.10] / [0.88, 1.22]
    • Re-sample probability(episode 内每步重采环境参数的概率): 训练 0.004 / 测试 0.01
    • 测试范围比训练范围更宽,用来验证外推能力。
  • 动作/标签来源:φ 的监督标签 z_t = μ(e_t) 完全由仿真给出,无需人工标注。
  • on-policy 数据采集(关键 curation):若只用训练好的 π 配 ground-truth z 展开来采历史,数据里全是”完美走路”的轨迹,φ 对偏离专家轨迹不鲁棒。RMA 借鉴 DAgger(Ross et al. 2011)——用随机初始化 / 不完美的 φ 预测的 ẑ 去 rollout base policy,把由此产生的状态-动作历史配 ground-truth z 训 φ,迭代到收敛,从而见到足够的探索轨迹、部署更鲁棒。
  • 规模:Phase 1 训练中共模拟 1.2 billion steps;Phase 2 共模拟 80 million steps

训练方法

两阶段流水线(Algorithm 1):

Phase 1 — 联合训练 π + μ(model-free RL)

  • PPO 训 15,000 iterations;每 iteration 采 batch 80,000 个 transition,均分 4 个 mini-batch。学习率 5e-4。
  • PPO 细节:动作 log-prob ratio clip 到 [0.8, 1.2],value clip 到旧值的 0.8–1.2 倍;loss = surrogate policy loss + 0.5 × value loss;不用 entropy 正则,但约束高斯动作分布的 std > 0.2 保证探索;GAE 的 λ=0.95、γ=0.998;Adam β=(0.9, 0.999)、ε=1e-8。
  • 仿生能量学奖励(10 项,是学出自然步态的关键):① Forward min(v_x, 0.35);② Lateral+Rotation −‖v_y‖² − ‖ω_yaw‖²;③ Work −|τ·(q^t − q^{t-1})|;④ Ground Impact −‖f^t − f^{t-1}‖²;⑤ Smoothness −‖τ^t − τ^{t-1}‖²;⑥ Action Magnitude −‖a^t‖²;⑦ Joint Speed −‖q̇^t‖²;⑧ Orientation −‖θ_{roll,pitch}‖²;⑨ Z-Acceleration −‖v_z^t‖²;⑩ Foot Slip −‖diag(g_t)·v_f^t‖²。缩放系数依次 20, 21, 0.002, 0.02, 0.001, 0.07, 0.002, 1.5, 2.0, 0.8。最大前进速度限 0.35 m/s。
  • 惩罚项课程(防止一上来只有负经验、学成原地不动):给惩罚项 3–10 加一个小乘子 k_t,初始 k0=0.03,按固定课程指数增大 k_{t+1} = k_t^{0.997};质量/摩擦/电机强度等扰动难度也随训练线性增大。

Phase 2 — 监督学习训练 φ

  • 目标:min MSE(ẑ_t, z_t) = ‖ẑ_t − z_t‖²,z_t = μ(e_t)。
  • Adam 优化器,1000 iterations,学习率 5e-4,batch 80,000 分 4 mini-batch,on-policy 数据(见上)。
  • 直接估 z 而非 e:论文强调”典型系统辨识预测 e_t,而 RMA 只估 z_t,它只编码环境该如何改变行为”。

Infra(训练 / 推理工程)

  • 训练硬件与时长:Phase 1(π+μ,PPO)约 24 小时,普通台式机 + 1 块 GPU,期间模拟 1.2 billion steps;Phase 2(φ)约 3 小时,同样 1 GPU,模拟 80 million steps。全程单卡,成本极低。
  • 模拟器:RaiSim(刚体+接触动力学,per-contact iteration 方法);参考实现走 RaisimGymTorch。episode 最长 1000 步,早停条件:机身高 < 0.28m、|roll| > 0.4 rad、pitch > 0.2 rad。控制频率 100 Hz,仿真时间步 0.025s。
  • 推理 / 部署硬件:Unitree A1 四足(18 DOF,其中 12 个可动,每腿 3 电机,约 12 kg,0.35m 高)。传感:电机编码器给关节位置/速度、IMU 给 roll/pitch、足端传感器给二值接触。位置控制,PD 增益固定 Kp=55、Kd=0.8
  • 推理频率:base policy π 100 Hz,adaptation module φ 10 Hz,异步并行,无中央时钟;板载算力有限也能跑(异步设计正是为此)。适应完成时间 <1s
  • 精度 / 并行细节:未披露(单卡训练,未提混合精度或多卡并行)。

评测 benchmark

仿真对比(Table II,3 个随机种子 × 每种 1000 episode,测试时每步 0.01 概率重采参数)

方法Success%TTFRewardDistanceSamplesTorqueSmoothnessGround Impact
Robust [DR]62.40.804.621.130527.59122.504.20
SysID56.50.744.821.170565.85149.754.03
AWR41.70.654.170.9540k599.71162.604.02
RMA w/o Adapt52.10.754.721.150524.18106.254.55
RMA73.50.855.221.340500.0092.854.27
Expert(上界)76.20.865.231.350485.0785.563.90
  • RMA 全面胜过所有 baseline,且仅零样本(Samples=0)就逼近拿到真值 z 的 Expert 上界;AWR 因需真机 rollout 优化(40k 样本)在参数不断变化时适应太慢而垫底;SysID 低分说明”显式估 e_t 既难又没必要”。
  • 泛化实验(Fig. S4):在 payload、地形高度变化(z-scale)、摩擦系数三个维度大范围外推,RMA 在 Success/TTF/Reward 上均最接近 Expert。

真机室内对比(Fig. 3,vs A1 出厂控制器 + RMA w/o Adapt,各 5 trial)

  • StepDown-15cm:RMA 80% 成功;关闭适应模块 0%。
  • Uneven Foam / Mattress(记忆棉):RMA 100%;A1 控制器走不过 uneven foam。
  • Payload 分析:RMA 稳定背到 12kg(100% 自重) 仍高成功率;A1 控制器 8kg 起开始下沉并最终摔倒;RMA w/o Adapt 在 >8kg 时不摔但也不前进。
  • 关闭适应模块普遍显著掉点,证明 adaptation module 是解这些任务的关键。

真机野外(Fig. 1,同一策略、无标定/微调)

  • 沙地、泥地、土堆:全部 trial 零失败;高草/灌木丛穿越 100%;徒步道下楼梯 70%;下坡泥堆 100%;水泥堆 + 碎石堆(且地面侧向陡斜)80%
  • 油面滑测(塑料布浇油 + 足端裹塑料):90%。Fig. 4 显示滑倒发生(~2s)后 ẑ 的第 1、5 分量随之变化(检测到打滑),步态周期恢复而力矩升高、ẑ 持续标记”表面仍滑”;5kg 突加载荷实验(Fig. S3)ẑ 第 2、7 分量跳变检测到质量变化。

创新点与影响

  • 核心贡献 = adaptation module:一个纯仿真训练、部署时做”在线系统辨识”的模块,只凭最近 0.5s 单条轨迹历史估 extrinsics,把适应时间从分钟级压到 <1s,且不需在陌生地形上冒险采数据(避免摔坏硬件)。
  • 直接估 extrinsics z 而非物理参数 e:绕开可辨识性歧义,端到端只优化”导向正确动作”,被后续大量腿式/操作 sim-to-real 工作沿用为标准配方。
  • 仿生能量学奖励 + fractal 地形:无需任何参考轨迹/轨迹生成器就学出自然步态,降低了对领域知识的依赖(相对 Lee et al. 2020、Peng et al. 2020)。
  • 异步双频部署:解耦”慢变 extrinsics / 快变 state”,让低成本板载算力也能实时跑,是工程上可落地的关键。
  • 自述局限:机器人是”盲”的(只有本体感觉),下楼梯突然大跌落、多腿同时被岩石绊住等大扰动仍会失败;作者明确指出下一步需引入外部感知(视觉/exteroception)——这条线由同组后续工作(Coupling Vision and Proprioception for Navigation of Legged Robots;能量最小化涌现步态 CoRL 2021)延续。

原始链接

一手源存档(sources/)