Passive Articulated Physics¶
方法目标在本页定义;代码职责和 canonical schema 以 Physics Studio Architecture 为准。
目标是在 noisy full-body reference 下,让 humanoid 通过真实接触驱动 articulated object 的内部关节,同时保持 human motion 可追踪、物体不走捷径。
任务 contract¶
| 项 | 规定 |
|---|---|
| Input | 只接受 case JSON + result.pt;case JSON 给静态 task/contact 路径,result.pt 给动态 reference |
| Reset | Default/Start 从完整 reference 的 q(0) 写入所有 object joints 并将 joint velocity 置零;Random/Hybrid 从采样 frame 的 q(t) 初始化 |
| Observation | 使用 noisy absolute \(\hat q_t\),不强制转为 relative trajectory |
| Actuation | object base/重力按 protocol 固定;internal joint 仅由 contact/dynamics 改变 |
| Reference | D3D reconstruction 与 ARCTIC capture 都使用相同的 joint_names + joint_types + joint_values[T,J];其余 matched row 的 human、asset、\(\mathcal C^{intent}\)、budget、checkpoint rule 与 evaluator 相同 |
| Output | 每个正式方法导出 run 根目录下的 common_rollout.npz;统一 evaluator/renderer/Viser 只读取该动态状态 |
| Result | 每个完成评测的 run 只有 success=true/false 和一个诊断用 failure_reason |
Common schema 允许 \(J\ge0\) 个 object joints 和 \(L\ge1\) 个 target-region links。
shared environment、rollout、evaluator 与 renderer 始终保留完整 \(J\)。
physics.active_joint_names 仅选择 reward/reference supervision 与成功条件;所有
object joints 都是被动、可碰撞且未锁定的自由度,active 与 inactive joints 都没有
object actuator。Inactive joint 可以被人体碰撞带动;不得对它设零速度、逐帧写回
reference 或施加保持约束。统一 evaluator 报告 inactive joints 在 valid prefix 内相对
实际 reset q 的最大 drift,common
renderer/Viser 显示实际运动,但该诊断不参与 Success/Fail。CoDA 与 HDMI-SMPL-X 的
multi-joint Studio backend 必须 fresh train;作者 native single-joint checkpoint 仅属于
official reproduction。
统一环境不授权统一重写 baseline trainer。CoDA、InterMimic、RePHO 与 PHC-X 必须调用 各自 submodule 中作者完整 network/agent/player、trajectory rollout、GAE/PPO、 normalizer、curriculum、reset/termination 和 checkpoint;主仓库 backend 只做 dispatch。 只允许 shared articulated asset/state、articulated-only observation/reward vectorization 和 common recorder 三类接口适配。HDMI-SMPL-X 因同时改变 G1 embodiment 与 simulator, 始终作为 disclosed adaptation 单列。完整 contract 与验收见 Physics Studio Architecture。
为什么需要鲁棒 tracking¶
视觉 reference 的 human 与 \(q\)、以及独立 preprocess 的 contact intent 都可能错。直接将它们当成精确控制目标,会在自然 motion、接触建立、joint progress 和稳定性之间冲突。可比较的方法因此要说明:它使用什么 observation,是否新增 reward,哪些环境/训练语义仍保持 native,以及是否有隐藏 object drive。
CoDA-PhysicalArtiObj native reproduction 只验证作者代码;正式 benchmark 仍要求从
case JSON + result.pt 运行并导出 exact common rollout。DeVI 的 3D human + 2D rigid-object
hybrid target 是视觉 reference 的重要对照,但不是 articulated baseline;它只通过后续
DeVI-style visual-target ablation 进入本项目。CoDA、InterMimic、RePHO、通过时间 gate 的 HDMI
和冻结版 ours 构成正式比较,PHC-X 是单独 tracking diagnostic。当前 residual 实现就是
ours 的开发线,不另设一条“current residual”baseline。正文完整系统比较让所有 Physics backends
接收同一个 frozen Ours Recon reference;ARCTIC/ParaHome captured references 另作绕过 Recon 的
controller control。具体 matrix 见
Physics Baselines,方法实现见
CoDA Reproduction。