DEEP 22 · 第三辑 · 训练代码 · LEARN NOTES

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

解读 22 · velocity 配置(上):前 87 行的开关与范围

解读对象:microduck-replica/upstream/microduck_rl/src/mjlab_microduck/tasks/microduck_velocity_env_cfg.py 第 1–87 行(全文件 952 行)
需要的前置:解读 21(谁调用这个文件);域随机化(DR)= 训练时故意扰动物理参数让策略更皮实

读一个大配置文件,别从 make_microduck_velocity_env_cfg() 函数体开始——作者把所有
"总开关"和"随机化范围"提成模块级常量放在最前面,前 87 行就是整份训练的声明式摘要。

模块 docstring:一份变更日志

第 1–17 行的 docstring 不是客套话,它直接给出了几条关键设计决定及其理由:
foot_slip 保持 -0.1(更强会限制这只机器人"以原地转为核心"的转向方式)、指令范围
固定不放宽(ang ±1.0 让转向可学)、15% 环境强制原地转(2026-07 审计:独立均匀采样下
原地转只占约 2% 数据,等于没训)、body_pose 追踪保留观测槽位但权重为 0。

开关区(第 22–53 行):True/False 就是实验记录

NUM_STEPS_PER_ENV = 24(22 行)、TURN_IN_PLACE_FRACTION = 0.15(25 行)、
ENABLE_SYMMETRY = False(28 行)之后,31–42 行是 12 个 DR 开关,每个都带一行注释说明
历史或理由。最值得学的是"注释即实验日志"的写法:

范围区(第 55–87 行):数字后面全有出处

你带走的收获

延伸

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