无人驾驶车辆真要跑起来,需要解决感知、决策和执行等层面的技术问题。感知系统也称为“中层控制系统”,负责感知周围的环境,并进行识别和分析;决策系统也称为“上层控制系统”,负责路径规划和导航;执行系统又称为“底层控制系统”,负责汽车的加速、刹车和转向。本文以“感知—决策—执行”的顺序呈现,是因为这样更加符合人类的驾驶模式。如,先看看前面——绿灯、周围无行人——收集信息;然后做出决策——可以通行;最后执行决策——开过十字路口。
自动驾驶的感知系统
感知系统的输入设备具体包括光学摄像头、光学雷达(LiDAR)、微波雷达、导航系统等。这些传感器收集周围的信息,为感知系统提供全面的环境数据。
光学摄像头是目前最便宜也是最常用的车载传感器,它的一大优点就是可以分辨颜色,因此也成为场景解读的绝佳工具。但其缺点也很明显:1.缺乏“深度”这一维度,没有立体视觉就无法判断物体和相机(可以换算为车辆)间的距离;2.对光线过于敏感,过暗或过强的光线以及二者之间的快速切变,比如驶入和驶出隧道都足以影响它的成像。
激光雷达,即利用激光来进行探测和测量。其原理是向周围发射脉冲激光,遇到物体后反射回来,通过来回的时间差,计算出距离,从而对周围环境建立起三维模型。激光雷达探测精度高、距离长;由于激光的波长短,所以可以探测到非常微小的目标,并且探测距离很长。微波雷达的原理和激光雷达类似,不过它发射的是无线电波而不是激光。微波雷达精度不及激光雷达,但胜在价格低、体积小,在某些车辆行驶辅助系统中已经得到了广泛应用。同时,精度低反过来又成了微波雷达的优点,因为它较大的波长可以穿透雾、烟、灰尘等激光雷达难以穿透的障碍,较好免疫恶劣天气。
光学摄像头和雷达测量在感知环境中相辅相成,共同为无人驾驶车辆提供完整、准确的外部信息。有了“眼睛”接收信息,接下来就是利用深度学习等手段对信息进行识别。将多种传感器的信息相互融合并不是一件容易的事情,可以利用韦伯斯的误差反向传播算法和先进的数字摄像技术对外界事物进行准确识别。
自动驾驶的感知系统不仅包括它的“眼睛”,还包括它的“大脑”——高精度地图。人类驾驶者会调用记忆中熟悉的道路场景来辅助驾驶,自动驾驶也会通过高精度地图获取必要的环境信息特别是相对固定、更新周期较长的信息,如交通信号灯(请注意,这里是指物理的“灯”本身而非“灯的信号”即红、黄、绿)、车道标记、路缘等。这些信息还可以与传感器所获得的“即时信息”相印证,从而实现“多传感器融合”的效果,就像我们走路,不仅会用眼睛看前面的路,还会用耳朵听身后的车,甚至会用鼻子闻路边食品店里的香气一样。因此,自动驾驶去“感知”的不仅仅是“眼睛”,也是“大脑”。
自动驾驶的决策系统
自动驾驶决策系统负责路线规划和实时导航,这里主要涉及高精度地图,又称“高清数字地图”。无人驾驶汽车用的并不是普通的导航地图,它在精确度和信息量上与普通地图差别很大,因而被称为“高精度地图”。普通地图比较粗糙——因为我们人类的认知能力足以“脑补”,通过简单的二维线条的表示就知道了道路的走向,线条的交叉点表示十字路口——这让目前的机器来“脑补”就太难了。高清数字地图的精度一般在厘米级,而且是立体三维的,包含车道线、周围设施的坐标位置等行车辅助信息。与人类当前使用的电子地图相比,自动驾驶的高精度地图还有一个重要差异在于,高精度地图会收集道路激光雷达的反射强度——这是一个对人类驾驶者几无价值而对“人工智能驾驶员”意义重大的道路特征,它变化很慢而且小,是帮助自动驾驶车辆光学雷达定位的一个理想特征值。通过光学雷达扫描获取的信息跟已知的高精度地图信息对比,就可以确定当前车辆的位置。
自动驾驶的决策系统不仅需要独立的“智能车辆”,也需要“智能交通系统”的支持,如V2V等。在高精度地图之外,另一个支持路径规划的技术是V2X,一般认为它是在V2I的基础上发展起来的。V2X意指将车辆和环境形成一个“物联网”,包括车对车、车对基础设施,以及车对行人等一系列通信系统。如果车辆能够直接“得到”,而不仅仅是“看到”信号灯的信息,就能保证绝对不闯红灯。这里“得到”的意思是,比如在离交通灯还有100米、传感器还“看不到”的时候,信号灯就主动“告诉”车辆自己的信号状态及变化时长,自动驾驶车辆无需直接“看清”信号灯的内容(“看清”有时是很不容易的事情,大雨、暴雪天气,狂风刮起的塑料袋,以及大货车的遮挡,都足以让车辆的摄像头“看不见”交通信号灯)。此外,如果能够提前得知周围车辆的行车意图,就能够很大程度上避免事故的发生。
有了高精度数字地图和V2X通信网络,系统就可以应用搜索算法评估各种驾驶行为所花费的成本,包括信号灯等待时间、道路拥堵情况、路面维修情况等,以此获得最佳行驶路径。
自动驾驶的执行系统
执行系统也是底层控制系统,负责执行汽车的刹车、加速、转向的具体操作。工程师们通过特制的“线控装置”控制方向盘和油门,取代人类司机的手和脚,并配置多个处理器组成的子系统,以此来稳定、准确地控制汽车的机械系统。这些子系统,包括引擎控制单元(ECU)、制动防抱死系统(ABS)、自动变速箱控制系统(TCU)等,它们通过一个“总线”来进行内部通信,在汽车中称作CAN总线协议。
CAN总线最关键的地方在于带宽(bandwidth)和网络稳定性。带宽是指数据在网络中传输的最大速率,通常以每秒多少bits为单位来计算。对于无人驾驶汽车来说,精准的控制和快速响应至关重要,这意味着要提高总线带宽的传输速度,对需要处理庞大数据的无人驾驶系统而言存在较高挑战。同时处理各个传感器传递过来的数据流时,带宽有时会面临挑战,系统速度会大为下降。对整个反应执行过程而言,CAN总线的响应时间变得很慢,这在实际驾驶中是不能接受的。其次,控制的平滑性也影响乘客体验。此外,作为一个网络,数据传输的安全性也不容忽视,如果黑客成功攻击了CAN总线,就能对汽车进行控制。因此,提高底层网络系统的防御能力和网络容错性非常重要。
通过以上感知、决策与执行三个系统分工合作,责任明确地控制汽车的运行,就可以使无人驾驶汽车具备理论上“行驶”的条件。但正如胡迪·利普森和梅尔巴·库曼所指出的,“虽然这种技术几近准备就绪,但是这一独特技术所依存的社会环境可能还未准备妥当”。比如,相关立法较为滞后。然而,由于效率和安全方面的优势,我们有理由相信:无人驾驶的时代终将到来。