1. 逐步处理。把整个驾驶过程拆解为一系列逐层连接的流水线,其中的每一步,比如感知、定位、地图、路径导航、运动控制,都分别由各自的具体软件组件处理。
2. 端到端。基于深度学习的解决方案,一次性处理所有这些功能。
这些方法不一定是孤立存在的。为了避免过度拟合,在深度学习中通常会进行多任务训练网络。当机器学习算法被训练用于一个特定的任务时,它会变得如此专注于模仿它所训练的数据,以至于试图进行插值或外推时,它的输出会变得不现实。
车辆了解其环境中的物体及其位置后,可以使用 voronoi 图(车辆与物体之间的最大距离)、占用网格算法或驾驶廊道算法来确定车辆的大尺度路径。然而,这些传统方法并不能够满足车辆在动态环境下的移动。
报告指出,部分自动驾驶汽车不仅依靠机器学习算法来感知环境,还依靠这些数据来控制汽车。路径规划可以通过模仿学习的方式传授给 CNN,在模仿学习中,CNN 试图模仿驾驶员的行为。
通常情况下,这些机器学习方法会与经典的运动规划和轨迹优化方法相结合,以确保路径的鲁棒性。此外,出于其他目的(例如减少燃料使用),汽车制造商还会在模型中提供最佳路径参考。
车辆运行过程中的神经网络训练和推理需要巨大的计算能力,由于汽车需要对新数据作出及时反应,因此,操作车辆所需的部分处理需要在车上进行,而模型的改进可以在云上完成。
目前,机器学习的最新进展在于有效处理自动驾驶汽车传感器产生的数据,减少计算成本。此外,芯片制造和微型化的进步正在提高可安装在自动驾驶汽车上的计算能力。随着网络协议的进步,汽车或许能够依靠低延迟的基于网络的数据处理来帮助它们进行自主操作。
4
执行
那么,车辆是如何行动的呢?
在人类驾驶的汽车中,汽车的转向、刹车或信号等动作通常由驾驶员控制。来自驾驶员的机械信号由电子控制单元(ECU)转换成驱动命令,再由车上的电动或液压执行器执行。
在(半)自动驾驶汽车中,这种功能被直接与 ECU 通信的驱动控制软件取代。这些软件能够改变车辆的结构,减少部件的数量;尤其是那些专门用于为 ECU 将机械信号从驾驶员转换为电信号的部件。
自动驾驶汽车通常包含多个 ECU,一般车辆大约有 15-20 个,高端车型可能达到 100 个。
ECU 是一个简单的计算单元,有独立的微控制器和内存,以此处理接收到的输入数据,并将其转换为其子系统的输出命令,例如,转换自动变速箱。
一般来说,ECU 既可以负责控制车辆的操作,也可以负责安全功能,运行信息娱乐和内部应用程序。并且,大多数 ECU 支持单个应用程序,如电子动力转向,能够在本地运行算法和处理传感器数据。
挑战一:系统复杂性
工程师需要为系统设计正确的电子体系结构,以便进行传感器融合,将决策同步分发到按指令行事的较低层子系统,这对需求的增加和复杂性提出了挑战。
理论上,在一种极端情况下,人们可以选择一种完全分布式的架构,其中每个传感单元处理其原始数据并与网络中的其他节点通信。在光谱的另一端存在一个集中的架构,其中所有的远程控制单元(RCUs)都直接连接到一个中央控制点,该控制点收集所有信息并执行传感器融合过程。
而在这个范围的中间是混合解决方案,它将在更高抽象级别工作的中央单元与执行专用传感器处理,或与执行决策算法的域相结合。这些域可以基于车辆内部的位置,例如汽车前部和后部的域,它们控制的功能类型,或者它们处理的传感器类型(例如照相机)。
在集中式体系架构中,来自不同传感器的测量值是独立的量,不受其他节点的影响。数据在系统的边缘节点上没有被修改或过滤,为传感器融合提供了最大可能的信息,并且具有较低的延迟。这一架构挑战在于,大量的数据需要传送到中央单元并在那里进行处理。这不仅需要一个强大的中央计算机,而且还需要一个高带宽的重型线束。
分布式架构可以用更轻的电气系统实现,但更复杂。尽管在这样的架构中,与带宽和集中处理相关的需求大大减少,但它在驱动和传感阶段之间引入了延迟,增加了对数据验证的挑战。
挑战二:动力、热量、重量和尺寸的增加
除了增加系统的复杂性之外,自动化还会增加车辆部件的功耗、热足迹、重量和尺寸。无论架构是分布式的还是集中式的,auton - omous 系统的功耗需求都是巨大的,而在这之中,主要的驱动因素是竞争需求。
全自动汽车的竞争需求比目前生产的最先进的汽车高出近 100 倍。对纯电动汽车来说,行驶里程容易受到这种动力需求的负面影响。因此,Waymo 和福特等公司选择专注于混合动力汽车,而 Uber 则使用全汽油 suv。然而,专家指出,全电动最终会成为动力系统的选择,因为内燃机在为车载电脑发电方面效率低下。
增加的处理需求和更高的功率吞吐量会使系统升温,但为了使电子元件正常可靠地工作,不管车外部条件如何,电子元件必须保持在一定的温度范围内,这就需要冷却系统的存在。但是,冷却系统进一步增加车辆的重量和尺寸,特别是液体冷却。另外,额外的组件、额外的布线和热管理系统也会对车辆任何部分的重量、尺寸和热性能造成压力。
针对于此,自动驱动元件的供应商正改变着产品,从减轻像 LIDARs 的大型元件重量,到构建像 semicon - ductor 这样的微型元件。同时,半导体公司正在制造占地面积更小、热性能更好、干扰更小的元件,发展各种硅元件,如 MOSFET、bipo - lar 晶体管、二极管和集成电路。
不仅如此,该行业还考虑使用新材料——氮化镓(GaN)。与硅相比,氮化镓可以更有效地传导电子,从而能够在给定的导通电阻和击穿电压下,制造出更小的器件。
一辆全自动驾驶汽车所包含的代码可能比迄今为止所开发的任何软件平台或操作系统都要多,要自行处理所有的算法和过程需要显著的计算能力和强大的处理。目前,GPU 的加速处理正成为行业的标准。
在 GPU 领域, Nvidia 是这个市场领导者。Nvidia 的竞争主要集中在张量处理单元(TPU)的芯片设计上,加速了作为深度学习算法核心的张量运算。另外,GPU 用于图形处理也阻止了深度学习算法充分利用芯片的能力。
可见,随着车辆自动化水平的提高,车辆的软件形态将发生显著的变化。除此之外,车辆更大的自主权也会影响用户与车辆的互动方式。
新智驾注:文章配图均截取自《2020 自动驾驶技术报告》