Skip to content

microduck 对齐 child 3/5: reward / MDP 栈对齐到上游当前 HEAD #1455

Description

@TATP-233

Parent roadmap: #1452 | 依赖:child 1(contract 标尺)| PR base: dev/issue-1452-microduck-rl-alignment

问题与证据

conf/ppo/task/microduck_velocity_flat/base.yaml:1-8 头注声明镜像的是上游旧版 velocity2,与上游当前 HEAD 已漂移:tracking_lin_vel 3.0 vs 2.0(上游还把 vz² 放进指数)、head_pose_tracking 0.5 vs 2.0;UniLab 多出 orientation(-3.0) / base_height(-50.0) / alive(+0.1) / flight_phase(-2.0) / lin_vel_z(-1.0);上游有 upright(2.0, std²=0.05) / variable_posture pose(1.0) / self_collisions(-1.0) / body_ang_vel(-0.05) 等 UniLab 没有的项。目标不同则训练曲线无可比性。

主要交付结果

velocity_flat 的 reward 栈与上游 microduck_rl HEAD 逐项一致(term 集合、权重、std/阈值参数、公式语义),sitstand / ground_pick 两个任务同步核对各自栈;base.yaml 头注的对齐基线声明更新为上游 HEAD + commit 锚点。

范围边界

  • 只动 reward/obs/termination 的 task 层配置与必要的新 reward term 实现(落在 manager_terms.py / 既有 reward 模块模式内);缺的公式(如 variable_posture、self_collisions、sign(F)·log1p|F| 变换)按上游语义复刻并配单元测试。
  • curriculum 的 weight schedule 已对齐(Roadmap: microduck 任务与上游 microduck_rl 训练配方逐步对齐 #1452 已核实),本 issue 只复查不改。
  • obs 布局已对齐,不动。

Owner 与 contract 影响

  • Owner:task owner YAML + reward term 实现 + tests/envs/locomotion/microduck/test_microduck_rewards.py
  • 不改公共 reward manager contract。

规模与 review 计划

预计 4–8 个文件、约 300–700 手写 LOC(含新 term 测试),单个 PR。

Acceptance criteria 与 validation

  • child 1 的 contract 中 reward/MDP 全部条目转 match。
  • 每个新 reward term 有公式级单元测试(含符号约定:cost≥0 配负权重,不自负)。
  • mjwarp smoke 下每个 Episode_Reward/<penalty> 非正;PR 最终 head 过 make test-all

范围复核点

  • 若上游某 term 依赖 UniLab 不具备的 sensor/manager 能力(如 ray sensor foot_height),记录差距并请 maintainer 决定复刻或豁免。

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions