机器人学习物体操作和推动的基本原理

麻省理工学院的研究人员开发了一个系统,机器人可以从一个名为Omnipush的数据集中“学习”,该数据集可以捕捉被推物体的移动方式,以改善它们与新物体的物理交互。

通过罗伯·马西森 2019年10月23日

麻省理工学院的研究人员编制了一个数据集,捕捉了机器人系统物理推动数百个不同物体的详细行为。使用该数据集,研究人员可以训练机器人“学习”推动动力学,这是许多复杂对象操作任务的基础,包括重新定位和检查对象,以及整理场景。

为了获取数据,研究人员设计了一个自动化系统,包括一个精确控制的工业机械臂,一个3D运动跟踪系统,深度和传统相机,以及将所有东西拼接在一起的软件。手臂推动模块化的物体,这些物体可以根据重量、形状和质量分布进行调整。对于每一次推动,系统都会捕捉到这些特征如何影响机器人的推动。

这个名为“Omnipush”的数据集包含250个对象的250次不同推送,总计62,500次独特推送。例如,研究人员已经使用它来建立模型,帮助机器人预测物体被推动时会落在哪里。

“我们需要大量丰富的数据来确保我们的机器人能够学习,”机械工程系(MechE)的研究生玛丽亚·鲍扎(Maria Bauza)说。“在这里,我们从一个真正的机器人系统收集数据,物体的变化足以捕捉到推动现象的丰富性。这对于帮助机器人理解推动是如何工作的,并将这些信息转化为现实世界中的其他类似物体非常重要。”

分散的数据

为什么要关注推动行为?MechE副教授阿尔贝托·罗德里格斯(Alberto Rodriguez)解释说,对物体和表面之间的摩擦进行推动动力学建模,对于更高级别的机器人任务至关重要。想想罗德里格斯最近参与设计的能玩叠叠游戏的机器人,它在视觉上和技术上都令人印象深刻。

罗德里格斯说:“机器人正在执行一项复杂的任务,但驱动这项任务的核心机制仍然是推动受物体影响的物体,例如,块之间的摩擦。”

Omnipush建立在一个类似的数据集上,该数据集是由Rodriguez、Bauza和其他研究人员在操纵和机制实验室(MCube)建立的,该数据集只捕获了10个对象上的推送数据。在2016年公布数据集后,他们收集了研究人员的反馈。一个抱怨是缺乏对象多样性:在数据集上训练的机器人很难将信息概括为新的对象。也没有视频,这对计算机视觉、视频预测和其他任务很重要。

对于他们的数据集,研究人员利用工业机械臂精确控制推杆的速度和位置,基本上是一个垂直的钢杆。当手臂推动物体时,一个“Vicon”运动跟踪系统——已经在电影、虚拟现实和研究中使用过——会跟踪物体。还有一个RGB-D摄像头,可以为拍摄的视频增加深度信息。

关键是构建模块化对象。统一的中心部分由铝制成,看起来像四角星,重约100克。每个中心部分的中心和点上都有标记,因此Vicon系统可以在一毫米内检测到它的姿势。

四种形状的小碎片——凹形、三角形、矩形和圆形——可以磁性地附着在中心碎片的任何一侧。每块的重量在31到94克之间,但额外的重量,从60到150克,可以扔进每块的小洞里。所有类似拼图的物体都是水平和垂直排列的,这有助于模拟具有相同形状和质量分布的单个物体所具有的摩擦。所有不同侧面、重量和质量分布的组合加起来总共有250个独特的物体。

每推一次,手臂就会自动移动到距离物体几厘米的随机位置。然后,它随机选择一个方向并推动物体一秒钟。从它停下来的地方开始,然后随机选择另一个方向,重复这个过程250次。每次推送都会记录物体的姿态和RGB-D视频,可用于各种视频预测目的。收集数据每天需要12个小时,持续两周,总共超过150个小时。只有在手动重新配置对象时才需要人工干预。

这些物品并没有特别模仿任何现实生活中的物品。相反,它们的设计是为了捕捉现实世界物体的“运动学”和“质量不对称性”的多样性,它们模拟了现实世界物体的运动物理。然后,机器人可以将质量分布不均匀的Omnipush物体的物理模型外推到任何具有类似重量分布不均匀的现实世界物体上。

“想象一下,推一张有四条腿的桌子,其中一条腿的重量最大。当你推桌子时,你会看到它在沉重的腿上旋转,不得不重新调整。了解质量分布及其对推动结果的影响,是机器人可以通过这组物体学习的东西,”罗德里格斯说。

推动新研究

在一项实验中,研究人员使用Omnipush来训练一个模型,只给出推的初始姿势和描述,就能预测被推物体的最终姿势。他们在150个Omnipush物体上训练模型,并在物体的固定部分上进行测试。结果表明,omnipush训练的模型比在少数类似数据集上训练的模型准确两倍。研究人员还记录了准确性的基准,其他研究人员可以用来进行比较。

因为Omnipush可以捕捉推送的视频,一个潜在的应用是视频预测。例如,一位合作者现在正在使用该数据集训练机器人,使其基本上“想象”在两点之间推动物体。在Omnipush上进行训练后,给机器人输入两帧视频,分别显示一个物体的起始位置和结束位置。使用起始位置,机器人预测所有未来的视频帧,以确保物体到达其结束位置。然后,它以匹配每个预测视频帧的方式推动对象,直到它到达具有结束位置的帧。

“机器人会问,‘如果我做这个动作,物体在这个坐标系中的位置是什么?“然后,它选择最大可能把物体放到它想要的位置的动作,”Bauza说。“它首先通过想象图像中的像素在被推后的变化来决定如何移动物体。”

麻省理工学院(MIT)

www.mit.edu

- Chris Vavra编辑,制作编辑,控制工程、CFE传媒科技;cvavra@cfemedia.com。查看更多控制工程机器人的故事


作者简介:作者,麻省理工学院新闻办公室