G1 平地行走

摘要:本实验研究 Unitree G1 人形机器人在 Isaac Lab 官方 Isaac-Velocity-Flat-G1-v0 任务中的平地速度跟踪。方法上保持官方任务源码不变,以 RSL-RL PPO 训练 2 个条件 × 3 个随机种子:官方默认 entropy_coef=0.008 与命令行覆盖 entropy_coef=0.005。6 个正式 run 均训练 1500 次迭代、每 run 约 1.47 亿步仿真。结果显示,在本训练预算下,较低熵系数的末 100 迭代平均回报为 30.40 ± 0.60,高于默认组的 28.04 ± 0.14;yaw 速度误差由 0.464 降至 0.392,但躯干接触终止占比未同步下降。最佳候选策略来自 entropy=0.005、seed 43,已导出 policy.pt 与 policy.onnx,并录制约 10 秒与 60 秒跟随镜头回放。

表 1 · 实验概要
状态已训练 ✓ 6 个正式 run
机器人Unitree G1 minimal(23 自由度机身 + 三指手 14 关节 = 37 个受控关节;隐式 PD 关节位置执行器)
技术路线强化学习 · PPO · RSL-RL
任务环境Isaac-Velocity-Flat-G1-v0(Isaac Lab 官方 Manager-based 任务)
任务配置baseline:Isaac Lab 官方预设(未修改);entropy=0.005:官方预设 + 命令行覆盖 agent.algorithm.entropy_coef=0.005
并行环境数4096
迭代 / 步数1500 次迭代;每迭代 4096×24 步;单 run 约 147,456,000 步
训练设备NVIDIA GeForce RTX 5070 Ti(16 GB)
真实训练耗时6 个正式 run 合计约 8038 秒(2.23 小时);单 run 约 21.7–23.6 分钟
观测 / 动作维度123 维 → 37 维
策略网络Actor 123→256→128→128→37;Critic 123→256→128→128→1;Actor+Critic 合计 167,243 个参数
最佳候选entropy=0.005, seed=43:末 100 迭代回报 30.90,base_contact 0.38%,导出 JIT/ONNX
智能体(Agent)PPO Actor-Critic · 123→…→37环境(Environment)Isaac-Velocity-Flat-G1-v0动作 a ∈ ℝ³⁷观测 s′ ∈ ℝ¹²³奖励 r ∈ ℝ
图 1 · G1 平地速度跟踪任务的智能体–环境交互回路。策略接收本体观测与速度命令,输出 37 维关节位置动作;环境返回下一步观测、奖励与终止信号。

1背景与问题定义

本任务要求 G1 在平地上跟踪随机采样的底盘速度命令。系统与任务目标如图 2 所示:机器人需要在不让躯干接触地面的前提下,跟踪前进、侧向与 yaw 角速度命令。

平地 planetorso_link:躯干接触即失败终止速度命令 c = (vₓ, vᵧ, ωz)训练范围:vₓ∈[0,1] m/s,vᵧ∈[-0.5,0.5] m/s,ωz∈[-1,1] rad/sUnitree G1 · 37 个受控关节 · 50 Hz 关节位置目标
图 2 · G1 平地速度跟踪任务示意。命令由 base_velocity 生成,平地任务去除了高度扫描与地形 curriculum;躯干 torso_link 发生非法接触时回合失败终止。

机器人:Unitree G1 minimal 资产,共 37 个受控关节。关节构成为:双腿 12 个(每侧 hip_yaw / hip_roll / hip_pitch / knee / ankle_pitch / ankle_roll),躯干 1 个(torso_joint),双臂 10 个(每侧 shoulder_pitch / shoulder_roll / shoulder_yaw / elbow_pitch / elbow_roll),双手指 14 个——G1 的手是三指灵巧手,每侧 7 个关节 = 拇指 3 + 食指 2 + 中指 2(官方资产中的关节名是无语义的 zero 至 six)。训练使用 G1_MINIMAL_CFG,碰撞体比完整视觉模型更简化。

控制:控制量不是期望速度本身,而是与上述 37 个关节一一对应的关节位置偏移。图 3 所示的链条是:策略输出动作 a → 乘以 0.5 并加到默认关节姿态 q₀ → 得到关节位置目标 q* → 由资产执行器在物理仿真中产生力矩 → 形成站立、摆腿与速度跟踪行为。中间没有手写步态控制器。

正视示意 · 圆点 = 受控关节组(如髋部 3 个自由度并作一点),逐侧数量见图内标注Actor πa ∈ ℝ³⁷逐关节动作关节位置目标q* = q₀ + 0.5aqᵢ* 落到各关节torso_joint ×1left shoulder ×3right shoulder ×3left elbow ×2right elbow ×2left fingers ×7 = 拇指3 + 食指2 + 中指2(三指手)right fingers ×7 = 拇指3 + 食指2 + 中指2(三指手)left hip ×3right hip ×3left knee ×1right knee ×1left ankle ×2right ankle ×2躯干 ×1臂 ×5/侧手指 ×7/侧腿 ×6/侧控制量37 个 qᵢ* 位置目标腿 12 · 躯干 1 · 臂 10 · 手指 14隐式 PD/电机根据 qᵢ*在物理仿真中产生 τᵢτᵢτᵢ策略只给关节位置目标;没有手写步态控制器。站立、摆腿、接触节律与速度跟踪由 PPO 策略和物理闭环共同形成。
图 3 · 控制量示意(G1 关节位置目标)。策略输出 37 维动作 a,经 q* = q₀ + 0.5a 转为 37 个关节位置目标;这些目标分别落到双腿、躯干、双臂和手指的受控关节,隐式 PD/电机再在物理仿真中产生关节力矩。

目标:最大化折扣累计奖励,使机器人在 20 秒训练回合内持续保持直立、减少躯干接触,并尽可能准确跟踪 (vₓ, vᵧ, ωz)。

按 MDP 表述,问题定义见表 2。

表 2 · 问题的形式化定义
环境4096 个并行 Isaac Lab GPU 物理环境,平地 plane,控制频率 50 Hz
智能体RSL-RL PPO 的 Actor-Critic 策略
状态 / 观测123 维本体观测与速度命令,构成见表 3
动作37 维关节位置目标偏移,构成见第 3.2 节
奖励16 项加权和,主要由线速度/yaw 速度跟踪、双足步态与稳定性正则构成,见表 4
回合20 秒到时正常结束;躯干接触地面提前终止
目标最大化折扣累计回报,折扣因子 γ = 0.99

2理论基础

本实验沿用 PPO 作为连续控制算法。第 1 节中的 G1 速度跟踪任务具有高维连续动作、长时序稳定性要求和大量并行仿真的特征,适合使用 on-policy Actor-Critic:Actor 产生连续动作分布,Critic 估计状态价值以降低策略梯度方差。

PPO 的核心约束是裁剪新旧策略概率比,避免单次更新过大导致步态崩溃。优势估计使用 GAE(λ),价值函数通过价值损失拟合回报,策略通过 surrogate loss 提升带正优势的动作概率。熵正则项控制动作分布的随机性:系数越高,训练越鼓励维持探索;系数越低,策略标准差通常收缩更快。本实验的唯一正式对照变量正是 entropy_coef。

选择 PPO 的原因有三点:第一,动作是 37 维连续关节目标,策略梯度法比离散价值法更合适;第二,4096 个并行环境可提供充足 on-policy 样本;第三,G1 官方任务已给出 RSL-RL PPO 配置,本实验的目的不是重写任务,而是先建立官方配置下的可复现实证基线。

3实验框架

3.1网络结构

Actor 与 Critic 的网络结构如图 4 和图 5 所示。两者共享同样的 3 层隐藏层宽度(256、128、128),但输出不同:Actor 输出 37 维动作均值并带 37 个可学习 logσ,Critic 输出标量价值。实测 checkpoint 参数量为:Actor 85,962(含 37 个 logσ)、Critic 81,281,合计 167,243。

躯干速度 ·6重力投影 ·3速度命令 ·3关节位置 ·37关节速度 ·37上步动作 ·37观测 s ∈ ℝ¹²³ℝ¹²³256 神经元全连接 · ELU参数 31,744ℝ²⁵⁶128 神经元全连接 · ELU参数 32,896ℝ¹²⁸128 神经元全连接 · ELU参数 16,512ℝ¹²⁸37 神经元全连接 · 线性参数 4,773ℝ³⁷μ ∈ ℝ³⁷动作均值logσ ∈ ℝ³⁷可学习参数N(μ, σ²)高斯策略采样a ∈ ℝ³⁷动作训练时从 N(μ, σ²) 采样以探索;推理 / 部署直接取均值 μ合计 85,962 个参数(按各层实时求和,含 37 个 logσ)
图 4 · G1 Actor 网络架构。123 维观测经三层 MLP 映射为 37 维动作均值,配合独立可学习 logσ 构成对角高斯策略。
躯干速度 ·6重力投影 ·3速度命令 ·3关节位置 ·37关节速度 ·37上步动作 ·37观测 s ∈ ℝ¹²³ℝ¹²³256 神经元全连接 · ELU参数 31,744ℝ²⁵⁶128 神经元全连接 · ELU参数 32,896ℝ¹²⁸128 神经元全连接 · ELU参数 16,512ℝ¹²⁸1 神经元全连接 · 线性参数 129ℝ¹V(s) ∈ ℝ状态价值仅训练期为 Actor 提供基准合计 81,281 个参数(按各层实时求和)
图 5 · G1 Critic 网络架构。输入与 Actor 相同,输出为状态价值 V(s),仅训练期使用。

3.2观测与动作

G1 flat 去除了 rough 任务中的 height scan,因此观测为 123 维。构成见表 3。

表 3 · 观测向量构成
项维度含义训练期噪声
base_lin_vel3躯干线速度Uniform [-0.1, 0.1]
base_ang_vel3躯干角速度Uniform [-0.2, 0.2]
projected_gravity3重力方向在机体系中的投影,用于表征姿态Uniform [-0.05, 0.05]
velocity_commands3目标 vₓ、vᵧ、ωz无
joint_pos37关节相对默认位置Uniform [-0.01, 0.01]
joint_vel37关节相对速度Uniform [-1.5, 1.5]
actions37上一步动作无

动作项为 joint_pos,维度 37。策略输出经 scale=0.5 缩放,并以默认关节位置为 offset,得到目标关节位置。Play 配置关闭观测 corruption(G1 训练配置本未启用随机推搡,Play 变体中相应事件同样为空),因此回放视频反映的是无感知噪声的策略表现。

3.3奖励函数

奖励在每个控制步按权重与控制步长累加。G1 flat 的 16 个活跃奖励项见表 4:主目标是线速度与 yaw 速度跟踪,双足步态项鼓励单支撑和摆脚;其余项限制竖直速度、横滚/俯仰角速度、躯干倾斜、动作变化、脚滑、关节限位以及非必要关节偏离默认姿态。

表 4 · 奖励项与权重
奖励项权重作用
track_lin_vel_xy_exp+1.0指数核跟踪 xy 线速度命令
track_ang_vel_z_exp+1.0指数核跟踪 yaw 角速度命令
feet_air_time+0.75双足任务中鼓励非零速度命令下的单支撑/摆脚时间
termination_penalty−200.0提前失败终止重罚
flat_orientation_l2−1.0惩罚躯干偏离水平姿态
dof_pos_limits−1.0惩罚踝关节接近位置限位
feet_slide−0.1惩罚触地脚滑动
joint_deviation_hip / arms / fingers / torso−0.1 / −0.1 / −0.05 / −0.1限制髋偏航/滚转、手臂、手指和躯干偏离默认姿态
lin_vel_z_l2−0.2限制竖直方向速度
ang_vel_xy_l2−0.05限制横滚/俯仰角速度
action_rate_l2−0.005惩罚连续动作变化过大
dof_torques_l2 / dof_acc_l2−2e−6 / −1e−7惩罚髋/膝力矩与加速度

3.4终止与复位

终止条件包含 time_out 与 base_contact。训练回合长度为 20 秒,即 1000 个控制步;base_contact 在 torso_link 接触力超过阈值时触发,表示机器人摔倒或躯干触地。复位时根位姿在 x/y/yaw 范围内随机化,关节以默认姿态复位,训练任务保留启动摩擦设置与 reset 事件;Play 任务关闭随机外力与观测噪声。

3.5训练流程

每次迭代中,PPO 先在 4096 个并行环境中收集每环境 24 个控制步,共 98,304 条 transition;随后以 4 个 mini-batch、5 个 learning epoch 更新 Actor-Critic。1500 次迭代对应约 1.47 亿控制步。

num_envs4096官方配置;利用 GPU 并行物理提高采样吞吐。
num_steps_per_env24G1 官方 RSL-RL 配置,单次 rollout 覆盖约 0.48 秒控制时间。
max_iterations1500G1 flat 官方训练预算。
save_interval50每 50 次迭代保存 checkpoint;最终模型为 model_1499.pt。

3.6环境与超参数

Isaac Labisaaclab 0.54.3 · isaaclab_tasks 0.11.16 · Isaac Sim 5.1
RSL-RL / PyTorchrsl-rl-lib 5.0.1 · torch 2.7.0+cu128
GPUNVIDIA GeForce RTX 5070 Ti · driver 580.159.03
learning_rate1e-3, adaptive官方 G1 PPO 配置;按 desired_kl=0.01 自适应调整。
clip_param0.2PPO 标准裁剪半径。
gamma / lam0.99 / 0.95折扣回报与 GAE 的通用设置。
entropy_coef0.008 vs 0.005本实验唯一正式对照变量;0.008 为官方默认,0.005 为命令行覆盖。
actor_hidden_dims[256, 128, 128]G1 flat 官方策略网络宽度。

复现命令。

cd /home/jeff/IsaacLab
./isaaclab.sh -p scripts/reinforcement_learning/rsl_rl/train.py --task Isaac-Velocity-Flat-G1-v0 --headless --max_iterations 1500 --seed 42 --logger wandb --log_project_name robot-learning-dashboard --run_name g1-flat-baseline-s42
./isaaclab.sh -p scripts/reinforcement_learning/rsl_rl/train.py --task Isaac-Velocity-Flat-G1-v0 --headless --max_iterations 1500 --seed 42 --logger wandb --log_project_name robot-learning-dashboard --run_name g1-flat-entropy005-s42 agent.algorithm.entropy_coef=0.005

4实验结果

6 个正式 run 的记录与训练耗时见表 5。所有 run 均完成 1500 次迭代并写出最终 checkpoint。最佳候选策略的完整训练曲线如图 6 所示。

表 5 · 正式 run 清单
条件seed公开标识W&Breal time末 100 回报
baseline42baseline-s42jhaw3zp51418.51 s28.15
baseline43baseline-s43laa8wbet1301.64 s28.09
baseline44baseline-s44ewh31ipn1301.69 s27.88
entropy=0.00542entropy005-s42pg5ing461339.33 s29.74
entropy=0.00543entropy005-s43vc7x8lc81349.75 s30.90
entropy=0.00544entropy005-s44x0z2w4xa1326.98 s30.56
图 6 · 最佳候选策略(entropy=0.005, seed=43)的全部训练曲线(30 条)。数据由本地 TensorBoard 事件文件导出,未作平滑或修饰。

图 6 显示,最佳候选策略在前约 250 次迭代内由负回报进入稳定站立与初步跟踪阶段,之后回报继续缓慢上升;末段 Train/mean_episode_length 接近 1000 步,说明大多数回合以 time_out 正常结束。

5实验分析

5.1学习过程

图 6 显示,最佳候选策略在前约 250 次迭代内由负回报进入稳定站立与初步跟踪阶段,随后回报继续缓慢上升。平均回合长度接近 1000 step 后,学习重点转向速度跟踪误差和动作稳定性的精修。这个形态说明,本实验的主要难点不是单次站立,而是高维关节在长时间速度命令下保持协调。

5.2辅助指标

图 6 中的辅助曲线表明,策略先学会维持回合长度,再逐步降低 x/y/yaw 速度误差。base_contact 终止比例在训练后段维持在 1% 以下,但没有完全消失;这与人形机器人在快速转向命令下偶发躯干触地一致。动作标准差从约 0.99 下降到 0.5 到 0.6 区间,表示 PPO 策略从高度探索逐步收敛到较稳定的关节命令分布。

5.3种子一致性

正式训练覆盖 2 个熵系数条件和 3 个随机种子。表 5 列出了 6 个 run 的公开标识、W&B 链接、训练耗时和末 100 迭代回报;所有 run 均完成 1500 次迭代并写出最终 checkpoint。默认熵条件的末段回报为 28.04±0.14,低熵条件为 30.40±0.60。该结果不是单一 checkpoint 的偶然现象,但低熵条件的 seed 间方差更大,因此后文只把它解释为当前预算下的稳定收益,而不是全局最优超参数。

5.4策略行为

视频 1 展示了训练后策略在随机速度命令下的 9.98 秒跟随镜头回放。Isaac Lab 默认固定相机在 locomotion 任务中很快会让机器人走出画面,因此本实验使用跟随镜头回放:相机原点绑定到机器人根部,并给定固定 eye/lookat 偏移,只影响可视化,不改变环境动力学或策略输入。

第 1.78 秒:G1 起步行走t ≈ 1.78 s
第 4.98 秒:G1 持续行走t ≈ 4.98 s
第 8.18 秒:G1 继续跟踪速度命令t ≈ 8.18 s
图 7 · 10 秒跟随镜头回放抽帧。三个时刻均来自同一段真实回放视频,视频分辨率与抽帧分辨率均为 1280×720。

如图 7 所示,机器人能够维持直立、连续迈步,并随命令变化调整前进与转向;但步态仍然机械,转向时上肢与躯干补偿较明显。

60 秒耐力测试。视频 2 把同一策略的评估回合长度临时扩展到 60 秒,仅用于耐力观察,不改变训练配置。训练回合设为 20 秒,是因为该窗口已足以暴露站立失败、速度跟踪和躯干接触终止,同时能保持较高采样吞吐;60 秒回放用于检查策略超过训练时长后的连续运行。

第 10 秒:G1 持续行走t ≈ 10 s
第 35 秒:G1 持续行走t ≈ 35 s
第 58 秒:G1 持续行走t ≈ 58 s
图 8 · 60 秒耐力回放抽帧。三个时刻均来自同一段 60.0 秒真实回放视频,视频分辨率与抽帧分辨率均为 1280×720。

如图 8 所示,机器人没有出现立即摔倒或数秒内退化;长期运行主要稳定性来自较保守的步幅和持续姿态修正,而不是接近真实人类的自然步态。

6消融与对比实验

本节补充正式消融实验。实验目标不是寻找全局最优超参数,而是验证在当前训练预算下,熵正则强度是否会显著影响接触型人形 locomotion 的最终策略。官方配置默认 entropy_coef=0.008;本报告只把该值降到 0.005,其余任务配置、训练迭代数、网络结构、并行环境数和随机种子集合均保持不变。设计见表 6。

表 6 · 熵系数消融设计。除 entropy_coef 外,其余配置保持一致。
条件entropy_coefSeeds每个 run 迭代数并行环境观测/动作/奖励
默认熵0.00842, 43, 4415004096不变
低熵0.00542, 43, 4415004096不变

结果见表 7。低熵条件把末段平均回报从 28.04 提高到 30.40,约 +8.4%;主要收益来自 yaw 速度误差降低,从 0.464 降到 0.392,约 -15.5%。x/y 线速度误差变化较小,说明该调整并没有全面提升所有跟踪维度。动作标准差从 0.621 降到 0.480,表明策略探索幅度更小、输出更集中。

表 7 · 熵系数消融结果。数值为 3 seeds 的 mean±std,末段定义为最后 100 次迭代。
指标默认熵 0.008低熵 0.005相对变化
Episode reward28.04 ± 0.1430.40 ± 0.60+8.4%
Episode length996.1 ± 0.6996.5 ± 0.5+0.0%
x 速度误差0.120 ± 0.0010.120 ± 0.003+0.5%
y 速度误差0.067 ± 0.0060.060 ± 0.008-10.5%
yaw 速度误差0.464 ± 0.0080.392 ± 0.031-15.5%
base_contact 终止率0.47% ± 0.18%0.57% ± 0.14%+21.2%
动作 std0.621 ± 0.0160.480 ± 0.005-22.8%
图 9 · 熵系数消融的回报曲线(Train/mean_reward,6 个 run)。同条件同色,种子以线型区分;数据来自已导出的交互曲线文件。

如图 9 所示,低熵条件整体回报更高,但 seed 间差异也更明显。这个消融同时给出反向证据:低熵条件没有改善 base_contact 终止比例,反而从 0.47% 上升到 0.57%;低熵条件的回报标准差也更大。因此,本报告的结论不是“0.005 是最优熵系数”,而是“在当前 G1 flat 训练预算下,把 entropy_coef 从 0.008 降到 0.005 可以稳定提高回报与转向跟踪,但不解决所有稳定性问题”。

7独立评估

第 6 节的消融结论来自训练期日志,反映的是学习过程的质量;本节用独立评估管线在训练之外考察训练所得策略的可靠性。评估协议借鉴 AGILE 工作流的分层设计——确定性场景提供低方差、可复现的回归基准,随机命令 rollout 检验命令分布下的鲁棒性——由四类场景组成,见表 8;其中固定网格的 10 个命令点覆盖训练命令范围 vₓ∈[0, 1.0] m/s、vᵧ∈[−0.5, 0.5] m/s、ωz∈[−1.0, 1.0] rad/s 及其组合。全部评估在去随机化的 Play 环境变体中进行(关闭训练时的观测噪声;G1 的训练配置本就未启用随机推搡,Play 变体中相应事件同样为空);推理为确定性,即取动作分布的均值而不采样;六个策略在每个场景开始前重设同一评估种子,从而在相同的初始状态与命令序列下比较。每轮 50 个并行环境同时执行,逐回合明细与聚合结果落盘为 CSV 与 JSON,并记录 checkpoint 与场景配置的哈希以便溯源。

表 8 · 独立评估协议。四类场景合计每策略 1,300 回合、约 3.8 万仿真秒。
场景命令回合 × 时长检验目标
随机命令训练分布随机抽取,每回合恒定500 × 20 s命令分布下的总体水平
固定网格10 个确定性命令点,覆盖训练范围及其组合每点 50 × 20 s可复现的回归基准,供后续版本在相同条件下对比
耐力恒定 0.5 m/s 前进50 × 60 s超过训练回合 3 倍时长的连续运行
命令切换训练分布随机抽取,每 10 s 重采样250 × 60 s命令切换瞬间的鲁棒性

指标口径如下。速度跟踪误差与训练日志的 error_vel_xy/error_vel_yaw 同源:基座系下水平速度误差的 L2 范数、偏航角速度误差的绝对值,对有效步取时间平均;同一误差另按均方根(RMSE)口径并行计算并落盘,表 9 以同源均值口径为主、附随机命令场景的线速度 RMSE。每回合剔除起步 1 秒的稳定期与终止边界步,摔倒后自动重置产生的数据全部不计。可靠性主指标是摔倒回合数与成功率(摔倒 = 躯干触地终止,即训练中的 base_contact,本任务唯一的非超时终止);MTBF(平均摔倒间隔 = 总行走秒数 ÷ 摔倒次数)作为衍生指标一并报告——该指标引自可靠性工程、并非 locomotion 学界的标准基准指标,零摔倒时只报删失下界、不做外推。能耗以无量纲运输成本 COT = Σ|τ·q̇|Δt ÷ (mgd) 衡量(绝对值口径的机械功代理,按 50 Hz 控制频率采样,绝对值偏低,仅用于同协议下横向比较)。跟踪与能耗统计只计入未摔倒回合。

核心结果见表 9:两个条件呈现明确的取舍。跟踪精度上低熵条件更优——随机命令场景的线速度误差为 0.072 对 0.088 m/s,与第 6 节训练日志中低熵条件跟踪更优的总体方向一致,构成训练指标与独立评估的交叉验证;但收益的通道分布并不相同(训练日志中集中在 yaw,评估中集中在线速度),这与两处口径的差异有关——训练指标在带观测噪声的训练环境中按命令窗口统计,评估在无噪声环境下按回合统计。可靠性上默认熵条件全面占优:三个种子在全部四类场景、合计 31.7 小时仿真行走中零摔倒(MTBF ≥ 114,000 s);低熵条件共摔倒 62 次(MTBF 1,819 s),且全部集中在 seed 42 一个策略——它在范围角点命令下(前进 1.0 m/s、横移 0.5 m/s、转向 1.0 rad/s 同时下达)50 回合全部摔倒(平均约 3.2 秒),在命令切换场景中另摔倒 12 次。值得注意的是,该种子同时是固定网格上跟踪误差最低的策略(线速度误差 0.066 m/s,六个策略中最低)——更紧的命令跟踪并未伴随更高的稳定性,二者在此呈现此消彼长的关系。

表 9 · 独立评估核心结果。数值为 3 个训练种子的 mean±std(ddof=1);跟踪误差与 COT 只统计未摔倒回合;线速度误差单位 m/s、偏航误差单位 rad/s。
场景指标默认熵 0.008低熵 0.005
随机命令成功率1.000 ± 0.0001.000 ± 0.000
线速度误差0.088 ± 0.0110.072 ± 0.013
线速度 RMSE0.091 ± 0.0100.076 ± 0.013
偏航误差0.059 ± 0.0040.057 ± 0.003
COT1.084 ± 0.0511.196 ± 0.013
固定网格(10 命令点合并)成功率1.000 ± 0.0000.967 ± 0.058
摔倒数(/1,500 回合)050(全部来自 seed 42 的范围角点命令)
线速度误差0.105 ± 0.0110.087 ± 0.019
耐力 60 s成功率1.000 ± 0.0001.000 ± 0.000
线速度误差0.092 ± 0.0110.073 ± 0.018
命令切换 60 s成功率1.000 ± 0.0000.984 ± 0.028
摔倒数(/750 回合)012(全部来自 seed 42)
全场景合计摔倒数062
MTBF≥ 114,000 s(零摔倒,删失下界)1,819 s

逐命令点看,范围角点对两个条件都是误差最大的一点:默认熵条件虽未摔倒,线速度误差也升至 0.298 ± 0.033 m/s,为其余命令点(≤ 0.12 m/s)的两倍以上——三个命令通道同时达到训练范围上限时,策略以放宽跟踪精度来维持不摔倒。运动质量指标(关节加速度 RMS 约 105 rad/s²、动作变化率 RMS)在两条件间无显著差异。

视频 3 展示了最佳候选策略(低熵 seed 43)在固定网格五个代表性命令点上的连续表现:0.5 与 1.0 m/s 直行、0.5 m/s 横移、1.0 rad/s 转向、范围角点,每段 8 秒。

1.0 米每秒直行1.0 m/s 直行
0.5 米每秒横移0.5 m/s 横移
1.0 弧度每秒转向1.0 rad/s 转向
范围角点复合命令范围角点
图 10 · 固定网格集锦(视频 3)抽帧:四个命令点下的行走姿态,头顶箭头为环境自带的命令/实际速度可视化标记。视频与抽帧分辨率均为实测 1280×720。

如图 10 所示,该策略在四个命令点均保持直立行走,转向与横移时躯干和手臂有明显的补偿动作。视频 4 为命令切换场景的完整 60 秒回放(每 10 秒重采样一次命令):该策略在多次命令切换之间保持行走,未出现摔倒。

视频 5 记录了评估中发现的失效模式:低熵 seed 42 在范围角点命令下的回合。如图 11 的抽帧序列所示,机器人起步后约 2.6 秒身体前倾失稳,约 3 秒时躯干触地、回合终止(画面中机器人随后回到初始位置,为评估环境的自动重置)。

第 1 秒:正常行走t ≈ 1.0 s
第 2.6 秒:身体前倾失稳t ≈ 2.6 s
第 3 秒:躯干触地t ≈ 3.0 s
图 11 · 角点命令下的摔倒过程(视频 5)抽帧:正常行走 → 前倾失稳 → 躯干触地终止。视频与抽帧分辨率均为实测 1280×720。

独立评估对第 6 节的结论作出了补全:训练日志中低熵条件的回报优势,在评估中仅体现于跟踪精度;可靠性维度上默认熵条件严格占优,训练日志中 base_contact 终止率的微小差异(0.47% 对 0.57%)在评估中放大为 0 次对 62 次摔倒的差距。单一种子在极限命令下的系统性失效也表明,跨种子评估对于发现此类失效模式是必要的。

8局限性

第一,本实验只覆盖仿真中的平地速度跟踪,没有加入外力扰动、地形高度场、传感噪声或 sim-to-real 随机化;独立评估同样未包含扰动场景(列入后续抗扰动专项)。第二,独立评估使用单一评估种子(为保证 6 个策略同卷可比而固定),单种子带来的初始状态分布偏差靠每场景 250–500 回合的样本量摊薄,但未做多评估种子的稳定性检验;COT 为 50 Hz 机械功近似,绝对值不可与文献对标。第三,评估还暴露了一个训练目标未覆盖的行为:零速站立命令下策略存在约 0.05 m/s 的缓慢移动(20 秒累计路径约 1 米;该值为路径长度而非净位移),两个条件都有。第四,当前策略能走,但步态仍然机械,手臂和躯干补偿明显;这说明奖励函数更强调速度跟踪与不摔倒,而不是人类可解释的自然步态。第五,熵系数消融只比较了两个取值,还不能推出最优区间。

9结论与未来工作

本实验完成了 Unitree G1 在 Isaac Lab 平地速度跟踪任务上的可复现实验:使用官方环境配置和 PPO 训练预算,G1 可以在 1500 次迭代内学到稳定平地行走策略。多种子结果显示,降低熵系数可以提高当前预算下的末段回报和 yaw 跟踪质量;独立评估(第 7 节)进一步表明这一收益仅体现于跟踪精度——默认熵条件在 31.7 小时评估行走中零摔倒,而低熵条件的一个种子在极限命令下系统性摔倒。评估管线(固定命令网格、随机命令、耐力与命令切换四类场景)将作为后续实验的统一评估标准,奖励项消融将在同一协议下比较;随后进入粗糙地形、域随机化和抗扰动专项。

附录 · 关于本报告

数据来源。任务与 PPO 配置读取自 Isaac Lab 官方 G1 flat 配置;曲线与表格统计来自 6 个正式 run 的本地 TensorBoard 事件文件,统计口径为末 100 迭代种子间 mean ± std(ddof=1);参数量读取自最终 checkpoint;视频与抽帧来自最佳候选策略的跟随镜头 Play 回放。第 7 节的评估数字来自代码仓评估管线的落盘产物(每回合明细 CSV 共 7,800 回合,聚合 JSON 记录 checkpoint 与场景配置的 SHA-256 哈希、Isaac Lab 版本与代码 git 提交号),成功率经"CSV 原始逐行计数"与"聚合脚本"两条独立路径对账一致。

报告产物。完整训练曲线、对比曲线、回放视频与抽帧均随页面仓库提供;跟随镜头回放脚本为 scripts/play_follow_camera.py,评估管线为代码仓 eval/ 目录(场景声明式 YAML + 采集/聚合两段式脚本),评估媒体的实测尺寸记录于 media-info-eval.json。

参考文献。

  1. J. Schulman, F. Wolski, P. Dhariwal, A. Radford, O. Klimov. Proximal Policy Optimization Algorithms. arXiv:1707.06347, 2017.
  2. J. Schulman, P. Moritz, S. Levine, M. Jordan, P. Abbeel. High-Dimensional Continuous Control Using Generalized Advantage Estimation. arXiv:1506.02438, 2015.
  3. N. Rudin, D. Hoeller, P. Reist, M. Hutter. Learning to Walk in Minutes Using Massively Parallel Deep Reinforcement Learning. CoRL 2021.
  4. Isaac Lab Project Developers. Isaac Lab, official manager-based locomotion velocity tasks and Unitree G1 configuration.
  5. AGILE: A Comprehensive Workflow for Humanoid Loco-Manipulation Learning. arXiv:2603.20147, 2026.(独立评估协议的分层思路来源)
  6. Z. Fu, A. Kumar, J. Malik, D. Pathak. Minimizing Energy Consumption Leads to the Emergence of Gaits in Legged Robots. CoRL 2021, arXiv:2111.01674.(COT 机械功代理口径)

返回报告介绍 / Back to report