SafeMimic:迈向安全自主的人-到-机器人模仿移动操作

25年6月来自德州Austin分校的论文“SafeMimic: Towards Safe and Autonomous Human-to-Robot Imitation for Mobile Manipulation”。

机器人要想成为高效的家居助手,必须学会仅通过观察人类操作即可完成新的移动操作任务。仅凭人类的单个视频演示进行学习极具挑战性,因为机器人需要首先从演示中提取需要完成的任务及其方法,将策略从第三人称视角转换为第一人称视角,然后根据自身形态进行调整,最终取得成功。此外,为了减轻对成本高昂的人工监控的依赖,这一学习过程应以安全自主的方式进行。SafeMimic 框架,可以从单个第三人称人类视频中安全自主地学习新的移动操作技能。给定一个多步移动操作任务的初始人类视频演示,SafeMimic 首先将视频解析成多个片段,推断出由此引起的语义变化以及人类为完成这些任务而执行的动作,并将它们转化为以自我为中心的参考。然后,它会根据机器人自身的形态调整行为,方法是围绕人类动作采样候选动作,并在执行前以回溯视界(receding horizon)的方式使用一组在模拟中训练的安全 Q-函数验证这些动作的安全性。当无法安全地向前推进时,SAFEMIMIC 会回溯到之前的状态并尝试不同的动作序列,并根据形态的需要调整轨迹和抓取模式。最终,SafeMimic 提出一种策略,既能成功演示行为,又能学习特定于任务的动作,从而减少未来尝试中的探索次数。实验表明,该方法可以让机器人从单个人类演示、来自不同用户的操作以及在不同环境中的操作中安全有效地学习多步移动操作行为,并且在七项任务中的表现均优于最先进的基线方法。


几十年来,一直有梦想能像教人类一样,通过在机器人面前进行演示,教会机器人完成一项新任务。这样就无需进行昂贵的远程数据收集 [1, 2, 3],而对于多步任务以及将导航和操控功能融合到移动操控中的任务而言,远程数据收集极其复杂且耗时。人体运动感知和解析领域的最新进展 [4, 5, 6, 7] 更接近这个梦想:它们催生新的方法,可以从人类视频中提取信息,并利用这些信息“播种”一个探索性过程,让机器人根据自身情况调整策略 [8, 9, 10, 11]。然而,这些技术局限于短期技能,并且需要繁琐的人工监督,需要确保机器人探索的安全性、不断重置任务并检测是否成功。为了让机器人能够安全自主地从单个人类演示中学习多步移动操控任务,需要哪些条件?

作为一种学习操作技能的策略,直接从人类视频中学习受到了越来越多的关注。一些工作探索了利用大量人类活动数据 [12、13、14] 来从视频和语言数据中学习成本函数 [15、16、17、18]。其他方法则探索了将人类视频建模作为预训练目标 [19、20]。一些工作通过跟踪人体姿势并使用姿势跟踪提取动作来直接模仿人类动作,然后使用无梯度 RL 进行微调 [8、21、9、10、22、11]。这些方法展示了令人印象深刻的行为,但通常以幼稚的探索性方式改进从人类获得的初始策略。这可能会损坏机器人或环境,因为没有检查动作是否存在碰撞或其他潜在的危险故障。其他研究依靠人类与类人机器人之间的形态相似性来直接重新定位动作 [23, 24, 25, 26]。相比之下,专注于在机器人与人类形态不一定匹配的情况下安全地模仿和改进演示。此外,大多数现有的从人类视频中学习的研究都侧重于短期任务(例如打开抽屉),而不是多步的移动操作行为。自主现实世界学习的先前方法已经研究了自动重置环境的学习,以便在没有人类监督的情况下进行学习 [27, 28, 29, 30, 31, 32]。这些研究解决了自主性的要求,但通常回避了安全性问题——这是在现实世界中学习移动操作时的一个关键挑战。此外,这些方法需要大量的反复试验,不适合从单个人类视频演示中进行有效的学习。

为了降低现实世界中的风险,安全模仿和强化学习已得到大量研究。设计时方法 [33、34、35、36、37、38] 在数据收集或模型训练期间运行,以确保执行过程中对扰动的鲁棒性。当从真人视频中学习时,设计-时方法是不可行的,因为它们通常针对可能注入干扰的远程操作。部署-时方法 [39、40、41、42、43] 会过滤动作,并在违反约束时遵循备份或恢复策略。部署时方法通常假设以封闭形式访问约束,这在新的环境和任务中是不切实际的要求。安全 RL 方法 [44, 45, 46, 47] 提供了一个安全策略学习的框架,使其能够从零开始发现复杂行为,同时避免目标任务失败。这些方法通常在预训练阶段联合优化任务和安全-Q 函数,并且不处理模仿学习或从人类视频中学习的情况。约束强化学习方法 [48, 49, 50, 51] 类似地允许在遵守约束的情况下进行策略学习,但通常需要在运行时提供闭式约束。在现实世界中,此类约束在新环境中难以获得,更不用说在有人类教师的情况下。

在机器人技术领域,执行前的故障预测已经得到了大量的研究,通常目的是为部署策略提供安全保证 [52, 53, 54, 55]。许多研究通过可达性分析 ​​[56, 57] 或设计控制屏障函数 [58] 来进行故障预测。最近的研究试图利用 PAC 保证 [59] 或共形预测 [60] 来学习故障预测器。然而,这些方法都假设可以访问黑盒策略或环境动力学模型,而这两者在从新环境中的人类视频中学习新任务时都是未知的。同样,运动规划方法 [61, 62] 能够在给定的环境几何中生成无碰撞运动,但无法捕捉其他可能涉及接触的故障模式,例如力-扭矩限制违规或抓握丢失。

以安全且自监督的方式从人类视频中学习多步骤任务面临多重技术挑战。首先,它要求机器人理解任务的高级语义和相关的低级运动。这意味着需要从视频中提取人类的运动及其在环境中引起的语义变化。这些信息需要从第三人称视角转换为第一人称视角,以便机器人能够执行该运动并使用其机载传感器监测语义变化。在执行过程中,初始转换后的运动可能会由于形态差异或视频解析中的噪声而失败;虽然在现实世界中通过反复试验学习已经证明可以找到细微的调整[8, 9, 10, 11],但对于需要更大调整的更长时间的多步骤任务(例如不同的抓取策略),如何进行探索仍不清楚。最后,由于对机器人或环境的潜在损害,这种现实世界的探索很快就会变得不安全,需要另一个智体(人类)来监控并重置场景以进行进一步的探索。安全自主的探索需要一种新方法,使机器人能够在事情发生之前预测何时可能出错,并回溯到之前的状态以继续尝试新的策略。

在这项工作中,引入 SafeMimic,一个从单个第三人称视频中安全、自主地学习移动操作行为的框架。如图所示为例:

请添加图片描述


目标是让机器人能够安全自主地学习适应并模仿单个第三人称真人视频中演示的多步移动操作任务。如图概述框架 SafeMimic:SafeMimic 从机器人获取的一段人类执行多步移动操作任务 RGB-D 视频中,结合人体姿态追踪模型 [4, 5] 和 VLM 提示,进行由粗到细的分割,获取语义变化——“什么?”——和人类动作轨迹——“如何?”——并将其转换为机器人的视角(左图)。随后,SafeMimic 借助一组在模拟中预训练的安全 Q-函数 Q_safe,在执行每个任务片段之前对其进行采样和验证,从而安全地细化和调整每个任务片段(右上图)。如果无法向前推进,SafeMimic 会自主回溯并尝试不同的动作(橙色箭头)。当需要克服形态上的巨大差异时,SafeMimic 会探索其他抓握模式(第二行样本),并调整抓握方式以确保成功执行。VLM 会检测到成功的尝试,并验证何时实现片段的解析语义变化。成功的结果被存储并用于训练具有几何增强的策略记忆模块(右下图),该模块在给定点云和语言任务描述的情况下预测后续尝试中的动作(抓取或动作轨迹),以减少探索的需要。

请添加图片描述

分解、解析和翻译人类视频

模仿人类视频演示的第一步是从中提取信息:人类做了什么?他们是如何做到的?在 SAFEMIMIC 中,通过检测环境中人类引起的语义变化来识别“什么”,并通过追踪导致这些变化的人类运动来识别“如何”。然而,由于目标是模拟复杂的多步移动操作任务,因此提取整个视频的多种语义变化和复杂的人类运动,并一次性学习使其适应机器人可能并不可行。SAFEMIMIC 将原始视频分解成不同的片段,每个片段只发生单一的语义变化。这自然会形成具有独立导航和操作的片段,以实现单一的语义变化,例如导航到、伸手抓握、打开……,机器人可以以自监督的方式依次调整和优化这些变化。

为了将多步视频分解并解析为单个语义变化片段,SAFEMIMIC 结合身体和手部视觉追踪器 [4, 5]、接触检测器 [6] 和视觉线性模型 (VLM) [63]。基于追踪的人体运动,通过对帧间身体平移量进行阈值处理,检测人体是在进行导航还是操作,从而获得初始粗分割。然后,SAFEMIMIC 使用每个粗分割片段的语义变化对其进行注释,并可能对其进行进一步的加工。导航片段被假定为最低粒度;SAFEMIMIC 只需提取语义目标,即导航片段试图到达的目标/位置,该目标通过 VLM 获取。SAFEMIMIC 会根据需要进一步分解操作片段,方法是结合来自 VLM 和接触检测器的信息,接触检测器将非接触操作阶段与接触操作阶段区分开来。这可以自然地分解成以抓取动作或接触界面变化(例如,擦拭片段开始时)开始的片段。然后,每个片段都标注其语义目标,这些目标同样是通过 VLM 查询获得的。

上述分解和解析过程会生成一系列片段,这些片段具有各自的语义目标以及人体和/或手臂的运动(如上图左)。虽然语义变化对于视角而言是不变的,但运动是从第三人称视角观察的,需要将其转换到机器人的参考系中,以便通过机载传感器执行和监控。同样,人类的抓握动作可能需要转换为机器人的形态。为此,SAFEMIMIC 假设在导航片段中,机器人从足够接近人类初始位置的位置开始(无需标定!),并将人类导航动作序列转换为帧间基本姿势的相对变化。同样,对于操作片段,SAFEMIMIC 首先将手部姿势转换为相对于人体的姿势,然后计算连续帧之间手部的相对运动。为了翻译抓握动作,SAFEMIMIC 将检测机器人可用的抓握候选动作 [64],并匹配与人类抓握动作最接近的动作。然而,下面随着安全自主的人机适配,将探索其他抓握候选动作。

安全自主的现实世界适应

上述分解、解析和翻译过程会生成一个机器人可以直接执行的初始策略。然而,由于具体化和跟踪不准确性的差异,该初始策略将会失败。SAFEMIMIC 在现实世界中实施探索和适应程序,以找到能够导致相同语义变化序列的动作(接近人类演示的动作),从而成功完成多步移动操作任务。为此,SAFEMIMIC 依次探索每个段的动作,直到在算法中伪代码概括的流程中实现该段的语义目标。 1. 与以往的人机交互方法相比,SAFEMIMIC 能够安全自主地执行此类现实世界探索,这得益于安全 Q-函数(SQF)和回溯功能的结合(见上图右)。

使用安全 Q-函数进行安全探索:假设机器人在每个路段的目标是实现该路段的语义目标,同时避免不安全状态。采用标准的 MDP 形式化方法,并用三元组 M = (S,A,R,T,γ) 表示每个路段,其中 S 是状态空间,A 是动作空间,R 是基于任务成功率(例如,语义目标达成)的稀疏奖励,T 是转换函数,γ 是折扣因子。

使用 Srinivasan [45] 提出的安全强化学习框架,将不安全状态集表示为 S_unsafe = s ∈ S | I(s) = 1,其中 I(s) 是一个指示布尔函数,当任何不安全状态发生时都会触发。该函数可以被认为是单一故障模式指标的组合,I(s) = max_i I_i(s),其中 {I_i} 是一组针对不同故障模式的函数,例如施加过大的力、与环境碰撞、达到关节极限……。给定该函数,机器人的目标是找到一种策略,将状态映射到最大化任务奖励的同时保持安全的动作。

因此,为了实现这一目标,机器人需要一个预测可能导致故障的动作模型。为了实现这一点,定义一个安全 Q-函数,用于预测在状态 s_t 下采取动作 a_t 导致故障的概率。

与不安全状态指示函数一样,可以将安全 Q-函数分解为一个安全 Q-函数集合 {Q_safe,i},每个函数针对一种故障类型进行训练,Q_safe(s_t, a_t)=max_iQ_safe,i(s_t, a_t)。

在现实世界中训练这些安全 Q-函数会很危险,因为机器人需要体验和学习哪些动作可能导致不安全状态以及何时导致。因此,在模拟中预训练一组安全 Q-函数,每种不安全转换类型一个。安全 Q-函数集合在模拟器 OmniGibson [65] 的域随机环境中针对不同场景进行预训练,包括铰接体交互、刚体拾取放置和基础导航,方法是通过对运动规划器生成的随机和受噪声干扰的任务相关动作进行采样。状态表示由模拟点云和机器人本体感受信息组成。与 RGB 图像相比,点云提供的 sim2real 差距更小,这样能够在模拟中训练安全 Q-函数集合,并将它们零样本应用于现实世界中的安全探索。

在安全适应和探索过程中,SAFEMIMIC 会围绕人类演示的动作对候选动作进行采样。对于抓握动作,SAFEMIMIC 会在机器人抓握生成器 [64] 提供的一组离散选项(本文是 3 个抓握动作)中进行探索,首先优先考虑与人类演示动作最接近的抓握动作。对于连续运动,SAFEMIMIC 会从高斯分布中探索动作序列,其均值由解析后的人体运动给出,方差经过调整以鼓励探索。在每个步骤中选择并执行具有最低 Q_safe 的采样动作,之后 SAFEMIMIC 根据解析后的片段语义目标和 VLM 评估片段的完成情况。如果该片段尚未完成,则该过程将围绕人类演示的动作重复执行一组新的动作(参见算法 1 中的伪代码)。

请添加图片描述

带有回溯机制的自主探索:得益于之前的过程,SAFEMIMIC 能够围绕人类演示的动作生成安全的探索行为,从而实现自适应。然而,仍然需要人工监控来重置机器人和环境,并尝试新的动作序列。目标是在 SAFEMIMIC 中减少这种依赖性。为此,实现一种简单但有效的回溯机制。在安全探索过程中,如果当前状态下没有采样动作是安全的(即,对于所有采样的 a_i,Q_safe (s, a_i ) > ε),则智体将在探索中回溯一步:执行与上一步动作相反的动作,即执行相反的动作。当与物体交互时(例如,打开门或抽屉,移动被抓取的物体),这种回溯机制会将环境带回先前的状态,从而使 SAFEMIMIC 能够探索状态-动作空间的不同分支,验证并执行动作,直到该段完成或达到最大尝试次数。

这种安全自主的探索方式使机器人能够针对每个段找到对已解析人类轨迹的细微调整。然而,调整通常需要大于运动的微小变化,尤其是在将人类的抓取策略适配到机器人身上时。当单步回溯机制经过多次迭代(本文为 50 个动作)后,SAFEMIMIC 用尽所有安全的运动方案,它会回溯直到到达抓取段,然后选择不同的抓取模式进行探索。这种抓取模式探索与轨迹级探测相结合,对于将人类的多步策略转化为机器人的成功策略至关重要(如图所示为抓取模式探索的示例)。

请添加图片描述

从先前的成功探索中学习

通过安全自主的探索过程,SAFEMIMIC 会调整最初从人类视频中解析出的动作和语义变化序列。然而,为了防止对同一任务重复探索,需要学习成功的策略。为此,SAFEMIMIC 集成一种策略记忆机制,该机制会根据先前的成功经验对探索进行偏向。该策略记忆会使探索(抓取模式和运动动作)从人类演示的策略偏向机器人演示的成功策略。为此本文随后训练一个动作预测策略网络,该网络将点云 P 和任务的语言描述 l 映射到动作(例如,抓取模式 g ∈ SE(3))以及导致成功的抓取后动作序列 (a_0,…,a_T)。动作预测策略网络的架构,由用于视觉信息的 PointNet [66] 编码器和用于任务描述的 SentenceTransformer [67] 组成,结合 MLP 头,并使用几何增强(旋转和平移)进行训练。

该模型将成功的策略与任务的几何和语言信息关联起来,并允许 SAFEMIMIC 从不同的视角进行预测。这对于利用成功的探索来应对相同多步移动操作任务的新实例至关重要(如图所示)。此外,该模型还有助于减少对同一任务的未来探索次数。

请添加图片描述


通过 7 项由人类演示的具有挑战性多步移动操作任务来评估 SAFEMIMIC。这些任务均包含多个阶段,需要导航、刚体拾取和放置、铰接体交互和高接触控制,同时还要避免常见的故障模式,例如碰撞、关节极限违规、力矩极限和抓取丢失。利用这些任务来评估 SAFEMIMIC 的任务性能、安全性、泛化能力以及对不同用户和环境的鲁棒性。

简要解释每个任务。
boxing an item:从桌子上拿起物体并将其放入盒子中,需要机器人自上而下抓取以避免碰撞。
shelving an item:从桌子上拿起一个物体并将其存放在水槽上方的架子上或书架上。这项任务需要区分人类的语义目标,避免碰撞并调整抓取方式以成功放置。
store_in_drawer:打开抽屉,从桌子上取下物品,将物品放入抽屉,然后关上抽屉。此任务包含多个环节,其中包括一个关节式物体交互,通常需要调整人类演示的抓取动作,以避免违反关节限制。
erase_whiteboard:抓取橡皮擦并擦除白板上的书写。此任务需要丰富的接触控制,尤其要求机器人避免力矩限制。
refrigerating an item:打开冰箱,从桌子上拿起物品,将其放入冰箱。此任务需要调整抓取姿势和演示轨迹,以打开又大又重的冰箱门,并将物品放入受限空间。
fill_pot:拿起平底锅,将其放入水槽,然后打开水龙头。此任务需要将常用的人类抓取方式调整为机器人可以用来将锅放入水槽的抓取方式。
load_oven:打开烤箱,拿起物品,将其放入烤箱,然后关闭烤箱。此任务包含多个步骤,需要特定的侧抓才能成功地将食物放入小烤箱中。

在所有实验中,用 PAL-Robotics Tiago++ 移动机械臂。用 IK 控制 [68] 去操控一只手臂的末端执行器姿态,并使用相对位置和偏航指令控制底座。在感知方面,用安装在 Tiago++ 头部的 Orbbec Astra S RGB-D 摄像头来观察人并将其作为安全 Q-函数的输入,并使用安装在手腕上的 ATI mini45 力矩传感器来检测和预测过度的力矩违规。虽然 SAFEMIMIC 是通用的,并且可能包含许多可能的故障模式,本研究只考虑以下几种情况:手臂碰撞、底座碰撞、关节极限违规、力矩极限、抓握丢失以及物体掉落。

SQF 的架构包括一个 PointNet++ [66] 编码器(用于处理点云输入)、一个 4 层 MLP 编码器(用于动作)和一个 4 层 MLP 编码器(用于本体感觉,包括末端执行器位姿和 FT 值)。将连续的 FT 值分为 6 个 bin,以便更好地实现从模拟-到-现实的迁移。所有编码器的特征被连接起来并输入到 MLP 头。动作空间是末端执行器的笛卡尔增量位置,增量动作的范围在 [0.0, 0.15] 之间。

定义几种可能的任务失败情况:手臂碰撞、底座碰撞、违反关节极限、违反力/扭矩阈值、在操作铰接体时失去抓握以及物体掉落。
在数据收集过程中,会记录遇到的每个状态-动作对的轨迹及其安全标签(如图所示)。Q -函数使用交叉熵损失进行优化。

请添加图片描述

SAFEMIMIC 的视频解析模块提取语义任务片段,包括每个片段的语义目标以及需要适应机器人的人体动作。该流程如图所示。首先,SAFEMIMIC 结合 Pavlakos [5] 的身体追踪 和 Ye [4] 的手部追踪,从 RGB-D 视频中提取人体运动。然后,SAFEMIMIC 通过对人体臀部运动进行阈值处理,将视频粗略分割为导航和静止操作片段。

请添加图片描述

使用由粗到细的二次分割,将静止片段细化为手部接触片段和无手部接触片段。首先,SAFEMIMIC 以低帧率(3 fps)查询 VLM,以确定人手是否与物体接触。用 OpenAI 的 GPT-4o [63] 进行分割和后续标记。为了获得更精确的初始接触帧估计,在 VLM 检测到接触状态变化的帧周围,用 Shan [6] 的视觉接触检测器进行分割细化。

对于所有获得的片段(导航和静止操作,有接触和无接触),SAFEMIMIC 识别并标记将用于实现自主成功检测的语义目标。片段的标记是通过 VLM 查询执行的,该查询将片段分类为一组可能的操作以及这些操作适用的目标,例如,导航至一个罐头目标。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值