大模型固然性能强大,但限制也颇多。如果想在端侧塞进 405B 这种级别的大模型,那真是小庙供不起大菩萨。近段时间,小模型正在逐渐赢得人们更多关注。这一趋势不仅出现在语言模型领域,也出现在了机器人领域。
昨天晚上,朱玉可和 Jim Fan 团队(英伟达 GEAR 团队)新鲜发布了他们的最新研究成果 HOVER。这是一个仅有 1.5M 参数的神经网络,但它足以控制人形机器人执行多种机体运动。
先来看看效果,将 HOVER 在不同模式下控制的机器人放到一起组成阵列,其中每一台机器人都有自己的控制模式。还挺壮观的!这也佐证了 HOVER 的通用性。你能看出它们的不同之处吗?
无论是 H2O 模式、OmniH2O Mode 模式、还是 ExBody 模式 、HumanPlus 模式,左手和右手的慢动作都直接被 HOVER 大一统了。
实际上,HOVER 就是一个通用型的人形机器人控制器。
HOVER 一作 Tairan He(何泰然)的推文,他是 CMU 机器人研究所的二年级博士生,还是个有 38 万多粉丝的 B 站 up 主(WhynotTV)
据介绍,HOVER 的设计灵感来自人类的潜意识。人类在行走、保持平衡和调整四肢位置时都需要大量潜意识的计算,HOVER 将这种「潜意识」能力融合进了机器人。这个单一模型可以学习协调人形机器人的电机,从而实现运动和操控。
Jim Fan 的推文
- 论文标题:HOVER: Versatile Neural Whole-Body Controller for Humanoid Robots
- 论文地址:https://arxiv.org/pdf/2410.21229
- 项目地址:https://hover-versatile-humanoid.github.io/
HOVER 的训练使用了 NVIDIA Isaac,这是一个由 GPU 驱动的模拟套件,可将物理加速到实时的 1 万倍。按 Jim Fan 的比喻就是说,只需在一张 GPU 卡上运算大概 50 分钟,机器人就像是在虚拟「道场」中经历了一整年的密集训练。
然后,无需微调,就可以将这个神经网络以零样本方式迁移到真实世界。
HOVER 可以接收多种高级运动指令,即所谓的「控制模式(control mode)」,比如:
- 头部和手部姿势,可通过 Apple Vision Pro 等增强现实设备捕捉;
- 全身姿势,可通过 MoCap 或 RGB 相机;
- 全身关节角度:外骨骼;
- 根速度命令:操纵杆。
这项研究的贡献包括:
- 一个统一的界面,可让控制者使用任何方便的输入设备来控制机器人;
- 一种更简单的全身远程操作数据收集方法;
- 一个上游的视觉 - 语言 - 动作模型,可用于提供运动指令,之后 HOVER 会将其转换为高频的低级运动信号。
HOVER 是如何炼成的?
用于人形机器人的基于目标的强化学习
该团队将所研究的问题表述成了一个基于目标的强化学习任务,其中策略 π 的训练目标是跟踪实时的人类运动。其状态 s_t 包含智能体的本体感受 s^p 和目标状态 s^g。其中目标状态 s^g 会为目标运动提供一个统一的表征。基于此,可将策略优化的奖励定义成。
- 动作
表示目标关节位置,这些位置会被输入到 PD 控制器中以驱动机器人,他们使用了近端策略优化 (PPO) 算法来最大化累积折扣奖励
该设置被表述为一个命令跟踪任务,其中人形机器人会学习在每个时间步骤遵从目标命令。
用户人形机器人控制的命令空间设计
对于腿部运动,根速度或位置跟踪是常用的命令空间。然而,仅仅关注根跟踪会限制人形机器人的全部能力,尤其是对于涉及全身运动的任务。
该团队研究了之前的工作,发现它们提出了一些各不一样的控制模式,并且每种模式通常都是针对某些特定的任务,因此缺乏通用人形机器人控制所需的灵活性。
而该团队的目标是设计一个全面的控制框架,以适应多种多样的场景和各种不同的人形机器人任务。为此,在构建命令空间时,必须满足以下关键标准:
- 通用性:命令空间应包含大多数现有配置,允许通用控制器替换针对特定任务的控制器,同时还不会牺牲性能或多功能性。并且该空间应具有足够的表现力,以便与现实世界的控制设备交互,包括操纵杆、键盘、动作捕捉系统、外骨骼和虚拟现实 (VR) 头设,如图 1 所示。
- 原子性:命令空间应由独立的维度组成,从而能够任意组合控制选项以支持各种模式。
基于这些标准,该团队定义了一个用于人形机器人全身控制的统一命令空间。该空间由两个主要控制区域组成 —— 上身和下身控制 —— 并包含三种不同的控制模式:
- 运动位置跟踪:机器人上关键刚体点的目标 3D 位置;
- 局部关节角度跟踪:每个机器人电机的目标关节角度;
- 根跟踪:目标根速度、高度和方向,由滚动、俯仰和偏航角指定。
在如图 1 所示的框架中,该团队引入了一个 one-hot 掩码向量来指定激活命令空间的哪些组件,以便后面跟踪。
如表 1 所示,可以将其它基于学习的人形全身控制的最新研究看作是新提出的统一命令空间的子集,其中每项研究都代表特定的配置。
- 运动重定向
近期有研究表明,如果学习的运动数据集很大,学习到的人形机器人全身运动控制策略就会更加稳健。
为了获得大型数据集,可将人类运动数据集重定向成人形机器人运动数据集,这个过程分为三步:
1. 使用正向运动学(forward kinematics)计算人形机器人的关键点位置,将其关节配置映射成工作空间坐标。
2. 拟合 SMPL 模型以匹配人形机器人的运动学,做法是优化 SMPL 参数以与正向运动学计算得到的关键点对齐。
3. 使用梯度下降来匹配已经拟合的 SMPL 模型和人形机器人之间的对应关键点,重定向 AMASS 数据集。
- 状态空间设计
他们训练了一个 oracle 运动模拟器 其中 p_t 是人形机器人刚体位置 、θ_t 是方向、p_t 是线速度、 ω_t 是角速度、a_{t−1} 是前一个动作。本体感觉定义为
目标状态的定义是 其中包含参考姿态以及人形机器人所有刚体的参考状态与当前状态之间的一帧差异。他们使用的策略网络结构为层尺寸为 [512, 256, 128] 的三层 MLP。
- 奖励设计和域随机化
这里,奖励 r_t 是三个分量之和:1) 惩罚、2) 正则化和 3) 任务奖励,详见表 2。域随机化是将模拟环境和人形机器人的物理参数随机化,以实现模拟到现实成功迁移。
通过蒸馏实现多模式多功能控制器
- 本体感受
对于从 oracle 教师 π^oracle 中蒸馏得到的学生策略 π^student,本体感受定义为其中 q 是关节位置, 是关节速度,ω^base 是基准角速度,g 是重力向量,a 是动作历史。
他们将最新的 25 个步骤的这些项堆叠起来作为学生的本体感受输入。
- 命令掩码
如图 2 所示,学生策略的任务命令输入是使用基于模式和基于稀疏性的掩码定义的。具体来说,学生的任务命令输入是这样表示的
模式掩码 M_mode 会为上半身和下半身分别选择特定的任务命令模式。例如,上半身可以跟踪运动位置,而下半身则专注于关节角度和根部跟踪,如图 2 所示。在模式特定的掩码之后,应用稀疏掩码 M_sparsity。
例如,在某些情况下,上半身可能只跟踪手的运动位置,而下半身只跟踪躯干的关节角度。模式和稀疏二元掩码的每一比特都来自伯努利分布 𝔅(0.5)。模式和稀疏掩码在事件情节(episode)开始时是随机的,并保持固定,直到该情节结束。
- 策略蒸馏
该团队执行策略蒸馏的框架是 DAgger。对于每个事件情节,都先在模拟中 roll out 学生策略,从而得到的轨迹。
另外在每个时间步骤还会计算相应的 oracle 状态使用这些 oracle 状态,可以查询 oracle 教师策略以获得参考动作
然后通过最小化损失函数来更新学生策略 π^student。
实验
研究团队针对以下问题,在 IsaacGym 和 Unitree H1 机器人上开展了广泛的实验:
- Q1: HOVER 这个通用策略能比那些只针对特定指令训练的策略表现得更好吗?
- Q2: HOVER 能比其他训练方法更有效地训练多模态仿人机器人控制器吗?
- Q3: HOVER 能否在真实世界的硬件上实现多功能多模态控制?
与专家策略的对比
该团队在不同控制模式下比较了 HOVER 和相应专家策略的表现。以 ExBody 模式为例,研究团队加入了固定的掩码,让 HOVER 和整个数据集 Q 中的 ExBody 模式可比。
如表 III 和图 3 所示,HOVER 展现出了优越的泛化能力。在每一种指令模式中,HOVER 在至少 7 个指标上超越了之前的专家控制器(表 III 中用粗体值突出显示)。同时,这也意味着即使只关注单一控制模式,从专家策略中提取的策略也比通过强化学习训练出的专家更强。
与通用训练方法的对比
研究团队在八种不同的模式下测量了 HOVER 在跟踪局部和全身位置方面的表现。他们用最大误差(Emax)减去当前误差(E (.)),再除以最大误差(Emax)和最小误差(Emin)之间的差值来计算误差。雷达网图更大,代表模型的跟踪性能更好。实验结果显示,HOVER 在所有 32 个指标和模式中的误差都很低。
在真实世界中的测评
为了测试 HOVER 策略在真实世界中的表现,研究团队设计了定量的跟踪实验和定性的多模态控制实验。
- 站立时的动作评估
该团队通过跟踪 20 种不同的站立动作来评估 HOVER 的性能,表 V 中的定量指标显示,HOVER 在 12 个指标中的 11 个上超越了专家策略。HOVER 成功跟踪了关节俯仰运动与全身运动,特别是高度动态的跑步动作也能搞定。
机器人的关节可以在 - 0.5 到 0.5 的俯仰角度之间变化
- 多模态评估
该团队还模拟了真实的生活场景,测试了在突然切换命令时 HOVER 对运动的泛化能力。HOVER 成功地让机器人从 ExBody 模式切换到 H2O 模式,同时在向前行走。
从 ExBody 切换到 H2O 模式
从 HumanPlus 模式切换到 OmniH2O 模式,机器人也能同时执行转弯和向后行走。
从 HumanPlus 切换到 OmniH2O 模式
此外,他们还使用 Vision Pro 随机掩盖头部和手部的位置,进行了远程操作演示,可以看出,机器人的动作非常地丝滑流畅。
有时,它也会出错,比如只追踪了测试者的头部位置,忽略了挥手的动作。
结果表明,HOVER 能够平滑地在不同模式之间追踪动作,展示了其在真实世界场景中的鲁棒性。