要让机器人能够抓取任何物体,不止需要好视力,还需要更好的触觉感知能力。
(图片:Robotiq的机器手在使用触觉智能技术抓取和操作物体)
将一个物体拿起来的作业任务,并不像它看起来的这么简单——至少对机器人来说是这样的。机器人专家一直致力于开发能够抓取任何东西的机器人,但时至今日大部分机器人只能进行“盲抓”,也就是每次只能重复地从同一个位置抓取同样的物体。如果任何条件发生了变化,例如物体的形状、表面肌理或者物体的位置,机器人就会不懂得如何对变化做出响应,抓取的任务很有可能就会失败。
要让机器人在第一次尝试就能完美地抓取任何物体,还有很长的路要走。为什么抓握物体的任务会成为这样的难题呢?人类在尝试抓取物体时,会组合运用各种感知能力,最基础的就是视觉和触觉。但直到目前,大部分解决机器人抓握问题的尝试都只把注意力放在机器人的视觉感知上。
我长期以来都在关注在机器人抓握技术上取得的重要进步。现在我已经倾向于认为,像目前研究那样只关注机器人的视觉感知能力是不可能完美的解决抓握问题的。除了视觉,机器抓握问题的未来还需要另一种技术:触觉智能。
只关注视觉是不可能让机器人达到类似人类的抓握能力,因为虽然视觉在抓取过程中很重要(例如需要确定抓取的目标物体),但只视觉不能告诉你在抓取过程中所需要的所有信息。想想史蒂文.平克教授(Steven Pinker)如何描述人类的触觉所能完成的壮举:“假设你要拿起一盒牛奶,如果抓的不够紧,它就会掉下来,如果抓的太紧,又会把它挤爆;拿起牛奶后轻轻摇晃它,你甚至可以用指尖的触觉来估测盒子里有多少牛奶!”(引自《意识如何工作》(How the Mind Works)一书)由于机器人缺少这些感知能力,所以即使在如抓取和放置物品这种简单的事情上也远远落后于人类。
我在加拿大蒙特利尔的École de Technologie Supérieure(ETS)学院控制与机器人实验室(CoRo)领导触觉与机电一体化研究小组的研究,而且是位于魁北克一家机器人公司Robotiq的合伙人,因此我长期以来都在关注在机器人抓握技术上取得的重要进步。现在我已经倾向于认为,像目前研究那样只关注机器人的视觉感知能力是不可能完美的解决抓握问题的。除了视觉,机器抓握问题的未来还需要另一种技术:触觉智能。
先前的研究都只关注视觉,而不是触觉智能
到目前位置,大部分关于机器人抓握的研究都在基于机器人获得的视觉反馈尝试建立人工智能。其中一种方法就是通过数据库进行图像匹配,这种方法被用于布朗大学人类与机器人实验室(Humans to Robots Lab)的Million Objects Challenge项目中。机器人使用摄像头来感知目标物体,同时监测自身的动作,以此来尝试抓取物体。在这一过程中,机器人会将实时的视觉信息与储存在数据库中的3D扫描图像进行比对。一旦找到匹配的图像信息,机器人就能找出对应当前情况的抓取算法。
布朗大学的研究方法要旨在于搜集各种不同物体的视觉信息,但研究人员不可能建立一个关于机器人可能遇到的所有物体的庞大数据库。而且,这种通过数据库匹配的方法没有考虑环境的限制,因此机器人无法根据环境的变化采取相应地抓取策略。
还有的研究人员借助机器学习来改进机器人抓握技术。这些技术可以允许机器人从过去的经验中学习,最终机器人可以自己找出抓取物体的最佳方法。而且与数据库匹配的方法不同,机器学习只需要预设极少的先验知识。这种情况下机器人就不需要借助一个预制好的图像数据库——它们只需要足够的练习。
正如今年IEEE Spectrum(《科技纵览》杂志)报导过的,Google最近进行了一次机器抓握技术的实验,将视觉系统与机器学习相结合。在过去,研究者试图通过教会机器人运用人类认为最好的抓取方法来改进机器人的抓握能力。而Google研究的最大突破在于展示了机器人的自学能力——利用深度卷积神经网络(deep convolutional neural network)、视觉系统以及大量的数据(通过80万次抓取物体的尝试)——来让机器人从过去的经验中学习和改进它们的抓取能力。
实验的结果似乎带来了很大希望:由于机器人的行为反应不是预设好的,可以说它们的进步是“在学习中自然出现的”(其中一位研究人员如是说)。但视觉所能反馈给机器人关于抓取的信息也是很有限的,Google可能已经到了这一限制的边缘。
只关注视觉带来的一些问题
有三个主要的理由能够说明为什么Google和其他人遇到的难题只依靠视觉是难以克服的。首先,视觉本身就有许许多多技术上的限制。即使最高水平的视觉系统,在某些光的条件下(例如半透明、高反射以及低对比度的颜色)或者物体尺寸太薄的情况下,也会发生物体感知的困难。
视觉本身就不适合用于解决这一问题:抓握任务是关于接触与力学的,在视觉上很难被监控。视觉最多可以告诉机器人什么样的手指姿势最有可能抓取成功,但机器人最终还是需要触觉上的信息。
第二,很多抓握的任务会遇到很难看清目标物体全貌的情况,因此视觉通常无法提供机器人所需的全部数据。如果一个机器人试图从桌子上抓取一块木块,一个简单的视觉系统只能探测到木块的顶面,机器人无法得知木块的另一面是什么样子的。在诸如容器抓取这种更为复杂的任务中,目标物体可能被周围的物体部分或全部遮盖住。
最后也是最重要的,视觉本身就不适合用于解决这一问题:抓握任务是关于接触与力学的,在视觉上很难被监控。视觉最多可以告诉机器人什么样的手指姿势最有可能抓取成功,但机器人最终还是需要触觉上的信息,这样才能获取与抓握任务相关的物理数据。
触觉智能能带来什么帮助
在人类抓握和操作物体时,触觉扮演着主要角色。失去了双手的截肢者最大的痛苦根源之一,就是使用假肢时无法感知所碰触的物体。没有了触觉,截肢者在完成抓握和操作任务是,必须给予视觉上极大的关注,而正常人甚至在看不到一个物体时也能轻易地把它拿起。
我们需要的是一种方法,能够把低等的原始数据转换为高等的信息,可以让机器人具有更好的抓握和操作物体的表现。触觉智能让机器人通过触摸识别物体是否要滑出、基于触觉手势识别物体来预测抓取物体成功的可能性。(原文大字体加粗)
研究者已经意识到触觉感应在抓握任务中扮演的关键角色,在过去的30年已经出现过很多建立模拟人类器官的触觉感应器的尝试。然而,触觉感应器返回的信号是复杂的、多维度的,而在机器手上增加触觉感应器通常不能直接增强抓握能力。我们需要的是一种方法,能够把低等的原始数据转换为高等的信息,可以让机器人具有更好的抓握和操作物体的表现。触觉智能让机器人通过触摸识别物体是否要滑出、基于触觉手势识别物体来预测抓取物体成功的可能性。
在TES学院的CoRo实验室,我和同事们正在创建能够形成新的触觉智能的代码。最新取得的进展是使用压感图像来预测抓取成功与否的机器学习算法。这一系统由 Deen Cockburn和Jean-Philippe Roberge开发,是一个可以让机器人距离人类抓握能力更近一步的系统。人类当然是通过触觉来学习某个手指姿势是否能够进行正确的抓取行动,然后我们调整手指姿势,直到我们有信心成功地抓取物体。在机器人能够学习如何调整手指姿势之前,它们还需要能够更好地通过触觉数据来预测抓取的结果。
触觉数据是在尝试抓取不同种类的日常物品过程中获取的。这些物体是在亚马逊2015年的抓握挑战赛(Amazon Picking Challenge)中发布的物品清单中选取的。
这就是我相信 CoRo实验室能够获得成功的理由。把 Robotiq的机器手与 Universal Robots UR10操作机器人结合起来,增加了若干我们自己建立的多式触觉感应器,还有一个基于 Kinect设备的视觉系统(只用于定位每个物体的几何中心),我们建成的机器人可以拿起不同的物体,而且可以根据获取到的数据进行我学学习。最终,我们成功地创造了准确率高达83%的抓取失败预测系统。
CoRo实验室的另一个团队,这次由 Jean-Philippe Roberge领导,专门从事对物体滑出探测的研究。人类可以迅速感受到所抓取的物体要从手中滑出,是因为我们的手指含有反应迅速的机械运动感受机制,我们皮肤中的感受器可以探测到压力和振动的迅速变化。物体滑出会在我们手的表面产生振动,所以研究者在机器学习算法中以振动图像(光谱图表)取代了压感图像。使用与在抓取预测实验中的同样配置的机器人,在系统中加入了在物体滑出过程中学习到的振动图像的特点,现在它可以以92%的准确率识别到物体的滑出。
让一个机器人意识到物体的滑出似乎很容易,因为滑出的过程就会产生一系列的振动。但如何让机器人分辨由于物体滑出发生的振动和由于机器人在另一个表面(如桌面)上拖拽物体而发生的振动呢?我们还不能忘记机器人手臂的运动自身也会产生微小的振动。这三种不同的事件会产生相似的信号,但需要机器人采取不同的行动。识别这些不同的事件就是机器学习的意义所在。
从机器学习的层面上说,CoRo实验室的两个小组有一个方面是相同的:两个小组都不会为机器学习算法加入人工制定的规则。换句话说,由机器人的系统来决定与物体滑出相关的数据(或者预测抓取结果的相关数据,在抓取预测实验小组中),而不是依靠研究者去猜测相关的数据是什么。
“高等特性”在过去总是与人工划等号,这意味着研究人员会为滑出事件(或者好或坏的抓取结果)人为地选择一些判定特性。例如,他们可能会替机器人预设一些压感图像,用以告诉机器人只抓一个物体的尖端很可能会失败。但让机器人自我学习会得到更准确的结果,因为研究人员为机器人做出的猜测并不一定总能代表真实情况。
稀疏编码(sparse coding)在这方面有很大的用处。这是一种无人监管的机器学习算法,通过创建一种用以代表新获取数据的“稀疏字典”(sparse dictionary)来实现。首先机器人通过光谱图表(来自原始的压感图像)自我创建这样的字典作为稀疏编码算法的输入数据。这一算法输出的还是这一字典,但输出的字典由代表高级别特性的数据组成。然后当进行了新的抓取尝试时,会有新的数据输入,新输入的原始数据又会通过这一字典来转换成新的高级别特性数据,这些高级别的数据被称为“稀疏向量”(sparse vectors)。最后,这些稀疏向量会根据引起振动的不同事件(或抓取结果的成功与否)而进行分组。
CoRo实验室的各个小组最近正在测试能让稀疏编码算法自动更新的方法,因此每一次新的抓取尝试都会帮助机器人在预测方面做得更好。我们最终的想法是机器人能够在抓取的过程中根据这些信息来及时调整它的行为。最后,这项研究是一个很好的例子,展示了触觉和视觉智能如何协同工作,来帮助机器人学习如何抓取不同的物体。
触觉智能的未来
这项研究的关键不是对视觉智能置之不理。视觉在抓握任务中仍然做出了关键的贡献。然而,人造视觉技术已经发展到了一个特定的水平,因此我们最好把关注点转移到发展关于触觉智能的新领域,而不是继续像以前那样只强调视觉的作用。
CoRo实验室的 Roberge将帕累托的80-20定律用于视觉和触觉智能的发展潜力对比中:现在机器人社群已经掌握了80%的视觉智能技术,而剩下的20%是非常困难的而且对机器人操作物体的任务不会有多大贡献。在另一方面,机器人专家现在正在开发前80%的触觉智能技术,这一过程相对容易,而且对机器人抓握能力的提高可以做出可观的潜在贡献。
我们距离机器人能通过触摸来识别物体,甚至让它自己帮你打扫房间,可能还很遥远——但当这一天到来时,我们肯定会借助触觉智能的力量。
注:本文作者Vincent Duchaine是加拿大蒙特利尔 ÉTS(École de Technologie Supérieure)学院的教授,他在控制与机器人(CoRo)实验室领导触觉与机电一体化研究小组,是ETS可交互机器人研究院主席。Duchaine的研究方向包括机器抓握、触觉感应以及人机交互。他还是 Robotiq公司的合伙人,这一公司开发灵活的自动化工具,比如文中提到的三指抓取机器手。
4000520066 欢迎批评指正
All Rights Reserved 新浪公司 版权所有