25年5月来自中山大学、MBZUAI、深圳鹏城实验室和拓元智慧的论文“RoBridge: A Hierarchical Architecture Bridging Cognition and Execution for General Robotic Manipulation”。
在开放式场景下操作机器人执行多样化任务是机器人技术领域的一个重要研究和应用方向。虽然自然语言处理和大型多模态模型的最新进展增强了机器人理解复杂指令的能力,但在开放环境中,机器人操作仍然面临着程序性技能困境和声明性技能困境。现有方法往往会损害认知和执行能力。为了应对这些挑战,本文提出 RoBridge,一种用于通用机器人操作的分层智能架构。它由一个基于大规模预训练视觉-语言模型 (VLM) 的高级认知规划器 (HCP)、一个作为符号桥梁的不变可操作表征(IOR) 和一个通用具身智体(GEA) 组成。RoBridge 保留 VLM 的声明性技能,并释放强化学习的程序性技能,有效地弥合认知和执行之间的差距。 RoBridge 的性能显著提升,相比现有基准模型,在新任务中实现 75% 的成功率,在模拟-到-现实的泛化中,平均成功率达到 83%,且每个任务仅使用五个真实数据样本。
在开放场景下操作机器人执行多样化任务是机器人领域一个重要的研究和应用方向。在此类场景中,机器人需要理解自然语言指令并准确执行复杂任务,同时适应动态环境变化和不确定性[15, 23]。近年来,自然语言处理和大型多模态模型[3, 37, 47]的快速发展,使得机器人理解和执行复杂指令的能力取得了长足的进步。然而,机器人在开放环境中处理复杂指令时仍然面临两大挑战:程序性技能困境和声明性技能困境。
• 程序性技能困境。为了获得根据指令操作目标的能力,诸如 RDT [33] 和 π0 [5] 之类的具身模型[5, 6, 33, 36]通常采用数据驱动的轨迹拟合方法。然而,当面对环境变化(包括波动的光照条件、相机姿势偏差和上下文变化)时,这些方法的性能往往会急剧下降 [42]。强化学习虽然鲁棒性强,但其反复试验的特性和较低的学习效率使其在现实环境中的适用性较差。
• 声明性技能困境。最近,人们致力于将视觉语言模型 (VLM) 集成到机器人系统 [9, 24, 25, 32, 40](如 ReKep [25] 和 OmniManip [40])中,它们使用大型多模态模型为开放域任务生成操作指令。虽然这些模型在理解方面表现出色,但它们缺乏具体经验,并且需要将输出限制为可执行操作。这种方法迫使语言模型在没有物理直觉的情况下处理时空推理,常常导致不合理的任务规划。例如,在“将块 A 放在块 B 上面”的任务中,由于对空间理解不足(例如形状、高度),这类方法常常会产生致命的错误动作序列。
遗憾的是,面对这些困境,大多数现有方法 [7, 28] 选择限制大型多模态模型的能力,迫使它们生成低级执行命令来驱动数据驱动的下游控制策略来完成任务。这虽然能够在开放场景中实现一定程度的任务执行,但本质上是在认知和执行能力上做出妥协。相反,假设可以在声明性任务中充分发挥大型语言/多模态模型的优势,并在程序性任务中发挥强化学习的优势,而彼此之间不互相制约。那么,机器人或许能在处理开放式任务方面取得重大突破。因此,想要回答的问题是:如何构建一个框架,使大型多模态模型与强化学习能够充分发挥各自的优势,同时又能相互支持,最终在开放式场景中最大化其能力。
在认知领域的理论[20, 35, 56]中,科学家提出,在人类从高级推理过渡到低级控制的过程中,大脑发出信息,比如行走,无论环境的具体表现如何,例如外观、颜色、大小等,特定的神经元总会根据特定的抽象概念被激活。这些特定神经元的激活调节着运动区域的活动水平[19]。最终,根据环境的表现出现精确的动作行为,例如确定用左脚或右脚迈出多大的一步。这一理论提供了一个鼓舞人心的视角,表明高级推理和低级控制之间的通信可以通过一种具有物理直觉和环境不变性的广义交互表示来实现,而不是采取直接通信的形式,而是作为抽象认知和具体执行之间的符号桥梁。
机器人操作学习。近年来,机器人操作引起了广泛的研究关注。一种简单的方法是利用模仿学习 [41, 59],这是一种将观察映射到动作的监督学习形式。早期的方法通过设计有效的网络架构、构建不同的训练目标和利用合适的表示来实现高性能 [8, 17, 36, 50]。为了能够在不同的现实世界场景中部署策略,已经引入几个大规模机器人数据集 [11, 16, 27, 49];然而,这些数据集的规模与现实世界环境的广泛变化相比显得微不足道。受到大型预训练模型 [3, 37, 47] 成功的启发,研究人员已经开始直接在机器人数据上微调视觉语言模型,以增强机器人模型的泛化能力 [5, 7, 28, 31]。尽管如此,由于机器人数据和预训练数据之间的领域差距,微调模型经常遭受灾难性遗忘,导致认知表现显著下降。一种替代方法涉及机器人操作的强化学习 [12, 38, 51, 54],这种方法可以开发强大的策略。然而,这些方法经常难以完成需要语言理解的复杂任务。
机器人操作的表示。结构化表示旨在解决机器人操作中的泛化挑战。在机器人操作中,结构化表示是一种将复杂的环境或物体信息编码为具有明确几何、语义或功能结构的抽象形式,以支持高效的推理、规划和任务执行。其核心思想是通过简化的符号元素(例如关键点[25, 32, 40]、6D姿态[26, 30, 48]、约束[10, 22, 57, 63])捕捉关键信息,以降低问题复杂性并增强泛化能力。一些方法[4, 14, 58]预测运动过程的关键帧,并将其作为低级控制的原始提示。其他方法[26, 30]从人类视频中提取交互轨迹,以利用各种数据源,从而增强对各种先前未见过目标的泛化能力。然而,这通常需要特定于任务的注释。此外,一些研究 [25, 40] 利用视觉语言模型 [37] 和基础模型 [29, 39, 53] 的功能来获取关键点和 6D 姿态作为表示,并将它们与运动规划相结合以实现低级控制。然而,预训练期间缺乏物理交互数据通常会导致视觉语言模型生成的规划与现实世界的物理情况不符,从而限制了它们在实际应用中的有效性。
可泛化的机器人操作。为了增强模型在不同环境中的泛化能力,特别是从模拟环境到现实世界环境的迁移,现有方法经常采用域自适应和域随机化技术。域自适应旨在基于现有图像创建额外的合成图像 [21, 43, 62]。相比之下,域随机化更常用,因为它只需要随机化材质纹理、物体姿态、相机参数和其他因素[18, 45, 46]。域随机化通常应用于模拟环境,然后将训练好的策略迁移到真实机器人上。
本文 RoBridge——一种针对通用机器人操作的分层智能架构。如图所示,其方法保留VLM的声明性技能,并释放了强化学习的程序性技能。该架构创新地构建了一个包含三核心要素的智能系统:(1)基于大规模预训练视觉语言模型的高级认知规划器(HCP);(2)具有物理直觉和环境不变性的不变可操作表示(IOR),作为抽象认知和具体执行之间的符号桥梁; (3)多面手体现智体(GEA),通过与物理世界的交互实现精确的动作执行。
RoBridge 框架
RoBridge 的框架如图所示。它主要包含三个核心组件:高级认知规划器、不变操作表征和通用具身智体。首先,高级认知规划器基于观察和指令将任务分解为基本动作。然后,对于每个动作,HCP 集成基础模型以生成不变操作表征。最后,通用具身智体利用此表征执行操作,执行过程由闭环控制进行。
高级认知规划器(HCP)。 RoBridge 的 HCP 由 VLM(例如 GPT-4o [37])和一些 API(例如 GroundingDINO [34]、SAM [29] 和 TrackAnything [52])组成,主要负责任务的高级认知规划。具体来说,给定当前观察的 RGB 图像 I 和指令 l,查询 VLM 将任务分解为几个原始动作,每个原始动作 A_i = {T_i,obj_i,des_i},其中 T_i 表示动作类型,obj_i 表示操作目标的名称,des_i 表示目的地或可能不存在。如图所示的示例,任务分解为:
{A_1 = {到达,黄色圆柱体,无},
A_2 = {抓取,黄色圆柱体,无},
A_3 = {到达,圆形槽,无},
A_4 = {放置,黄色圆柱体,圆形槽。
这有助于模型完成复杂任务的高级认知规划。
不变可操作表示 (IOR)。对于每个原始动作 A_i 和传感器数据,旨在将它们转换为不变的可操作表示 R_i,该表示由动作类型 T_i、第三视图掩码 M_i、第一视图掩码深度 D_i 和约束 C_i 组成。M_i 包含夹持器第三视图掩码 M_ig、被操作目标第三视图掩码 M_io = 和目标第三视图掩码 M_id(如果存在)。类似地,D_i 包含夹持器第一视图掩码深度 D_ig、被操作目标第一视图掩码深度 D_io 和目标第一视图掩码深度 D_id(如果存在)。约束 C_i 包括末端执行器位姿和运动方向。
为了获取 R_i,首先使用 HCP 中的 GroundingDINO [34] 和 SAM [29] API 来分割与原始动作相关的目标。随后,HCP 的 VLM 像 [53] 一样确定这些目标的最终选择。同时,对于具有方向约束的任务,例如打开抽屉或转动水龙头,HCP 提供相应的方向 d,该方向 d 经过归一化后并入约束 C_i 中。将这些信息与传感器数据相结合,最终得出 R_i。IOR 旨在帮助 RoBridge 获得更好的域不变性,并减少环境和任务变化对模型的影响。
通才具身智体 (GEA)。在每个时间步,都会生成一个新的 Rt_i。具体的更新过程将在下一闭环控制部分描述。对于每个 Rt_i,需要将其映射到机器人运动 a_t 处,以执行原始动作。换句话说,需要学习一个策略 π (R^t_i) → a_t。根据 PSL [12],原始动作“到达”通常涉及将机器人的末端执行器移动到明确定义的目标位置。与抓取或放置等涉及复杂目标交互和决策的任务不同,“到达”可以通过运动规划有效地解决。对于其他原始动作,结合强化学习和模仿学习来训练一个通才具身智体,使其能够有效地执行动作,同时确保在不同输入条件下的鲁棒性和一致性能。
闭环控制。为了在动态环境中保持信息的准确性和原始动作的迭代,添加了闭环控制。由于闭环控制各部分的速度不同,将其分为高频控制和低频控制。对于高频控制,Rt_i 的更新如下:首先获取新的传感器数据,然后使用 Track-Anything [52] 更新 M_it 和 D_i^t,从而得到更新的 R^t_i。对于低频控制,尝试检查并获得以下三种状态:成功、错误和正常。用 GPT-4o 结合机械手状态来判断任务是否成功,类似于 [58]。将以下信息输入 GPT-4o 进行处理:一张带有任务相关目标标签的 RGB 图像 Iˆ、机械手的状态(指示其是打开还是关闭)以及原始动作。基于此输入,GPT-4o 会生成关于当前操作成功或失败的判断。如果判断结果为成功,系统将根据所有必需操作是否已完成,继续执行序列中的下一个操作或终止任务。相反,如果判断结果为失败,系统将重新生成输入 R_i。
通用智体 (GEA) 训练
目标是训练一个能够实现高成功率和强大鲁棒性的智体,确保其在各种场景、机器人配置和任务中都能实现可靠且一致的性能。为此,采用了多阶段训练,如图所示。
强化学习 (RL) 训练。首先,获得高性能至关重要。为此,采用强化学习方法,针对每项特定任务训练一个专家智能体 π_e,确保每项任务都能高效执行。此外,为了增强专家智体的鲁棒性,在训练过程中引入物体形状、机械臂位置和摄像头方向的域随机化变化。
模仿学习 (IL) 训练。接下来,开始训练一个通用智体 π_g。用专家智体为每个任务生成高质量数据,并从数据中提取广义交互表示 R 作为 π_g 的输入。除了在专家智体训练过程中采用的域随机化之外,还融入多种领域随机化技术,包括深度扭曲、扩张、随机平移以及通过增删改查掩码信息。这些策略旨在提高训练后的智体在不同环境条件下的泛化能力和鲁棒性。为了模拟现实世界中充满噪声的深度传感器,在处理深度图像时采用了一系列增强技术 [13]。具体来说,利用深度扭曲(warping),即应用高斯平移来模拟视角和传感器噪声的变化。此外,融入高斯模糊来模拟传感器模糊和对焦问题的影响,这些问题在现实世界场景中很常见。此外,引入随机掩码来在深度图中创建人工洞,模拟实际应用中经常出现的遮挡和数据缺失。由于模型生成的掩码本身可能存在不准确性和覆盖不完整问题,采用随机偏移和随机裁剪等技术。这些方法用于降低智体过度依赖掩码的风险。
持续技能聚合。智体在模仿学习中经常会遇到复合错误 [60]。为了解决这个问题,引入一种使用 DAgger [44] 的迭代优化策略。认识到在线 DAgger [1] 可能导致不稳定,并且离线 DAgger 在多任务设置下更新缓慢,本文为离线 DAgger 开发一种自适应采样机制。如算法 1 所述,该机制根据任务复杂度调整采样频率:挑战性任务的样本数量更多。最初,任务的权重相等。函数 f 将奖励映射到值以调整任务权重。在每次迭代中,策略 π_g 在当前数据集上进行训练,任务按权重采样,奖励由 f 变换以更新权重。记录失败,然后专家 π_e 为任务数据集提供纠正数据。
架构与训练。对于每项任务,采用单独的强化学习 (RL) 策略,记为专家 π_e。用最先进的 RL 算法 DRQ-v2 [54] 训练 π_e,该算法将 RGB 图像和机器人状态以及特定于任务的 one-hot 向量表示作为输入,并输出低级动作。π_g 采用的网络架构与 DRQ-v2 相同,只是没有批评者网络。该框架利用不变可操作表示 (IOR) 作为输入,其中原始动作由独热向量表示,并类似地输出低级动作。
硬件设置。在进行真实世界实验时,用 Kinova Gen3 机械臂。还使用了两个 Realsense D435i 摄像头:一个安装在手腕上,提供第一人称视角,另一个提供第三人称视角。
模拟基准。在两个模拟环境中进行了实验:Metaworld [55] 和 Robosuite [64]。Metaworld 提供了丰富的任务集,利用其中的 50 个任务进行训练和测试。此外,挑选 35 个任务用于训练,并选取 5 个不同的任务进行零样本测试,以确保训练任务集和测试任务集之间没有关联。
真实世界评估。进行涉及以下任务的真实世界实验:(1)“拾取”:准确抓取并拿起桌面上的指定物体。(2)“扫动”:将物体移动到指定位置。(3)“按下按钮”:完全按下按钮关闭。(4)“打开抽屉”:将抽屉拉出至少 10 cm 的距离。“拾取”和“扫动”任务使用未见过的物体进行测试,以进一步评估泛化能力。还设计了一个多阶段任务,需要拾取积木并将其插入相应形状的凹槽中。该任务旨在评估模型处理长时域序列的能力和稳定性。设置四个阶段:“拾取圆柱体”、“放置圆柱体”、“拾取长方体”和“放置长方体”,并测量了执行过程的长度。
基线。 DrQ-v2 [54] 是一种最先进的强化学习方法。调整多任务 DrQ-v2,使其包含 RGB 输入、机器人本体感觉和one-hot编码任务。SayCan [2] 使用大语言模型 (LLM) 进行技能规划。用在不同任务上训练的 DrQ-v2 模型作为 SayCan 的技能库。PSL [12] 类似于 SayCan,将技能组织为动作。ManipGen [13] 使用 DAgger 和领域随机化扩展了 PSL。本文扩展 PSL 和 ManipGen 的技能库以用于任务。ReKep [25] 采用关键点表示进行任务规划。由于其初始性能不佳,通过额外的任务规范和约束增强了提示。还比较了流行的端到端方法,包括 RDT [33]、π_0 [5] 及其自回归版本 π_0 -fast。为了对 RDT、π0 和 Ro-Bridge 进行真实世界的测试,为每个任务收集 5 个演示以进行微调。