从摇头晃脑到头部稳定
MicroDuck 奖励优化前后对照
优化前后对照
两段视频均在平地、头部中立命令下连续运行 20 秒,依次执行前进、后退、左移和右移。 左侧沿用最初的 MicroDuck 行走奖励,右侧为优化后的训练结果。
解决思路
- 关注持续速度。 新增时间常数为 0.5 秒的水平速度 EMA 奖励, 减少换脚时瞬时速度波动对训练的干扰。
- 直接约束晃头。 加强头部姿态跟踪,并新增头颈关节瞬时角度和角速度惩罚, 防止左右对称摆动在长期平均中相互抵消。
- 加强接触约束。 自身碰撞权重由 −1 提高到 −5, 接触数取一个控制步内四个物理子步的最大值。
核心奖励变化
控制步长为 \(\Delta t=0.02\,\mathrm{s}\),下列权重均为乘上 \(\Delta t\) 之前的值。
| 奖励项 | 原始项 | 最初 | 优化后 |
|---|---|---|---|
| 平均水平速度跟踪 | \(e^{-\|\bar v_{xy}-v^*_{xy}\|^2/0.0025}\) | 无 | 4 |
| 头部姿态跟踪 | \(\operatorname{mean}[e^{-(e_h/0.5)^2}]\) | 2 | 4 |
| 自身碰撞 | 活跃自身接触对数 \(N_{\rm self}\) | −1 | −5 |
| 头颈瞬时角度偏差 | \(\|e_h\|^2\) | 无 | −8 |
| 头颈瞬时角速度 | \(\|\dot q_h\|^2\) | 无 | −0.04 |
因此,在相同状态与课程位置下:
\[
\begin{aligned}
r_{\rm new}=r_{\rm old}+\Delta t\big[
&4e^{-\|\bar v_{xy}-v^*_{xy}\|^2/0.0025}
+2\operatorname{mean}(e^{-(e_h/0.5)^2}) \\
&-4N_{\rm self}-8\|e_h\|^2-0.04\|\dot q_h\|^2
\big].
\end{aligned}
\]
其余原始奖励保持不变。瞬时速度核仍使用 0.1,较窄的 0.0025
只用于平均速度跟踪。优化后的训练继承原课程计数,动作变化和头部长期偏置权重
分别为 −0.8 与 2。