近年来, 随着智能交通系统、车联网、智慧城市等概念的提出和自动驾驶技术的不断发展, 依赖于车辆轨迹的各种应用的需求不断扩大, 如交通事故预防、交通拥堵缓解、城市交通管理等.
国内外学者对轨迹预测做了广泛研究. 多数轨迹预测算法都是基于LSTM的改进. Alahi等[1]提出用于行人轨迹预测的模型Social-LSTM, 此模型将轨迹预测问题看成序列生成任务, 并引入社交池化层(social pooling)在LSTM之间共享信息. 郭景华等[2]提出了一种基于深度学习的改进型Bi-LSTM神经网络预测车辆的切入轨迹, 在双向长短时记忆网络的基础上引入快捷连接, 并考虑了自车对周边车辆切入的影响. 秦胜君等[3]结合强化学习的Q-learning算法和深度学习的LSTM网络, 提出了一个多交互车辆轨迹预测模型Q-LSTM. Gupta等[4]在S-LSTM模型基础上提出一种新颖的基于GAN的编码-解码器框架Social-GAN, 该模型可以较好地应用于行人轨迹预测领域.
也有众多学者提出识别驾驶意图并进行轨迹预测. 季学武等[5]提出了一种由驾驶意图识别和轨迹预测模块组成的基于深度学习的轨迹预测模型, 该模型弥补了传统轨迹预测在预测长时域轨迹方面的不足, 使驾驶意图的预判性和准确性得到显著提升. 但是该模型适用于高速路段, 具有局限性. 温惠英等[6]针对交通场景中的换道轨迹预测, 提出了一种基于GAN的轨迹预测模型. Pan等[7]利用LSTM的注意力机制, 学习驾驶员的意图和车辆在道路基础设施的位置变化之间的关系来指导预测. 刘创等[8]基于经典的CS-LSTM轨迹预测算法, 引入横向注意力机制用于轨迹预测. 除此之外, 由于车辆轨迹可以离散化为序列信息, 运动预测可以被视为序列生成任务, 因此基于DNN的方法因其独特的优势已广泛用于车辆轨迹预测领域, 它可以融合更多的信息来预测车辆轨迹, 例如周围车辆的历史轨迹、行人信息和场景中的环境信息. 也有大量研究使用深度神经网络(DNN)[9-12]进行车辆轨迹预测.
综上所述, 虽然许多文献都采用了适合序列数据的LSTM网络, 但是该网络并不适合复杂场景下多个车辆之间的交互. 同时, 由于缺少对驾驶员行为的考虑与分析, 因此并不能很好地模拟真实社会中的驾驶环境, 从而导致预测的轨迹与真实的车辆轨迹存在一定的偏差. 因此本文提出基于GAN的轨迹预测模型CS-GAN, 并融入基于DNN的驾驶意图模块, 以此来增强轨迹预测模型的准确性.
2 问题定义车辆轨迹预测问题可以定义为, 在一个给定场景中, 给出车辆的历史轨迹信息, 模型根据历史轨迹预测车辆的未来轨迹. 本文的目标是预测该场景下所有车辆的未来轨迹. 假设在一个数据集中, 所有车辆的历史轨迹为
本文的车辆轨迹预测模型基于GAN网络框架搭建, 并引入DNN来识别驾驶意图, 形成了一种具有驾驶意图分析的车辆轨迹预测模型. 包括轨迹生成模块、轨迹判别模块和驾驶意图识别模块3部分. 生成器和判别器基于GAN网络搭建. 其中生成器用于生成轨迹数据, 而判别器用于评估由生成模块产生的轨迹与真实轨迹间的差异, 进而不断优化生成器的输出. 驾驶意图识别模块基于DNN深度神经网络, 将换道轨迹数据作为输入, 得到驾驶员的意图类别预测结果. 如图1所示, 轨迹生成模型由编码-解码器框架组成, 编码器对各个车辆信息进行编码, 编码-解码器中间嵌入了一个卷积社交池化模块, 用于将编码器和解码器的隐藏状态进行连接, 解码器以驾驶意图识别模块生成的编码向量x、池化模块的输出编码和高斯噪声为输入, 生成车辆的预测轨迹, 输入到轨迹判别器中. 在轨迹判别器中对轨迹生成模型生成的预测轨迹与实际输入的真实轨迹进行编码, 辨别真实车辆轨迹与生成的车辆轨迹之间的差异.
3.1 轨迹生成模型轨迹生成模型包括编码器、卷积社交池化和解码器3个模块. 编码器对各个车辆轨迹信息进行编码, 存储历史信息. 卷积池化模块位于编码器和解码器中间. 解码器将信息解码, 得到预测的轨迹.
3.1.1 编码器模块本文使用LSTM网络作为生成模型. 首先使用多层感知机MLP来编码每辆车的位置
$ e_i^t = \phi (x_i^t, y_i^t;{W_\phi }) $ | (1) |
$ h_{ei}^t = {\textit{LSTM}}(h_{ei}^{t-1}, e_i^t;{W_e}) $ | (2) |
其中,
LSTM网络虽然可以学习车辆的运动状态, 但无法学习车辆之间的交互. Alahi等[1]针对车辆之间缺乏交互的问题, 提出用社交池化将被预测车辆周围的所有的车辆状态都汇集到一个社交张量中. 但是该类方法会破坏社交张量的内部空间结构, 空间中相邻的单元格在全连接层中可能会彼此远离.
为了解决该问题, 本文采取Deo等[13]提出的方法, 在社交张量上采用由卷积层和池化层组成的卷积社交池化层, 用卷积层抓取局部车辆相对位置, 以此来弥补LSTM不能感知相对位置的缺点, 从而更稳健地学习车辆之间的交互. 结构如图3所示, 在被预测车辆周围定义一个13×3的空间网格, 其中, 行与行之间约为一辆车的距离, 每列对应一个车道, 通过周围车辆的位置填充这个空间网格, 进而形成社交张量. 图3中分别有5辆车, 位于目标车辆的四围, 然后分别将两个大小为3×3和1×1的卷积核和一个最大池化层应用于社交张量中, 以此来获取社交上下文编码. 目标车辆通过全连接层获取车辆编码, 之后将两个编码组合起来形成完整的轨迹编码, 然后再加入防止模型泛化的随机噪声
3.1.3 解码器模块
轨迹解码器Decoder由LSTM网络组成, 网络结构抽象图如图4所示. 在运行解码器之前, 先对LSTM网络进行初始化. 将经过编码器上一层的隐藏状态向量和经过卷积池化模块得到的向量, 以及驾驶意图识别模块生成的输出概率编码、与随机噪声向量
$ c_i^{(t - 1)} = \gamma ({P_i}, h_{ei}^{t - 1}, {W_c}) $ | (3) |
$ h_{di}^{t - 1} = [c_i^{(t - 1)}, {\textit{z}}] $ | (4) |
$ h_{di}^t = {\textit{LSTM}}(\gamma (\hat Y_i^{(t - 1)};{W_{({\gamma _d})}}), h_{di}^{t - 1};{W_d}) $ | (5) |
$ \hat Y_i^t = \gamma (h_{di}^t) $ | (6) |
其中,
3.2 轨迹判别模型
判别模型是由一个单独的编码器构成的, 本质上属于分类模型, 它的输入是真实的车辆轨迹
提出驾驶意图识别模型的目的是为了从数据中识别驾驶员的意图. 利用这种深度架构来从时间序列车辆数据中提取重要的信息. 重新制定时间序列预测问题, 便可以学习特征和标签之间的时间关系. 如图5所示. 驾驶意图识别模型主要是将驾驶员的换道意图转变为特征向量x, 具体的做法是先将处理好的换道数据集输入到一个由1个输入层、4个隐藏层和1个输出层构成的深度神经网络DNN中. 其中, 隐藏层的激活函数为tanh, 输出层的激活函数为Softmax, 用于识别驾驶员的意图并计算向左转弯、向右转弯、保持直行的概率, 生成驾驶意图概率向量
3.4 损失函数
本文采用的损失函数除对抗性损失
$ L = {L_{{\rm{GAN}}}}(G, D) + \alpha {L_{{\rm{L2}}}}(G) $ | (7) |
$ \begin{split} {L_{{\rm{GAN}}}}(G, D) = &\mathop {\min }\limits_G \mathop {\max }\limits_D {E_{{T_{{\rm{real}}}}\sim {P_{{\rm{data}}}}([{X_i}, {Y_i}])}}[\log D({T_i})] \\ & + {E_{{\textit{z}}\sim p({\textit{z}})}}[\log (1 - D(G({X_i}, {\textit{z}})))] \end{split} $ | (8) |
$ {L_{L2}}(G) = \mathop {\min }\limits_k Y{}_i - G{(X, {\textit{z}}{\text{)}}_2^{(k)}} $ | (9) |
其中, E代表着期望值; k是超参数, 表示生成器的采样次数; α是权重.
4 实验 4.1 数据集选取本文选取的数据集是网上的开源数据集NGSIM, 该数据集由I-80、US-101、Lankershim和Peachtree这4个不同路段的车辆轨迹组成. NGSIM数据集是用同步数字摄像机网络收集, 并通过NGVIDEO软件, 以每秒10帧或者15帧的频率加工成一条一条的轨迹点记录, 以此来得到详细的轨迹数据和车道信息. 本文选取US-101路段的数据进行研究. 如图6所示.
定义两种数据如下: 如果行驶轨迹的横向位置不包括与车道线横向位置重合的点, 则可以判断车辆沿当前车道行驶, 没有变道行为, 判定为直线行驶轨迹; 如果车头通过车道线并且在一定时间内没有回到当前车道, 则被判定为变道数据.
进一步地, 在数据清理的基础上, 增加驾驶过程中变道行为的重要特征. 计算方法如式(10)–式(16)所示:
$ \Delta x = {x_{t + 1}} - {x_t} $ | (10) |
其中,
$ \Delta y = {y_{t + 1}} - {y_t} $ | (11) |
其中,
$ V_x^{t + 1} = \frac{{\Delta x}}{t} $ | (12) |
其中,
$ V_y^{t + 1} = \frac{{\Delta y}}{t} $ | (13) |
其中,
$ a_x^{t + 1} = \frac{{V_x^{t + 1} - V_x^t}}{t} $ | (14) |
其中,
$ \theta = ta{n^{ - 1}}\left(\frac{{\Delta y}}{{\Delta x}}\right) $ | (15) |
其中,
最后, 对数据进行归一化操作. 采用最大-最小标准化方法, 将数据变为[0, 1]区间内的小数. 转换函数如式(16)所示:
$ x = \frac{{x - min}}{{max - min}} $ | (16) |
其中,
为了评估车辆轨迹预测模型的准确性, 本文使用平均位移误差ADE和最终位移误差FDE作为模型的评价指标.
平均位移误差ADE是衡量对象预测位置与预测时间段内, 每个实际位置与每个预测位置之间的平均欧式距离偏差的指标. 公式如式(17)所示:
$ ADE = \frac{{{{\displaystyle\sum\nolimits_{i \in N} {\displaystyle\sum\nolimits_{t \in T} {\left\| {\hat x_i^t - x_i^t} \right\|} } }_2}}}{{NT}} $ | (17) |
最终位移误差FDE是预测一段时间内预测车辆最终位置点和真实最终位置点之间的平均欧式距离差值. 公式如式(18)所示:
$ FDE = \frac{{\displaystyle\sum\nolimits_{i \in N} {{{\left\| {\hat x_i^t - x_i^t} \right\|}_2}} }}{N}, \; t = T $ | (18) |
其中, N代表轨迹样本的总数, T代表最后时刻,
本文使用LSTM作为模型的主干网络. 生成器中编码器隐藏层的维度为32, 解码器隐藏层的维度为32, 判别器中编码器隐藏层的维度为64. 采用的优化器为Adam. Batch_size为64, epoch为1000, 初始学习率为0.001. 实验使用Python 3.6和PyTorch 1.8.0开发神经网络轨迹预测模型, 硬件环境为Window 10下具有Intel(R) Xeon(R) CPU E5620@2.40 GHz和NVIDIA GeForce RTX 3060的PC.
5.2 实验结果对比为了验证本文提出的轨迹预测模型的有效性, 选用LSTM[14]、Social-LSTM[1]、CS-LSTM[13]、Social-GAN[2]与本文提出的CS-DNN-GAN进行对比.
表1给出了在5 s预测时长下, 各个模型在NGSIM数据集上的ADE和FDE.
观察表1中的数据, 可以看出本文提出的CS-DNN-GAN模型在NGSIM数据集上的误差要小于其他模型. S-LSTM模型只在特定密度的交通数据集中才会有较好的效果, 具有局限性, 并且采用的池化模块只有最大池化, 与S-LSTM模型相比, CS-LSTM中的卷积社交池化层能够更稳健地学习车辆之间的交互. S-GAN模型较优于CS-LSTM模型, 这是因为S-GAN提出的模型中加入了生成对抗网络GAN. 但它只考虑了车辆之间的位置关系, 缺乏考虑车辆的运动方向会对轨迹产生影响, 并且在现实生活中的交通情况往往较为复杂, 驾驶员的变道意图也会影响车辆的轨迹预测. 由于本文提出使用卷积社会池化模块替换了S-GAN中的最大池化模块, 使得轨迹生成器能够稳健地对车辆之间的交互进行建模, 引入了基于DNN的驾驶意图识别模块, 因此本文提出的CS-DNN-GAN模型的精确度要优于S-GAN模型. 由此可见, 融入驾驶意图之后, 轨迹预测模型的准确率会有所提升.
此外, 预测的时间长短也会对轨迹预测模型的训练效果产生不同程度的影响, 表2和表3分别展示了在1–5 s的预测时长下, 各模型的平均位移误差ADE和最终位移误差FDE. 图7展示了在不同预测时长下的误差曲线图.
由表2和表3可知, 随着预测时长的增加, 各个模型的准确率也在随之下降. 由图7可明显看出, CS-DNN-GAN模型的预测误差是最低的, 对比LSTM和S-LSTM曲线, 可以看出在加入预测车辆周围车辆信息后, 模型的预测精度明显有所提升, 这也验证了本文提出的模型将车辆之间的交互信息作为输入的有效性. 对比图7中S-GAN和CS-DNN-GAN模型的误差曲线图, 可明显得知加入驾驶意图模块使得长时间预测的准确性得以提高. 此外, 随着预测时间的增加, CS-DNN-GAN模型的误差并没有像其他模型一样陡然上升, 这反映了加入驾驶意图识别模块可以提高预测的稳定性.
图8可视化了5组对比实验的换道轨迹预测效果. 从图8可以看出, 本文提出的CS-DNN-GAN模型的轨迹预测效果与真实轨迹是最接近的. 进一步观察, 在轨迹较平滑时, 5种模型都有不错的预测轨迹, 这证明普通的LSTM网络可以预测简单的换道行为, 但是随着预测时长增加, LSTM的预测效果较差, 说明普通的LSTM模型不具有稳定性. S-LSTM的预测效果要明显优于LSTM模型, 这可以证明加入社交池(social pooling), 即车辆之间的交互关系, 能够提高模型预测的准确性. 再观察S-LSTM和CS-LSTM的预测轨迹图, 发现CS-LSTM的预测效果要略优于S-LSTM, 这是因为与社交池相比, 加入卷积层与社交层的组合更能接近真实轨迹. 再对比S-GAN模型和本文提出的CS-DNN-GAN模型, 不难发现两者的可视化轨迹图都要优于其他模型, 这说明了本文选择GAN基本框架的可靠性, 因为GAN的对抗训练特点能够提高模型对概率分布的模拟近似能力. 然而, 在加入基于DNN的驾驶意图识别模块之后, CS-DNN-GAN模型的预测效果要略优于S-GAN模型, 这是因为在现实的交通环境中, 驾驶员行为对轨迹预测的影响也十分重大.
综合以上对比实验, 可以看出CS-DNN-GAN模型预测的轨迹最接近真实的车辆轨迹, 该模型的性能要优于同类型的其他网络模型.
6 总结本文提出了一种融合变道意图识别的CS-DNN-GAN车辆轨迹预测模型. 该模型基于GAN网络, 并结合DNN融入了驾驶意图识别. 经过在公开数据集NGSIM上的验证, CS-DNN-GAN轨迹预测模型表现出了较好的预测效果. 通过与其他轨迹预测模型进行对比, 实验结果显示本文提出的轨迹预测模型的预测准确性更好.
[1] |
Alahi A, Goel K, Ramanathan V, et al. Social LSTM: Human trajectory prediction in crowded spaces. Proceedings of the 2016 IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas: IEEE, 2016. 961–971.
|
[2] |
郭景华, 何智飞, 罗禹贡, 等. 人机混驾环境下基于深度学习的车辆切入轨迹预测. 汽车工程, 2022, 44(2): 153-160, 214. DOI:10.19562/j.chinasae.qcgc.2022.02.001 |
[3] |
秦胜君, 李婷. 多交互车辆轨迹预测研究. 计算机工程与应用, 2021, 57(11): 232-238. DOI:10.3778/j.issn.1002-8331.2005-0154 |
[4] |
Gupta A, Johnson J, Li FF, et al. Social GAN: Socially acceptable trajectories with generative adversarial networks. Proceedings of the 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Salt Lake City: IEEE, 2018. 2255–2264.
|
[5] |
季学武, 费聪, 何祥坤, 等. 基于LSTM网络的驾驶意图识别及车辆轨迹预测. 中国公路学报, 2019, 32(6): 34-42. DOI:10.19721/j.cnki.1001-7372.2019.06.003 |
[6] |
温惠英, 张伟罡, 赵胜. 基于生成对抗网络的车辆换道轨迹预测模型. 华南理工大学学报(自然科学版), 2020, 48(5): 32-40. DOI:10.12141/j.issn.1000-565X.190182 |
[7] |
Pan JC, Sun HY, Xu KC, et al. Lane-attention: Predicting vehicles’ moving trajectories by learning their attention over lanes. Proceedings of the 2020 IEEE/RSJ International Conference on Intelligent Robots and Systems. Las Vegas: IEEE, 2020. 7949–7956.
|
[8] |
刘创, 梁军. 基于注意力机制的车辆运动轨迹预测. 浙江大学学报(工学版), 2020, 54(6): 1156-1163. DOI:10.3785/j.issn.1008-973X.2020.06.012 |
[9] |
Lenz D, Diehl F, Le M T, et al. Deep neural networks for Markovian interactive scene prediction in highway scenarios. Proceedings of the 2017 IEEE Intelligent Vehicles Symposium. Los Angeles: IEEE, 2017. 685–692.
|
[10] |
Hu YP, Zhan W, Tomizuka M. Probabilistic prediction of vehicle semantic intention and motion. Proceedings of the 2018 IEEE Intelligent Vehicles Symposium. Changshu: IEEE, 2018. 307–313.
|
[11] |
Zhao TY, Xu YF, Monfort M, et al. Multi-agent tensor fusion for contextual trajectory prediction. Proceedings of the 2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Long Beach: IEEE, 2019. 12118–12126.
|
[12] |
Lee N, Choi W, Vernaza P, et al. Desire: Distant future prediction in dynamic scenes with interacting agents. Proceedings of the 2017 IEEE Conference on Computer Vision and Pattern Recognition. Honolulu: IEEE, 2017. 2156–2174.
|
[13] |
Deo N, Trivedi MM. Convolutional social pooling for vehicle trajectory prediction. Proceedings of the 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition Workshops. Salt Lake City: IEEE, 2018. 1468–1476.
|
[14] |
Hochreiter S, Schmidhuber J. Long short-term memory. Neural Computation, 1997, 9(8): 1735-1780. DOI:10.1162/neco.1997.9.8.1735 |