MicroDuck 训练动画
连续四方向运动、独立评估结果与训练配置
连续四方向运动
画面来自一次连续的 20 秒运行,保留了启动和换向过程。MuJoCo 只负责这段视频的可视化,不推进其物理状态;机器人由关节执行器驱动。
四方向训练结果
下表是四次独立评估:每个方向运行 32 秒,前 2 秒启动,后 30 秒测量。它们与上面的 20 秒换向视频是不同实验。物理步长 5 ms、控制周期 20 ms,每步最多 200 轮求解;四方向均未跌倒。
| 方向 | 目标 | CPU FP64 | CUDA FP32 |
|---|---|---|---|
| 前进 | +0.05000 | +0.05024 | +0.05012 |
| 后退 | −0.05000 | −0.04988 | −0.04969 |
| 左移 | +0.05000 | +0.05021 | +0.04978 |
| 右移 | −0.05000 | −0.05051 | −0.05045 |
两种后端均通过这组名义工况的速度与朝向诊断。逐 5 ms 的独立几何复查未发现模型指定的四对自身碰撞几何穿插;这是一组离散采样结果,不等同于连续碰撞检测。
目前的边界:随机初态复查仍有一项后退窗口速度误差超限,头部摆动和支撑滑动仍需改善。动态单足支撑与 MuJoCo 的动力学尚未完全对齐,也尚未完成实机或完整物理域随机化验证。直接每 5 秒突变方向曾在 16.5 秒失稳,上方视频使用平滑命令切换后完成 20 秒连续运行。
从物理步进到 PPO 训练
1. 并行采样策略给出关节目标,执行器逐物理步计算力矩,原生引擎推进独立环境。
2. PPO 更新rsl-rl 收集观测、奖励和终止状态,更新 actor、critic 与观测归一化统计。
3. 独立评估关闭自动重置,检查连续轨迹、实际速度、朝向、抬脚和自身碰撞。
当前候选由官方 MicroDuck 策略迁移而来,在自研引擎中继续训练。先进行 1024 个环境、600 轮的平均速度实验,再恢复自身碰撞,以 512 个环境继续训练 200 轮,选用第 799 轮策略。部署模型保留观测归一化。
推理时在策略外增加速度 PI 与朝向 P/D 命令反馈,以改善低速跟踪和偏航。它调整输入给策略的运动命令,不直接修改机器人的位置、速度或外力。因此这里展示的是 PPO 与命令反馈的组合控制,不是裸策略成绩。
早期只看平均速度,曾得到拖脚或转圈的策略。后续补充了平均速度跟踪、朝向、头部姿态和碰撞诊断,训练奖励之外还要检查完整网格视频与逐步物理记录。