DEEP 131 · 第十二辑 · 任务配置与脚本逐文件 · LEARN NOTES

收进学习手册 · 2026-09-11 · duck.whatled.com

解读 131 · velocity reward 表逐项

解读对象:microduck-replica/upstream/microduck_rl/src/mjlab_microduck/tasks/microduck_velocity_env_cfg.py(952 行;奖励集中在 275–362 行与 639–748 行)
需要的前置:解读 24(reward 骨架)、解读 26(mdp.py 实现)

跟踪层:策略靠什么挣钱

velocity 环的奖励主体在 make_microduck_velocity_env_cfg() 内两处。基础栈(275–362 行)直接改写 mjlab 模板:

项 权重 出处与要点
track_linear_velocity 2.0 std=√0.1(:346)
track_angular_velocity 2.0 std=√0.5(:348);ang ±1.0 才让转弯可学(:649-650)
air_time 3.0 窗口 [0.04, 0.300] s(:333-339),0.04 是给"真抬脚"付钱
pose 1.0 只评腿关节(:285-287),头归 head_pose_tracking 管
upright 2.0 std=√0.05,专治 +2–4° 前倾(:293-301)
foot_slip -0.1 故意弱:强了压制 pivot 转身(:312-315)
self_collisions -1.0 腿别撞电池仓(:323-327)

命令层:639–748 行的三件套

这一段定义"奖励指向的命令"。twist 命令范围固定不扩:lin_x (-0.4,0.4)、lin_y (-0.3,0.3)、ang (-1.0,1.0)(:651-653);另留 15% 环境原地转圈(TURN_IN_PLACE_FRACTION=0.15,:25 与 :657)。head_pose 命令 4 维,起步范围很小(颈/头俯仰 ±0.05、头偏航 ±0.07、头滚转 ±0.015,:669-677)。奖励三件套:

罚则的爬坡与 PPO 底座

action_rate_l2 起步 -0.1(:352),由课程每 250 迭代一档爬到 -1.0(:781-794)——先让步态诞生,再收紧平滑。rough 地形把 nconmax 35→200、solver iterations 10→30、ls_iterations 20→50(:765-772),防接触溢出的 NaN。文件尾的 MicroduckRlCfg(:915-952)是训练底座:MLP (512,256,128)、学习率 1e-3 自适应、gamma 0.99、entropy 0.01、num_steps_per_env=24、save_interval=250、max_iterations=50_000。

你带走的收获

延伸

什么鸭 WHATDUCK · 复刻学习笔记 ← 全部手册 · 首页