24年5月来自CMU和Mistral AI的论文“Plan-Seq-Learn: Language model guided RL for solving long horizon robotics tasks”。
大语言模型 (LLM) 已被证明能够执行长范围机器人任务的高级规划,但现有方法需要访问预定义的技能库(例如拾取、放置、拉动、推动、导航)。但是,LLM 规划并未解决如何设计或学习这些行为的问题,这在长范围设置中仍然具有挑战性。此外,对于许多感兴趣的任务,机器人需要能够以细粒度的方式调整其行为,这要求智体能够修改低级控制动作。能否改用 LLM 中的互联网规模知识来制定高级策略,指导强化学习 (RL) 策略在线有效地解决机器人控制任务,而无需预先确定的技能集?本文提出 Plan-Seq-Learn (PSL):一种模块化方法,它使用运动规划来弥合抽象语言和学习的低级控制之间的差距,以便从头开始解决长期机器人任务。PSL 在 25 多个具有挑战性的机器人任务(最多 10 个阶段)上取得了最佳成果。PSL 解决了来自原始视觉输入的长范围任务,涵盖四个基准,成功率超过 85%,优于基于语言、经典和端到端的方法。
近年来,随着大语言模型 (LLM) 的出现,机器人学习领域发生了重大转变,LLM 成为将互联网规模的知识注入机器人技术的机制。一种特别有效的范例,是针对预定义的一组技能进行 LLM 规划(Ahn,2022;Singh,2023;Huang,2022b;Wu,2023),在广泛的机器人任务中产生了强大的效果。这些工作假设存在一个预定义的技能库,该库抽象了机器人控制问题。这样转而专注于设计方法来选择正确的序列技能来解决给定的任务。然而,对于涉及接触丰富的机器人操作任务(如图所示),这些技能通常是不可用的,需要大量的工程工作来设计或先验训练,或者根本没有表现足够来解决任务。如何才能超越预构建的技能库,并以尽可能少的假设将语言模型应用于通用机器人任务?机器人系统需要能够在线改进低级控制策略,同时能够进行长远规划。
端到端强化学习 (RL) ,是一种可以在机器人上以最少的假设产生复杂低级控制策略的范式(Akkaya,2019;Herzog,2023;Handa,2022;Kalashnikov,2018;2021;Chen,2022;Agarwal,2023)。与分层方法不同,分层方法对智体施加特定结构(可能不适用于所有任务),而端到端学习方法原则上可以直接从数据中学习更好的表示。然而,由于 RL 中的探索具有重大挑战,尤其是在机器人任务特有的高维连续动作空间中,因此 RL 方法传统上仅限于短范围领域。RL 方法难以处理较长时范围的任务,因为这些任务必须同时学习高级推理和低级控制;有效地将任务分解为子序列并准确实现它们通常具有挑战性(Sutton,1999;Parr & Russell,1997)。
主要见解是 LLM 和 RL 具有互补的优势和劣势。先前的研究(Ahn,2022;Huang,2022a;Wu,2023;Singh,2023;Song,2023)表明,在得到适当提示后,语言模型能够利用互联网规模的知识将长期任务分解为可实现的子目标,但缺乏产生低级机器人控制策略的机制(Wang,2023),而 RL 可以发现机器人的复杂控制行为,但难以同时进行长范围推理(Nachum,2018)。但是,直接结合这两种范式(例如,通过训练语言条件策略来解决新任务)并不能解决探索问题。RL 智体现在必须同时学习语言语义和低级控制。理想情况下,RL 智体应该能够遵循 LLM 的指导,使其能够学习有效地在线解决每个预测的子任务。
如何将 LLM 的抽象语言空间与 RL 智体的低级控制空间联系起来,解决长期机器人控制问题?这项工作提出了一种学习方法 PSL,用运动规划和学习的低级控制来跟踪语言模型规划,解决长范围机器人任务。
需要的是,一个能够弥合零样本语言模型规划和学习的低级控制之间差距的模块。许多感兴趣的任务可以分解为无接触运动和接触丰富交互的交替阶段。首先接近目标区域,然后执行交互行为,然后再移动到下一个子任务。无接触运动生成正是运动规划问题。为了估计目标区域的位置,最先进的视觉模型能够进行准确的语言条件状态估计(Kirillov,2023;Zhou,2022;Liu,2023b;Bahl,2023;Ye,2023;Labbe,2022)。因此,提出一个排序模块,它使用现成的视觉模型从语言规划中估计目标机器人状态,然后使用运动规划器实现这些状态。从这些状态开始,训练使用 RL 优化任务奖励的交互策略。如图所示:PSL 使用 LLM 将任务分解为一个区域清单和阶段终止条件(顶部),使用运动规划对规划进行排序(左),并使用 RL 学习控制策略(右)。
如下算法伪代码:
长期任务可以分解为一系列阶段来执行。不是使用交互或可能需要有关环境特别信息的任务规划器 (Fikes & Nilsson 1971) 来发现这些阶段,而是使用语言模型在不访问环境的情况下生成自然语言规划。具体来说,给定人类给出的任务描述,会提示 LLM 制定规划。设计规划的粒度和范围至关重要;需要可以由排序模块解释的规划,排序模块是一种基于视觉的系统,它使用运动规划来生成和实现机器人姿势。因此,LLM 预测目标区域(场景中物体/容器的自然语言标签,例如“银钉”),该区域可以转换为在规划的每个阶段开始时要实现的目标姿势。
当 RL 策略正在执行规划的某个步骤时,添加阶段终止条件(例如抓取、放置、转动、打开、推动)以了解阶段是否完成并进入下一阶段。此条件定义为函数 fstage(Oglobal),该函数接收对环境的当前观察并评估二元成功标准以及用于提示 LLM 条件的自然语言描述符(例如“抓取”或“放置”)。这些阶段终止条件,是使用视觉姿势估计来决定。
LLM 提示由任务描述 gl、支持的阶段终止条件列表(本文在所有环境中保持不变)和用于输出格式的其他提示字符串组成。将语言规划格式化如下:(“区域 1”,“终止条件 1”),…(“区域 N”,“终止条件 N”),假设 LLM 预测 N 个阶段。给出提示后,LLM 会以上面列出的格式输出自然语言规划。
给定一个高级语言规划,希望逐步执行该规划并启用学习的 RL 策略来解决任务,使用现成的视觉为运动规划系统生成目标姿势。在高级规划的 X 阶段,排序模块采用相应的步骤高级规划(“区域 Y”、“终止条件 Z”)以及场景的当前全局观察 Oglobal(覆盖整个场景的 RGB-D 视图),预测目标机器人姿势 qtarget,然后使用运动规划达到机器人姿势。
视觉和估计:使用来自高级规划和观察 Oglobal 的目标感兴趣区域的文本标签,需要计算运动规划器要实现的目标机器人状态 qtarget。原则上,可以训练一个 RL 策略来解决这个任务(学习一个策略 πv 将 Oglobal 映射到 qtarget),给定环境奖励函数。然而,观察到目标区域的 3D 位置,是这个任务的最佳策略 πv∗ 的合理估计:直观地说,希望将机器人初始化到感兴趣区域附近,以便它可以有效地学习交互。因此,可以利用视觉模型来估计目标区域的 3D 坐标,绕过学习此步骤的策略。选择使用 SAM(Kirillov 2023)来执行分割,因为它能够识别各种各样的物体,并使用校准的深度图像来估计目标区域的坐标。将估计的区域姿势转换为目标机器人姿势 qtarget,以便使用逆运动学进行运动规划。
运动规划:给定机器人的起始配置 q0 和机器人目标配置 qtarget,运动规划模块旨在找到在 q0 和 qtarget 之间形成无碰撞路径的路径点 τ 轨迹。例如,对于操作任务,q 表示机器人手臂的关节角度。可以使用运动规划直接解决这个问题,例如基于搜索的规划 (Cohen 2010 )、基于采样的规划 (Kuffner Jr. & LaValle 2000)或轨迹优化 (Schulman 2013)。在实施中,用基于采样的规划器 AIT* (Strub & Gammell 2020),因为它的设置要求最低(仅碰撞检查)并且规划性能良好。
总体而言,排序模块将机器人移动到规划中的感兴趣区域,充当语言和控制之间的联结组织,使 RL 智体能够快速学习短范围交互行为来解决任务。
一旦智体逐步完成规划并实现目标感兴趣区域附近的状态,它就需要训练 RL 策略 πθ 来学习解决任务的低级控制。用 DRQ-v2 (Yarats 2021),一种 SOTA 视觉无模型 RL 算法,去训练 πθ,从图像中产生低级控制动作(关节控制或末端执行器控制)。此外对学习流水线做三项修改,进一步提高学习速度和稳定性。
首先,在所有阶段训练单个 RL 策略,通过排序模块逐步完成语言规划,以优化任务奖励函数。另一种方法是为每个阶段训练单独的策略,这需要为每个任务设计特定于阶段的奖励函数。相反使智体能够通过跨阶段共享策略和价值函数,使用单个奖励函数来解决任务。这简化训练设置,并允许智体考虑未来的决策以及排序模块中的不准确性。例如,如果 πθ 相对于目标区域的次优位置初始化,πθ 可以根据其价值函数调整其行为,该函数经过训练对完整任务回报 E 进行建模。
其次,不是在每个阶段 Hl 中执行固定步的策略 πθ,而是使用语言模型预测阶段终止条件 fstage(Oglobal),并在每个时间步评估该条件,测试阶段是否完成,否则它会在 Hl 步骤后超时。对于大多数条件,fstage 是通过计算相关目标的姿势估计和阈值来评估的。这个过程作为一种课程学习的形式:只有完成一个阶段后,智体才能进入规划的下一个阶段。阶段终止条件,使智体能够通过防止每个阶段的含噪行为来学习更高效的策略。
最后,与使用场景的全局视图 (Oglobal) 训练策略相反,用局部观察 Olocal 进行训练,它只能观察机器人周围一小块区域的场景(例如,用于机器人操作的手腕摄像头视图)。这种设计选择提供了几个独特的属性,即:1)提高学习效率和速度,2)易于链接预训练策略。由于 PSL 中的分解,策略能够利用局部视图:RL 策略只需学习小区域中的交互行为,它不需要场景的全局视图,而端到端 RL 智体则需要查看场景的全局视图才能知道去哪里解决任务。
用视觉输入评估除 TAMP(“Pddlstream: Integrating symbolic planners and blackbox samplers via optimistic adaptive planning”)和 MoPA-RL(使用特殊化的模拟器信息,“Motion planner augmented reinforcement learning for robot manipulation in obstructed environments”)之外的所有方法。SayCan 和 PSL 使用 Oglobal 和 Olocal。
对于 端到端 E2E 方法(“Mastering visual continuous control: Improved data-augmented reinforcement learning”)和 RAPS(“Accelerating robotic reinforcement learning via parameterized action primitives”),为学习者提供从 Oglobal 访问单个全局固定视图观察的权限,以简化和加快执行速度;没有发现包括 Olocal 可以提高性能。
根据任务成功率与试验次数来衡量性能。这样做是为了提供一个公平的指标来评估 PSL、RAPS 和 E2E 中的各种不同控制实现。每种方法总共训练了 10K 集。用默认环境奖励函数对每个任务进行训练。对于每种方法,在每个任务上运行 7 个种子,并对 10 次评估取平均值。