【论文】:ALOHA双手远程操作手臂

2024-01-22 02:30

本文主要是介绍【论文】:ALOHA双手远程操作手臂,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

对于机器人来说,诸如穿扎带或插入电池等精细操作任务是众所周知的困难,因为它们需要精确度、接触力的仔细协调以及闭环视觉反馈。执行这些任务通常需要高端机器人、精确的传感器或仔细的校准,这些可能既昂贵又难以设置。学习能否使用低成本且不精确的硬件来执行这些精细的操作任务?
在这里插入图片描述

我们提出了一种低成本系统,可以直接从通过自定义远程操作界面收集的真实演示中执行端到端模仿学习。然而,模仿学习也面临着自身的挑战,特别是在高精度领域:策略中的错误可能会随着时间的推移而复合,而人类的演示可能是不稳定的。
为了应对这些挑战,我们开发了一种简单而新颖的算法,即 Action Chunking with Transformers (ACT),它学习动作序列的生成模型。 ACT 使机器人能够在现实世界中学习 6 项困难任务,例如仅需要10分钟的演示打开半透明调味品杯和插入电池,成功率高达 80-90%。
论文原文地址

1.介绍

精细操作任务涉及精确的闭环反馈,需要高度的手眼协调能力来调整和重新计划以响应环境的变化。此类操作任务的示例包括打开调味品杯的盖子或插入电池,这些操作涉及捏、撬和撕裂等精细操作,而不是拾取和放置等大范围动作。 以打开图中调味品杯的盖子为例,其中杯子被初始化为直立在桌子上:右侧夹具需要首先将其翻转,然后将其推入打开的左侧夹具中。然后左夹具轻轻关闭并举起杯子离开桌子。接下来,右手的一根手指从下方接近杯子并撬开盖子。每一个步骤都需要高精度、细腻的手眼配合、丰富的接触。毫米级的误差就会导致任务失败。
在这里插入图片描述
现有的精细操纵系统使用昂贵的机器人和高端传感器来进行精确的状态估计。在这项工作中,我们寻求开发一种用于精细操作的低成本系统,相比之下,该系统易于访问且可重复。
然而,低成本硬件不可避免地不如高端平台精确,这使得传感和规划挑战更加明显。解决这个问题的一个有希望的方向是将学习纳入系统中。
人类也不具备工业级本体感觉,但我们能够通过学习闭环视觉反馈并主动补偿错误来执行精细的任务。因此,在我们的系统中,我们训练了一种端到端策略,将来自商用网络摄像头的 RGB 图像直接映射到动作。
这种像素到动作的公式特别适合精细操纵,因为精细操纵通常涉及具有复杂物理属性的对象,因此学习操纵策略比对整个环境进行建模要简单得多。
以调味品杯为例:对轻推杯子时的接触以及撬开盖子时的变形进行建模涉及大量自由度的复杂物理过程。
在这里插入图片描述
设计一个足够准确的模型来进行规划需要大量的研究和特定于任务的工程工作。相比之下,轻推和打开杯子的策略要简单得多,因为闭环策略可以对杯子和盖子的不同位置做出反应,而不是提前精确预测它会如何移动。

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

远程操作系统

我们设计了一种远程操作装置,配有两组低成本、现成的机器人手臂。它们是彼此的近似缩放版本,我们使用联合空间映射进行远程操作。
我们使用3D 打印组件增强了这一设置,以便更轻松地进行反向驱动,从而在 2 万美元的预算内打造出功能强大的远程操作系统。我们在图 1 中展示了它的功能,包括精确任务(例如穿扎带)的远程操作、动态任务(例如杂耍乒乓球)以及接触丰富的任务(例如在 NIST板 #2[4]中组装链条)。

特点

低成本
多功能
用户友好
可修复
易于搭建

模仿学习算法

即使有高质量的演示,需要精确度和视觉反馈的任务对模仿学习提出了重大挑战。预测动作中的小错误可能会导致状态的巨大差异,从而加剧模仿学习的“复合错误”问题 。
为了解决这个问题,我们从动作分块中汲取灵感,动作分块是心理学中的一个概念,描述了如何将一系列动作组合在一起作为一个块,并作为一个单元执行。 在我们的例子中,策略预测接下来k 个时间步的目标关节位置,而不是一次只预测一个步骤。这将任务的有效范围缩短了k 倍,从而减少了复合错误。
预测动作序列还有助于解决时间相关的混杂因素,例如很难用马尔可夫单步策略建模的演示暂停。为了进一步提高策略的平滑度,我们提出了时间集成,它更频繁地查询策略并对重叠的动作块进行平均。我们使用 Transformers (一种专为序列建模而设计的架构)实施动作分块策略,并将其训练为条件 VAE (CVAE)以捕获人类数据的可变性。我们将我们的方法命名为 Action Chunking with Transformers(ACT),并发现它在一系列模拟和现实世界的精细操作任务上显着优于以前的模仿学习算法。

本项目的主要贡献是一种用于学习精细操作的低成本系统,包括远程操作系统和新颖的模仿学习算法。远程操作系统尽管成本低廉,但可以实现高精度和丰富联系的任务。模仿学习算法,Action Chunking with Transformers (ACT),能够学习精确的闭环行为,并且大大优于以前的方法。这两个部分之间的协同作用使得可以直接在现实世界中学习 6 种精细操作技能,例如打开半透明调味品杯和插入电池,只需 10 分钟或 50 个演示轨迹,成功率为 80-90 % 。

相关工作

机器人操作的模仿学习

模仿学习允许机器人直接向专家学习。行为克隆(BC)是最简单的模仿学习算法之一,将模仿视为从观察到行动的监督学习。随后,许多工作都试图改进BC,例如将历史与各种架构结合起来,使用不同的训练目标,并包括正则化。其他作品强调模仿学习的多任务或少样本方面,利用语言,或利用特定的任务结构 。用更多数据扩展这些模仿学习算法已经产生了令人印象深刻的系统,可以泛化到新的对象、指令或场景。在这项工作中,我们专注于构建一个低成本但能够执行精细、精细操作任务的模仿学习系统。我们通过构建高性能远程操作系统和新颖的模仿学习算法,从硬件和软件两个方面解决了这个问题,该算法极大地改进了以前精细操作任务的方法。

解决复合错误

BC 的一个主要缺点是复合错误,先前时间步的错误累积并导致机器人偏离其训练分布,导致难以恢复的状态。这个问题在精细操纵设置中尤为突出。减少复合错误的一种方法是允许额外的策略交互和专家修正,例如DAgger及其变体。 然而,使用远程操作界面进行专家注释可能非常耗时且不自然。人们还可以在演示收集时注入噪声以获得具有纠正行为的数据集,但对于精细操作来说,这种噪声注入会直接导致任务失败,降低遥操作系统的灵活性。
为了规避这些问题,以前的工作以离线方式生成综合校正数据。虽然它们仅限于低维状态可用的设置,或特定类型的任务(例如抓取)。由于这些限制,我们需要从不同的角度解决复合误差问题,与高维视觉观察兼容。我们建议通过动作分块来减少任务的有效范围,即预测动作序列而不是单个动作,然后跨重叠的动作块进行集成以产生既准确又平滑的轨迹。

双手操纵

双手操纵在机器人技术中有着悠久的历史,并且随着硬件成本的降低而受到欢迎。早期的工作从经典控制的角度出发,利用已知的环境动力学来解决双手操纵问题,但设计此类模型可能非常耗时,而且对于具有复杂物理属性的对象可能不准确。最近,学习已被纳入双手系统中,例如强化学习,模仿人类演示,或学习预测链接在一起的关键点运动原语。有些作品还专注于细粒度的操作任务,例如解开结、压平布料,甚至穿针,同时使用价格昂贵得多的机器人,例如达芬奇手术机器人或ABB于弥YuMi。我们的工作转向低成本硬件,例如每只成本约为 5,000美元的手臂,并寻求使它们能够执行高精度、闭环任务。我们的远程操作设置与 Kim 等人最相似。,它还使用领导者和跟随者机器人之间的关节空间映射。与之前的系统不同,我们不使用特殊的编码器、传感器或机械部件。我们仅使用现成的机器人和少量 3D打印零件构建我们的系统,允许非专家在不到2 小时的时间内完成组装。
在这里插入图片描述

三、ALOHA:用于双手遥控操作的低成本开源硬件系统

我们寻求开发一种易于使用且高性能的远程操作系统,以进行精细操作。
我们将设计考虑总结为以下 5 条原则。
1)低成本:整个系统应该在大多数机器人实验室的预算范围内,与单个工业手臂相当。
2)多功能:可以应用于对现实世界物体的各种精细操作任务。
3)用户友好:系统应该直观、可靠、易于使用。
4)可修复:当装置不可避免地损坏时,研究人员可以轻松修复。
5)易于搭建:研究人员可以快速组装,使用易于获取的材料。
在选择要使用的机器人时,原则1、4 和 5 引导我们构建一个带有两个ViperX 6-DoF 机器人臂的双手平行爪夹具设置。出于价格和维护方面的考虑,我们不使用灵巧的双手。
所使用的ViperX手臂的工作负载为750g,跨度为1.5m,精度为5-8mm。该机器人采用模块化设计,易于维修:在电机出现故障的情况下,可以轻松更换低成本的 Dynamixel电机。该机器人可以现成购买,价格约为 5600 美元。然而,OEM (原始设备制作商)手指的通用性不足以处理精细的操作任务。因此,我们设计了自己的 3D 打印的“极薄的”手指,并用胶带固定它(如图)。
在这里插入图片描述
这样可以提供良好的能见度,执行精细操作时,即使使用薄塑料薄膜也能保持牢固的抓握力。
然后,我们寻求围绕 ViperX 机器人设计一个最大程度用户友好的远程操作系统。我们没有将 VR 控制器或相机捕获的手部姿势映射到机器人的末端执行器姿势(即任务空间映射),而是使用来自同一家公司制造的较小机器人 WidowX (3300美元)的直接关节空间映射。用户通过反向驱动较小的WidowX(“领导者”)进行远程操作,其关节与较大的 ViperX(“跟随者”)同步。 在开发设置时,我们注意到与任务空间相比使用关节空间映射有一些好处。精细操纵通常需要在机器人的奇点附近进行操作,在我们的例子中具有 6 个自由度且无冗余。现成的反向运动学(IK) 在此设置中经常失败。另一方面,联合空间映射保证了联合限制内的高带宽控制,同时还需要更少的计算并减少延迟。
引导机器人的重量可以防止用户移动得太快,同时也可以抑制微小的振动。我们注意到,与持有 VR 控制器相比,使用关节空间映射在精确任务上的性能更好。为了进一步改善远程操作体验,我们设计了一种3D打印的“手柄和剪刀”机构,可以改装到领导机器人上(如图)。
在这里插入图片描述
它减少了操作员反向驱动电机所需的力,并允许连续控制夹具,而不是二进制打开或关闭。
我们还设计了一个橡皮筋负载平衡机制,可以部分抵消引导侧的重力。它减少了操作员所需的工作量,并使更长的远程操作会话(例如 >30 分钟)成为可能。
该装置的其余部分包括一个带有20×20mm铝型材的机器人笼,并通过交叉钢缆加固。
共有四个Logitech C922x网络摄像头,每个摄像头传输480×640 RGB 图像。其中两个网络摄像头安装在跟随机器人的手腕上,可以近距离观察夹具。其余两个摄像头分别安装在正面和顶部(如图)。遥控操作和数据记录均以50Hz 进行。
在这里插入图片描述
考虑到上述设计考虑,我们在 2 万美元的预算内构建了双手遥控装置ALOHA,与Franka Emika Panda等单一机械臂研究机构价格相当。
ALOHA 可实现以下远程操作:
精确的任务:例如穿拉链扎带、从钱包中取出信用卡以及打开或关闭拉链袋。
接触丰富的任务:例如将288 针 RAM 插入计算机主板、翻书页以及在 NIST 板 #2 中组装链条和皮带 。
动态的任务:例如用乒乓球玩杂耍真正的乒乓球拍,平衡球而不掉落,并在空中摆动打开塑料袋。
据我们所知,诸如穿扎带、插入RAM线路板和玩乒乓球等技能对于预算 5-10 倍的现有远程操作系统来说是没有的。我们在附录 A 中提供了更详细的价格和功能比较,以及图 9 中 ALOHA 具备的更多技能。
为了让 ALOHA 更容易使用,我们开源了所有软件和硬件,并提供了涵盖 3D 打印、框架组装到软件安装的详细教程。
在这里插入图片描述

这篇关于【论文】:ALOHA双手远程操作手臂的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/631579

相关文章

AI hospital 论文Idea

一、Benchmarking Large Language Models on Communicative Medical Coaching: A Dataset and a Novel System论文地址含代码 大多数现有模型和工具主要迎合以患者为中心的服务。这项工作深入探讨了LLMs在提高医疗专业人员的沟通能力。目标是构建一个模拟实践环境,人类医生(即医学学习者)可以在其中与患者代理进行医学

论文翻译:arxiv-2024 Benchmark Data Contamination of Large Language Models: A Survey

Benchmark Data Contamination of Large Language Models: A Survey https://arxiv.org/abs/2406.04244 大规模语言模型的基准数据污染:一项综述 文章目录 大规模语言模型的基准数据污染:一项综述摘要1 引言 摘要 大规模语言模型(LLMs),如GPT-4、Claude-3和Gemini的快

论文阅读笔记: Segment Anything

文章目录 Segment Anything摘要引言任务模型数据引擎数据集负责任的人工智能 Segment Anything Model图像编码器提示编码器mask解码器解决歧义损失和训练 Segment Anything 论文地址: https://arxiv.org/abs/2304.02643 代码地址:https://github.com/facebookresear

动手学深度学习【数据操作+数据预处理】

import osos.makedirs(os.path.join('.', 'data'), exist_ok=True)data_file = os.path.join('.', 'data', 'house_tiny.csv')with open(data_file, 'w') as f:f.write('NumRooms,Alley,Price\n') # 列名f.write('NA

线程的四种操作

所属专栏:Java学习        1. 线程的开启 start和run的区别: run:描述了线程要执行的任务,也可以称为线程的入口 start:调用系统函数,真正的在系统内核中创建线程(创建PCB,加入到链表中),此处的start会根据不同的系统,分别调用不同的api,创建好之后的线程,再单独去执行run(所以说,start的本质是调用系统api,系统的api

论文翻译:ICLR-2024 PROVING TEST SET CONTAMINATION IN BLACK BOX LANGUAGE MODELS

PROVING TEST SET CONTAMINATION IN BLACK BOX LANGUAGE MODELS https://openreview.net/forum?id=KS8mIvetg2 验证测试集污染在黑盒语言模型中 文章目录 验证测试集污染在黑盒语言模型中摘要1 引言 摘要 大型语言模型是在大量互联网数据上训练的,这引发了人们的担忧和猜测,即它们可能已

Java IO 操作——个人理解

之前一直Java的IO操作一知半解。今天看到一个便文章觉得很有道理( 原文章),记录一下。 首先,理解Java的IO操作到底操作的什么内容,过程又是怎么样子。          数据来源的操作: 来源有文件,网络数据。使用File类和Sockets等。这里操作的是数据本身,1,0结构。    File file = new File("path");   字

OmniGlue论文详解(特征匹配)

OmniGlue论文详解(特征匹配) 摘要1. 引言2. 相关工作2.1. 广义局部特征匹配2.2. 稀疏可学习匹配2.3. 半稠密可学习匹配2.4. 与其他图像表示匹配 3. OmniGlue3.1. 模型概述3.2. OmniGlue 细节3.2.1. 特征提取3.2.2. 利用DINOv2构建图形。3.2.3. 信息传播与新的指导3.2.4. 匹配层和损失函数3.2.5. 与Super

MySQL——表操作

目录 一、创建表 二、查看表 2.1 查看表中某成员的数据 2.2 查看整个表中的表成员 2.3 查看创建表时的句柄 三、修改表 alter 3.1 重命名 rename 3.2 新增一列 add 3.3 更改列属性 modify 3.4 更改列名称 change 3.5 删除某列 上一篇博客介绍了库的操作,接下来来看一下表的相关操作。 一、创建表 create

BERT 论文逐段精读【论文精读】

BERT: 近 3 年 NLP 最火 CV: 大数据集上的训练好的 NN 模型,提升 CV 任务的性能 —— ImageNet 的 CNN 模型 NLP: BERT 简化了 NLP 任务的训练,提升了 NLP 任务的性能 BERT 如何站在巨人的肩膀上的?使用了哪些 NLP 已有的技术和思想?哪些是 BERT 的创新? 1标题 + 作者 BERT: Pre-trainin