不远的未来,机器人助理就会成为我们日常生活的一部分——但愿教它们新任务的时候不用非得编程。要是非得先学编程才能使用机器人,那这顿饭还是我自己做吧。现在,一个新系统让教机器人就像教孩子一样容易(也许不那么容易?)不过这回机器人统治论者又有了新口实,因为机器人可以用这个新系统互相之间分享技能了。训练机器人有两个基本方法。一个是为它的行动编程,这要求时间和编写代码的技能;另一个是把你想让它做的事演示给它看,摆弄它的实体或者移动它的数字表征都行,也可以做出样子来让它模仿。但一些任务的精确程度不是人类能轻松做出样子的——比如拆除炸弹引信之类的。
现在,用一个叫作 C-LEARN 的系统,科学家们赋予了机器人知识,这些知识表现为一些简单的步骤,在学习新任务时,机器人可以智能地应用这些知识。
“(C-LEARN)实用又有效。”并未参与本项研究的加州伯克利大学机器人专家 Anca Dragan 说。
C-LEARN 从单一演示中学习多步骤操作,并可实现机器人间的技能共享
在这个系统中,人类用户首先帮助构建机器人的知识库。研究人员通过在软件程序中点击并拖动其四肢,教导了一个名叫 Optimus 的双臂机器人。他们展示了诸如抓住圆柱体的顶部或块的侧面这样的动作,从不同的位置进行了七次任务。每次运动都有轻微的变化,机器人就会寻找模式,然后将其整合到系统中。例如,如果抓手总是最终大致平行于物体,则机器人将推断并行度是该过程的重要约束(constraint)。
在这一点上,机器人是“像一个2岁的宝宝,只是知道如何够到某个东西并抓住它。”研究负责人、MIT 计算机科学家 Claudia Pérez D"Arpino 说。凭借其知识库,机器人只需一次演示即可学习新的多步骤任务。用户使用 C-LEARN 软件向机器人展示所需的任务,然后批准或纠正机器人的尝试。非常简单易行。
没有参与本研究的西雅图华盛顿大学机器人专家 Maya Cakmak 说:“十多年前机器人就可以遵从几何约束了,然而,此前只有专家才能够使用它们。”
为了测试系统,研究人员教了Optimus 四个多步骤任务:拿起一个瓶子放在一个水桶里;用双手抓住并抬起一个托盘;用一只手打开一个盒子,然后用另一只手按下盒子中的一个按钮;用一只手抓住一个立方体上的把手,并用另一只手把一根杆子直拉出立方体。对于每个任务,Optimus 接受了一次演示,并进行了10 次尝试。 40 次尝试中,一共成功37 次,研究人员将于本月晚些时候在 ICRA 会议上进行报告。
为了增加挑战难度,研究人员将 Optimus 的知识库及其对四项任务的计划转移给了机器人Atlas ,Atlas 是个始终能保持平衡的双足机器人。Atlas 设法完成了四项任务。但是当研究人员删除掉一些转移的知识——例如保持某些移动平行的约束后,它失败了。
这种知识转移会有实际的应用价值。D"Arpino 说:“你能教一个德国工厂里的机器人做的事,没理由不能转移到加拿大的另一个机器人身上。”当然,那些认为未来一片黑暗的悲观主义者关心的是,通过互联网互相传递新技能将成为机器人统治世界的第一步。
D"Arpino 目前正在考察人类与 Optimus 的首次互动是否就可以教会它新的技巧。虽然还不能讨论过多细节,但迄今为止前景乐观。接下来,她希望教会机器人灵活地即时调整自己学到的技能。
最终目标之一是教会机器人拆弹,这个任务对精确性要求很高。机器人需要快速、高精度地引导。其他应用包括发现大灾中的人类、制造电子产品、帮助患病或懒惰的人做家务。“这是家居机器人的发展方向,但问题是现在它们什么都做不来。”D’Arpino说,“除了吸尘,现在的机器人还能给你做什么?这真的挺难的。”她希望能改变这个现状。