学习操纵可变形物体

虽然机器人研究界推动了最近的 进展,使机器人能够抓取各种刚性物体,但很少有研究致力于开发能够处理可变形物体的算法。可变形物体操纵的挑战之一是难以指定这种物体的配置。例如,对于一个刚性立方体,知道相对于其中心的固定点的配置足以描述其在三维空间中的排列,但一块织物上的单个点可以保持固定,而其他部分会移动。这使得感知算法很难描述织物的完整“状态”,尤其是在遮挡的情况下。此外,即使对可变形物体的状态表示具有足够的描述性,其动态也很复杂。这使得在对可变形物体应用某些动作后很难预测其未来状态,而这通常是多步规划算法所需要的。

在ICRA 2021上发表的 “学习使用目标条件传输网络重新排列可变形电缆、织物和袋子”中,我们发布了一个名为DeformableRavens 的开源模拟基准,旨在加速对可变形物体操纵的研究。DeformableRavens 具有 12 项涉及操纵电缆、织物和袋子的任务,并包括一组模型架构,用于操纵可变形物体以实现所需的目标配置(通过图像指定)。这些架构使机器人能够重新排列电缆以匹配目标形状,将织物平滑到目标区域,并将物品放入袋子中。据我们所知,这是第一个包含机器人必须使用袋子来装其他物品的任务的模拟器,这对使机器人学习更复杂的相对空间关系提出了关键挑战。

DeformableRavens 基准

DeformableRavens 扩展了我们之前关于重新排列物体的研究,包括一套涉及 1D、2D 和 3D 可变形结构的 12 个模拟任务。每个任务都包含一个模拟UR5 臂,带有一个模拟夹持器,用于捏合抓取,并与脚本演示器捆绑在一起,以自动收集数据进行模仿学习。任务将分布中项目的起始状态随机化,以测试对不同对象配置的通用性。

1728959856639.jpg

使用 PyBullet 在我们的模拟器中操纵 1D(电缆)、2D(织物)和 3D(袋子)可变形结构的脚本演示器示例。这些显示了 DeformableRavens 中的 12 个任务中的三个。左:任务是移动电缆,使其与下面的绿色目标区域匹配。中间:任务是用织物包裹立方体。右:任务是将物品放入袋子中,然后提起袋子并将其移动到方形目标区域。

对于可变形物体,为操作任务指定目标配置尤其具有挑战性。鉴于其复杂的动态和高维配置空间,目标不能像一组刚性物体姿势那样容易指定,并且可能涉及复杂的相对空间关系,例如“将物品放入袋子中”。因此,除了由脚本演示分布定义的任务外,我们的基准还包含使用目标图像指定的目标条件任务。对于目标条件任务,给定的物体起始配置必须与显示相同物体所需配置的单独图像配对。该特定情况的成功取决于机器人是否能够使当前配置足够接近目标图像中传达的配置。

目标条件运输网络

为了补充模拟基准测试中的目标条件任务,我们将目标条件集成到我们之前发布的Transporter Network架构中。这是一个以动作为中心的模型架构,通过重新排列深度特征来推断视觉输入中的空间位移,可以很好地处理刚性物体操纵。该架构将当前环境的图像和具有所需最终物体配置的目标图像作为输入,计算两个图像的深度视觉特征,然后使用元素乘法组合特征以条件化拾取和放置相关性,从而操纵场景中的刚性和可变形物体。Transporter Network 架构的优势在于它保留了视觉图像的空间结构,这提供了归纳偏差,将基于图像的目标条件重新表述为更简单的特征匹配问题,并提高了卷积网络的学习效率。

下面显示了一个涉及目标条件的示例任务。为了将绿色积木放入黄色袋子,机器人需要学习空间特征,使其能够执行多步骤动作序列来打开黄色袋子的顶部开口,然后再将积木放入其中。将积木放入黄色袋子后,演示就成功了。如果在目标图像中,积木被放在蓝色袋子中,那么演示者就需要将积木放入蓝色袋子中。

1728959827194.jpg

DeformableRavens 中目标条件任务的示例。左图: UR5 机器人和袋子以及一个物品的正面摄像头视图,符合理想的目标配置。中图:此设置的自上而下的正交图像,尺寸为 160x320,并作为目标图像传递以指定任务成功标准。右图:演示策略的视频,显示物品放入黄色袋子,而不是蓝色袋子。

结果

我们的结果表明,目标条件传输网络使代理能够将可变形结构操纵成灵活指定的配置,而无需在测试时为目标位置提供视觉锚点。我们还通过对 2D 和 3D 可变形物体进行测试,显著扩展了使用传输网络操纵可变形物体的先前结果。结果还表明,与依赖使用地面真实姿势和顶点位置(而不是图像)作为输入的其他方法相比,所提出的方法具有更高的样本效率。

例如,学习到的策略可以有效地模拟装袋任务,还可以提供目标图像,以便机器人推断出应该将物品放入哪个袋子中。

1728959815227.jpg

使用传输网络训练的策略应用于装袋任务的示例,其目标是首先打开袋子,然后将一个(左)或两个(右)物品放入袋子中,然后将袋子插入目标区域。左侧动画已放大以便清晰查看。

1728959802628.jpg

使用目标条件传送网络的学习策略示例。左图:正面摄像头视图。中图:目标条件传送网络作为输入接收的目标图像,显示物品应放入红色袋子,而不是蓝色干扰袋。右图:学习策略将物品放入红色袋子,而不是干扰袋(本例中为黄色)。

我们鼓励其他研究人员查看我们的开源代码,尝试模拟环境并在此基础上继续研究。有关更多详细信息,请查看我们的论文。

未来工作

这项研究揭示了未来发展的几个方向,包括缓解观察到的故障模式。如下所示,一种故障是机器人将袋子向上拉,导致物品掉落。另一种故障是机器人将物品放在袋子不规则的外表面上,导致物品掉落。未来的算法改进可能会允许以更高的频率运行操作,以便机器人能够实时做出反应以抵消此类故障。

1728959789449.jpg

在袋子操作任务中,学习到的基于 Transporter 的策略的失败案例示例。左图:机器人将立方体插入袋子开口,但拉动袋子的动作无法将立方体包住。右图:机器人无法将立方体插入开口,也无法执行恢复动作将立方体插入更好的位置。

另一个有待改进的领域是使用不需要专家演示的技术(例如基于示例的控制或基于模型的强化学习)训练基于传输网络的模型,以进行可变形物体操作。最后,持续的疫情限制了实体机器人的使用,因此在未来的工作中,我们将探索使系统能够处理实体袋子的必要要素,并扩展系统以处理不同类型的袋子。

致谢

这项研究是在 Daniel Seita 于 2020 年夏天在 Google 纽约办事处实习期间进行的。我们感谢我们的合作者 Pete Florence、Jonathan Tompson、Erwin Coumans、Vikas Sindhwani 和 Ken Goldberg。

版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

评论