Simone Colombani, Dimitri Ognibene, Giuseppe Boccignone. “One to rule them all: natural language to bind communication, perception, and action”. University of Milan & Oversonic Robotics, 2024.
DEPS: A Method for Iterative Planning in Open-World Environments.
Scene Graphs in Robotic Environment Representation.
摘要
近年来,人机交互领域的研究重心逐渐转向开发能够理解复杂人类指令并能在动态环境中执行任务的机器人。这些系统的应用范围广泛,从个人助理到工业机器人,无不强调机器人与人类灵活、自然且安全的互动。本论文介绍了一种先进的机器人动作规划架构,集成了通信、感知和以大型语言模型(LLMs)为基础的规划。我们的系统旨在将自然语言表达的命令转化为可执行的机器人动作,同时结合环境信息,并根据实时反馈动态更新计划。
1. 引言
1.1 背景与动机
机器人技术的发展正如熊熊燃烧的火焰,而这火焰的最新催化剂便是大型语言模型(LLMs)的引入。LLMs在自然语言理解和常识推理方面表现出色,极大地提升了机器人的指令理解能力。然而,LLMs自身无法独立进行规划,它们需要与能够理解环境、机器人的能力和状态的架构相结合。这项研究旨在赋予机器人理解用户请求并在多样环境中自主生成可执行计划的能力。
1.2 研究目标
传统机器人系统通常依赖于静态的、预先编程的指令或封闭世界的预定义知识,这限制了它们在动态环境中的适应性。与人类在复杂环境中的日常任务交互打破了这些假设。LLMs和视觉语言模型(VLM)可以提供开放领域知识来表示新条件,而无需人为干预。然而,过于详细的信息可能导致不切实际的计算需求和响应时间,而忽略关键信息可能导致失败。我们的目标是通过引入执行控制和故障管理,增强LLM基础的机器人系统的鲁棒性和灵活性。
1.3 方法概述
我们提出的系统通过实时感知模块和集成执行控制和故障管理的规划模块来应对动态环境的挑战。系统包括一个控制器,用于监控任务执行并检测错误,而解释器分析失败并根据过去的经验提出调整建议。通过这种反馈回路,系统能够自适应地重新规划,使其能够根据需要修改其行动。特别是,我们提出使用ReAct框架,通过技巧、机器人的物理动作以及感知动作来扩展其操作空间,以从环境中获取信息。
2. 相关工作
2.1 语言模型在机器人规划中的应用
大量文献探讨了LLMs在机器人任务规划中的利用。最近的研究强调了LLMs在机器人规划中的潜力。例如,DEPS引入了一种在开放世界环境(如Minecraft)中为代理规划的迭代方法。它利用LLMs分析执行中的错误并完善计划,从而改善推理和目标选择过程。然而,这种方法主要在虚拟环境中开发和测试,与现实世界的动态和不可预测的自然差异显著。此外,DEPS不利用先前的问题和解决方案,而仅依赖于人类和视觉语言模型(VLM)的反馈。
2.2 场景图作为环境表示
场景图作为表示机器人环境的一种手段越来越受欢迎。它们提供了一种结构化的空间和语义信息表示方法。某些研究采用3D场景图来表示环境,并使用LLMs生成规划域定义语言(PDDL)文件。这种方法将长期目标分解为自然语言指令,并通过解决子目标来提高计算效率。然而,它缺乏在执行过程中基于反馈重新规划的机制,这可能会限制其在动态场景中的适应性。
3. 系统架构
我们的系统基于两个主要组件:
3.1 感知模块
感知模块负责感知和解释环境。它以有向图的形式构建并维护一个语义地图,该地图集成了几何和语义信息。
3.2 规划模块
规划模块利用感知模块提供的信息制定计划和行动,使机器人能够执行特定任务。图1展示了这些组件如何交互,以便机器人理解其环境并相应地采取行动以满足用户请求。感知模块使用机器人传感器提供的数据为规划模块提供语义地图,后者则处理这些信息以生成特定的行动计划。
3.3 规划模块的构成
规划模块被设计为将用户请求(以自然语言表达)转化为机器人可执行的具体行动。该模块负责理解指令、规划适当的行动,并在动态环境中管理这些行动的执行。规划模块由五个子模块组成:
4. 任务规划器
任务规划器的决策过程由策略驱动,策略通过LLM实现。策略是定义基于当前状态或上下文选择行动的规则。
任务规划器使用ReAct框架实现,该框架在过程中交替进行推理和行动阶段。在推理阶段,任务规划器可以访问各种“感知”行动以从环境中收集信息,如语义地图和机器人当前状态,也可以执行一个或多个“技能”行动以执行物理行动。
在我们的工作中,我们通过两种类型的行动扩展了代理的动作空间:
5. 技能规划器
一旦提出执行技能的高级请求,技能规划器负责将任务规划器提供的高级技能翻译为机器人可执行的低级命令序列。技能规划器操作过程包括三个功能:
6. 执行者
执行者负责直接与机器人的硬件交互,以执行技能规划器提供的命令。它通过控制各种硬件元件(如电机、机器人手臂抓取器和其他执行器)将低级命令翻译为物理动作。
7. 控制器
控制器负责在命令执行过程中监控机器人的状态和环境,确保它们按计划执行。在每个命令执行后,执行者发送反馈,指示成功或失败。如果发生故障,它将导致整个技能的失败。
8. 解释者
解释者在执行阶段发生故障时,通过为任务规划器提供见解来增强规划过程。解释者通过搜索包含特定技能和用户请求相关失败记录的数据集来分析故障,并提供建议。
9. 行为示例
为了说明所提出系统在动态环境中的行为,考虑一个场景:机器人被要求从房间的桌子上取下一个瓶子并放置在另一个房间的指定区域。系统必须对意外变化做出反应,例如任务过程中瓶子被外部代理移动。
10. 结论
所提出的规划系统展示了显著的优势,尤其是在其适应性和与机器人的多样技能无缝配合以执行复杂任务方面。系统的核心优势在于其通过自然语言处理解释用户命令的能力,将其转化为高级行动,然后进一步精炼为低级可执行任务。通过集成来自感知模块的实时环境反馈,系统能够动态调整以应对意外情况,如障碍物或执行失败。
通过此架构,任务规划器、技能规划器、控制器和解释者组件协同工作,确保即使在变化环境中任务执行也能顺利进行。该系统在Oversonic Robotics开发的类人机器人RoBee上的实施已展示了其实际潜力,使其成为需要先进人机交互和适应性的不确定环境应用中的一种有价值工具。
参考文献