对移动式工作的机器人来说,如何判断周边环境的安全,以保证畅通无阻是非常重要的。还没动两步就“咣咣”碰壁,这样的机器人就太尴尬了。
典型的是扫地机器人。说白了,扫地机器人就是在不断地碰壁——当然,它也不是真碰,而是通过传感器来判断周围有无障碍物,然后绘制出整个房间里的地图。完成之后,其就可以愉快地完成扫地工作了。这有点像决策树,此路不通就另寻他路,也就是通过不断试错,最终试验出正确的路径来。
但是问题在于,扫地机器人绘制的家庭地图只针对特定的环境才有效。打个比方,好不容易把厨房的地图给画好了,转身进了卧室就又得重新画图。别人借走用一用,它又得重新干活。
也就是说,扫地机器人的这种学习的方式是不具备普适性的。挪了地儿就不能用,它既有的工作经验在新的环境中没有任何用处。它的经验,是死的。
聪明的读者一定会明白我要说什么了:有没有一种方法,能够把机器人的这种死经验给盘活,以便扩大其适用范围呢?
答案是,有。
有人开发了个模型,就是为了让机器人一次跑成
我们造机器人,就是想要让机器获得类似于人的能力。那么,就针对扫地这件事来说,人是不需要画图的。你抬头一看,左边是一扇门,右边是一堵墙,中间是空地,自然而然就扫中间的。你不会傻到先碰碰墙再碰碰门,最终才确定中间的空地是能扫的吧?
麻省理工学院的研究人员就在试图令机器获得这种能力。他们制作了一个新的神经网络模型,以便能够让机器人自主地探索环境,在观察环境主体的时候联系到既有的经验,从而达到目标。
比如我看到一个门,扫一眼就知道应该怎样以最短的路线去朝门走去。而机器人则通常是以决策树来尝试出无数种可能,然后选择最佳的方案。它的问题我们开头就说了,就是换个环境得重新做出决策,既有的经验完全没用。也就是说,机器人的每一次尝试,其实都是第一次。而人知道怎么朝这个门走去,换做另外一扇门也一眼就能知道。
那么,研究人员的目的就是要让机器人在做判断的时候,加入其既有的经验,然后去适应新的不同的环境。其开发出的模型就是将规划算法与神经网络结合,学习识别出最佳的路径,然后用来指导机器人在陌生的环境中移动。
比如说,研究人员设计的一个模拟实验。机器人必须要通过一个中间狭窄的通道从密室逃出,到达更大房间里的一个位置。而在这个通道两边会有一些由其他物体设置的陷阱,在机器人触碰的时候卡住它。传统的机器人会挨个碰一遍,在屡次试错之后绘制通过地图;而在这个实验中,研究人员对机器人进行了陷阱特征的训练学习。于是,在逃跑的过程中,机器人一边跑一边对眼前的阻挡物进行识别,最终实现对周围环境的感知,以最快、最佳的路径达到目的地。
简单来说,该模型的特点就是能够更快地找到更合适的路径,并培养机器人自主导航的能力。
扫地姑且不提,驶离大转盘将大有裨益
从研究人员绘制的美好蓝图当中我们依然可以清楚地看到他们的意图:让机器人在开路这方面,更像人。而当机器人的自我导航能从一个场景“移植”到另一个场景的时候,也就意味着大量场景应用可能的诞生。
首当其冲者必然是扫地机器人。机器人买回家之后,第一件事再也不会是熟悉环境了。其通过已经获得的训练,放下就能在工作的过程中寻找最优路线,真正实现即插即用。时不时来个“小鹿乱撞”的扫地机器人时代也可能将彻底成为过去。
而这项技术的最大受益者很可能是时下火热的自动驾驶。
当然,长距离导航自然用不上,毕竟有高精地图、GPS在那儿发挥着效用。该技术对自动驾驶汽车的作用之处,在于短距离的、瞬时的行驶导航决策。
目前而言,要保证自动驾驶汽车的安全行驶,研究者为其加入了大量的硬件,激光雷达、传感器、毫米波雷达,以及优越的算法。按照目前的技术,在直线行驶上和稀松的转完路口,自动驾驶车辆基本上可以自如应对。但问题是,如果是车流比较多的路口呢?或者说经过大转盘?
谷歌的无人车在测试的过程中就被广大人类司机诟病过一个问题,那就是由于其被设计得特别遵守交通规则、特别礼让,导致在左转的时候,自动驾驶车总是在等直行车流通过,很长时间也无法并线汇入车流,哪怕是汇入之后并不影响直行车行驶。这样跟在后面的司机当然不开心了。要知道人类司机可以在保证安全的情况下见缝插针,自动驾驶车显然还不行。或者说不是不行,只是为了保证安全,还不能这样设计。
况且,左转尚且如此,一旦遇到转盘式路口的时候,更复杂的转向恐怕会更让车子规规矩矩地等了。
而在研究人员的实验中,也涉及了这方面的东西。实验证明,该机器人可以捕捉到周围车辆的通行信息并进行预测,然后做出合适的路线规划。甚至其还意识到了不同的驾驶人会有或缓和或激烈的行车风格,从而做出不同的规划。
简单来说,它可以让车辆不再永远礼让他人,而是瞅准机会一把通过。
如果足够精准的话,自动驾驶汽车过转盘可能比人类司机还要好,毕竟人也会犹豫,而机器则是不会犹豫的。
或许更精准的雷达、传感器探测也会有助于解决这个问题,但开发个模型进行训练和花费巨大的成本提升探测精度比较起来,谁更划算自然是不言自明。
当然,该模型也并不是万能的,其应用范围局限于较短距离的路径,如果达到几百米甚至以公里计,那还是卫星导航更靠谱点。
动态取胜,或是成败关键
模型除了不是万能的,也还有一些问题是需要切实注意的。
首先,这个世界就是静态和动态的结合。显然,在处理静物的时候,它是没有什么问题的,连传统家用机器人都可以处理,无非就是个高精度(也许高精度都用不了)的传感器的事儿。而研究人员的想法也显然并不是让它在一篇静谧和谐的环境中去工作,而是在动态之中获得生存之道。
在自动驾驶中的应用就是该研究的出发点之一。应对动态的车流、人流本身就是自动驾驶的一个巨大考验,更何况要在这样动态的过程中寻找一个最佳的路线,这本身就是很难解决的事情。
比如说自动驾驶车从转盘的第二出口驶出,而这时在它的右方有要前往第三出口的车辆,那它该如何选择?在那一瞬间,它要判断几个方面的因素:自身位置与第二出口车道的距离;其他一辆或者多辆汽车各自的时速、驾驶风格等;然后设计出自己安全驶离转盘同时又避免与其他车辆相撞的最佳路线,一次成功。
因为只能一次成功,毕竟不能像月光宝盒那样撞一下我们回到开始再撞一下,直到试错成功吧?
所以,如何开发优秀的算法来对动态的环境做精准的判断,是这项技术的关键内容。
另一方面,该模型的工作方式其实并未脱离决策树算法。也就是说,作用到机器人的身上,其实是由两套决策。一个是由神经网络做出,当其根据已有的训练对前方的位置通行做出一个较高的预测值的时候,机器人就听神经网络的;当神经网络给出的预测值较低,也就是可能无法做出准确判断的时候,机器人还是采用的决策树的方法,慢慢试错着来……
这当然是可以理解的,甚至两种方法结合的方式可能会永远存在下去。而在这个过程中应有的变化则是,神经网络的依赖权重逐渐增加,决策树最终退化到仅仅是作为保障万一之用。
显然,目前来说,决策树算法还是有很重要的作用的。
如果这个模型最终真的可以成熟地应用到实际当中,我们将很有可能看到行动更加自如的机器人:自如扫地、自如穿行马路、自如过转盘……我们的生活,也可能会因此变得更加自如。
根据《网络安全法》实名制要求,请绑定手机号后发表评论