中国平安 平安银行 橙e网
首页 > 大V论坛 > 论坛详情

谷歌自动驾驶汽车的难点在哪里?不是算法,而是周围的环境

行情分类:产业互联网化  文章来源:平安创新博客  2015-01-05 09:03:01

字体:
 
(集团首席创新执行官办公室转载整理自知乎网,作者吕朝阳)
 

 

关于控制方面

自动巡航系统(cruise control),自动刹车系统(auto braking),自动停车系统(auto parking)作为独立的系统都已经比较成熟,而且很多普通有人驾驶汽车上已经应用,以帮助人更好的驾驶。恩,似乎控制已经不是什么大问题了。

那么感知系统呢?

智能汽车目前依赖的传感器主要是声呐,雷达,激光,惯导系统,GPS和摄像头。其中惯导系统,GPS都是自动测距和里程计的关键传感器,里程计估算里程,随着时间确实有累计误差存在,GPS在城市环境中也有可能出现局部信息不准确的问题。但是目前的研究可以对这个累积误差做出很好的修正,比如通过依赖视觉传感器作为里程计技术,根据场景的识别重定位技术,以及更准确的优化算法。去年IROSworkshop上,BMW智能汽车的里程计精确度可以达到10厘米的级别。作为汽车驾驶来说,这一点也足够安全。
     
汽车仅仅知道自己里程和位置并不够,它同时得知道周围环境,这也是挑战最大之处。目前通过车载激光传感器,谷歌汽车可以实时看到如下的3D场景:

 

:谷歌智能车的难点在哪里?识别,还是控制算法?

 

首先,智能汽车作为一个机器人系统,所涉及到的机器人技术主要有控制(control, 感知(perception)和路径规划(planning三大块内容。作为一个独立的机器人系统,其自身的计算机系统以及安全性也是一个很重要的方面。下面就从这三个大方面来看看都还有哪些棘手的问题。

以上所说的这些感知技术,主要涉及到同步定位与建模技术(Simultaneous Localization and Mapping,简称 SLAM)的研究,这也是我的研究内容。对于目前的SLAM技术来说,这已经是一个很不错的结果,而且在同等传感器,以及实时性要求情况下,不会有太大质的提升。
酷!从图里似乎能看到树,地面,墙,甚至是每条车道。如果我把图像作为纹理贴在3D模型上的话,似乎都能建一个真的3D地图出来。看上去还不错是么?
      不过,这仅仅是看上去不错。作为一个需要稳定驾驶,熟悉路况的智能系统来说,问题颇多。

第一,图里的三维场景虽然足够密和详尽,但是汽车本身并不知道场景的表示和涵义。也就是说,它仅仅知道有物体在某个位置,但物体究竟是建筑?还是树木?还是路标?仅仅通过这个图还并不知道。对于建筑和树木来说,看起来好像汽车并不需要知道他们是什么。听上去似乎合理。

但是路标呢?这点颇为关键。即使通过GIS测绘,可以对各条路的速度限制等做到了解,但是对于施工路段,美帝颇多的stop sign,还有小区里的小路来说,它似乎要无能为力了。那么假设智能汽车作为一个测试者要去参加交规测试,关于最基本的路况信息,它都是无法通过的。因为有图像,我们确实可以根据纯粹模式识别问题来依据输入图像来检测路标。我们暂且不要想计算上可行不可行,不讨论这一点,放到之后再说。
     
第二,实际上路的路况识别呢?这就又要涉及到模式识别了。既然如此重要,我们得细致的看看。
      
首先算法需要通过视觉信息检测到动态物体,包括汽车,人,自行车等等。谷歌汽车可以构建出如下图的动态模型出来。比如自动驾驶汽车通过传感器来感知运动的模型,一个个刻画出来,可能是这样。

      那么现在的问题是,对这些物体进行识别和区分又是一项很艰巨的人物。这是google擅长的吧?是的,通过现在的深度学习等机器学习算法,对物体的识别,人脸的识别,都已经做的很好了。但先不说这些场景里物体的识别准确率如何,仅仅在一个实时计算能力有限的系统里,对物体识别判断就已经很让人为难了。
      
似乎问题是不仅仅是这么简单。实际的路况相当复杂,可能有每秒运动三四米飞奔过来的孩子,还有可能有矮到人都很难发觉的小猫小狗,确定我们的系统依赖于传感器能检测到这些危险的true positive么?或者可能仅仅是空中飞过来几片树叶或者纸屑,恰巧被传感器识别到了,车要紧急刹车停止呢,还是直接开过去?或者这样的车还不能上路,我们得先去考虑降低这些false positive?对现在的智能系统来说,这些细节都放进去,实在是太困难了。

       关于路径规划呢,会很复杂么?
      
这一块主要分为全局的,和局部的。我们既然可以依赖谷歌地图帮助我们导航,智能车相信它也没有任何问题。谷歌地图甚至可以告诉我们在哪个车道行驶,对于这方面规划来说,简直太棒了。
      
但局部的规划就依赖于路况的信息了。如何检测到突发情况,如何在小区域内局部调整运动线路,也是一个挑战。如何实时构建合理的约束,都涉及到一个场景的复杂程度,和其对应计算量的问题。目前的机器人界的研究,已经有很多研究开始探讨如何实时同时进行识别与规划。

      
上面说了这么多挑战,每一块都是很有意思的研究,但每一块问题解决都需要一定的计算量作为基础。如何在一个实时系统里同时解决这些问题,这又是系统层面上的挑战。同时,作为计算机系统,安全性,容错率等等,都是要考虑的因素和问题。
     
同时作为一个商用的系统,价格是回避不了的问题。高精度的激光传感器和GPS都造价不菲。即使作为一个成熟的智能系统,如何降低价格,或者在廉价传感器上寻找解决方案,也都是要解决的问题。否则没有人会在刚开始就在一个昂贵的玩具上做如此大投资,况且它似乎还并不比人驾驶更安全。

如何改进

说了这么多挑战,而且很多似乎都看不出有效的方法来。似乎我在唱衰它,那么未来要如何改进?
      
其实它已经很棒了,毕竟google car上路在截止11年时,对外公布的数据就已经安全行驶了140000迈了。路况简单中远距离长途运输似乎应该是它首先发挥功效的地方。只是google想的还更多。
     
现在BMWVolvoNissan, Honda, Toyota, 甚至Tesla都在高调研究自己的自动驾驶系统,并且向外介绍方案。理念也都各有不同。BMW提倡通过智能帮助人更好的驾驶(我似乎同意),Volvo则希望政府能在公路上面帮他们做点文章,比如增加点表示以助识别。而google则是这方面的激进派,乘客担心不安全想自己帮下忙?No, google连着方向盘直接去掉了。大家都有稳定的上路测试方案,现阶段都是为了解决问题,进益求精。

回到上面说的问题,那些感知系统的问题怎么办?
      
但凡是模式识别的问题,google都有信心,倒不是完全解决,至少它是领先的。Google的街景地图,以及图像数据库,可以为自动驾驶提供一个非常好的先验知识。在这之上,路标可以训练,人的模型可以训练,树可以训练,一些杂七杂八可能飘在路上的东西也可以训练。这涉及到一块有意思的研究叫做Object Discovery。至少,还是有希望和方法很好解决的,只是需要一段时间。

 

-转载整理自知乎