想象一个在厨房里的机器人。它不是那种每 30 秒焊接同一扇车门的预编程工厂机械臂;它是家庭助手。你让它从晾碗架上拿一个马克杯。当它移动时,你突然伸手穿过它的路径去拿盐瓶。

对于传统的机器人来说,这是一个噩梦般的场景。大多数运动规划器的计算速度太慢,无法在你伸出的手与机械臂相撞前的瞬间重新计算路径。结果会怎样?机器人死机,或者更糟糕——发生碰撞。

这就是论文 “Deep Reactive Policy: Learning Reactive Manipulator Motion Planning for Dynamic Environments” 所解决的问题。研究人员提出了一种名为 Deep Reactive Policy (DRP) 的新系统。它结合了深度学习的全局感知能力和反应式控制的闪电般反射速度,使机器人能够仅使用来自深度相机的点云数据,在混乱、变化的环境中导航。

图 1: 我们提出了 Deep Reactive Policy (DRP),这是一种以点云为条件的运动策略,能够在各种复杂和动态的环境中执行反应灵敏、无碰撞的目标到达任务。

在这篇文章中,我们将详细拆解 DRP 的工作原理,它为何优于现有方法,以及其训练和部署的三个不同阶段。

挑战: 为什么这很难?

要在家庭中运作,机器人需要解决 运动生成 (motion generation) 问题。它们需要弄清楚如何移动关节,使末端执行器 (手) 到达目标而不撞到任何东西。

传统上,有两种方法可以做到这一点,但都有缺陷:

  1. 全局规划器 (例如 A, RRT) :* 这些算法搜索从起点到终点的路径。如果存在解决方案,它们在数学上保证能找到。
  • *缺点: * 它们很慢。当规划器计算出路径时,动态世界已经发生了变化。它们通常还需要完美的 3D 世界地图,这在实时环境中很难维护。
  1. 反应式控制器 (例如 RMP, 势场法) : 这些就像条件反射。它们将机器人推向目标,并排斥附近的障碍物。
  • *缺点: * 它们目光短浅。它们经常陷入“局部极小值”——比如被困在 U 形障碍物中,因为数学公式说“径直走向目标”,但前面有一堵墙。

神经运动策略 (Neural Motion Policies) 试图弥合这一差距。这些神经网络被训练为直接将视觉输入映射到机器人动作。虽然前景广阔,但以前的尝试往往难以泛化到新环境,或者需要在运行时进行缓慢的优化步骤。

解决方案: Deep Reactive Policy (DRP)

研究人员推出了 DRP,这是一种直接在点云 (来自相机的 3D 数据点) 上运行的视觉-运动策略。DRP 不仅仅是一个单一的网络;它是一个建立在三大支柱上的复杂管道:

  1. IMPACT: 一个在海量数据集上训练的基于 Transformer 的策略。
  2. 师生微调 (Student-Teacher Finetuning) : 用于完善静态障碍物规避的改进阶段。
  3. DCP-RMP: 在推理时添加的一个数学“反射”层,用于动态安全。

让我们看看下面的完整架构。

图 2: Deep Reactive Policy (DRP) 是一种为动态、现实世界环境设计的视觉-运动神经运动策略。首先,局部反应式 DCP-RMP 模块调整关节目标,以处理局部场景中快速移动的动态障碍物。然后,IMPACT,一个基于 Transformer 的闭环运动规划策略,接收场景点云、修改后的关节目标和当前机器人关节位置作为输入,输出用于机器人在实时执行的动作序列。

如图 2 所示,系统接收场景的点云。一个名为 DCP-RMP 的模块 (左侧) 首先调整目标以应对快速移动的威胁。然后, IMPACT 网络 (右侧) 处理场景和目标,输出实际的机器人动作。

让我们分解每个组件。

1. IMPACT: Transformer 大脑

DRP 的核心是一个名为 IMPACT (Imitating Motion Planning with Action-Chunking Transformer,带有动作分块 Transformer 的模仿运动规划) 的神经网络。

数据集

深度学习需要数据——大量的数据。作者使用名为 cuRobo 的最先进 GPU 加速规划器生成了一个包含 1000 万条轨迹 的庞大数据集。他们创建了充满货架、箱子和杂物的多样化模拟环境。至关重要的是,他们包含了目标位于障碍物内部的“不可能”场景。在这些情况下,专家数据教导机器人尽可能靠近目标安全停止而不发生碰撞,这是现实世界安全的一项重要技能。

架构

IMPACT 接收原始点云作为输入。由于点云是嘈杂且非结构化的,系统使用 PointNet++ 编码器将 3D 点消化为紧凑的潜在表示 (\(z_s\) 和 \(z_r\)) 。

这些特征被输入到一个 Transformer 中。为什么要用 Transformer?因为运动规划是一个序列问题。模型需要理解机器人当前状态、障碍物和目标之间的关系。

解码器输出一个 动作块 (Action Chunk) 。 它不是仅仅预测下一个动作,而是预测未来一小段关节位置序列 (\(S\) 步) 。这种被称为动作分块的技术有助于生成更平滑的运动。

该网络使用行为克隆 (Behavior Cloning, BC) 和标准的均方误差损失函数进行训练:

行为克隆损失方程

在这里,网络最小化其预测的关节位置 (\(\bar{q}\)) 与专家的真实位置 (\(q\)) 之间的差异。

2. 师生微调 (Student-Teacher Finetuning)

在专家轨迹上进行训练可以达到 90% 的效果。然而,行为克隆有一个弱点: 复合误差 。 如果机器人稍微偏离完美路径,它可能会发现自己处于从未见过的状态,从而导致碰撞。

为了解决这个问题,作者使用了 迭代式师生微调

他们引入了一个“教师”策略。这位教师使用一种名为 Geometric Fabrics (几何织物) 的鲁棒控制器,该控制器在局部避障方面表现出色,但需要“特权信息”——它需要知道每个障碍物的确切几何形状和位置 (这是真实机器人很少能完美知道的) 。

“学生”是我们的 IMPACT 策略,它只能看到嘈杂的点云数据。

图 3: IMPACT 策略与局部反应式 Geometric Fabrics 控制器相结合,以实现改进的障碍物规避。然后将这个组合后的教师策略蒸馏到一个以点云为条件的学生策略中。

如图 3 所示,该过程如下运作:

  1. 教师 (Geometric Fabrics) 利用其对世界的完美认知生成经过优化的、安全的目标。
  2. 学生 (IMPACT) 尝试仅使用其视觉传感器来模仿这些目标。
  3. 这是一个循环过程。随着学生变得更好,它会替换教师中的基础策略,使系统能够学习越来越复杂的行为。

这个阶段显着减少了原始预训练模型中发生的轻微碰撞。

3. DCP-RMP: 反射层

前两个阶段产生了一个擅长全局规划和避开静态障碍物的策略。但是如果有人向机器人扔球怎么办?或者有人快速走过?神经网络可能反应太慢,或者该场景可能与其训练数据差异太大。

为了处理这种情况,作者在推理时引入了 黎曼运动策略 (Riemannian Motion Policy, RMP) 层。RMP 是基于世界状态生成力 (加速度) 的数学函数。

这里的创新在于 DCP-RMP (Dynamic Closest Point RMP,动态最近点 RMP) 。传统的 RMP 需要精确的障碍物模型。DCP-RMP 直接在原始点云上工作。

工作原理

  1. 检测运动: 系统将当前点云与上一帧进行比较,以识别正在移动的点 (动态障碍物) 。
  2. 寻找最近的威胁: 它计算到最近动态点的距离向量 (\(\mathbf{x}_r\)) 。

描述距离任务空间和雅可比矩阵的方程

  1. 生成排斥力: 它计算一个排斥加速度 (\(\mathbf{f}_r\)) 。障碍物越近、速度越快,推力就越强。

描述排斥力和度量的方程

  1. 修改目标: DCP-RMP 不是将力直接发送到电机 (这可能会与神经网络冲突) ,而是修改输入到 IMPACT 网络的 目标。它创建一个“虚拟目标”,将机器人推离威胁。

系统将目标吸引策略和障碍物规避策略结合成一个方程:

结合 RMP 策略的方程

这个修改后的目标 (\(\mathbf{q}_{mg}\)) 本质上是在告诉神经网络: “我知道你想去货架,但在下一秒,假装目标稍微偏左一点,因为右边有一只移动的手伸过来了。”

实验与结果

为了证明 DRP 有效,作者创建了 DRPBench , 这是一套包含 5 个具有挑战性任务的基准测试,在模拟和现实世界中均进行了测试。

图 4: DRPBench 在模拟和现实中引入了五个具有挑战性的评估场景。除了复杂的静态环境 (SE),我们还提出了突然出现的障碍物 (SAO),即障碍物突然出现在机器人前方;漂浮的动态障碍物 (FDO),即障碍物在整个环境中随机移动;目标遮挡 (GB),即目标被阻挡,机器人必须尽可能接近而不发生碰撞;以及动态目标遮挡 (DGB),即机器人在到达目标后遇到移动的障碍物。

这些任务包括:

  • 静态环境 (SE): 标准的杂乱环境。
  • 突然出现的障碍物 (SAO): 一个方块瞬间出现在路径上。
  • 漂浮的动态障碍物 (FDO): 随机飞行的方块。
  • 目标遮挡 (GB): 目标被覆盖;机器人必须安全地等待/悬停。
  • 动态目标遮挡 (DGB): 移动障碍物在机器人到达 阻挡目标。

模拟结果

如下表 1 所示,结果非常鲜明。

表 1: DRPBench 和 MπNets 数据集上的定量结果。DRP 在各种设置下均优于所有经典和基于学习的基线,特别是在动态和目标遮挡任务中表现出色。虽然像 cuRobo 这样的优化方法在静态场景中取得了成功,但它们在动态条件下举步维艰。DRP 结合了架构改进、微调和反应式控制 (通过 DCP-RMP) ,实现了强大的泛化能力和卓越的性能,特别是在需要快速适应的场景中。

数据中的关键结论:

  1. 经典规划器在动态环境中失败: 看看 AIT*。它在静态场景中达到 40.5%,但在所有动态类别中均为 0% 。 它根本无法足够快地重新规划。
  2. 优化规划器陷入困境: cuRobo 在静态场景中表现出色 (82.97%) ,但在动态目标遮挡中降至 3.00% 。 它依赖于优化,容易被快速变化搞糊涂。
  3. DRP 占据主导地位: DRP 在所有方面都保持了很高的成功率。在最难的类别 (动态目标遮挡) 中,它达到了 65.25% , 而几乎所有其他方法都只有个位数。

该表还强调了架构选择的重要性。“IMPACT”一行显示了 没有 最终 RMP 反射层时的性能。它很强,但添加 RMP 层 (“DRP”一行) 使漂浮动态障碍物 (FDO) 任务的成功率翻了一番 (32.00% -> 75.50%) 。

现实世界表现

作者在 Franka Panda 机器人上部署了 DRP。现实世界引入了噪音、传感器延迟和不完美的深度数据。尽管存在这些挑战,DRP 仍成功绕过了倾斜的架子、抽屉和人类的干扰。

一个重要的发现是,在现实世界的“目标遮挡”任务 (人类挡住目标) 中,DRP 达到了 92.86% 的成功率。cuRobo 和 NeuralMP 等基线完全失败 (0%) ,经常撞上障碍物或无限期冻结。

结论

Deep Reactive Policy (DRP) 代表了机器人运动生成迈出的重要一步。通过结合大规模学习 (IMPACT) 的优势和反应式控制 (DCP-RMP) 的数学严谨性,作者创建了一个具备以下特点的系统:

  • 全局感知: 它理解场景结构,可以围绕复杂的静态几何形状进行规划。
  • 局部反应: 它可以实时躲避飞来的物体或移动的人手。
  • 传感器驱动: 它使用原始点云工作,不需要预先知道环境模型。

对于学生和研究人员来说,DRP 展示了机器人技术的一个强大趋势: 混合系统 。 纯粹的学习或纯粹的经典控制都不足以应对现实世界的混乱。但是,当你使用学习进行高级理解,并使用控制理论进行低级安全保障时,你就兼得了两者的优点。