一句话定位

SkillBlender 提出”预训练-再混合”(pretrain-then-blend)的分层强化学习框架:先预训练 4 个目标条件化、任务无关、物理可解释的人形原语技能(走 / 够 / 蹲 / 踏),再由高层控制器输出子目标和逐关节混合权重(Softmax 归一化后 Hadamard 加权求和),仅用 1-2 条直觉奖励项就能完成跨 3 种人形本体(Unitree H1/G1/H1-2)的 8 项复杂全身 loco-manipulation 任务,并配套发布跨本体基准 SkillBench。USC GVL Lab 主导,联合 Stanford、UC Berkeley、北大团队,2025-06 挂 arXiv。

背景与定位

范式是分层强化学习(HRL)+ 技能混合(skill blending):作者把”婴儿先学抬头、翻身、动手脚,再组合成抓取”这种人类运动发育顺序映射为 RL 框架——先学一组通用的原语技能,再复用组合完成新任务。

相较此前路线:

  • **基于最优控制(MPC)**的方法需要为每个任务精细建 dynamics model 和 cost function,调优耗时,难以扩展到多样任务。
  • 单策略 RL / 运动跟踪类工作(HumanPlus、ExBody、hover、OmniH2O)主要面向动作模仿或遥操作,缺乏自主完成新 loco-manipulation 任务的能力;且要学会单个任务通常需要精心平衡 orientation、gait、contact、curiosity 等多项奖励,任务一多就难以扩展。
  • 已有 HRL 方法:MCP 用标量权重平均多个低层技能;Sequential HRL 让高层选择器在每个时刻只激活一个低层技能;HumanoidBench baseline(HB)只用一个双手 reaching 低层策略。三者要么表达力不足,要么在人形上会失败(人形往往需要多个技能同时激活——例如搬箱子要 Walking 和 Reaching 同时工作)。

SkillBlender 与同期人形全身控制工作(humanoid-wbc,如侧重精细命令空间 + 上肢干预训练解耦的 hugwbc、侧重遥操作与下肢解耦的 homie、侧重 sim2real 动作对齐的 asap)的差异化贡献在于:显式维护一个物理可解释的原语技能库,并用逐关节向量化 Softmax 混合权重(而非标量权重或顺序切换)驱动高层控制器,使其只需 1-2 条任务奖励即可学会复杂任务,且天然抑制 reward hacking。

同时提出的基准 SkillBench 是并行(Isaac Gym)、跨本体(H1/G1/H1-2)、多样(4 原语 + 8 任务)的仿真环境,并引入 accuracy(任务达成)+ feasibility(动作自然度)双维度评测——此前基准(HumanoidBench、BiGym、Mimicking-Bench)多只看任务 return,忽视动作是否自然可行,容易鼓励 reward hacking。

模型架构

不是 VLA:无视觉语言模型、无语言条件,主线是纯 state-based 分层策略(附录 G.3 有一个初步的 vision-based 尝试,见下)。

分层结构

  • 低层原语技能 π_L^i(a_t^i | g_t^i, s_t),共 4 个,均共享同一本体感受状态 s_t,仅目标输入 g_t^i 不同:
    • Walking —— 目标为 XY 平面线速度 + yaw 角速度指令;
    • Reaching —— 站立不动,目标为双腕到各自 3D 目标点的相对距离;
    • Squatting —— 目标为根节点当前高度与目标高度的相对差;
    • Stepping —— 目标为双脚到地面采样点的相对距离,用于非抓握式脚部操作。
  • 高层控制器 π_H({g_t^i}, {W_t^i} | g_t, s_t):对被选中的技能子集,输出各自的原始子目标 g̃_t^i(clamp 后送入低层)和原始权重向量 W̃_t^i ∈ [0,1]^d(d = 动作维度,等于机器人 DoF)。
  • 混合机制(核心创新):先对各技能的原始权重在关节维度做 Softmax 归一化(式 1),再将各低层技能输出的动作按权重做 Hadamard(逐元素)加权求和 得到最终动作 a_t = Σ a_t^i ⊙ W_t^i(式 2)。Softmax 提供的非线性被消融实验证明是抑制 reward hacking、提升可行性指标的关键。训练时高层输出更新,低层原语参数冻结
  • 技能选择器(skill selector):论文主线中人工手选需要混合的技能子集(如 FarReach 只选 Walking+Reaching);附录展示了用 GPT-4o 做常识推理自动选择技能的示例,仅作概念验证,未作为主线方法。

网络(全 MLP,state-based):actor 隐层 [512, 256, 128],critic 隐层 [768, 256, 128](critic 可访问特权观测,如 base 线速度、body mass、contact mask 等)。视觉版实验的图像编码器为常规 CNN(见”数据”节)。

观测/动作空间:actor 观测(goal g_t + state s_t)共 3d+6+N 维,其中 s_t 占 3d+6 维(关节角、关节速度、上一步动作、base 角速度、base 欧拉角/重力投影),g_t 占 N 维(随任务而定)。低层动作 a_t^i ∈ R^d 为全身关节目标位置,经 PD 控制器转为力矩;高层总动作维度 d_H = Σ_{i=j}^{k}(N_i + d)(选中的每个技能各贡献 N_i 维子目标 + d 维权重)。

跨本体(cross-embodiment):支持 Unitree H1(19 DoF,约 1.7m,两个 3-DoF 肩、两个 1-DoF 肘、1-DoF 腰 yaw、两个 3-DoF 髋、两个 1-DoF 膝、两个 1-DoF 踝 pitch)、G1(21 DoF,约 1.2m,比 H1 每踝多一个 roll 自由度)、H1-2(21 DoF,体型与 H1 相近但踝部与 G1 同构)。三者均锁定腕/手全部 DoF 及除腰 yaw 外全部躯干 DoF,以简化全身 loco-manipulation。

数据

SkillBlender 不依赖离线运动数据集或演示轨迹——训练数据全部来自 Isaac Gym 仿真中的在线 rollout,因此没有”小时数/帧数/轨迹数”这类语料规模,规模体现在并行环境数训练时长上:

  • 所有 model-free RL 方法(含 SkillBlender 的低层与高层训练)统一使用 4096 个并行环境;model-based baseline DreamerV3 因训练稳定性与速度限制,并行环境数降为 16
  • 8 个高层任务的奖励函数均只含 1-2 条直觉奖励项(形式多为 5·e^{-4‖·‖} 的指数衰减距离项,见附录 D 逐任务公式),刻意压低奖励工程量以验证框架的可扩展性。
  • 无 sim-to-real 协同训练数据:真机部署仅针对原语技能(Reaching、Squatting),靠加大 domain randomization + 引入 projected gravity 输入做 sim2real;高层任务策略未部署真机(见”评测”节的局限)。
  • 视觉版实验(附录 G.3,仅 H1 BoxPush 一个任务):ego-centric RGB,分辨率 64×48,分别在 4 个64 个并行环境下训练,用于验证并行度/渲染速度对视觉 RL 的影响,不构成主线数据规模。

训练方法

  • 优化算法:低层原语与高层控制器均用 PPO 训练;DreamerV3 仅作为 model-based baseline 对比,不是 SkillBlender 本身的组成部分。
  • PPO 超参:entropy coefficient = 0.001,learning rate = 1e-5,mini-batch 数 = 4,γ = 0.994,GAE λ = 0.9。
  • 低层原语训练:使用稠密奖励,包含目标匹配、正则化、步态、辅助项等多项(需要人工调参),但训练完成后的策略模块化、可复用——作者预期未来人形硬件厂商可直接提供此类预训练技能作为标准能力。
  • 高层控制器训练:给定选中的技能子集,仅用 1-2 条任务相关奖励(附录 D 给出全部 8 个任务的具体公式),核心流程为”选技能 → 输出子目标+关节级权重 → Softmax 归一化 → Hadamard 加权求和得到最终动作”(式 1-2)。低层参数全程冻结,只更新高层。
  • 消融验证的关键设计(表 4,H1 上 FarReach/BoxPush/PackageCarry 三档任务):
    • 去掉 Walking 或 Reaching 原语:Error 显著上升(搜索空间受限,如去 Walking 后 FarReach Error 从 0.021 升到 0.408)。
    • 去掉 Softmax 层(直接线性组合权重):feasibility 指标显著变差(如 BoxPush 的 τ 从 15.0 升到 50.6,P 从 9.9 升到 44.9),验证 Softmax 非线性对抑制 reward hacking 的必要性。
    • 用 human motion tracker(HumanPlus、ExBody)替代原语库作为高层输出目标:两者均逊于 SkillBlender——HumanPlus(全身运动跟踪,近似正则化版 PPO)未能解决 reward hacking;ExBody(身体一分为二)限制了高层探索空间。

Infra(训练 / 推理工程)

  • 仿真器:NVIDIA Isaac Gym(PhysX 物理引擎),高度并行。
  • 训练硬件:NVIDIA RTX 4090 / A6000 / A100,均为单卡训练与推理(未使用多卡/分布式)。
  • 显存占用:训练阶段 <24GB,推理阶段 <12GB
  • 训练时长:Easy 任务(如 FarReach、ButtonPress)单卡约 12-24 小时;更难的 Medium/Hard 任务约 24-72 小时
  • 并行度:4096 环境(model-free RL,含 SkillBlender);DreamerV3 16 环境;视觉 RL 消融仅 4/64 环境。
  • 推理:控制频率 / 延迟 / 边缘硬件未披露。真机部署仅针对原语技能(非高层任务策略),硬件为 Unitree H1,依赖更大 domain randomization + projected gravity 输入做 sim2real,论文只给出定性视频演示,未量化真机侧 FPS 或延迟数字。

评测 benchmark

基准 SkillBench:3 本体(H1/G1/H1-2)× 3 难度(Easy/Medium/Hard,共 8 任务)。指标为 Error(↓,任务相关的目标-当前状态 L1 距离,单位 m,各任务设有成功阈值)+ 4 项 feasibility 指标——Tilt(↓,root pitch+roll,rad)、Root Height h(↑,m)、Average Joint Torque τ(↓,N·m)、Average Joint Power P(↓,W)。每个设置跑 20 次 rollout,报告 mean±std。

H1-Easy(表 1,vs. PPO / DreamerV3 / HB / Sequential HRL / MCP)

  • FarReach Error:PPO 0.016±0.008,DreamerV3 0.033±0.006,HB N/A(失败),Sequential 0.247±0.121,MCP 0.045±0.031,Ours 0.021±0.012
  • ButtonPress Error:PPO 0.019±0.011,DreamerV3 0.027±0.005,HB 0.051±0.218,Sequential 0.132±0.061,MCP 0.005±0.003,Ours 0.009±0.007
  • CabinetClose Error:PPO/DreamerV3 已接近 0;Ours 0.000±0.000

H1-Medium(表 2)

  • FootballShoot Error:PPO 1.773±0.244,DreamerV3 1.799±0.270,HB 1.684±0.187,Sequential 1.802±0.217,MCP 1.604±0.263,Ours 1.109±0.285(明显最优)。
  • BoxPush Error:PPO 0.184±0.207,DreamerV3 0.174±0.236,HB 0.125±0.039,Sequential 0.112±0.047,MCP 0.037±0.039,Ours 0.009±0.007
  • PackageLift Error:PPO 0.026±0.018,DreamerV3 0.132±0.054,HB 0.571±0.193,Sequential 0.618±0.226,MCP 0.485±0.116,Ours 0.024±0.069

H1-Hard(表 3,长时程、富接触)

  • BoxTransfer Error:PPO 0.433±0.059,DreamerV3 0.459±0.157,HB 0.459±0.047,Sequential 0.458±0.045,MCP 0.421±0.026,Ours 0.007±0.004(领先近两个数量级)。
  • PackageCarry Error:PPO 0.020±0.008,DreamerV3 0.159±0.039,HB 0.443±0.120,Sequential 0.428±0.110,MCP 0.152±0.030,Ours 0.013±0.008

定性结论:vanilla PPO/DreamerV3 在 Easy 任务能成功但 feasibility 指标差(明显 reward hacking,动作夸张);Sequential HRL(同一时刻只激活一个技能)系统性劣于同时激活多技能的 skill blending,因为人形每个技能只掌管身体的一部分区域;MCP(标量权重平均)在简单任务上与 SkillBlender 相当甚至略优,但在难任务(除 BoxPush 外)基本学不会。

跨本体(附录 G.1,表 5-10,仅与 PPO 对比):SkillBlender 在 G1、H1-2 上同样全面优于 PPO;G1、H1-2 整体误差高于 H1,作者归因于多出的踝 roll 自由度带来更多不稳定性——即使很小的足部自由度增量也会显著提升任务难度。

视觉 RL 消融(附录 G.3,表 11,H1 BoxPush,仅比较 task mean reward,因并行度/渲染限制无一方法真正学会该任务):4 环境下 PPO 21.53 / DreamerV3 25.42 / Ours 28.14;64 环境下 PPO 32.34 / DreamerV3 34.00 / Ours 37.90

创新点与影响

  • 贡献:(1) pretrain-then-blend 分层 RL 框架,证明 4 个通用原语技能通过逐关节向量化 Softmax 混合,仅用 1-2 条直觉奖励项即可完成 8 类复杂 loco-manipulation 任务,且天然抑制 reward hacking;(2) SkillBench——首个同时具备大规模并行仿真、跨本体(3 种 Unitree 人形)、多样任务(8 项、3 档难度)且引入 accuracy+feasibility 双重评测的人形全身 loco-manipulation 基准;(3) 开源代码、基准与 H1 预训练 checkpoint,供后续人形研究复用。
  • 改变了什么:把此前”每个新任务都要重新调一整套奖励(orientation/gait/contact/curiosity 等)“的人形 RL 范式,替换成”预训练一次原语库、之后新任务只需 1-2 条奖励”的可扩展范式;用关节级向量化权重取代标量权重(相较 MCP)、顺序切换(相较 Sequential HRL)、单一 tracker 策略(相较 HumanPlus、ExBody),在准确度和运动自然度上同时占优。
  • 作者自述局限:(1) 目前只用前臂做操作,未涉及末端执行器(平行夹爪、灵巧手等);(2) 高层任务策略尚未部署到真实机器人(依赖 state-based 观测,存在 sim2real gap),只有原语技能做了真机验证;(3) 技能选择目前手工指定,GPT-4o 自动选择仅是概念验证;(4) 视觉版 RL 仍处于初步阶段,受限于并行度和渲染速度,未能在视觉输入下学会 BoxPush 任务;(5) 常见失败模式——原语在分布外初始姿态下可能无法正常启动(真机上因传感器噪声更严重),Hard 任务(如 BoxTransfer)有时会因较高的中间奖励提前停止探索,陷入局部最优。

原始链接

一手源存档(sources/)