这是一个关于擎天柱(Optimus)和他的好朋友阿特勒斯(Atlas)的友情故事。
近日,麻省理工的CSAIL(计算机科学与人工智能实验室)的研究人员开发了一个新系统C-LEARN,用这个系统可以让一个机器人教会另一个机器人完成任务。
打破机器人编程的困境
为机器人编程通常有两种方法:一是从演示中学习,机器人观察并复制任务被完成的过程;二是通过优化、抽样等运动规划技术完成,这种方法需要程序员明确指定任务目标和限定范围。
不得不说这两种方法各有缺点。从演示中学习的机器人换个环境就不能准确使用技能了,使用优化、抽样等运动规划技术学习的机器人可以适应这些变化,但非常耗时——因为他们通常必须由程序员手工编码。
而麻省理工学院的CSAIL的研究人员开发的C-LEARN结合了两种技术的优点,它允许非编码器通过提供物体被操控的信息向机器人教授一系列的任务,之后再向机器人展示任务的单个演示。
最大的亮点是,这项技术可以使机器人具有自动将技能转移到其他机器人身上的能力。对于很多希望机器人执行类似操作的公司来说,这项技术可以节约时间和费用成本。
任务测试
这项技术是由麻省理工大学的博士生Claudia Pérez-D’Arpino设计的。她和她的导师Julie Shah团队对这项技术进行了测试。
Optimus是一个为处置炸弹设计的新型双臂机器人 ,用于执行开门、运输物体和从集装箱中提取物体等任务。而Atlas是波士顿动力的那个6尺高、有400磅重的人形机器人。
△ 行走中的Atlas
在测试中,研究人员先教会了Optimus不同对象的不同操作信息,之后让他执行将一个管子从另一个管子中抽出的任务。教会Optimus学习也是一件直观、简单的事,相当于通过示范让Optimus学习——“想象一下你在3D游戏里通过操作游戏人物来完成任务,仅仅用鼠标就可以操作移动他们”,设计者Claudia Pérez-D’Arpino说。
△ Optimus在学习不同物体的操作任务
之后,他们试图让这项技能转移到人形机器人Atlas身上。这就是一个数学问题了,需要编写一系列的约束条件。对Atlas这种有腿动物来说,还需要单独编写一套用于保持平衡的规则。
目前,Atlas只能在模拟器中完成切换任务。但无疑这开启了无人化机器人交流的新开始。
就如同Shah教授所说,传统在实际场景的机器人编程是困难且乏味的,并且还需要大量的专业领域知识。如果像人类教授其他人那样,给学习者一些基本的知识和一些示范,机器人学习这件事将会变得更加高效。
看来,不仅擎天柱和阿特勒斯的友情要一直延续,我们还能看到更多的机器人联盟了。(完)