ALOHA:用于双手远程操作的低成本开源硬件系统

23年4月来自斯坦福、UC Berkley和Meta的论文“Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware”。

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

ALOHA 的概览如图所示:一种低成本的双手遥控开源硬件系统。整个系统的成本不到 2 万美元,包括现成的机器人和 3D 打印组件。左图:用户通过反向驱动引导机器人进行遥控操作,跟随机器人模仿其动作。右图:ALOHA 能够执行精确、接触丰富且动态的任务。图中展示遥控和学习技能的示例。

请添加图片描述

如上图中打开调味杯盖为例,杯子在桌面上直立放置:右夹持器需要先将其翻倒,并将其推入打开的左夹持器中。然后左夹持器轻轻闭合并将杯子从桌面上抬起。接下来,右手指从下方接近杯子并撬开盖子。每个步骤都需要高精度、精细的手-眼协调和丰富的接触。毫米的误差都会导致任务失败。

训练端到端策略也有其自身的挑战。策略的性能在很大程度上取决于训练数据分布,在精细操作的情况下,高质量的人类演示,可以让系统从人类的灵活性中学习提供巨大的价值。因此,构建一个低成本但灵巧的遥操作系统用于数据收集,以及一个从演示中有效学习的模仿学习算法。

遥操作系统。设计一个遥操作装置,它有两组低成本的现成机械臂。它们是彼此的近似大小版,用关节空间(joint-space)映射进行遥操作。为此装置添加了 3D 打印组件,使其更容易反向驱动,从而在 2 万美元的预算内打造出一个功能强大的遥操作系统。如上图展示了其功能,包括远程操作精确任务(例如穿拉链)、动态任务(例如玩乒乓球)以及接触丰富的任务(例如在 NIST #2 板组装链条 [4])。

模仿学习算法。即使有高质量的演示,需要精确度和视觉反馈的任务,对模仿学习来说也是一项重大挑战。预测动作中的小错误可能会导致状态的巨大差异,从而加剧模仿学习的“复合误差”问题 [47, 64, 29]。为了解决这个问题,从动作分块中汲取灵感,这是一个心理学概念,描述了如何将动作序列组合成一个块并作为一个单元执行 [35]。在所给的案例中,该策略预测接下来 k 个时间步的目标关节位置,而不是一次只预测一步。这将任务的有效范围缩小 k 倍,从而减轻复合误差。预测动作序列还有助于解决时间相关的混杂因素 [61],例如演示中的停顿,这些停顿很难用马尔可夫单步策略建模。为了进一步提高策略的平滑度,提出时间集成(temporal ensembling),更频繁地查询策略并在重叠的动作块进行平均。使用 Transformers [65] 实现动作分块策略,并将其训练为条件 VAE(CVAE)[55, 33]捕捉人类数据的多变性。该方法称为用 Transformers 的动作分块 (ACT),在一系列模拟和现实世界的精细操作任务上,实验结果明显优于以前的模仿学习算法。

ALOHA 的硬件结构如图所示。左图:前部、顶部和两个腕部摄像头的摄像头视点,以及 ALOHA 双手工作空间的图示。中图:“手柄和剪刀”机构和定制夹持器的详细视图。右图:ViperX 6dof 机器人的技术规格 [1]。

请添加图片描述

本身目的是开发一种易于使用且性能高的精细操作遥控系统。将设计考虑因素总结为以下 5 项原则。

  1. 低成本:整个系统应在大多数机器人实验室的预算之内,与单个工业手臂相当。
  2. 多功能:可应用于各种精细操作任务,包括现实世界中的物体。
  3. 用户友好:系统应直观、可靠且易于使用。
  4. 可修复:当装置不可避免地发生故障时,研究人员可以轻松修复。
  5. 易于构建:研究人员可以使用易于采购的材料快速组装。

在选择要使用的机器人时,原则 1、4 和 5 引导构建一个双手平行钳口夹持器装置,该装置带有两个 ViperX 6-DoF 机器人手臂 [1, 66]。出于价格和维护方面的考虑,不使用灵巧手。所用 ViperX 手臂的工作有效载荷为 750g,跨度为 1.5m,精度为 5-8mm。该机器人采用模块化设计,维修简单:如果电机发生故障,可以轻松更换低成本的 Dynamixel 电机。该机器人可以现成购买,价格约为 5600 美元。然而,OEM 手指不够灵活,无法处理精细的操作任务。因此,设计自己 3D 打印的“透明”手指,并用抓取胶带固定(如上图所示)。这可以在执行精细操作时提供良好的可视性,即使使用薄塑料膜也能牢固抓握。

寻求设计一个围绕 ViperX 机器人最大程度用户友好的远程操作系统。没有将 VR 控制器或摄像头捕获的手部姿势映射到机器人的末端执行器姿势(即任务-空间映射),而是使用来自同一家公司制造的小型机器人 WidowX 直接进行关节-空间映射,价格为 3300 美元 [2]。用户通过反向驱动较小的 WidowX(“引领者”)进行遥控操作,其关节与较大的 ViperX(“跟随者”)同步。

在开发设置时,用关节-空间映射比使用任务-空间映射有几个好处。(1)精细操作通常需要在机器人奇点附近操作,在本文例子中,它有 6 个自由度,没有冗余;现成的逆运动学 (IK) 在这种情况下经常失败;另一方面,关节-空间映射保证了关节限制内的高带宽控制,同时还需要更少的计算并减少延迟。(2)引领者机器人的重量,可以防止用户移动过快,还可以抑制小振动;与手持 VR 控制器相比,使用关节-空间映射在精确任务上的表现更好;为了进一步改善遥控操作体验,设计一个 3D 打印的“手柄和剪刀”机制,可以改装到引领者机器人上(如上图所示)。它减少了操作员反向驱动电机所需的力,并允许连续控制夹持器,而不是二值模式:打开或关闭。还设计了一种橡皮筋负载平衡机制,可以部分抵消引领者一侧的重力。它减低操作员所需的努力,并使更长的远程操作会话(例如> 30 分钟)成为可能。

其余设置包括一个带有 20×20mm 大小的机器人笼子,由交叉钢缆加固。总共有四个 Logitech C922x 网络摄像头,每个摄像头都传输 480×640 RGB 图像。两个网络摄像头安装在跟随机器人的手腕上,可以近距离观察夹持器。其余两个摄像头分别安装在前面和顶部(如上图所示)。遥控操作和数据记录都以50Hz进行。考虑到上述设计因素,在 2 万美元的预算内构建了双手遥控装置 ALOHA,与 Franka Emika Panda 等研究机构的一个单手的研究预算相当。ALOHA 可以实现以下遥控操作:
• 精确任务,例如穿入拉链扎带、从钱包中取出信用卡以及打开或关闭密封袋。
• 接触性强的任务,例如将 288-pin RAM 插入计算机主板、翻阅书页以及组装 NIST 板 #2 中的链条和皮带 [4]
• 动态任务,例如用真正的乒乓球拍玩乒乓球、保持球平衡而不掉落、以及在空中挥动打开的塑料袋。

穿入拉链扎带、插入 RAM 和玩乒乓球等技能,对于预算为 5-10 倍的现有遥控系统来说是不具备的 [21, 5]。

为了像素-到-动作策略兼容的方式对抗模仿学习的复合错误,寻求减少高频率收集的长轨迹有效范围。动作分块,是一个神经科学概念,其中将各个动作组合在一起并作为一个单元执行,从而使其存储和执行效率更高 [35]。直观地讲,一组动作可以对应于抓住糖果包装纸的一角或将电池插入插槽。在实现中,将块大小固定为 k:每 k 步,智体都会收到一个观察结果,生成接下来的 k 个动作,并按顺序执行这些动作。如图所示:

请添加图片描述
如上图所示,动作分块的简单实现可能不是最优的:每 k 步突然合并一个新的环境观测,这可能导致机器人运动不平稳。为了提高平滑度并避免在执行和观察之间进行离散切换,在每个时间步查询策略。这使得不同的动作块相互重叠,并且在给定的时间步长将有多个预测动作。这样提出一个时间集成来组合这些预测。时间集成使用指数加权方案对这些预测执行加权平均。
用Transformer做动作分块(ACT)的架构如图所示:将 ACT 训练为条件 VAE (CVAE),它具有编码器和解码器。左图:CVAE 的编码器将动作序列和联合观测压缩为一个风格变量(style vector) z,编码器在测试时被丢弃不用。右图:ACT 的解码器或策略使用一个 Transformer 编码器从多个视点、关节位置和 z 合成图像,并使用一个 Transformer 解码器预测一系列动作;z 在测试时简单地设置为先验的平均值(即零)。
请添加图片描述

如上图所示,用Transformer实现 CVAE 编码器和解码器。CVAE 编码器类似 BERT [13] 实现。编码器的输入是当前关节位置和来自演示数据集长度为 k 的目标动作序列,前面加上与 BERT 类似的学习的“[CLS]”token。这形成了一个长度为 k+2 的输入(图左)。经过Transformer后,对应于“[CLS]”的特征用于预测“风格变量”z 的均值和方差,然后将其用作解码器的输入。CVAE 解码器(即策略)将当前观测值和 z 作为输入,并预测接下来的 k 个动作(图右)。用 ResNet 图像编码器、Transformer 编码器、和 transformer 解码器来实现 CVAE 解码器。直观地看,Transformer 编码器会综合来自不同摄像机视点、关节位置和风格变量的信息,而 Transformer 解码器则会生成连贯的动作序列。观测包括 4 张 RGB 图像,每张图像的分辨率为 480×640,以及两个机械臂的关节位置(总共 7 + 7 = 14 DoF)。动作空间是两个机器人的绝对关节位置,即一个 14 维向量。因此,通过动作分块,该策略会根据当前观测输出一个 k×14 张量。该策略首先使用 ResNet18 主干 [22] 处理图像,将 480×640×3 RGB 图像转换为 15×20×512 特征图。然后,沿空间维度展平以获得 300×512 的序列。为了保留空间信息,在特征序列中添加了一个 2D 正弦位置嵌入 [8]。对所有 4 幅图像重复此操作,可得到尺寸为 1200×512 的特征序列。然后,再附加两个特征:当前关节位置和“风格变量”z。它们分别通过线性层从原始维度投影到 512。因此,Transformer 编码器的输入为 1202×512。Transformer 解码器通过交叉注意对编码器输出进行条件设置,其中输入序列是固定位置嵌入,尺寸为 k×512,K和V来自编码器。这为 Transformer 解码器提供了 k×512 的输出维度,然后使用 MLP 将其向下投影到 k×14,对应于接下来 k 步的预测目标关节位置。用 L1 损失进行重建,而不是更常见的 L2 损失:L1 损失可以更精确地建模动作序列。当使用增量关节位置而不是目标关节位置作为动作时,性能会下降。

为了训练这个 ACT 算法执行一项新任务,首先使用 ALOHA 收集人类演示。记录引领机器人的关节位置(即来自人类操作员的输入)并将其用作动作。使用引领者关节位置而不是跟随者的关节位置很重要,因为通过低级 PID 控制器,施加力的大小隐含地由它们之间的差定义。观测值由跟随者机器人的当前关节位置和来自 4 个摄像头的图像馈送组成。接下来,训练 ACT 根据当前观测值预测未来动作的顺序。此处的动作对应于下一个时间步骤中两个手臂的目标关节位置。直观地说,ACT 试图模仿人类操作员在当前观测值下在接下来的时间步骤中会做什么。然后,Dynamixel 电机内的低层高频 PID 控制器跟踪这些目标关节位置。在测试时,加载实现最低验证损失的策略,并将其在环境中推出。出现的主要挑战是“复合错误”,其中先前操作的错误会导致超出训练分布的状态。

如图是ACT的训练和推理算法总结:
请添加图片描述

附录: ACT的详细架构图如下

请添加图片描述
请添加图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值