什么是自动驾驶,如何通俗易懂地理解其功能及原理? – 爱范儿的回答 – 知乎

作者: 大叔 分类: 博客 发布时间: 2017-01-17 09:04

今天就在这个问题下用一篇回答来全面地单独解释下这个概念吧。

什么是自动驾驶?

人们对于自动驾驶最早的误解,其实源于一些媒体的误读。很多媒体把 Autopilot 这一词简单简单拆解为 “Auto” 和 “pilot” 两个词汇,并将中文意思曲解为自动驾驶。

(仍然需要人类做出关键决策的特斯拉驾驶辅助系统)

然而其实 Autopilot 这个词源于飞机、列车、轮船领域的辅助驾驶系统。维基百科也给这个词做了明确的定义:

An autopilot is a system used to control the trajectory of a vehicle without constant ‘hands-on’ control by a human operator being required.

驾驶辅助是一个用来控制载具轨道而无须人工一直干预的系统。

这句话里面的关键词其实是 “constant” 持续的。也就是说,Autopilot 所代表的驾驶辅助系统是不需要人类持续干预的,但是仍然需要人类做出某些干预,比如关键性的决策等,机器只是在一旁辅助。

(不需要人类驾驶员做出决策的 Uber 全自动驾驶车)

而关于我们大众所认知的自动驾驶,或者说全自动驾驶,在维基百科中同样也有相关的定义。我们所认知的无人驾驶车,准确的说应该叫做 “Autonomous car”。

而这一概念的定义是:

An autonomous car (driverless car, self-driving car, robotic car) is a vehicle that is capable of sensing its environment and navigating without human input.

自动驾驶车(无人驾驶车,自驾驶车,机器人车)是能自动感应周围环境并且无需人干预而自动导航的载具。

与对于驾驶辅助的定义类似,无人驾驶车概念的关键支持在于无需人类干涉。也就是说机器会自动感知,自动做出决策并且自动驾驶。

所以这样来说,自动驾驶究竟是什么的定义问题就变得格外简单了。驾驶辅助和自动驾驶,最主要的区别在于人的参与度,前者需要人参与,而后者完全不需要人参与。

如果我们只说人的参与度的问题,就会出现界定技术是否属于自动驾驶的秃头悖论(究竟拔掉多少根头发才算秃头)。所以为了更为清晰地做出界定,美国汽车工程师协会(SAE)和美国高速公路安全局(NHTSA)对自动驾驶做了分级。为了让自动驾驶的分级更加直观,爱范儿(微信号:ifanr)整理了这样一张图表:

从图表中我们可以看出,我们所期望的全自动驾驶车辆其实在分级上属于 SAE 的 Level 4-5、NHTSA 的 Level 4 车型,是基本不需要人类做任何驾驶决策的。

了解了究竟什么才是自动驾驶,我们再来看看自动驾驶是通过什么技术实现的。

功能、原理及难点

其实单纯从硬件技术层面来看,自动驾驶的原理并不算特别复杂。用最简单的话说,找一台车子来改装一下(电动车比较好改一点且性能可控性更好),加几个传感器,再塞一套开源的自动驾驶计算平台,好,这就搞定了。

  • 传感器

传感器是自动驾驶车的眼睛,用于收集汽车周围的信息。归纳来看,目前主流的自动驾驶车其实也就是使用了三种传感器:LiDAR 激光雷达、摄像头、和传统雷达。

三种传感器各有各的优势,早就运用在车辆倒车雷达上的传统雷达成本相对较低,穿透性较强且不受雨雾等环境的影响,但弱点在于覆盖范围较小且难以对周围物体做出精准的判断。LiDAR 激光雷达的优势在于可以通过旋转的激光射线束,构建出车辆周围的 3D 影像图,但缺点是由于激光的特性,容易受到雨、尘埃、雾的影响。且最主要的,由于激光雷达加工难度比较高,产量小,所以售价最贵。一颗 64 线激光雷达的售价就得四五十万人民币。

摄像头同样也是自动驾驶车所必备的传感器,与两种雷达不同,摄像头没有任何穿透力且需要光线,用于自动驾驶的数据是通过对摄像头的图样识别得出的。不过摄像头也是最容易受到干扰的一种自动驾驶传感器,且一旦获取的图像有误差,对最终的识别结果就会产生极大的影响。唯一的好处在于成本低,且目前视觉识别的方案相对来说发展得比较成熟,做无人驾驶汽车可用的也比较多。

  • 数据处理

自动驾驶车上搭载的传感器收集到的数据,都会被传输到车载电脑中进行分析和处理,最终做出决策。对于车载电脑的技术部分我们不必多说,因为自动驾驶汽车单纯从原理上真的不算是什么 “黑科技”,毕竟规划路线,躲避障碍的功能目前很多扫地机器人和无人机都能实现。所以还是把关注的重心聚焦在实现自动驾驶的难点上。

自动驾驶汽车需要收集汽车周围数据,对信息进行处理并最终做出决策,这整个过程与真人司机所要完成的过程几乎毫无差异。所以训练自动驾驶汽车的过程,其实就是个从菜鸟到老司机的过程。

在人工智能技术的训练上,试错 (Trial and error) 是极为重要的方式之一,人工智能通过不断的试错与纠正得到进步。但这一方式换到了自动驾驶上却几乎不可行。行车时出现的事故往往是我们不能接受的,只要出了意外,轻则损失数千元,重则导致人命伤亡。由始至终,自动驾驶汽车的关键绝非 “能否做到”,而是 “能否做好”;所以目前的自动驾驶技术,大部份都是用来减低犯错机率的。

然而少量的测试则隐藏着巨大的安全隐患,根据 Google 最近的资料,他们的 58 辆无人驾驶汽车合计跑了 223 万英里(约 338 万公里)才犯了一点小错,看上去出错的几率微乎其微,但乘上一个极大的基数,出现事故的数量仍是我们不能承受的。

根据调查机构 RAND 的数据,全美汽车行驶里数约 3 兆亿英里(约 4.83 兆亿公里),我们假设自动驾驶汽车,每跑 223 万英里就会发生小错,那每年 3 兆亿英里的话,就是一年之内犯了超过 160 万次错误。

还有一个重要的问题是,自动驾驶若是想要覆盖更多的地方,所要收集和处理的数据就会越来越多,不同的路况会给车载电脑带来不同的处理变数。而当人类驾驶和自动驾驶车同时行驶在路上时,不确定性就更高了,自动驾驶车做出决策的难度也会大大增加。

尽管目前自动驾驶技术仍然还在发展,但已经给了人一个足够美好的希望,那就是经过训练的自动驾驶车的驾驶技巧要比人类更好、更符合规定、反应更快,很多目前交通系统上存在的顽疾也可能因为自动驾驶的到来迎刃而解。

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!