Openai教机器人手解魔方 | 智能技术

发布日期:2019-11-06 10:00
通过强化学习和随机模拟,研究人员教这个人工智能机器人如何单手解魔方。


图片:OpenAI

在我看来,手部操作是一种技能,一般来说,人类不会主动学习。我们只是通过用手指和手做其他更具体的任务来解决问题。这使得教机器人解决手部操作任务变得特别棘手,因为我们的方法是通过实验和反复试验。机器人也可以通过尝试和错误来学习,但是由于它通常最终都是错误的,所以需要非常长的时间。

去年六月,我们写了关于openai教五指机器人手操纵立方体的方法。openai使用的方法利用了相同的实验和反复试验,但是在仿真中,而不是在机器人硬件上。对于需要大量技巧的复杂任务,仿真通常很难转化为现实世界的技能,但是openai通过在训练过程中向仿真引入大量随机性,使他们的系统变得超级健壮。这样,即使模拟与实际情况不完全匹配(事实并非如此),系统仍然可以处理在实际硬件上遇到的各种变化。

在今天在线发表的一篇预印本论文中,openai成功地教它的机器人手解决了手上立方体操作的一个更困难的版本:单手解决3x3魔方。这项新的工作还基于使用高级模拟解决问题,然后将解决方案传输到现实系统,或者研究人员称之为“sim2real”的思想。在论文中,openai说,新方法“大大改进了sim2real传输”。

最初的步骤是将机器人对魔方的操作分解为两个不同的任务:1。将立方体的一个面朝任意方向旋转90度,然后旋转2度。翻转立方体以将不同的面带到顶部。由于旋转顶面对机器人来说要比旋转其他面简单得多,所以最可靠的策略是做一个90度的翻转,以获得想要在顶面旋转的面。求解立方体的实际过程在计算上是直接的,尽管求解过程是针对机器人可以执行的运动而不是将步数最少的求解优化的。

进行真实立方体求解的物理设置是一个具有相位空间运动捕捉系统的阴影灵巧E系列手,以及用于视觉姿势估计的RGB相机。被操纵的魔方也相当奇特:它里面塞满了传感器,可以以5度的精度报告每个人脸的方位,这是必要的,因为当魔方的一些人脸被遮挡时,要知道魔方的状态是非常困难的。

“虽然视频使人们很容易将注意力集中在物理机器人上,但魔术大多发生在模拟中,并将在模拟中学到的东西转移到现实世界中。关键在于模拟中的域随机化抖动部分,这样您的系统必须适应与现实世界中可能遇到类似的不同情况。”

虽然视频使人们很容易将注意力集中在物理机器人上,但魔术大多发生在模拟中,并将在模拟中学到的东西转移到现实世界中。同样,这一点的关键是模拟中的域随机化抖动部分,以便您的系统必须适应与现实世界中可能遇到的情况类似的不同情况。例如,你可以稍微改变立方体的重量,或者稍微改变指尖的摩擦力,或者调小灯光。如果您的系统能够处理这些模拟的变化,它将对实际操作更便利。



物理设置包括阴影灵巧的手,一个相空间运动捕捉系统,和RGB相机。OpenAI通过移动手指内部的相位空间led和电缆以及在指尖添加橡胶来修改阴影灵巧的手。

去年,当我们采访Jonas Schneider(立方体操作工作的作者之一)并询问他认为系统最弱的地方时,他说当时最大的问题是随机性既有任务特异性又有手工设计。因此,魔方研究的一个重要贡献可能并不奇怪,“一种自动生成随机环境分布的新方法,用于训练强化学习策略和视觉状态估计器”,研究人员称之为自动领域随机化(ADR)。据该报报道,ADR之所以重要,原因如下:

我们的主要假设,动机ADR是培训上的最大不同分布的环境导致转移通过紧急元学习。更具体地说,如果模型具有某种形式的内存,它可以学习在部署期间调整其行为,以随着时间的推移提高当前环境的性能,即通过在内部实现学习算法。我们假设,如果训练分布太大,模型由于其有限的容量而无法记住每个环境中的特定解,则会发生这种情况。ADR是无限环境复杂度这一方向的第一步:它自动化并逐步扩展了在环境中参数化分布的随机化范围。

每个环境的专用解决方案都不好,因为它们适用于该环境,但不适用于其他环境。你可以把模拟中的每一个小调整都看作是创建一个新的环境,adr背后的想法是将这些调整自动化,以创建如此多的新环境,以至于系统不得不提出通用的解决方案,可以同时适用于许多不同的环境。这反映了实际操作所需的健壮性,在实际操作中,没有两个环境是完全相同的。研究人员说,事实证明,adr比以前的手动调谐效果更好、效率更高:

ADR明显改善了移植,对手工设计的随机化的需求大大减少。我们显著地超过了我们之前的最佳结果,这是经过几个月的迭代手动调整的结果。

在结果方面,研究人员主要关注的是系统能连续做多少次翻转和旋转而不失败,而不是它能完成多少次完整的解决。听起来一个完整的解决方案有点离群。系统可以在43个成功的移动中解决立方体的初始配置,而经过最佳训练的策略(在多个月内持续训练)的平均成功运行约为27个移动。百分之六十的时间里,这个系统可以在一半的时间内完成一个完整的解决方案,并且它使整个过程中百分之二十的时间。



为了确保系统的健壮性,研究人员以各种有趣的方式对其进行了处理。他们用橡胶手套来改变手的摩擦和表面几何结构,将多个手指绑在一起,并在执行过程中放置一条毯子来遮挡手和魔方。他们还用一支钢笔和一只毛绒长颈鹿(恰如其分地叫魔方)来戳立方体。

研究人员指出,他们在这里开发的方法是通用的,你可以训练一个真实世界的机器人完成几乎任何你能充分模拟的任务。你根本不需要任何真实世界的训练,只要你的模拟足够多样化,这就是自动领域随机化进来的地方。长期目标是减少大多数机器人固有的任务专门化,这将有助于它们在实际应用中更加有用和适应性更强。