Open Source Robotics

精选高质量开源机器人项目、工具和软件,推动机器人社区发展。

NoMaD: Goal Masked Diffusion Policies for Navigation and Exploration

作者: Ajay Sridhar, Dhruv Shah, Catherine Glossop, Sergey Levine · ICRA 2024

许可协议

  • 开放获取
  • 论文: CC BY 4.0

以下内容均依据论文全文,按其 CC BY 4.0 许可协议使用;其中的图已注明作者。

一句话总结

一个带有可选、可掩码目标图像的单一扩散策略同时处理探索和到达目标;在 LoCoBot 上,它以约小 15× 的模型胜过图像子目标扩散方法。

为何重要

一个紧凑的策略取代了目标条件策略加单独图像生成模型的组合,将模型规模从 335M 参数降至 19M,作者指出这适合算力较弱的机载计算机。扩散头在路口处保留了多个无碰撞的选项,而在给定目标图像时仍能收敛到正确的路径。它在公开的多机器人导航数据集(GNM 和 SACSoN)上训练,并在真实机器人上测试,而不仅仅是在仿真中测试。

问题

机器人在陌生环境中搜寻图像所示的目标时,需要两种行为:与任务无关的探索以找到目标,以及找到目标后的目标导向导航。以往的系统将二者拆分为不同的模型,例如目标条件策略加上一个提议子目标图像的 300M 参数图像扩散模型。探索还需要表示多模态的动作分布,例如在路口向左或向右,而较简单的策略类别会把这些模态平均掉。

提出的方法

NoMaD 扩展了 ViNT Transformer 主干网络(EfficientNet-B0 编码器,4 层,4 个注意力头),加入一个二值目标掩码来阻断对目标 token 的注意力;训练时以 0.5 的概率采样该掩码,使一个策略学会两种模式。观测上下文作为条件输入一个 1D 条件 U-Net 扩散模型,该模型在 10 步内对 8 个未来动作组成的序列去噪。该策略与拓扑图记忆和基于前沿的探索配合使用,沿用 ViKiNG 的设置。

关键见解

  • 训练时对目标 token 进行掩码,使单个网络能够同时学习目标条件行为和无目标行为,且两种模式的性能均不受损。
  • 直接用扩散对动作建模,而不是生成子目标图像,能以小得多的模型捕捉多模态的探索选择。
  • 对离散化动作进行自回归预测在原理上可以表示多个模态,但其预测大多是单模态的,部署后的策略动作生硬,对移动障碍物反应迟缓。
  • 视觉编码器的选择很重要:带基于注意力的目标掩码的 ViNT 编码器能与扩散很好地配合训练,而 ViT 编码器则不能。

主要结果

  • 在未见过环境中的探索:NoMaD 成功率 98%,每次实验 0.2 次碰撞,对比 Subgoal Diffusion 77% / 1.7(335M 参数)、Autoregressive 90% / 2.0、Random Subgoals 70% / 2.7、Masked ViNT 50% / 1.0 和 VIB 30% / 4.0。
  • 在已知环境中借助拓扑图导航:NoMaD 成功率 90%,与 Subgoal Diffusion 和 Random Subgoals 相同。
  • 统一策略与专用策略对比:NoMaD(19M)在无目标探索中成功率 98%、在目标条件导航中成功率 92%,与 Diffusion Policy(15M,无目标 98%)和 ViNT 策略(16M,目标条件 92%)持平。
  • 编码器消融:成功率 / 碰撞次数分别为后期融合 CNN 52% / 3.2、早期融合 CNN 68% / 1.5、ViT 32% / 2.5,以及 NoMaD 98% / 0.2。
  • NoMaD 使用 19M 参数,而 Subgoal Diffusion 为 335M,论文将其描述为少 15×。
  • 论文对测试环境给出了两个数目:评估设置(第 V 节)中为 6 个,表 I 的讨论中为 5 个。

局限

  • 目标只能以图像形式指定,作者指出图像并不总是对用户最自然的方式;语言和空间坐标留待未来工作。
  • 高层规划使用标准的基于前沿的探索策略;没有使用基于语义或先验知识来选择待探索区域。
  • 在探索中,NoMaD 在除最难的测试环境之外的所有环境中都取得了成功。
  • 真实世界评估只使用了一个机器人平台,即 LoCoBot。

对领域的影响

NoMaD 获得 ICRA 2024 最佳会议论文奖,并入围 ICRA 2024 认知机器人最佳论文奖和最佳学生论文奖决选。作者通过项目页面发布了代码和预训练模型检查点。

摘要

面向陌生环境导航的机器人学习,需要为两类任务提供策略:面向任务的导航(即到达机器人已经找到的目标)和与任务无关的探索(即在新环境中搜寻目标)。通常,这两种角色由不同的模型承担,例如使用子目标提议、规划或单独的导航策略。在本文中,我们描述了如何训练单个统一的扩散策略来同时处理目标导向导航和与目标无关的探索:后者提供在新环境中搜寻的能力,前者提供在找到用户指定目标后到达该目标的能力。我们表明,在新环境中导航至以视觉方式指定的目标时,与使用生成模型提供子目标提议的方法或以往基于隐变量模型的方法相比,这一统一策略带来更好的整体性能。我们使用一个在多种地面机器人数据上训练的大规模基于 Transformer 的策略来实例化我们的方法,并配合扩散模型解码器,以灵活处理目标条件导航和与目标无关的导航。我们在真实世界移动机器人平台上进行的实验表明,与五种替代方法相比,该方法在未见过的环境中能够有效导航,并且尽管使用的模型比最先进方法更小,却展现出显著的性能提升和更低的碰撞率。更多视频、代码和预训练模型检查点,请见 https://general-navigation-models.github.io/nomad/

链接

  • arXiv 2310.07896: https://arxiv.org/abs/2310.07896
  • PDF: https://arxiv.org/pdf/2310.07896v1
  • 代码: https://github.com/PrieureDeSion/visualnav-transformer
  • 项目主页: https://general-navigation-models.github.io/nomad/

本网站需要 JavaScript 才能正常运行。请启用 JavaScript 以浏览我们的开源机器人项目。