枢纽
机器人Cassie
上真机
物理感知
实时
输入模态proprioception

Dynamic Bipedal Maneuvers:教 Cassie 在跑步中「急转弯」,还能切回正常走

Fangzhou Yu, Ryan Batke, Jeremy Dao, Jonathan Hurst, Kevin Green, Alan Fern(Oregon State University, Collaborative Robotics and Intelligent Systems Institute)。arXiv:2207.07835 (2022)。 locomotionsim-to-realperiodic → aperiodic

🧠 一句话心智模型:之前的 RL 双足工作都在练「稳态周期步态」(走、跑、跳绳)——一个策略吃天下。但 急转弯这种「一次性、非周期」动作 塞不进周期奖励里。这篇的做法是:给每个机动动作单独训一个策略,再用一个叫 Epilogue Reward 的「续命奖励」让它在动作结束时正好落在「能接班」的状态,无缝切回行走策略。

🎯 为什么重要:「稳态步态」和「机动动作」是两个世界

2022 年前,RL 控制 Cassie 这类双足机器人的工作几乎全聚焦周期步态——左右脚交替、用「时钟信号」编码步频。但动物真正厉害的不是「会走」,而是会急停、急转、跳跃、变向。这些动作有共同特点:

「机动动作」与「稳态步态」的本质差异
  • 非周期:动作只发生一次,没有「左脚→右脚」的稳态可循。
  • 动量剧变:90° 急转需要瞬间改变线/角动量,欠驱动的足式机器人很难做到。
  • 必须能切回:转完之后还得能切回行走步态,不能转完就摔倒。

这篇论文的目标就是让 RL 学会这种「短促而剧烈」的非周期动作,而且要能从「跑」切换到「转」再切回「跑」。他们选的 benchmark 是 Cassie 机器人在 2.5 m/s 跑步中做一个四步 90° 右转

💡 核心思想:参考轨迹 + 策略切换 + Epilogue Reward

整套框架有三个互相咬合的零件:

π_walk 预训练行走 (已冻结) 参考轨迹 SRBM 轨迹优化 0.0–2.5 m/s 转弯库 π_turn LSTM 128×128 PPO 训练 40 Hz 控制 初始化状态 奖励参考 一条 rollout 的时间线 π_walk 起跑 跑到 2.5 m/s 触发切换 π_turn 接管 4 步 90° 右转 ~1.75 秒 π_walk 继续走 Epilogue Reward(核心创新) π_turn 训练到 T 时刻 → 切到 π_walk 跑 k=120 步「续命」→ 用这段「未来折扣回报」当 π_turn 的终局 V(S_T) 逼 π_turn 终态「能被 π_walk 接管」
图 1:训练 π_turn 时,PPO rollout 跑到机动结束(T 时刻)后并不停止——而是切到 π_walk 再跑 120 步,把这段「未来」的折扣回报当 π_turn 的终局价值。这逼着 π_turn 学会「转完要落在能接班的状态」。

论文用一句话总结这个机制的本质:「epilogue reward 类似 n-step TD returns」——只不过这里 n-step 之后的「价值估计」不是网络猜测的,而是真的跑下去(用 π_walk)算出来的。这让终局奖励有了「物理可行性约束」。

🛠️ 框架的关键组件

组件设计为什么必要
① SRBM 轨迹优化用 Single Rigid Body Model(质心 + 角动量)+ direct collocation 生成 0.0–2.5 m/s 的转弯参考库全阶模型 TO 太慢;SRBM 抓住主要线/角动量动力学,又便于加约束(最大地面反作用力、摩擦锥、腿长、防交叉腿)
② LSTM 策略Actor + Critic 都是 LSTM 128×128,输入 42 维(含机动进度变量 + 时钟信号 + 目标速度),输出 10 维关节位置目标机动动作有时间结构(开始/中间/结束),需要记忆;前作 [10] 已证明 LSTM 在 Cassie 上比 MLP 更易 sim-to-real
③ 奖励消融(4 种)Full Reference(追踪所有参考量)/ Subset / Foot Timing(只追踪脚步时序)/ No Reference(仅启发式时钟)想搞清楚「参考信息的哪部分真正有用」——结果出乎意料,Foot Timing 在仿真和真机上反而最稳
④ Epilogue RewardT 时刻后让 π_walk 跑 120 步,用折扣回报替代 V(S_T)避免 π_turn 学到一个「终局奖励高但 π_walk 接不住」的崩溃状态;这是论文的核心创新
⑤ Dynamics Randomization控制频率 ±5%、关节编码噪声 ±0.05 rad、阻尼 ×0.8–2.5、质量 ×0.9–1.5、摩擦 0.45–1.3、外加力 0–40N(随机方向)关闭 sim-to-real gap;外力随机化让策略学会抵抗扰动
🔮 直觉:为什么 Epilogue Reward 这么关键?
PPO 默认会用 critic 估计终局价值 $V(S_T)$,但 critic 是的——它不知道「这个状态能不能被 π_walk 接住」。Epilogue 直接把 π_walk 拉进来跑 120 步,相当于「不猜,真跑给你看」。结果:Foot Timing 策略 + Epilogue 在 1000 次扰动实验中生存率约 50%去掉 Epilogue 后掉到 4%。这是 12 倍提升,全程靠一个看似简单的训练 trick。

📊 关键结果(全部源自论文 Figure 4-8 + Table II)

实验对比关键数字
Epilogue 消融
(Figure 7)
Foot Timing + Epilogue vs −Epilogue35N 扰动下 1000 次试验生存率 ~50% vs 4%(12×);No-Epilogue 策略「转完就摔」
四策略抗扰
(Figure 8)
2.5 m/s 急转中受 35N 扰动总规律:参考信息越多越鲁棒(Full ≈ Subset 最稳);例外:No Reference 在机动中反而 > Foot Timing
结论追踪参考(脚步位置、骨盆速度)确实有益鲁棒性;但 Foot Timing 是个例外——机动中它的鲁棒性反而不及完全没有参考的 No Reference
转弯步数
(Figure 5)
Full Reference vs No ReferenceFull Reference 学到 4 步(符合参考);No Reference 因为只跟启发式时钟,用了 7 步才转完
样本效率
(Figure 4)
四策略收敛速度Foot Timing / No Reference 收敛更快(参考少 → 冲突少);Full/Subset Reference 因为多目标冲突更慢
Yaw 追踪
(Figure 6)
Full/Subset Reference 是否真跟住参考 yaw基本跟随但在第 1/3 步起点有明显偏离——RL 在多冲突奖励间找折中
真机
(§IV-B)
Cassie 户外人工草坪 + 室内No Reference + Full Reference 都跑通;但 No Reference 在真机上比 Full Reference 更稳定(与仿真结论相反!)
诚实的负面结果:仿真说 Full Reference 更好,真机却说 No Reference 更好。作者给出的解释是:Full Reference 学到了更大的 pelvis pitch,但这个动作在真机上变成了「尴尬的持续下倾」(仿真里却很流畅),论文将其归因于「unresolved sim-to-real challenges」。这是 sim-to-real 论文里少见的「坦诚公开失败」——也提示后来者:别只看仿真曲线

🌐 在领域中的位置

MIT Cheetah 跳跃/后空翻(基于 TO/MPC) Cassie 周期步态 RL(Siekmann 2021) Dynamic Bipedal Maneuvers(非周期机动 + 策略切换)⭐ Cassie 踩石过河 / 多行为库(Duan 2022) Digit / Atlas 全身动态控制

这篇论文在 OSU Cassie 系列里承上启下:前承 Siekmann 周期步态工作(借用了 LSTM 架构 + dynamics randomization),后启 Duan 等人的踩石任务。它的核心遗产是「epilogue reward」这个概念——把「策略切换」从控制问题翻译成 RL 训练问题。

❓ 常见误区

为什么不直接训一个「又会走又会转」的大策略?

论文 §II-A 专门讨论了:用单一策略学多行为,奖励函数会相互冲突,每个行为都被拉到一个「平均态」。这篇选择「每个行为单独训」,让每个策略在各自的任务上做到极致,再解决切换问题。这是工程上更模块化的路线。

SRBM 那么简化,参考轨迹真的有用吗?

有用,但比想象中微妙。论文做了 4 档奖励消融,发现:只要带参考信息(Full/Subset/Foot Timing)都能学到 4 步转弯;完全没参考的 No Reference 要用 7 步。更意外的是,Foot Timing 因「仿真质量最高、收敛最快」被选为 Epilogue 消融的基准策略。这说明 SRBM 参考的最大价值是「提供一个可行的接触时序」,精确的轨迹追踪并非必需。

Epilogue Reward 是不是就是「行为残差」或 HRL?

不像。HRL 是「高层策略调用低层技能」,调用关系是学出来的。这里调用关系是固定的(π_walk → π_turn → π_walk),Epilogue 只是用 π_walk 的回报来塑造 π_turn 的终局奖励。它更像一个「跨策略的 reward shaping」。

为什么 k=120 步?

论文没给理论推导,是经验值。120 步在 40 Hz 下等于 3 秒,足够让 π_walk 「证明」它能稳定接管。太短 → 终局估计不准;太长 → 训练开销大且 noise 累积。