当前位置: 首页 > news >正文

VLA 论文精读(十九)Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware

这篇论文是2023年发表在arxiv上的一篇VLA领域论文,虽然相距现在已经很久远了(VLA太卷了,论文得按月更新),但这篇论文对后续的影响深远,因为是第一个提出action chunk作为动作输出的文章,直接将自回归误差收敛到了一个可接收的范围,并且开源了一个ALOHA硬件(总成本约2W 刀),可以以非常低的成本进行VLA训练与验证。因此这仍然是一篇VLA从业者必读文章。


写在最前面

为了方便你的阅读,以下几点的注意事项请务必了解:

  • 该系列文章每个字都是我理解后自行翻译并写上去的,可能会存在笔误与理解错误,如果发现了希望读者能够在评论区指正,我会在第一时间修正错误。
  • 阅读这个系列需要你有基本的 VLN, LLM, VLM 相关基础知识,有时候我会直接使用英文名词,因为这些词汇实在不容易找到符合语境的翻译。
  • 原文可能因为版面限制存在图像表格与段落不同步的问题,为了更方便阅读,我会在博文中重新对图像表格进行排版,并做到引用图表的文字下方就能看到被引用的图表。因此可能会出现一张图片在博客中多处位置重复出现的情况。
  • 对于原文中的图像,我会在必要时对图像描述进行翻译并附上我自己的理解,但如果图像描述不值得翻译我也不会强行写上去。

Basic Information

  • 论文标题:Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware
  • 原文链接: https://arxiv.org/abs/2304.13705
  • 发表时间:2023年04月23日
  • 发表平台:arxiv
  • 预印版本号:[v1] Sun, 23 Apr 2023 19:10:53 UTC (4,495 KB)
  • 作者团队:Tony Z. Zhao, Vikash Kumar, Sergey Levine, Chelsea Finn
  • 院校机构:
    • Stanford University;
    • UC Berkeley;
    • Meta
  • 项目链接: https://tonyzhaozh.github.io/aloha/
  • GitHub仓库: https://github.com/MarkFzp/mobile-aloha

Abstract

精细操作任务(例如穿电缆扎带或装电池)对于机器人来说非常困难,因为它们需要精度、仔细协调接触力、闭环视觉反馈。执行这些任务通常需要高端机器人、精确的传感器或仔细的校准,而这些可能既昂贵又难以设置。Learning 能否让低成本且非高进度硬件执行这些精细操作任务是一个问题。作者提出了一种低成本系统,可直接从使用自定义遥控界面采集的真机演示进行端到端模仿学习。然而,模仿学习也有其自身的挑战,尤其是在高精度领域:策略中的错误可能随着时间的推移而累积,并且人类演示可能不是平稳的。为了应对这些挑战,作者开发了一种简单而新颖的算法,基于 Transformers 的动作分块 (ACT),它可以学习动作序列的生成模型。 ACT 让机器人只需 10 分钟的演示就能学习现实世界中的 6 项高难度任务,例如打开半透明的调味杯,以及以 80% 到 90% 的成功率装入电池。项目网站:tonyzhaozh.github.io/aloha


1. Intorduction

精细操作任务涉及精确的闭环反馈,并且需要高度的手眼协调能力,以便根据环境变化进行调整和重新规划。此类操作任务的示例包括打开调味杯盖或插入电池,这些任务涉及捏、撬、撕等精细操作,而不是拿起和放置等大幅度动作。以Fig.1中打开调味杯盖为例,其中杯子直立在桌子上初始化:右侧夹持器需要先将其翻倒,然后将其推入打开的左侧夹持器中。然后,左侧夹持器轻轻闭合并将杯子从桌子上抬起。接下来,右手的一根手指从下方接近杯子并撬开盖子。每个步骤都需要高精度、精细的手眼协调能力和丰富的接触。毫米级的误差都会导致任务失败。

在这里插入图片描述

现有的精细操作系统使用昂贵的机器人和高端传感器进行精确的状态估计。在本研究中,我们致力于开发一种低成本的精细操作系统,使其更容易获取且可重复。然而,低成本硬件必然不如高端平台精确,这使得感知和规划方面的挑战更加突出。解决这个问题的一个有希望的方向是将 learning 融入系统。人类也不具备工业级的精确本体感知,但我们能够通过学习闭环视觉反馈并主动补偿误差来执行精细的任务。因此,在系统中作者训练了一种端到端策略,将商用网络摄像头的 RGB 图像直接映射到动作上。这种“像素到动作”的策略尤其适用于精细操作,因为精细操作通常涉及具有复杂物理属性的对象,因此学习操作策略比建模整个环境要简单得多。以调味杯为例:模拟轻推杯子时的接触以及撬开杯盖时的变形,涉及大量自由度的复杂物理场。设计一个足够精确的规划模型需要大量的研究和针对特定任务的工程工作。相比之下,轻推和打开杯子的策略要简单得多,因为闭环策略可以对杯子和杯盖的不同位置做出反应,而无需提前精确预测它们的运动方式。

然而,训练端到端策略也有其自身的挑战。策略的性能在很大程度上取决于训练数据的分布,在精细操作的情况下,高质量的人类演示可以通过允许系统学习人类的灵活性来提供巨大的价值。因此,作者构建了一个低成本但灵活的遥操作系统用于数据采集,以及一种新颖的模仿学习算法,可以从演示中有效地学习。我们将在以下两段中概述每个组件。

Teleoperation system

作者设计了一个遥操作装置,它有两套低成本、量产机械臂构成,彼此之间是近似缩放版本,使用关节空间映射进行遥操作,此装置添加了 3D 打印组件以便于反向驱动,最终在 2 万美元 的预算内构建了一个高性能的遥操作系统。Fig.1中展示了它的功能,包括远程操作精确任务(例如穿拉链带)、动态任务(例如玩乒乓球)以及接触丰富的任务(例如在 NIST 板 #2 中组装链条)。

Imitation learning algorithm

即使演示质量很高,那些需要精准度和视觉反馈的任务对模仿学习来说也是一项艰巨的挑战。预测动作中的微小误差都可能导致状态的巨大差异,从而加剧模仿学习的“复合误差”问题。为了解决这个问题,作者从动作组块(action chunking)中汲取灵感,该概念描述了如何将一系列动作组合成一个组块,并作为一个单元执行。在本文的算法中,该策略会预测接下来 k 个时间步的目标关节位置,而不是一次只预测一步。这将任务的有效范围缩小了 k 倍,从而减轻了复合误差。预测动作序列还有助于解决时间相关的混杂因素,例如演示中的停顿,而这些停顿很难用马尔可夫单步策略建模。为了进一步提升策略的平滑度,提出了时序集成(temporal ensembling),它会更频繁地查询策略,并对重叠的 action chunks 求平均值。利用 Transformers (一种专为序列建模而设计的架构)实现了动作分块策略,并将其训练为条件变分自编码器 (CVAE) ,以捕捉人类数据的多变性。作者该方法命名为“基于 Transformers 的动作分块 (Action Chunking with Transformers,ACT)”,并发现它在一系列仿真和现实世界的精细操作任务中显著优于以往的模仿学习算法。

本文的核心贡献在于构建了一个低成本的精细操作学习系统,该系统由一个遥操作系统和一个新颖的模仿学习算法组成。该遥操作系统成本低廉,却能够执行高精度、丰富交互的任务。模仿学习算法基于Transformers的动作组块(ACT)能够学习精确的闭环行为,其性能远超以往方法。这两个部分的协同作用使得机器人能够直接在现实世界中学习6种精细操作技能,例如,只需10分钟或50条演示轨迹,即可以80-90%的成功率打开半透明的调味杯和插入电池。


2. Related Work

Imitation learning for robotic manipulation

模仿学习使机器人能够直接向专家学习。行为克隆 (Behavioral cloning,BC) 是最简单的模仿学习算法之一,将模仿视为从观察到的动作的监督学习。许多研究试图改进 BC,例如将历史记录与各种架构相结合、使用不同的训练目标以及加入正则化。其他研究则强调模仿学习的多任务或少样本特性、利用语言或探索特定的任务结构。使用更多数据扩展这些模仿学习算法,已经产生了令人印象深刻的系统,可以泛化到新的物体、指令或场景。本研究专注于构建一个低成本且能够执行精细操作任务的模仿学习系统,从硬件和软件两个方面着手解决这一问题,构建了一个高性能的遥操作系统,并提出了一种新颖的模仿学习算法,该算法显著改进了以往在精细操作任务上的方法。

Addressing compounding errors

BC 的一个主要缺点是复合误差(compounding errors)即先前time step误差不断累积,导致机器人偏离其训练分布,最终导致难以恢复的状态,这个问题在精细操作环境中尤为突出。缓解复​​合误差的一种方法是允许额外的在线策略交互和专家校正,如 DAgger 及其变体 。然而,专家注释对于遥操作界面来说可能既耗时又不自然;也可以在采集时注入噪声,以获得具有校正行为的数据集,但对于精细操作而言,这种噪声注入可能直接导致任务失败,降低遥操作系统的灵活性。为了规避这些问题,先前的研究以离线方式生成合成校正数据,仅限于低维状态可用的设置,或抓取等特定类型的任务。由于上述限制,需要从不同的角度来解决复合误差问题,使其与高维视觉观测兼容。作者通过action chunking来缩小任务的有效范围,即预测动作序列而不是单个动作,然后对重叠的动作块进行集成,以生成既准确又平滑的轨迹

Bimanual manipulation

双手操作在机器人技术领域有着悠久的历史,并且随着硬件成本的降低而逐渐普及。早期的研究从经典控制的角度处理双手操作问题,并利用已知的环境动力学,但设计此类建模可能非常耗时,而且对于具有复杂物理属性的物体,其准确性可能不高。近年来,learning 已被融入到双手系统中,例如强化学习、模仿人类示范,或学习预测连接运动原语的关键点。一些研究还关注细粒度的操作任务,例如解结、展平布料,甚至穿针引线,同时使用价格高得多的机器人,例如达芬奇手术机器人或 ABB YuMi。作者的工作转向低成本硬件,例如每个机器人手臂的成本约为 5000 美元,旨在使它们能够执行高精度、闭环任务,遥操作装置与 Kim 等人的研究最为相似,后者也使用了主机器人和跟随机器人之间的关节空间映射。与之前的系统不同,这里没有使用特殊的编码器、传感器或机械加工部件,作者的系统仅使用现成的机器人和少量 3D 打印部件构建,即使非专业人士也能在 2 小时内完成组装。


3. ALOHA: A Low-cost Open-Source Hardware System for Bimanual Teleoperation

作者开发了一套易于操作、性能卓越的远程操作系统,以实现精细操作,其主要遵循了以下五项原则:

  1. Low-cost:对于大多数机器人实验室来说,整个系统应该在预算之内,与单个工业臂相当;
  2. Versatile:可以应用于现实世界物体的各种精细操作任务;
  3. User-friendly:该系统应该直观、可靠且易于使用;
  4. Repairable:当该装置不可避免地出现故障时,研究人员可以轻松修复它;
  5. Easy-to-build:研究人员可以利用易于获取的材料快速组装它;

在选择机器人时,原则1、4、5要求构建一个双手平行爪夹持器装置,该装置配备两个ViperX 6自由度机械臂。出于价格和维护方面的考虑不使用灵巧手。所用的ViperX机械臂工作有效载荷为750克,跨度为1.5米,精度为5-8毫米。该机器人采用模块化设计,易于维修:如果电机出现故障,可以轻松更换低成本的Dynamixel电机。该机器人的现货价格约为5600美元。然而,OEM手指的灵活性不足以处理精细的操作任务。因此,作者设计了3D打印的“透明”手指,并贴上胶带(Fig.3)。这使得在执行精细操作时具有良好的可视性,即使在薄塑料薄膜上也能实现牢固的抓握。

在这里插入图片描述

致力于围绕 ViperX 机器人设计一个尽可能用户友好的远程操作系统,这里不使用 VR 控制器或摄像头捕捉到的手部姿势映射到机器人的末端执行器姿势(即任务空间映射),而是使用同一家公司生产的小型机器人 WidowX 的直接关节空间映射,该机器人售价 3300 美元。用户通过反向驱动较小的 WidowX(“the leader”)进行远程操作,其关节与较大的 ViperX(“the folower”)同步,其实就是同构机械臂。开发时注意到使用关节空间映射相比任务空间映射有如下优势

  1. 精细操作通常需要在机械臂的奇点附近:在上面的例子中,奇点具有 6 个自由度且没有冗余。现成的逆运动学 (IK) 在这种环境下经常失效。另一方面,关节空间映射可以保证在关节限位范围内实现高带宽控制,同时减少计算量并降低延迟;
  2. leader 臂的重量可防止用户移动过快,并能抑制轻微振动。在执行精确任务时,使用关节空间映射比手持 VR 控制器效果更佳。为了进一步提升远程操作体验,作者设计了一个 3D 打印的“手柄和剪刀”机构,可以改装到领队机器人上Fig.3)。它减少了操作员反向驱动电机所需的力,并允许对夹持器进行连续控制,而无需手动打开或闭合;还设计了一个橡皮筋负载平衡机构,可以部分抵消领队侧的重力。它减少了操作员所需的力,并使更长的远程操作时间(例如超过 30 分钟)成为可能。我们在项目网站上提供了有关该设置的更多详细信息。

该装置的剩余部分包括一个装有20×20毫米铝型材的机器人笼,并用交叉钢缆加固。总共有四个Logitech C922x网络摄像头,每个摄像头可传输 480 × 640 480\times640 480×640 像素的RGB图像。其中两个网络摄像头安装在跟随机器人的手腕上,可以近距离观察夹持器。其余两个摄像头分别安装在机器人的正面和顶部Fig.3。遥控操作和数据记录均以50Hz的频率进行。

基于上述设计考量,作者在 2 万美元的预算内构建了双手遥控装置 ALOHA,其成本与 Franka Emika Panda 等单个硬件相当。ALOHA 可实现以下遥控操作:

  • Precise tasks:例如穿扎带、从钱包里取出信用卡、打开或关闭密封袋;
  • Contact-rich tasks:例如将 288 针 RAM 插入计算机主板、翻书,以及在 NIST #2 号板上组装链条和皮带;
  • Dynamic tasks:例如用真正的乒乓球拍玩乒乓球、保持球的平衡而不掉落,以及在空中挥动打开的塑料袋;

据作者所知,现有的远程操作系统无法实现诸如穿扎带、插入内存条和玩乒乓球之类的技能,而且这些技能的预算是 ALOHA 的 5 到 10 倍。Appendix. A 中提供了更详细的价格和功能比较,并在FIg.9 中展示了 ALOHA 能够实现的更多技能。为了使 ALOHA 更易于使用,作者开源了所有软件和硬件,并提​​供了详细的教程,涵盖 3D 打印、框架组装和软件安装等。可以在项目网站上找到该教程:https://tonyzhaozh.github.io/aloha/

在这里插入图片描述


4. Action Chunking with Transformers

现有的模仿学习算法在需要高频控制和闭环反馈的细粒度任务上表现不佳。因此,作者开发了一种名为“基于 Transformer 的动作分块”(ACT)的新算法,以利用 ALOHA 采集的数据。首先总结了 ACT 的训练流程,然后深入探讨了每个设计选择。

为了训练 ACT 完成一项新任务,首先用 ALOHA 采集人类演示,记录机器人的关节位置(即来自人类操作员的输入),并将其用作动作。使用引导机器人的关节位置而非跟随机器人的关节位置非常重要,因为施加的力大小是通过低级 PID 控制器隐式计算两者之差获得的。观测值由从臂的当前关节位置和来自 4 个摄像头的图像反馈组成。接下来训练 ACT 预测当前观测值下的未来动作序列。此处的动作对应于下一个时间步中双臂的目标关节位置。直观来说,ACT 试图根据当前观测值模拟人类操作员在接下来的时间步中会做的事情。然后,这些目标关节位置由 Dynamixel 电机内部的低级高频 PID 控制器跟踪。在测试时,会加载验证loss最低的策略,并在环境中进行测试。出现的主要挑战是复合错误,其中先前操作的错误导致超出训练分布的状态。

A. Action Chunking and Temporal Ensemble

为了以与像素到动作策略兼容的方式对抗模仿学习的复合错误,缩短高频率收集的长轨迹的有效范围。受到action chunking的启发,这是一个神经科学概念:将各个action组合在一起并作为一个单元执行,来提高它们的存储和执行效率。直观地讲,一组动作可以对应于抓住糖果包装纸的一角或将电池插入插槽。在实验中将chunk size固定为 k k k:每 k k k 步,agent都会收到一个观察结果,用来生成接下来的 k k k 个动作,并按顺序执行这些动作Fig.5。这意味着任务的有效范围减少了 k k k 倍。具体而言,该策略对 π θ ( a t : t + k ∣ s t ) \pi_{\theta}(a_{t:t+k}|s_{t}) πθ(at:t+kst) 进行建模,而不是 π θ ( a t ∣ s t ) \pi_{\theta}(a_{t}|s_{t}) πθ(atst)分块还可以帮助模拟人类演示中的非马尔可夫行为。具体来说,单步策略会难以应对时间相关的混杂因素,例如演示过程中的停顿,因为行为不仅取决于状态,还取决于时间步长。当混杂因素位于一个组块内时,动作组块可以缓解这个问题,而不会像历史条件策略那样引入因果混淆问题。

在这里插入图片描述

动作分块的简单实现可能并非最优:每 k k k 步突然合并一个新的环境观测,这可能导致机器人运动不稳定。为了提高平滑度并避免在执行和观察之间进行离散切换,在每个 timestep 都查询策略。这使得不同的动作块相互重叠,并且在给定的tiemstep上会有多个预测动作。Fig.5 中对此进行了说明,并提出了一个时序集成(Temporal Ensemble)来组合这些预测。时序集成使用指数加权方案 w i = e x p ( − m ∗ i ) w_{i}=exp(-m\ast i) wi=exp(mi) 对这些预测执行加权平均,其中 w i w_{i} wi 是最早动作的权重。合并新观测的速度由 m m m 决定, m m m 越小合并速度越快。与典型的平滑不同,典型的平滑将当前动作与相邻时间步中的动作聚合,这会导致偏差,而时序集成是针对同一时间步长预测的动作。此过程也不会产生额外的训练成本,只会增加推理时间计算。实验中发现动作组块和时序集成对于 ACT 的成功至关重要,ACT 能够生成精准流畅的动作。在 VI-A 小节的消融研究中更详细地讨论这些组件。

B. Modeling human data

另一个挑战是从嘈杂的人类演示中学习。给定相同的观察结果,人类可能会使用不同的轨迹来解决任务。在精度不太重要的区域,人类的随机性也会更强。因此,策略必须关注精度要求较高的区域。作者通过将action chunking 策略训练为生成模型来解决这个问题。具体来说,将该策略训练为条件变分自编码器 (CVAE) ,以生成基于当前观察结果的动作序列。CVAE 包含两个组件:CVAE 编码器和 CVAE 解码器,分别如Fig.4 left and right 所示。CVAE 编码器仅用于训练 CVAE 解码器(policy),并在测试时被丢弃。CVAE 编码器预测风格变量 z z z 分布的均值和方差,该分布被参数化为对角高斯分布,给定当前观察结果和动作序列作为输入。为了在实践中加快训练速度,忽略了图像观测,仅以本体感受观测和动作序列作为条件。CVAE 解码器,以 z z z 和当前观测(图像 + 关节位置)作为条件,预测动作序列。测试时将 z z z 设为先验分布的均值(即0)以实现确定性解码。整个模型的训练目标是最大化演示action chunk的对数似然,即 min ⁡ θ − ∑ s t , a t : t + k ∈ D log ⁡ π θ ( a t : t + k ∣ s t ) \min_{\theta}-\sum_{s_{t},a_{t:t+k}\in D}\log{\pi_{\theta}(a_{t:t+k}|s_{t})} minθst,at:t+kDlogπθ(at:t+kst),标准 VAE 目标函数包含两个项:重建损失函数和将编码器正则化为高斯先验的项。作者用超参数 β \beta β 加权第二项, β \beta β 越高, z z z 中传输的信息量就越少。作者发现 CVAE 目标函数对于从人类演示中学习精确任务至关重要。在 VI-B 小节中进行了更详细的讨论。

在这里插入图片描述

C. Implementing ACT

使用 transformer 实现 CVAE encoder和decoder,因为 transformer 既可用于在序列中合成信息,也可用于生成新序列。CVAE 编码器采用类似 BERT 的transformer encoder 实现。encoder 的输入是当前关节位置和来自演示数据集的长度为 k k k 的目标动作序列,并在其前面附加一个学习到的类似于 BERT 的“[CLS]”标记。这形成了一个长度为 k+2 的输入(Fig.4 left)。经过transformer 后,对应于“[CLS]”的特征用于预测“风格变量” z z z 的均值和方差,然后将其用作decoder 的输入。CVAE decoder(即policy)将当前观测值和 z z z 作为输入,并预测接下来的 k k k 个动作(Fig.4 rigth)。使用 ResNet image encoder、transformer encoder 和变transformer decoder 来实现 CVAE 解码器。直观地讲,transformer encoder 会合成来自不同摄像机视点、关节位置和风格变量z的信息,而 transformer 解码器则会生成连贯的动作序列。观测数据包括 4 张 RGB 图像,每张分辨率为 480 × 640 480\times640 480×640,以及两个机械臂的关节位置(总共 7+7=14 个自由度)。动作空间是两个机器人的绝对关节位置一个 14 维向量。通过action chunk,policy 会根据当前观测输出一个 k × 14 k\times14 k×14 维度的张量。首先使用 ResNet18 backbone 处理图像,将 480 × 640 × 3 480 \times640\times3 480×640×3 的 RGB 图像转换为 15 × 20 × 512 15\times20\times512 15×20×512 个特征图。然后,沿空间维度展平以获得 300 × 512 300\times512 300×512 的序列。为了保留空间信息,在特征序列中添加了一个二维sinusoidal position embedding。对所有 4 幅图像重复此操作,可得到维度为 1200 × 512 1200\times512 1200×512 的特征序列。然后再添加两个特征:当前关节位置和**“风格变量”z** 分别通过线性层从原始维度投影到 512。至此,Transformer 编码器的输入为 1202 × 512 1202\times512 1202×512。Transformer decoder通过交叉注意对encoder输出进行条件设置,其中输入序列是固定位置嵌入,维度为 k × 512 k\times512 k×512,key和value来自encoder。这为 Transformer decoder提供了 k × 512 k\times512 k×512 的输出维度,然后使用 MLP 将其向下投影到 k × 14 k\times14 k×14,对应于接下来 k k k 步的预测目标关节位置,使用 L1 损失进行重建,而不是更常见的 L2 损失:因为 L1 损失可以更精确地建模动作序列,同时当使用增量关节位置而不是目标关节位置作为动作时,性能会下降。Appendix. C 中提供了详细的架构图。

在这里插入图片描述

Algorithn 1Algorithm 2 中总结了 ACT 的训练和推理过程。该模型拥有约 80M 个参数,针对每个任务从头开始训练,在单块 11G RTX 2080 Ti GPU 上,训练大约需要 5 个小时,推理时间在同一台机器上约为 0.01 秒。

Algorighm 1Algorighm 2
在这里插入图片描述在这里插入图片描述

5. Experiments

通过实验来评估 ACT 在精细操作任务上的表现。为了便于复现,在 MuJoCo 中构建了两个模拟精细操作任务,并使用 ALOHA 构建了 6 个真实世界任务,项目网站 上提供了每个任务的视频。

A. Tasks

所有 8 个任务都需要精细的双手操作,如Fig.6所示:
在这里插入图片描述

  • Slide Ziploc:右侧夹爪需要准确抓住密封袋的滑块并将其打开,左侧夹爪则负责固定袋身;
  • Slot Battery:右侧夹爪需要先将电池放入遥控器的插槽中,然后用指尖轻轻地将电池边缘推入,直至完全插入。由于电池插槽内的弹簧会导致遥控器在插入过程中向反方向移动,因此左侧夹爪会向下推遥控器以将其固定到位;
  • Open Cup:目标是打开一个小调味杯的盖子。由于杯子体积小,夹爪无法仅从侧面靠近杯身就抓住杯身。因此,我们同时使用两个夹爪:右手手指先轻轻敲击杯子边缘使其翻倒,然后将其轻推到打开的左侧夹爪中。这一轻推步骤需要高精度,并形成视觉感知的闭环。然后,左爪轻轻闭合并将杯子从桌子上提起,接着用右手撬开盖子,这也需要精确度,以免错过盖子或损坏杯子
  • Thread Velcro:目标是将尼龙搭扣扎带的一端插入连接到另一端的小环中。左爪需要先从桌子上拿起尼龙搭扣,然后右爪在半空中捏住扎带的尾部。然后,两个手臂协调将尼龙搭扣的一端插入半空中的另一端。环的尺寸为 3 m m × 25 m m 3mm\times25mm 3mm×25mm,而尼龙搭扣的尺寸为 2 m m × 10 − 25 m m 2mm\times10-25mm 2mm×1025mm,具体取决于位置。为了成功完成这项任务,机器人必须使用视觉反馈来纠正每次抓取时的扰动,因为即使第一次抓取时出现几毫米的误差,也会在第二次半空中抓取时造成累积,导致插入阶段的偏差超过 10mm;
  • Prep Tape:目标是将一小段胶带挂在纸箱边缘。右侧的夹爪首先抓住胶带,并用胶带分配器的刀片将其剪断,然后将胶带段在空中递给左侧的夹爪。接下来,双臂靠近纸箱,左臂轻轻地将胶带段放在纸箱表面,右手手指向下按压胶带以防止滑落,然后左臂打开夹爪释放胶带。与“穿线魔术贴”(Thread Velcro)类似,这项任务需要双臂之间进行多步精细的协调;
  • Put On Shoe:目标是将鞋子穿在固定的人体模型脚上,并用鞋子的魔术贴固定。双臂首先需要分别抓住鞋舌和鞋领,将其抬起并靠近脚部。由于鞋子紧贴脚部,穿鞋是一项挑战:双臂需要仔细协调才能将脚推入,并且双臂的抓握力需要足够强健,以抵消袜子和鞋子之间的摩擦力。然后,左臂绕到鞋底支撑鞋底以防止其掉落,接着右臂翻转魔术贴带并将其压在鞋子上以固定。只有当双臂松开后鞋子仍然紧贴在脚上时,任务才算成功;
  • Transfer Cube:右臂需要先拿起桌上的红色魔方,然后将其放入另一臂的夹持器中。由于魔方与左夹持器之间的间隙很小(约1厘米),微小的误差都可能导致碰撞并导致任务失败;
  • Bimanual Insertion:左右臂需要分别拿起插座和插销,然后将其插入半空中,使插销接触插座内的“插针”。插入阶段的间隙约为5毫米。对于所有8个任务,物体的初始位置要么沿着15厘米的白色参考线随机变化(真实任务),要么在二维区域内均匀分布(模拟任务)。

Fig.6Fig.7中提供了初始位置和子任务的说明。
在这里插入图片描述

除了解决这些任务所需的精细双手控制之外,使用的物体也带来了巨大的感知挑战。例如,密封袋大部分是透明的,只有一条细细的蓝色封口线。袋子上的褶皱和里面反光的糖果包装纸在随机化过程中都会发生变化,从而分散感知系统的注意力。其他透明或半透明物体包括胶带以及调味杯的杯盖和杯身,这些物体难以精确感知,也不适合深度相机。黑色桌面也与许多感兴趣的物体形成了低对比度,例如黑色尼龙搭扣扎带和黑色胶带分配器。尤其是从顶视图来看,由于投影面积较小,定位尼龙搭扣扎带非常具有挑战性。

B. Data Collection

对于所有 6 项真实任务,使用 ALOHA 遥操作采集演示。每个场景需要人类操作员执行 8-14 秒,具体取决于任务的复杂程度,在 50Hz 的控制频率下,这相当于 400-700 个时间步长。除了 Thread Velcro 记录了 100 个演示外,为每个任务记录了 50 个演示。因此,每个任务的演示总量约为 10-20 分钟的数据,由于重置和远程操作员的失误,实际时间约为 30-60 分钟。对于两个模拟任务,c采集两种类型的演示:一种是srcipt策略演示,另一种是人类演示。为了在模拟环境中进行远程操作,使用 ALOHA 的“the leader”来控制模拟机器人,操作员则通过监视器查看环境的实时渲染。在这两种情况下都记录了 50 个成功的演示。

作者强调:所有人类演示本质上都是随机的,即使所有演示都由一个人收集。以空中手部交接磁带片段为例:交接的确切位置在每次演示中都不同。人类没有视觉或触觉参考来以相同的位置执行此操作。因此,为了成功执行此任务,策略需要学习两个夹爪在交接过程中永远不会相互碰撞,并且左侧夹爪应始终移动到可以抓住磁带的位置,而不是试图记住交接发生的确切位置,因为交接发生的确切位置可能会因演示而异。

C. Experiment Results

将 ACT 与之前的四种模仿学习方法进行了比较:

  • BC-ConvMLP 是最简单但应用最广泛的baseline,它使用CNN处理当前图像观测值,并将输出特征与关节位置连接起来以预测动作;
  • BeT 也利用 Transformers 作为架构,但存在以下关键区别:(1) 没有actin chunk:该模型根据观测值的历史预测一个动作;(2) 图像观测值由单独训练的冻结visual encoder进行预处理,即感知网络和控制网络并非联合优化的;
  • RT-1 是另一种基于 Transformer 的架构,它根据固定长度的过去观测值的历史预测一个动作;

BeTRT-1 都将动作空间离散化:输出是离散区间上的分类分布,但 BeT 会添加一个相对于区间中心的连续偏移量。ACT 则直接预测连续动作,其动机是满足精细操作所需的精度。

  • VINN:一种非参数方法,假设在测试时可以访问演示数据。给定一个新的观测值,它会检索 k k k 个具有最相似视觉特征的观测值,并使用加权 k k k 最近邻算法返回一个动作。视觉特征提取器是一个预训练的 ResNet 并使用无监督学习在演示数据上进行了微调。使用立cube transfer 算法仔细调整了这四种先前方法的超参数。Appendix. D提供了超参数的详细信息。

为了与现有方法进行详细比较,Table.1 中报告了两个模拟任务和两个真实任务的平均成功率。
在这里插入图片描述

对于仿真拟任务,对 3 个随机种子(每个种子进行 50 次试验)的性能进行平均。总结可script数据(分隔条左侧)和人工数据(分隔条右侧)的成功率。对于真机任务,运行一个种子并通过 25 次试验进行评估。与所有现有方法相比,ACT 实现了最高的成功率,在每个任务上都远远优于排名第二的算法。对于使用脚本或人工数据的两个方针任务,ACT 的成功率分别比之前最好的方法高出 59%、49%、29% 和 20%。虽然以前的方法能够在前两个子任务中取得进展,但最终成功率仍然很低,低于 30%。对于两个真实世界任务 Slide Ziploc 和 Slot Battery,ACT 分别实现了 88% 和 96% 的最终成功率,而其他方法在第一阶段之后均未取得任何进展。

先前方法的糟糕表现归咎于数据中的复合误差和非马尔可夫行为:在接近回合结束时,机器人的行为会显著下降,并且机器人可能会在某些状态下无限期地暂停。ACT 通过动作分块缓解了这两个问题。在 VI-A 小节中的消融分析也表明,如果将分块技术融入其中,可以显著提升这些先前方法的性能。此外,在仿真任务中从脚本数据切换到人类数据时,所有方法的性能都会下降:人类演示的随机性和多模态性使得模仿学习变得更加困难。

Table.2中报告了其余 3 项真实世界任务的成功率。对于这些任务,仅与 BeT 进行比较,因为它迄今为止具有最高的任务成功率。ACT 在 Cup Open 中的成功率达到 84%,在 Thread Velcro 中的成功率达到 20%,在 Prep Tape 中的成功率达到 64%,在 Put On Shoe 中的成功率达到 92%,再次优于 BeT,BeT 在这些具有挑战性的任务中最终成功率为零。观察到 ACT 在 Thread Velcro 中的成功率相对较低,每个阶段的成功率都下降了大约一半,从第一阶段的 92% 到最终的 20%。我们观察到的失败模式是 1)在第 2 阶段,右臂过早闭合其抓取器并未能抓住半空中的扎带尾部,以及 2)在第 3 阶段,插入不够精确并错过了环。在这两种情况下,都很难通过图像观察确定电缆扎带的确切位置:黑色电缆扎带与背景之间的对比度较低,而且电缆扎带仅占据图像的一小部分。我们在附录 B 中提供了图像观察的示例。s

在这里插入图片描述


6. Ablations

ACT 采用action chunk 和 temporal ensembling 来减轻复合误差,以更好地处理非马尔可夫演示。它还将策略训练为条件变分自编码器 (VAE),以模拟嘈杂的人类演示。在本节中将逐一介绍这些组件,并结合一项用户研究,强调 ALOHA 中高频控制的必要性。总结了四种设置的结果:两个模拟任务,分别包含脚本演示或人类演示

A. Action Chunking and Temporal Ensembling

在 V-C 小节中,观察到 ACT 明显优于以前仅预测单步动作的方法,假设action chunk 是关键的设计。由于 k k k 决定了每个“chunk”中序列的长度,可以通过改变 k k k 来分析这个假设。 k = 1 k = 1 k=1 对应无动作分块, k = e p i s o d e l e n g t h k = episode_length k=episodelength 对应完全开环控制,其中机器人根据第一次观察输出整个情节的动作序列。在这些实验中禁用时间集成,仅测量分块的效果,并为每个 k k k 训练单独的策略。在 Fig.8 (a) 中绘制了 4 种设置的平均成功率,分别对应使用人工或脚本数据的 2 个仿真任务,蓝线表示没有时间集成的 ACT。观察到性能从 k = 1 k = 1 k=1 时的 1% 大幅提升到 k = 100 k = 100 k=100 时的 44%,然后随着 k k k 的增加而略微下降。这说明更多的chunk和更低的有效范围通常可以提高性能。将 k = 200 , 400 k = 200,400 k=200,400(即接近开环控制)处的轻微下降归因于缺乏反应行为和建模长动作序列的困难。为了进一步评估动作chunk的有效性和通用性,为两种基线方法添加了动作分块。

在这里插入图片描述

对于 BC-ConvMLP 只需将输出维度增加到 k × a c t i o n d i m k\times action_dim k×actiondim;对于 VINN 检索接下来的 k k k 个动作。在 FIg.8 (a)中以不同的 k k k 可视化了它们的性能,显示出与 ACT 一致的趋势,其中更多的动作分块可以提高性能。虽然 ACT 仍然比两个增强基线方法有显著的提升,但这些结果表明,在这些设置下actin chunk通常对模仿学习有益。

然后,通过比较有无时间集成的最高成功率来消除时间集成,同样针对上述 4 个任务和不同的 k k k。有无 temporal ensemble 的实验是分别调整的:在没有时间集成的情况下效果最好的超参数在使用 temporal ensemble 的情况下可能并非最佳。在Fig.8 (b) 中显示 BC-ConvMLP 从时间集成中获益最多,增益为 4%;ACT的增益为 3.3%,非参数方法 VINN 的性能下降。假设 temporal ensemble 主要通过平滑建模误差使参数方法受益。相比之下,VINN 从数据集中检索真实动作,不会受到此问题的影响。

B. Training with CVAE

训练 ACT 时使用了 CVAE 目标来模拟人类演示,这些演示可能包含噪声和多模态行为。在本节中,将 ACT 与不带 CVAE 目标的 ACT 进行比较,后者只是根据当前观察结果预测一系列动作,并使用 L1 损失进行训练。Fig.8 (c) 可视化了跨两个仿真任务的汇总成功率,并分别绘制了使用脚本数据和人类数据的训练图。观察到,在使用脚本数据进行训练时,移除 CVAE 目标几乎不会对性能产生影响,因为数据集是完全确定的。而对于人类数据,CVAE 目标的移除会从 35.3% 显著下降到 2%。这表明,在从人类演示中学习时,CVAE 目标至关重要。

C. Is High-Frequency Necessary?

最后进行了一项用户研究,以说明高频遥操作对精细操作的必要性。在相同的硬件设置下,将频率从 50Hz 降低到 5Hz,这一控制频率与近期使用高容量深度网络进行模仿学习的研究相似。作者选取了两项细粒度任务:穿拉链扎带拆开两个塑料杯。这两项任务都需要毫米级精度和闭环视觉反馈。6 位参与者进行了这项研究,他们拥有不同程度的遥操作经验,但之前都没有使用过 ALOHA。参与者是从计算机科学研究生中招募的,其中 4 名男性和 2 名女性,年龄在 22-25 岁之间。每位参与者的任务顺序和频率都是随机的,每位参与者在每次试验前都有 2 分钟的练习时间。

记录 3 次试验中执行任务所需的时间,并在Fig.8 (d)中将数据可视化。平均而言,参与者在 5Hz 下穿好扎带需要 33 秒,而在 50Hz 下则降至 20 秒。对于分离塑料杯,提高控制频率可将任务持续时间从 16 秒缩短至 10 秒。设置 50Hz 允许参与者在短时间内完成高度灵巧且精确的任务。然而,将频率从 50Hz 降低至 5Hz 会导致远程操作时间增加 62%。使用“Repeated Measures Designs” 验证 50Hz 远程操作性能优于 5Hz,p 值小于 0.001。Appendix. E中包含了有关该研究的更多详细信息。

在这里插入图片描述


7. Limitations and Conclusion

作者提出了一个低成本的精细操作系统,它由一个遥操作系统 ALOHA和一个新颖的模仿学习算法ACT组成。这两个部分的协同作用能够直接在现实世界中学习精细操作技能,例如打开半透明调味杯并插入电池,成功率高达80-90%,演示时间约为10分钟。虽然该系统功能强大,但有些任务超出了机器人或学习算法的能力范围,例如扣上衬衫的纽扣。Appendix. F 中详细讨论了这些限制。

总而言之,作者希望这个低成本的开源系统能够成为推动机器人精细操作发展的重要一步,并成为一种便捷的资源。

相关文章:

  • 深度解析之算法之分治(快排)
  • 【金仓数据库征文】——选择金仓,选择胜利
  • 区块链如何达成共识:PoW/PoS/DPoS的原理、争议与适用场景全解
  • 从线性到非线性:简单聊聊神经网络的常见三大激活函数
  • STM32MPU开发之旅:从零开始构建嵌入式Linux镜像
  • 《深入理解 AOP》
  • 【金仓数据库征文】-金仓数据库性能调优 “快准稳” 攻略:实战优化,让数据处理飞起来
  • 新闻速递丨Altair 与 Databricks 达成合作,加速数据驱动型创新
  • 银发科技:AI健康小屋如何破解老龄化困局
  • Qt知识点1『16进制数值与文本互相转换』
  • 【金仓数据库征文】- 国产化迁移实战:从Oracle到KingbaseES的平滑过渡
  • day32 学习笔记
  • C++学习之网络攻防以及信息搜索
  • MDF标准
  • 用 Python 打造打篮球字符动画!控制台彩色炫酷输出,抖音搞怪视频灵感还原
  • Dubbo负载均衡策略深度解析
  • 借助内核逻辑锁pagecache到内存
  • 大模型微调 - 自注意力机制
  • Doris表设计与分区策略:让海量数据管理更高效
  • contenthash 持久化缓存
  • 秦洪看盘|短线热点降温,A股回落整固
  • 云南省委常委、组织部部长刘非任浙江省委常委、杭州市委书记
  • 现场|贝聿铭上海大展:回到他建筑梦的初始之地
  • 中国海外宏洋集团:一季度经营溢利同比降48.6%,密切关注行业收并购机会等
  • 西安市优化营商环境投诉举报监督平台上线,鼓励实名检举控告
  • 爱奇艺要转型做微剧?龚宇:是误解,微剧是增量业务,要提高投资回报效益