CMU和谷歌联手研制左右互搏的对抗性机器人

camsense 2017-06-09

选自IEEE Spectrum

机器之心编译

作者:Evan Ackerman

参与:蒋思源、Smith

CMU 和谷歌研究者正在使用基于博弈论和深度学习的对抗性训练策略来提升操作性任务,如抓取物体。对抗者(adversary)可以是一个机器人,其会尝试破坏另一个机器人抓取物体(如下图所示),同时对抗者也可以是双臂机器人中的单臂,其尝试干扰另一只单臂抓取物体。

CMU和谷歌联手研制左右互搏的对抗性机器人

因为教导机器人学会抓取一大堆不同种类的物体是极其枯燥的过程,因此现在有许多机器人学家转向采用人工智能策略,如自监督学习(self-supervised learning)等方法,而不是让机器人一遍又一遍地采用不同的技术来弄清楚怎样抓取一件物体。因为即使我们有一大堆的机器人,这仍然需要很长的时间(至少需要数千机器人小时/robot-hours),当然这也许能得到一个很好的通用抓取框架,但是这个框架并没有标准来判断什么是优秀的抓取。

因此这样做的问题是,这些技术使用非常基础的传感器以二元类型的方式测量抓取(成功抓取或丢失):那么是否捡起了物体就不算丢失?但真实世界的抓取并不完全是这样的,因为大多数人都可以证明:我们拾起一个物体并不让它掉下来,这并不能说明我们拾起的方式就是最好的,或者说这样的抓取方法是特别有效的。因为传感器并不能判断是不是稳定,而越是不稳定的抓取方式意味着丢失物体的概率越大,尤其是在不可预见的情况下,机器的人表现通常要比实验室中的情况差得多。

考虑到这一点,卡耐基梅隆大学和谷歌决定将博弈论和深度学习结合起来令抓取更加稳定。他们的想法是引入一个对抗者(adversary)作为学习过程的一部分,因此一个「邪恶的机器人」会尽可能地令其它不太稳定的抓取失败。

这也是机器人的长处之一,我们可以将对抗性自我改变(adversarial alter-egos)编程入机器人当中,因此它们就能双手左右互搏,也就是一只手晃动并尝试抓稳物体,而另一只手则更直接地干扰第一只手,并尝试抢走物体。

对抗性抓取(adversarial grasping)的概念十分简单:即在对抗者尝试破坏的情况下,机器人唯一的目标就是努力抓稳物体。

该对抗性抓取的研究者 Lerrel Pinto、James Davidson 和 Abhinav Gupta 在上周 ICRA 展示了他们的工作,即将他们的对抗性方法形式化为两个参与者的零和重复博弈(博弈论中十分流行的技术)。在他们的模型中,每一个博弈参与者都是一个卷积神经网络,其中一个 CNN 尝试准确地抓取物体,而另一个则希望破坏第一个的抓取行为。

像重力、惯性和摩擦力(或者去掉摩擦力)等都是抓取机器人必须实时解决的基本问题,但机器人可以在抓取物体后通过摇晃而令抓取更加困难以优化这样的问题。这也是机器人的长处之一,我们可以将对抗性自我改变(adversarial alter-egos)用程序编入机器人当中,因此它们就能双手左右互搏,也就是一只手晃动并尝试抓稳物体,而另一只手则更直接地干扰第一只手,并尝试抢走物体。

如果对抗者成功了,那么就意味着紧握的方式并不是很好,抓取方也将从失败中吸取教训。同时,对抗者也将从成功的抢夺中学习到经验。这样机械臂就出现了一种不断升级的竞争,因此抓取者抓取地越来越稳,对抗者扰乱地越来越强烈。这也就是为什么研究人员认为这样的机器人可以应用在现实世界中。对于一个可靠的机器人,它们需要在时时刻刻都会面临挑战的环境中运行。

CMU和谷歌联手研制左右互搏的对抗性机器人

机器人抓取臂和对抗臂:该 Baxter 双臂机器人其中一臂努力抓取物体,而另一臂尝试拉拽物体而破坏平衡性。

研究者证明他们的对抗性策略能加速训练过程并产生一个更具鲁棒性的系统。他们同样展示这一系统是怎样工作的,该训练过程要比简单地采用大量抓取而没有对抗性训练好的多:

经过三次「摇动对抗」(shaking adversary)的迭代训练,我们的抓取率增从 43% 增长到了 58%。值得注意的是当我们的基准网络没有经过对抗训练时,抓取率只有 47%。这清晰地表明了在用对抗性智能体进行额外监督时比那些仅仅收集抓取数据的方法更为有效。

有趣的的是,6 千次对抗性样本可以产生 52% 的抓取率(迭代 1 次),而 1 万 6 千次额外的抓取样本仅仅只会产生 47% 的抓取率。这很显然地展示了在多机器人的情况下,通过对抗性设定训练是更优的策略。

整体效果在抓取新型物体的境况下有显著的提升:整体抓取成功率上升到 82%(没有对抗训练的情况下成功率仅为 68%)。更夸张的是,如果我们通过减小力的最大值和接触摩擦来对抓取动作进行阻碍,对抗性训练方法也可以达到 65% 的成功率(同等条件下没有对抗训练时仅为 47%)。

这个方法的一部分是通过选择一种具有挑战性的行为使对抗者变得实用。你可以通过观察一个不受干扰的抓取机器人是怎样失败的来实施这种策略,然后针对这种失败模式对对抗者进行编码。在发生抓取混乱的情况时,「摇动」和「抢夺」往往是有效的,因为它们可以拿住物体但是不太稳定。所以那些学会怎样打败这些对抗者的机器人往往更会抓取。取决于想抓取什么类型的物体和抓取到什么位置,我们也可以设想出其他类型的有效对抗者。

论文:Supervision via Competition: Robot Adversaries for Learning Tasks(通过竞争进行监督:有助学习任务的机器人对抗者)

论文链接:https://arxiv.org/abs/1610.01685

CMU和谷歌联手研制左右互搏的对抗性机器人

最近机器人科学界有一个范式转移的趋势,那就是用数据驱动学习(data-driven learning)的方法去进行规划和控制。由于大量的经验都需要训练来产生,因此大多数方法都采用了一种自监督范式(self-supervised paradigm):即用传感器去感知成功或失败。然而,在大多数情况下,这些传感器也不过是仅仅提供了「弱监督」(weak supervision)。在本实验中,我们提出了一个对抗学习架构(adversarial learning framework)作为机器人的对抗者进行学习。为了打败对抗者,原始机器人要学会更加稳健地处理任务,这样一来整体性能将会得到改善。这个对抗性架构会迫使机器人去学习更好的抓取模式,从而战胜对抗者。在没有对抗者的情况下物体的抓取率是 68%,反之则可以达到 82%,这足以说明为机器人设置对抗者的实用性。我们还通过实验证明了与多机器人协同作业相比,使用对抗性机器人可能是一种更好的学习方法。

相关推荐