Skip to content

feat: add g1 box tracking task owners - #464

Merged
TATP-233 merged 8 commits into
Motphys:mainfrom
Lhy6900:feat/g1-box-tracking
May 22, 2026
Merged

TATP-233 merged 8 commits into
Motphys:mainfrom
Lhy6900:feat/g1-box-tracking

Conversation

@Lhy6900

@Lhy6900 Lhy6900 commented May 21, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • add the G1BoxTracking motion-tracking task implementation, large-box scene assets, and box-specific motion loader
  • add PPO / APPO owner configs for g1_box_tracking on both mujoco and motrix
  • expose the new task through the motion-tracking package exports so it can be selected through task owner YAMLs

Linked Work

  • Issue: N/A
  • Milestone: N/A

Commands actually run:

UV_CACHE_DIR=/tmp/uv-cache uv run pytest tests/config/test_locomotion_params.py -q -k 'box_tracking and (appo or ppo)'
UV_CACHE_DIR=/tmp/uv-cache uv run python scripts/train_appo.py task=g1_box_tracking/mujoco algo.max_iterations=1 training.no_play=true

… docs: refresh support matrix for g1 box tracking

@caozx1110 caozx1110 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

确保提交的配置中算法及后端组合均能训练,否则不提供对应cfg文件

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new object-aware G1 motion-tracking task (“G1BoxTracking”) with supporting motion-loader logic, scene assets, and training owner configs so it can be selected and trained via existing Hydra task-owner YAMLs.

Changes:

  • Introduces G1BoxTrackingEnv + configs and exports it through the motion-tracking package.
  • Adds BoxMotionLoader / BoxMotionData to load per-frame object (box) state from motion NPZs.
  • Adds a new MuJoCo scene with a free-jointed “largebox” plus PPO/APPO task owner YAMLs for Mujoco/Motrix.

Reviewed changes

Copilot reviewed 11 out of 13 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
src/unilab/envs/motion_tracking/g1/motion_box_loader.py Adds motion loader that also reads object state arrays from NPZ files.
src/unilab/envs/motion_tracking/g1/box_tracking.py Implements the G1 box-tracking env, including object terminations, critic observations, and rewards.
src/unilab/envs/motion_tracking/g1/init.py Exports new env/config and box motion loader types from the G1 package.
src/unilab/envs/motion_tracking/init.py Exposes new env/config and loader types at the motion_tracking package level.
src/unilab/assets/robots/g1/scene_flat_with_largebox.xml New scene that includes the robot and adds a free-jointed “largebox”.
src/unilab/assets/robots/g1/g1_sphere_hand.xml New robot MJCF variant used by the largebox scene.
docs/users/zh_CN/02-simulation-backends.md Updates backend support matrix to include g1_box_tracking.
conf/ppo/task/g1_box_tracking/mujoco.yaml Adds PPO owner config for Mujoco backend.
conf/ppo/task/g1_box_tracking/motrix.yaml Adds PPO owner config for Motrix backend.
conf/appo/task/g1_box_tracking/mujoco.yaml Adds APPO owner config for Mujoco backend.
conf/appo/task/g1_box_tracking/motrix.yaml Adds APPO owner config for Motrix backend.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/unilab/envs/motion_tracking/g1/motion_box_loader.py
Comment thread src/unilab/envs/motion_tracking/g1/motion_box_loader.py Outdated
Comment thread src/unilab/envs/motion_tracking/g1/box_tracking.py Outdated
Comment thread src/unilab/envs/motion_tracking/g1/box_tracking.py
TATP-233
TATP-233 previously approved these changes May 21, 2026

@TATP-233 TATP-233 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

确保能训练出来,不然不添加yaml

@Lhy6900

Lhy6900 commented May 21, 2026

Copy link
Copy Markdown
Collaborator Author

按这个要求收敛了当前 PR。当前只保留了已验证的 ppo + mujoco owner:conf/ppo/task/g1_box_tracking/mujoco.yaml。未做同等训练验证的 ppo/motrix 和 appo/{mujoco,motrix} owner 已从本 PR 移除,并同步刷新了 support matrix。

本地验证对应命令是:
/home/ubuntu/comunicate/newmain_UniLab/UniLab/.venv/bin/python3 scripts/train_rsl_rl.py task=g1_box_tracking/mujoco

@Lhy6900

Lhy6900 commented May 21, 2026

Copy link
Copy Markdown
Collaborator Author

uv run scripts/train_rsl_rl.py task=g1_box_tracking/mujoco training.play_only=true 之后输出play video如下:

play_video.mp4

@TATP-233
TATP-233 merged commit ea7e594 into Motphys:main May 22, 2026
5 checks passed
TATP-233 added a commit that referenced this pull request May 30, 2026
feat: add g1 box tracking task owners
TATP-233 added a commit that referenced this pull request May 30, 2026
feat: add g1 box tracking task owners
TATP-233 added a commit that referenced this pull request Sep 4, 2026
feat: add g1 box tracking task owners
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants