孟宪伟,唐进君,王 喆
中南大学 交通运输工程学院,长沙 410075
不合理的车道变换是导致交通事故的常见原因之一,由于不当的换道行为导致的交通事故占事故总数的27%,且其所导致的交通堵塞时间占全部碰撞事故交通延迟的10%[1]。提前预知周边车辆的换道行为并做好应对措施可有效降低事故的发生率。近年来,随着自动驾驶技术的不断发展和对人工智能技术的深入挖掘,使得车辆在行驶过程中具有了信息收集能力和环境感知能力,并可以通过采集的实时数据预测周边车辆的未来动向。然而由于驾驶员风格和换道环境的差异性使得车辆在换道过程中呈现出不同的特征,模型在车辆轨迹预测中表现不稳定,对于精准稳定的预测换道轨迹研究还有待提高。
国内外学者在智能车辆预测轨迹上取得了一系列成果。对于实际情景中行驶的车辆,预测换道车辆轨迹之前需要先了解驾驶员的换道意图。文献[2]建立了SVM(support vector machine)分类器对车辆驾驶意图进行预测,在城市道路和高速公路上得到了良好的效果。文献[3]将SVM意图识别的结果输入别贝叶斯滤波器降低下虚错误率和漏检率,近一步提高模型性能。文献[4]利用自车采集的GPS、IMU 和里程表数据融合的位置、航向和速度来训练LSTM 模型,评估模型在距换道多久前的时刻意图预测的效果能达到100%。文献[5]设计了一种基于模糊逻辑和编辑距离的意图检测算法,可以更早的时间提出警告,同时抑制不必要的警告和行动。文献[6]从驾驶员眼动数据提取视觉表征参数,通过连续隐马尔可夫模型预测车辆未来行为的变化。文献[7]将连续隐马尔可夫模型应用到危险换道行为和安全换道行为的识别中。
轨迹预测需要对一定长度上的时间序列做出推测,相比于意图预测更加复杂。目前,很多学者运用动力学模型预测车辆的运动轨迹[8-10],并使用多项式轨迹规划[8]和卡尔曼滤波[9]来克服模型在长序列预测精度不足的缺点,但由于轨迹的高度非线性,基于动力学模型的轨迹预测方法并没有达到满意的精度。随着神经网络的不断成熟,越来越多的学者尝试用深度学习的方法对车辆轨迹进行研究。长短期记忆网络(LSTM)因其在处理时间序列问题上表现出的信息挖掘能力和深度表征能力而被研究者们广泛应用于轨迹预测中。文献[11]通过分析车辆运动轨迹的影响因素建立运动轨迹方程,充分地考虑了车辆轨迹形成的层次性和时序性,并通过模糊Petri 网实现车辆轨迹的短时域预测。文献[12]也通过解编码器结构进行轨迹预测,编码器对采集到的行驶数据进行处理,生成捕获过去轨迹时间结构的固定长度向量,解码器基于这个固定长度向量,在占用网格图(OGM)上搜索可能性最大的未来轨迹。文献[13]对长短期记忆模型的结构进行优化,提出了一种基于径向连接结构的多状态共享方法,用双层LSTM结构表示车辆间的交互作用,但并未对周围换道车辆对本车的影响进行详细分析。文献[14]重点分析了密集交通装填下车辆的相互作用,将空间相互作用嵌入LSTM 模型中,并在每个层次中引入快捷连接处理梯度小时的问题。文献[15]用LSTM将车辆换道行为和跟驰行为同时建模,提出了一种混合再训练约束(HRC)训练方法来进一步优化LSTM 模型。文献[16]将强化学习与LSTM 网络结合,在LSTM预测车辆轨迹的基础上通过Q-learning算法将车辆行驶中的交互作用考虑其中,更加真实地反应车辆在行驶过程环境对车辆轨迹的影响。文献[17]在意图预测的基础上进一步对轨迹预测,并在轨迹预测上引入MDN 层提高模型的鲁棒性。尽管现有研究证实了LSTM模型可以很好地应用于轨迹预测中,然而换道场景的不同和驾驶风格的差异导致单一模型会在个别车辆的预测中表现不佳的情况还没有很好的解决。
在总结大量学者的研究基础上,针对上述问题,构建了一种连续隐马可夫模型与LSTM-AdaBoost 的组合算法,在考虑换道意图影响下对换道轨迹进行预测,有效提升不同场景下的轨迹预测精度。同时采用AdaBoost集成的方法提升LSTM的预测结果,使其更好的适应不同车辆运动特征和轨迹变化。
在车辆行驶过程中驾驶员经常会进行换道操作来达到自己的驾驶目的或更舒适的驾驶环境。处在换道目标车道上的车辆会根据周围车辆的换道轨迹来调整本车的速度位置和速度,将行驶环境改变带来的影响降到最小。如图1 所示,当自动驾驶汽车EV 左车车道的车辆发生右换道操作变换到本车道时,车辆需要做出相应调整,保持直行或左转并不对本车产生影响。同样,对处在右侧车道的车辆需要关注其是否发生左换道。车辆在行驶中得向左换道、直线行驶、向右换道3 种不同行为所表现出来的行驶特征并不相同。有研究表明,向左换道的持续时间比向右换道的时间长[18],且换车道方向对车辆安全状态的影响不同[19]。若用所有车辆行驶数据训练一个轨迹预测模型,模型会因为左右换道的差异而达不到满意精度。在进行轨迹预测时考虑换道意图的影响,将换道样本分为左换道车辆和右换道车辆分别训练轨迹预测模型,可以使模型更好地拟合车辆的行为特征。
图1 换道场景划分示意图Fig.1 Diagram of lane-changing scene division
对于实际场景中的车辆,车辆未来状态是未知的,因此先通过意图预测模型对周围车辆的未来状态进行检测,再对可能进行换道操作的车辆进行轨迹预测。将一定的时间长度的车辆历史轨迹序列输入到连续隐马尔可夫模型,得出的向左换道、直线行驶及向右换道的概率最大值即为车辆的意图预测结果,将预测结果为左换道或者右换道的历史轨迹序列输入到相应的轨迹预测模型中。为了减小轨迹预测模型对不同车辆的预测波动,将换道轨迹数据划分为多个训练集并通过训练得到多个LSTM 基轨迹预测模型,再通过AdaBoost 算法对基预测器进行同质集成,增加其精度和稳定性,具体过程在文章第二节进行说明。换道轨迹预测方法总体框架如图2所示。
图2 换道轨迹预测方法框架Fig.2 Framework of lane-changing trajectory prediction method
隐马尔可夫模型(hidden Markov model,HMM)是支持时间数据模式识别的概率模型,它将事物在不可观测的状态之间转换描述为一个隐藏的隐马尔可夫链,通过各个状态下可观测的序列反应隐藏状态的变化。在车辆意图识别中车辆的未来状态是不可观测的,即隐藏状态,观测向量是在各个状态下车辆所表现出来的行驶特征。而对于一个连续的观测数据来说,车辆在某一状态下产生观测向量的概率往往不是一个确定的值,因此需要通过观测向量的概率分布代替观测概率,也就是连续隐马尔可夫模型(continuous hidden Markov model,CHMM)。连续隐马尔可夫模型表示如下:
图3 CHMM换道意图识别模型Fig.3 Recognition model of CHMM based lane-changing intention
长短期记忆神经网络(LSTM)是循环神经网络(recurrent neural network,RNN)的一种变体,引入记忆单元来实现长序列预测中梯度消失的问题,并通过控制门结构协调各个记忆细胞之间的信息传递,满足时间序列预测中的长期依赖问题。LSTM的控制门有遗忘门、更新门和输出门3种,其中遗忘门ft控制输入和上一个隐藏层h输出被遗忘的程度大小,更新门it决定输入中新的有价值的信息被加入,输出门ot控制输出和当前计算的状态更新到记忆单元的程度。LSTM 单元内的数据流向如图4所示。
图4 LSTM单元数据流向图Fig.4 Data flow diagram of LSTM units
图5 轨迹预测解编码器结构Fig.5 Encoder-decoder structure of trajectory prediction
单一的LSTM 模型不能很好的适应不同状态的车辆轨迹预测需求,会出现对个别车辆误差较大的情况。因此考虑通过AdaBoost 算法提升LSTM 轨迹预测精度。AdaBoost算法(adaptive boosting)是一种集成学习算法,它建立在Boosting 算法的框架基础上,通过对多个基学习器进行迭代训练,根据误差调整权重,减小误差较大的学习器权重同时增大误差较小的学习器权重,最终加权集成为强学习器。AdaBoost 算法不易受到过拟合问题的影响,可以弥补单一LSTM模型不能很好的适应不同状态行驶车辆的问题,提高轨迹预测模型的泛化能力。已有很多学者通过LSTM-AdaBoost增强模型的预测性能,如Xiao 等人[21]通过LSTM-AdaBoost 算法对中短期海面温度进行了预测,但采用的组合算法仅是对两个模型得出的结果进行算数平均,并不能体现出AdaBoost 的优势。李达等[22]将LSTM-AdaBoost 算法分类实验中,提升了用于多天气车辆分类准确率;Bai等[23]在制造质量预测中利用AdaBoost 提升LSTM 的预测精度,但其预测模型解决的是多对一的非序列问题。本文将LSTM-AdaBoost 应用于轨迹序列预测问题,并在误差更新依据上选用预测轨迹和真实轨迹的均方根误差(RMSE)作为判别标准,构建轨迹预测算法步骤如下:
步骤1 通过k个训练集训练LSTM 神经网络得到基预测器pk,k=1,2,…,N。
本文采用NGSIM数据集对提出的换道轨迹预测模型进行训练和测试。该数据集来源于美国联邦公路管理局发起的next generation simulation(NGSIM)计划,致力于采集真实场景下的车辆行驶数据以供学者进行分析研究。数据通过高处的摄像头对目标路段的车辆进行拍摄,以0.1 s的采样频率提取车辆的横纵坐标、速度、加速度、车头时距、车头间距等特征。通过图像识别技术获得的数据参在一定的误差和噪声,尤其速度和加速度波动明显,因此先采用对称指数移动平均滤波法[24]对原始数据做平滑处理。NGSIM中I-80高速公路的研究区域如图6所示,其中1~5车道为主路车道,6车道为集散车道,7、8号车道分别为匝道进出口。由于匝道上的换道车辆和主路上车辆的换道特征并不相同,因此只考虑在主路上行驶的小汽车,同时选取的换道车辆只发生一次换道行为或换道间隔大于150 帧以排除连续换道车辆带来的影响。
图6 I-80高速公路研究区域图Fig.6 Study area of I-80 express way
对于如图7所示的完整车辆换道轨迹,车辆轨迹与车道线的交点作为车辆的换道点,即数据中车辆所在车道编号发生变化的时间点。距换道点前T 秒即为轨迹提前预测时间,提前预测时间点前L秒内的轨迹数据即为历史轨迹数据,提前预测时间点后L′秒的轨迹数据为预测轨迹数据,其中L、L′为历史数据和预测数据的序列长度。车辆所在车道编号变小为左变道车辆,变大为右变道车辆,最终从数据集中提取到737辆左变道车辆、3 628辆直行车辆和182辆右变道车辆。由于数据集本身左变道车辆就多于右变道车辆,因此加入相同筛选条件下US-101 中的163 辆右转车辆以避免轨迹预测中基学习器样本过少导致整体偏差过大。
图7 换道轨迹划分图Fig.7 Partition of lane-changing trajectory
车辆在高速公路中换道持续时间3.5~6.5 s,平均为5 s完成一次完整的换道过程[25],因此取提前预测时间T为1 s,历史轨迹时长L为5 s,预测轨迹时长L′为3 s,几乎可以涵盖车辆从接近车道线到换道完成调整速度的阶段,即轨迹预测模型通过长度为50 步的历史轨迹序列预测未来30步的轨迹序列。意图预测模块输入历史轨迹数据的速度、加速度、横向位移、横向速度的平均值,通过这些特征预测车辆的未来状态。将向左换道,直线行驶和向右换道3 种样本均按75%、25%随机划分为训练集和测试集。
对于轨迹预测模块,轨迹预测模型研究中不需要设置太多基预测器,当基预测器数量过多模型提升效果并不会有明显提升,还会因训练样本数的减少降低每个基预测器的精度。通过3 个基学习器对模型进行集成测试,取所有车辆历史轨迹序列的横纵坐标、速度和加速度序列为模型的训练数据,更好地反应车辆变道前的特征变化。左、右换道序列均按3∶3∶3∶1∶1的比例随机划分为3组训练集、1组验证集和1组测试集。训练集用于训练轨迹基学习器,验证集通过AdaBoost 算法得出各基学习器权重,测试集用于评价模型性能。以被检测车辆的横纵向位置信息、速度和加速度作为轨迹预测模型的输入变量。LSTM 轨迹预测模型中很多超参数的设定会影响模型的性能,通过多次实验取Dropout 率为0.2,每层隐藏单元个数为128,训练样本批量为256,选择较为常用的Adam 和均方误差MSE 作为模型训练的优化器和训练损失函数,迭代次数为1 000。模型在Python中的Keras平台上实现,实验操作在配置为CPU:Intel Core™i9-9900K@3.6 GHz,GPU:NVIDIA 2080Ti,RAM:32 GB 的硬件环境下运行。采用Multiprocessing对多个模型进行多核并行运算,以保证最短的程序运行时间。
3.3.1 意图识别分析
意图预测的准确性直接关系到轨迹预测工作的开展。为了验证连续隐马尔可夫模型的意图识别效果,选取精确率、召回率、F1-分数和准确率等指标对模型进行评价,同时选用支持向量机预测模型进行对比,精准率表示预测正确的正样本个数占预测结果为正样本的样本个数的比例,召回率表示预测正确的正样本个数占真正的正样本个数的比例,F1-分数为精确率和召回率的调和平均值,准确率为总样本中预测正确的样本比例。预测结果如表1所示。
表1 意图预测性能度量Table 1 Performance measurement of intention recognition module
从表中可以看出,连续隐马尔可夫模型的意图识别的精确率、召回率和F1-分数均接近90%及以上,与SVM模型相比,除了左右换道的精确率略低于SVM模型外,其余指标均优于支持向量机模型。有小部分样本存在预测不准确的情况,分析原因可能是模型对于较为平滑的换道行为,其横纵向速度和加速度变化并不明显,可能会被预测为保持直行,或是保持直行车辆受到某些因素影响车速产生较大波动或尝试换道但未完成的车辆易误判为换道。总体看模型表现良好,可以为接下来的轨迹预测提供有力支撑。
3.3.2 轨迹预测分析
换道轨迹预测效果通过轨迹横纵向预测均方根误差(RMSE)、平均绝对误差(mAE)、平均绝对百分比误差(mAPE)的平均值进行评价,从表2可以看出,无论横向和纵向预测中,LSTM-AdaBoost模型的预测结果在每个指标中均优于单个基预测器。以预测轨迹的均方误差为例,相对于单个基预测器,集成模型在左换道横向预测中分别提升22.46%、12.7%、12.22%,横向预测中分别提升38.12%、13.4%、11.1%;右换道横向预测中分别提升4.23%、17.6%、23.4%,纵向预测中分别提升34.19%、14%、24.03%,可以说明采用的集成预测模型可以提高换道轨迹预测的精度。右转整体精度不如左转,原因可能是由于右转样本相对较少,基学习器没有得到更好的学习能力,当右转样本增多时,右转轨迹预测的整体精度也会更高。
表2 模型预测性能对比Table 2 Comparison of model prediction performance
如图8 展示了不同历史轨迹时长和预测轨迹时长的对轨迹预测精度的影响。在相同的历史轨迹时长下,误差会随着预测轨迹时长的增加而增大。这是因为在序列预测问题中,神经网络中的误差处于不断积累的过程,使得较远的轨迹点距离车辆真实轨迹偏差较大。在同样的预测时长下,历史轨迹时长的增加也使得整体误差呈下降趋势。从图中可以看出,历史轨迹时长在4~5 s的预测效果明显优于时长小于4 s的。因为在实际驾驶环境下驾驶员往往在到达车道线前就开始调整车辆的位置和速度,较长的历史轨迹序列可以涵盖整个换道过程,更好的捕捉整个换道阶段的特征变化以达到更加的预测效果。
训练LSTM-AdaBoost 模型时误差阈值的设定会得到不同的集成权重,对于不同的数据集阈值的设定是不同的。本文对LSTM轨迹预测进行多次预实验,并在预实验的误差范围内探究阈值的变化对各基预测器集成权重的影响。以右换道纵向预测为例,其阈值设置的不同带来的集成模型效果和权重系数的变化如图9 所示。可以看到阈值在2.7 m至3.6 m之间时,集成模型的预测效果相对于基预测器都有着不同程度上的提升。整体平均预测误差相对较大的基预测器1和3得到的权重系数较小,最后得出相对精度提升也较大,整体表现较好的基预测器2 一直保持着较大的权重系数。可见阈值的设定会使精度提升效果不同,但集成模型的效果还是优于基预测器的。在进行集成预测时,阈值的设定在基预测器对数据集的平均预测误差附近,阈值过小会产生整体预测效果不好的基预测器得到负权重的情况,阈值过大则平均误差较大的预测器也会得到较大的权重使得最终集成结果不好。
图9 不同阈值下基预测器的提升度和权重系数Fig.9 Accuracy improvement and weight coefficient of each base predictor under different thresholds
如图10展示了测试样本在基预测器和集成预测器下的预测误差分布,其中轨迹预测误差为以预测轨迹点与真实轨迹点的几何距离。可以看出,集成模型的预测结果更加稳定,整体精度更高。其中左换道轨迹误差均在3 m以下,有一半的车辆预测误差不超过1.5 m。右换道轨迹误差均在4 m以下,一半的车辆预测误差不超过2 m。左右转预测误差的上四分位数、中位数和下四分卫数均低于各基预测器。此外,集成模型的异常点要少于基预测器,且异常点的预测误差更低,说明LSTMAdaBoost对不同场景下的轨迹预测具有较强适应能力。
图10 左、右换道轨迹预测误差分布Fig.10 Error distribution of LCL and LCR trajectory prediction
3.3.3 轨迹预测系统整体效果分析
为了验证提出的轨迹预测系统的优越性,分别采用传统的回归预测模型AdaBoost 和SVM 不考虑变道意图影响的LSTM轨迹预测模型,在相同的测试集下进行预测精度对比实验。实验结果如图11 所示,AdaBoost和SVM 的左转轨迹预测均方根误差分别为5.65 m 和3.35 m,右转轨迹预测均方根误差分别为8.23 m 和5.94 m。回归预测模型在短期内的预测效果较好,但当预测的时间序列较长时,单纯的回归预测无法适应时间序列发生的变化,对于复杂的换道轨迹预测更是如此。长短时记忆模型LSTM左、右转轨迹预测均方根误差分别为1.69 m 和2.66 m,误差明显更小,也证明了深度学习神经网络在长时域轨迹预测的优越性。另外,考虑换道意图的LSTM-AdaBoost轨迹预测模型与未考虑意图预测的LSTM模型与进行相比平均精度更高,泛化能力更强。因为用所有的车辆换道数据构建的轨迹预测模型,左、右换道轨迹变化特征会因其他不同的训练样本的存在而无法充分表现出来,导致平均预测误差增大,也说明了轨迹预测系统中意图预测模块的必要性。
图11 不同模型轨迹预测性能对比Fig.11 Trajectory prediction performance comparison of different models
(1)换道轨迹预测具有很强的时效性,需要在短时间内预测出车辆未来的行驶轨迹。本文将意图预测和轨迹预测相结合,构建换道轨迹预测方法系统。首先通过换道前的轨迹数据对模型进行训练并存储在系统中,然后将车辆行驶时采集到的周围车辆实时轨迹数据以一定的间隔输入至CHMM 意图预测,再基于意图预测结果采用相应的换道轨迹模型进行预测,保证轨迹预测的精度和实时性。经实验得出在多核并行运算的情况下,系统可在很短时间内预测出未来3 s的换道轨迹,可以满足实际应用的需求。
(2)采用LSTM-AdaBoost 进行换道轨迹预测,将长短期记忆模型(LSTM)作为AdaBoost的基学习器,以轨迹预测的均方根误差为判定指标调整每个基学习器的权重,再通过加权集成得到最终的轨迹预测结果;利用NGSIM 数据证明了模型性能进行测试,结果显示LSTM-AdaBoost 模型的预测结果各项指标均优于单一模型,且异常数据更少,具有较好的稳定性。
(3)轨迹预测是在意图预测的结果上进行的,意图预测的结果直接影响到轨迹预测的效果。连续隐马尔可夫模型可在再换道前1 s对车辆意图预测的准确率达到92%。今后的研究工作将集中于提高意图预测的准确率及提前预测时长,并给出在预测错误时的合理解决方法。