用于机器人操作的可扩展深度强化学习
文 / Google Brain 团队软件工程师 Alex Irpan 和高级机器人专家 Peter Pastor
机器人如何获得能够有效泛化到各种现实世界物体和环境的技能?尽管设计一套能够在受控环境中有效执行重复任务的机器人系统(例如,在装配线上组装产品)十分平常,但设计一种能够观察周围环境和确定最佳行动方案,同时对意外结果做出反应的机器人却非常困难。
不过,有两种工具可以帮助机器人从经验中获得这些技能:深度学习和强化学习。前者非常适合处理非结构化的现实世界场景,而后者可以实现更长期的推理,同时展现出更复杂、更强大的顺序决策能力。如果将这两种技术结合,将有可能让机器人不断地从经验中学习,使它们能够通过数据而非人为设计来掌握基本的感觉运动技能。
设计用于机器人学习的强化学习算法本身提出了一系列挑战:现实世界的物体具有各种各样的视觉和物理属性,接触力的细微差别都可能会使物体运动难以预测,并且相关物体可能会受到遮挡。此外,机器人传感器本身具有噪声,这也增加了复杂性。所有这些因素综合到一起,使得学习一个通用解异常困难,除非训练数据足够多样化,然而,收集这样的数据又十分耗时。
这就促使人们去探索一种能够有效重用过往经验的学习算法,类似于我们之前一项关于抓取的研究,这项研究就受益于大数据集。不过,这项研究无法推断动作的长期后果,而这一点对学习如何抓取十分重要。例如,如果多个物体聚集在一起,那么将其中一个分开(称为“分割”)将使得抓取更容易,即使这样做与成功抓取并无直接关联。
分割示例
为了提高效率,我们需要采用脱策强化学习,这种算法可以从数小时、数天或数周前收集的数据中学习。为了设计这样一种可以利用从历史互动中获得的大量不同经验的脱策强化学习算法,我们将大规模分布式优化与一个新的拟合深度 Q 学习算法(我们称之为 QT-Opt)相结合。arXiv 上提供了预印本。
QT-Opt 是一种分布式 Q 学习算法,支持连续动作空间,非常适合解决机器人问题。为了使用 QT-Opt,我们首先使用已收集的数据以完全离线的方式训练模型。此过程不需要运行真正的机器人,因而更易于扩展。然后,我们在真正的机器人上部署并微调该模型,使用新收集的数据进一步训练模型。通过运行 QT-Opt,我们得以积累更多的离线数据,这使得我们能够训练出更好的模型,而这反过来又有利于收集更好的数据,从而形成一个良性循环。
为了将这种方法应用于机器人抓取,我们使用了 7 个现实世界的机器人,在 4 个月的时间里,机器人总共运行了 800 个小时。为了引导收集过程,我们首先使用手动设计的策略,成功率为 15-30%。在表现提升后,数据收集转向学到的模型。策略利用相机图像并返回手臂和抓手的移动方式。离线数据包含对 1000 多种不同物体的抓取。
使用的一些训练物体
通过过去的研究,我们已经发现在机器人之间共享经验可以加快学习速度。我们将此训练和数据收集过程扩展到 10 个 GPU、7 个机器人和多个 CPU,因此得以收集和处理包含超过 580,000 次抓取尝试的大型数据集。在这个过程的最后,我们成功训练了一种抓取策略,此策略在现实世界机器人上运行并且可以泛化到训练时未见过的各种具有挑战性的物体。
七个机器人正在收集抓取数据
从量化角度来看,在关于以前未见过物体的 700 次抓取试验中,QT-Opt 方法的抓取成功率达到 96%。先前基于监督式学习的抓取方法的成功率为 78%,相比之下,新方法将错误率降低了五倍以上。
评估时使用的物体
为了使任务具有挑战性,我们增加了物体尺寸、
纹理和形状的多样性
值得注意的是,策略展现出了标准机器人抓取系统中少见的各种闭环、反应性行为:
• 当面对一组无法一起拾起的联锁块时,策略先将一个块与其他块分开,然后再将它拾起。
• 当面对难以抓取的物体时,策略会推算出它应该调整抓手位置并重新抓取,直到抓牢为止。
• 当在一堆物体中抓取时,策略会探测不同的物体,直到抓手紧紧握住一个物体时才会将它拾起。
• 当我们故意将物体从抓手上弄掉以扰乱机器人时(训练期间未经历过这种情况),它会自动重新调整抓手位置,进行另一次尝试。
最重要的是,这些行为都并非人为设计。这些行为基于 QT-Opt 的自监督式训练自动出现,因为它们提高了模型的长期抓取成功率。
学到的行为示例
在左侧的 GIF 中,策略针对移动的球进行更正
在右侧的 GIF 中,策略在多次抓取尝试后
成功拾起难以抓握的物体
此外,我们发现 QT-Opt 使用较少的训练数据达到了较高的成功率,尽管收敛时间较长。这对机器人技术来说尤其令人兴奋,因为,此领域的瓶颈通常是收集现实机器人数据,而不是训练时间。将此策略与其他数据效率技术(例如我们之前关于抓取领域自适应的研究)相结合,可以在机器人技术领域开辟一些有趣
总体而言,QT-Opt 算法是一种通用的强化学习方法,在现实世界机器人上表现非常出色。除奖励定义外,QT-Opt 没有任何特定于机器人抓取的限制。我们认为这是向更通用的机器人学习算法迈出的重要一步,并期待看到其他适用的机器人任务。
金币换书活动进行中:
Be a Tensorflower