分享

智能驾驶|Cruise自动驾驶车辆工作原理

 公司总裁 2023-06-16 发布于河南

谈起第一梯队的自动驾驶企业,cruise必有一席之地。2022年6月cruise已获准在加州开展无驾驶员的自动驾驶收费载人运营服务。而9月cruise在发生交通事故后对其运营的80辆自动驾驶车辆的软件进行了召回更新。接下来,我们来看看cruise是如何在城市道路上实现自动驾驶的。

cruise以下图为例来介绍加州日常道路的工况。例如常规的有川流不息的车辆,有靠边的车辆但是乘客开门上下车,有拖车装卸车辆,装有体积超过车辆自身货物的皮卡需要判断货物的大小选择合适的距离跟进。有时候会出现水马等被撞后横躺在马路上,在白天或者晚上道路上可能会有小动物出没,有时甚至出现沙尘等情况。

城市道路上带有自身的复杂性和不确定性,例如行人突然穿越道路,或者转角处被车辆遮挡的行人等各种各样日常道路上可能遇到的但是无法完全定义的情景。有时也可能遇到受两侧道路限制,不得不打破交通规则行驶的长尾场景。因旧金山城市道路工况的复杂性和代表性,Cruise选择在旧金山部署自动驾驶车辆。其自动驾驶能识别理解长尾场景,保证车辆安全行驶。

Cruise对自动驾驶系统的介绍主要从以下两部分入手:感知和决策。

1.感知

cruise 自动驾驶实现360度全景感知车辆周围路况,为车辆正确地做出刹车,转向,前行等决策行为提供依据。Cruise将相机、激光雷达、音频采集传感器、雷达采集到的数据作为初始数据,输入到高级深度学习神经网络,经过特征提取等处理后的数据作为决策规划的依据。例如,cruise 采用panoptix图像分割来识别垃圾桶等目标障碍物,通过fine-grained分类来区分紧急救援车辆。Cruise 同时能识别目标车辆的尾灯,打开的车门等特征,并持续观测目标的变化做出动态的调整。对已识别的目标车辆和物体,自动驾驶系统会预判其下一步可能的行为轨迹。若出现无法完全观测到周围路况时,系统会识别到遮挡并如人类驾驶员一样谨慎驾驶。

因消防等紧急救援车辆因时间紧迫等特殊性导致驾驶行为无法按正常驾驶逻辑来预测,因此以紧急救援车辆为例说明cruise为何搭载如此多传感器。相机观测到救援车辆,并识别到救援车辆已打开紧急灯;激光雷达监测救援车是否打开车门或者其他物品超出车辆范围,尤其在晚上等光线不佳时。当救援车辆距离本车较远或者在另一端转角无法被相机观测到时,音频采集传感器将采集到高频的警笛声,采取及时避让等措施;当遇到大雨或者大雾天气时,相机和激光雷达的可视性受阻时,此时可凭借雷达来识别障碍物。为了应对包括长尾场景在内的各种工况,AI系统安全可靠地将传感器采集的环境数据集成。

Cruise 建立了基于LSTM的跟踪模型,该模型通过提取的传感器特征数据来追踪目标,并建立运动学模型。例如速度和转弯半径等。相较于传统的camo滤波、粒子滤波等滤波算法,深度学习算法模型能更好的适应运动学模型的变化,同时保持车辆的平顺性。AI系统不仅实时监测物体的运动,同时会预测其接下来的运动。例如,在十字路口,cruise能有效区分车辆是纯粹右转还是掉头。Cruise建立了基于端对端深度学习的预测模型,在自监督学习模式下,利用数千万的数据对该预测模型进行了训练。该预测模型包含了encoder-decoder模型架构(编码-解码模型架构)。在编码器中,将场景信息和目标物体轨迹进行编码后作为输入识别出全场景的潜在特征,如通过图注意力模型(Graph attention network)识别到多目标物体的交互。通过mixture of expert 神经网络对不同的模式进行结构化建模。解码器包含两个子组。第一子组为两层的多模态轨迹预测,通过对初始模型的不断细化最终输出包含障碍信息的轨迹多模态分布。第二子组包含了各式各样的辅助任务,例如多目标的轨迹重叠现象以及解决方案。为更好地对理解道路外形和周边环境建模,通过占栅格地图来预测障碍物。Cruise充分利用感知系统和hindsight数据增强的优势来进行预测。

Cruise设计以交互为中心的架构,例如以智能体对智能体的图注意力机制,定义多目标轨迹联合损失。此外,cruise研发了交互自定义机制来识别多智能体是否有交互,若存在交互,交互的智能体是谁等。利用该机制来挖掘交互场景并定义自监督辅助任务的交互检测,交互解决方案等。Cruise自动驾驶系统还能有效识别社会动态性,例如在一个道路繁忙的十字路口,系统能识别到有20名等待穿过路口的行人并等待行人全部离开后再继续行驶。在一个繁忙的城市,车辆将会频繁地与车辆,行人各类智能体等发生交互。但是,相似的工况可能是截然不同的场景,而系统中的自动调整机制可以有效识别场景的差别。和经验丰富的驾驶者一样,cruise 的AI系统遇到遮挡等情形时会识别具体哪个方位的路况被遮挡并预判障碍物后方有行人、车辆等从而提前减速谨慎行驶。

Cruise自动驾驶系统主动从驾驶日志和仿真驾驶中挖掘数据持续学习,利用学习后的数据重新训练模型、更新模型。在数据挖掘中,采用了许多机器学习算法来提升数据有效性。系统搭建主动学习分类来挖掘识别某些驾驶行为。例如,自行车掉头和转弯的初期的运行轨迹很相近,而且通常转弯的概率大于掉头,为了准备识别和训练模型对自行车掉头,cruise采集自行车掉头轨迹,利用内嵌的特征进行掉头相似性搜索,通过人为判断并定义少量样本训练分类器的精度,提高对掉头判断的准确性。

2.决策

自动驾驶汽车在道路上行驶,何时减速,何时转弯,如何避让行人,如何保证驾驶的平顺性和安全性等大大小小的决策都依靠于自动驾驶系统的决策。自动驾驶的决策和人为驾驶做出的决策一样有好有坏,怎样评价驾驶者的决策是好是坏,以及好的决策会有怎样的结果?cruise团队认为好的决策应该有以下几个特征,好的决策才能保证驾驶的安全性和舒适性。n反应迅速及时n考虑到本车行为对路况的影响n预测道路上其他车辆或行人的行为n安全可靠

在自动驾驶决策系统中面临很多挑战,其中最主要的两个挑战是

一是决策密集性高,道路上行驶时每时每刻都需要根据路况做出决策,保证驾驶安全可靠。例如,示例画面中与自动驾驶汽车产生交互的有大约100个智能体,以此会系统会规划约5000条驾驶路径。为保证正常行驶,车辆在1秒钟内需要决策10-100次。

二是道路不确定性,其实无论是人为驾驶车辆还是自动驾驶车辆在道路上行驶时,每时每刻都面临着各种突发情况的考验。例如在图中,显然第一辆自行车左转,但是第二辆自行车目前无法准确判断其意图,这即是运动不确定性。还有其他的诸如存在不确定性,即未知事物的不确定性或者障碍物暗含的不确定性。系统模型误差,当道路中的智能体的行为与驾驶者的常识出现偏差时,假如图中的自行车掉头或者摔倒,而系统未提前训练这些情景。

面对挑战,cruise decision engine系统为车辆的安全性和可靠性保驾护航,系统包含机器学习、监督学习、强化学习、模仿学习等。

环境感知作为整个决策系统的输入。在决策系统中,首先也是最重要的是动作生成,创建机器学习种子(seeds),即情景中所有目标体包含自身的对接交互模式/分布。然后是冲突解决法模块,在这个模块中,系统将分析车辆的动作行为,初始规划轨迹路径后根据路况场景的实时变换优化调整决策。为保证驾驶的安全性和舒适性,cruise采样大量各种不同的道路场景,根据道路场景,规划不同的行进轨迹,对不同的轨迹进行评价后选择最优的轨迹作为行进路线。在轨迹评价机制中,cruise考虑得很全面包括一些很细小的地方,其中最显然的是与车辆或行人保持安全的距离避免碰撞。另外驾驶的平顺性也是评价机制的一个影响因素。鉴于无法完全预测道路场景,当数据不足或有突发意外情况时,离线的强化学习能更好的理解路况并做出决策。最后一步则是决策规划的检查和更新,并将决策转换为控制行为。Cruise融合了环境的动态性和车辆的实时性。控制团队成员采用各种方法实现最优控制和鲁棒控制。自动驾驶系统则可以直面运动不确定性、存在不确定性、3D不确定性、模型误差等挑战,实现安全可靠的自动驾驶。

以下图的示例来说明不同驾驶行为对道路上其他车辆的交互影响和作用。在如图所示的十字路口中,蓝色的自动驾驶车辆在图1中的决策是等待避让,在图2中的决策是直接穿过该十字路口左转。在此示例中,cruise decision engine的决策评价机制需要充分理解并评估该路口其他车辆的驾驶意图,评估车辆的运行轨迹是否与其他车辆有足够的安全距离等各种交互问题,保证本车乘客安全舒适的同时,避免本车对其他行驶车辆造成不便。

利用离线的机器学习训练优化模型,加速决策过程。检查更新阶段通常在10ms,面对完全不确定的路况等情况复杂时,需要完成3或4次迭代也能在80ms内完成。在控制阶段,对动态路况进行高清识别建模,轨迹规划,最优控制,鲁棒控制,并最终驱动车辆安全,舒适地行驶。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多