社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  机器学习算法

一文尽览 | 轨迹预测二十年发展全面回顾!(基于物理/机器学习/深度学习/强化学习)

arXiv每日学术速递 • 2 年前 • 521 次点击  


摘要

为了在动态环境中安全驾驶,自动驾驶车辆应该能够预测附近交通参与者的未来状态,尤其是周围车辆,类似于人类驾驶员的预测驾驶能力。这就是为什么研究人员致力于轨迹预测领域并提出不同的方法。本文旨在对过去二十年中提出的自动驾驶轨迹预测方法进行全面和比较性的回顾!!!它从问题公式和算法分类开始。然后,详细介绍和分析了基于物理、经典机器学习、深度学习和强化学习的流行方法。最后,论文评估了每种方法的性能,并概述了潜在的研究方向。

自动驾驶越来越受到学术界和工业界的关注[1],因为它可以解决与安全、拥堵、节能等相关的许多长期交通挑战[2],[3]。近年来,我们见证了自动驾驶汽车(autonomous vehicles,AV)感知、规划和控制系统的快速发展。然而,只有自动驾驶的安全性得到验证,AV的量产才会成为现实。为了进一步提高安全性,最关键的技术之一是AV应该能够像人类驾驶员一样实时预测周围环境的未来状态。

当人类驾驶车辆时,他/她通常会观察周围的交通参与者,并在开始新的驾驶操作(例如加速或变道)之前预测他们的未来状态。交通参与者的未来状态可以用未来轨迹表示,用于提前检测潜在危险,并用于设计决策或规划算法,如图1所示。然而,由于交通参与者的不同策略、交通参与者与环境之间的复杂交互、感官信息的不确定性,AV的计算负担和计算时间要求,如何准确预测交通参与者的未来轨迹正引起人们的关注,并成为提高自动驾驶安全性的关键点之一。

许多研究人员致力于轨迹预测领域,并提出了许多有用的方法。几篇综述论文讨论了轨迹预测技术的一部分。Lefèvre等人[4]对2014年之前AV的运动预测和风险评估的现有方法进行了调查。这些方法大多是经典的,但已过时。Mohammad等人[5]回顾了基于驾驶员操作的交叉口行为预测方法。Mozaffari等人[6]于2019年对基于深度学习的车辆行为分析方法进行了回顾。其描述了不同的标准,仅根据输入和输出信息对部分流行方法进行分类,但不涉及一些最新发布的方法。最近的两篇综述[7]、[8]同样关注AV的轨迹预测,但[7]的参考文献提供了关于跟踪和轨迹预测的综述,其中仅包含使用深度学习的方法和使用随机技术的方法,而[8]的参考文献仅介绍了深度学习方法。其他调查[9]、[10]使用视觉信息检测异常行为,参考文献[11]、[12]调查人体运动预测,这与本文的主题明显不同。

因此,论文全面回顾了过去二十年中提出的AV轨迹预测方法。本文选择启发式和最先进的轨迹预测方法进行一段时间的比较和总结。请注意,预测方法中使用的历史轨迹信息可以从感知系统[13]和V2X[14]中获得,基于视觉的方法不是本综述的重点。由于交通参与者,例如周围车辆,直接影响自车,本文主要研究车辆的轨迹预测方法。如图2所示,本文将分别回顾基于物理的方法、经典的基于机器学习的方法、基于深度学习的方法和基于强化学习的方法。本文的主要贡献总结如下:

  • 详细回顾了基于物理、经典机器学习、深度学习和强化学习的AV流行轨迹预测方法;
  • 详细总结了用于评估方法性能的指标和数据集;
  • 讨论了每种方法的优缺点,并概述了潜在的研究方向。

轨迹预测方法的问题定义与分类

问题定义

轨迹预测问题可以表示为使用给定场景中交通参与者的过去状态来估计其未来状态。AV或路侧单位观察到的交通参与者(例如车辆)的历史状态为:

对于大多数轨迹预测方法,仅包含车辆的坐标信息,定义如下:

对于其他方法,还可能包含速度、加速度、方向等信息。模型的输出定义如下:

方法分类

AV、输入和输出的轨迹预测方法分类如图2所示。此外,图3展示了轨迹预测的输入和输出因素。

  • 预测方法:根据不同的建模方法,过去二十年的预测方法可以分为四个部分:基于物理的方法、基于经典机器学习的方法、深度学习的方法和基于强化学习的方法,如图2所示;
  • 情景因素:由于轨迹预测方法通常需要根据当前环境下的历史轨迹对未来状态进行建模,因此应考虑一些因素。本研究将这些因素分为三类:物理相关因素、道路相关因素和交互相关因素。
    • 物理相关因素是指车辆的动力学和运动学因素;
    • 道路相关因素包括地图信息建模和相应的交通规则;
    • 交互相关因素包括社会规则和车辆操控之间的相互依赖性。
  • 输出类型:轨迹预测方法需要提供交通参与者的未来轨迹,可以是单模态的,也可以是多模态的。此外,一些方法还提供了交通参与者的行为意图。因此,根据输出类型,预测算法可以分为以下三类。
    • 单模态轨迹:预测方法输出单个或多个交通参与者的未来轨迹;
    • 多模态轨迹:预测方法利用每个未来轨迹的概率为交通参与者生成多模态未来轨迹;
    • 交互:预测方法输出行为意图以帮助预测。意图可以是最终输出的一部分,也可以只是方法的中间步骤。

基于物理的方法

基于物理的方法采用车辆动力学或运动学模型。通常,它们包括单轨迹方法、卡尔曼滤波方法和蒙特卡罗方法,如图4所示。

A.物理模型

物理模型包括动力学模型和运动学模型。动力学模型可能变得非常复杂,包括许多固有参数,但复杂的动力学模型在预测精度方面带来了小的增益,并引入了额外的计算负担,因此对于轨迹预测来说,简单的动力学模型是首选的。在预测任务中,车辆通常被视为自行车模型,由前轮驱动[17]-[19]。

由于结构简单,运动学模型比动力学模型更常用。常用的包括恒定速度(CV)和恒定加速度(CA)模型[15]、[20]、[21]、恒定转弯速率和速度(CTRV)和恒转弯速率和加速度(CTRA)模型[22]、[23]、恒定转向角和速度(CSAV)以及恒转向角和加速度(CSAA)模型[24]等。

B.单轨迹方法

预测车辆轨迹的一种简单方法是将车辆的当前状态直接应用于物理模型。该方法适用于动力学模型[17]–[19],[25]和运动学模型[22],[26],[27]。在[25]中,线性自行车模型用于避免碰撞,而Lytrivis等人[22]和Miller等人[26]分别使用CTRA模型和CV模型。该方法的优点在于计算效率高,适用于约束较小的应用。然而,他们无法考虑道路相关因素,当前状态的不确定性对于长期预测是不可靠的。

C.卡尔曼滤波方法

单轨迹方法假设车辆的状态完全已知,没有噪声。相比之下,卡尔曼滤波(KF)方法能够处理此类噪声,这些噪声通过高斯分布对当前车辆状态及其物理模型的不确定性或噪声进行建模[28]。将预测和更新步骤组合成一个循环,可以获得每个未来时间步长的车辆状态的平均值和协方差矩阵,计算为具有相关不确定性的平均轨迹[15],[24]。

与以前的方法相比,其优点是考虑了预测轨迹的不确定性。然而,单峰高斯分布不足以表示不同的操作,因此Kaempchen等人[28]提出了交互多模型(IMM)来输出多模态轨迹。切换卡尔曼滤波器(SKF)[29]依赖于一组卡尔曼滤波器,用于描述车辆的物理模型并在它们之间切换[28],[30]。Zhang等人参考文献[31]提出了一种基于车对车通信和KF的方法,使主车辆能够预测远程车辆的轨迹以避免障碍物。最近,Lefkopoulos等人[32]提出了一种称为交互多模型卡尔曼滤波器(IMM-KF)的新方法,该方法考虑了交互相关因素。所提出的方法使用基于物理的模型来预测交通参与者多秒的轨迹。

D.蒙特卡洛方法

通常,在没有任何线性或模型高斯性质假设的情况下,预测状态分布的解析表达式通常是未知的。蒙特卡罗方法可以近似模拟状态分布。它随机采样输入变量,并应用物理模型生成潜在的未来轨迹。为了确保机动的可行性,可以使用低于实际允许横向加速度的横向加速度来过滤生成的轨迹样本[16],或者可以在物理模型中考虑车辆的物理限制,从而使模型的输入更加真实[33]。蒙特卡罗方法可用于从完全已知的状态或通过滤波算法估计的不确定状态预测交通参与者的轨迹。Okamoto等人[34]提出了一种基于策略的模型,该模型应用蒙特卡罗方法通过确定的策略来预测未来的轨迹。Wang等人[35]使用蒙特卡罗方法预测轨迹,并利用MPC优化参考轨迹。

E.总结

基于物理的方法利用物理模型以相对较低的计算资源完成轨迹预测。根据前文所述的分类方法,本文对基于物理的方法进行了分类,如表I所示。基于物理的是研究人员使用的第一种最简单的方法。尽管这些方法的精度相对较低,但越来越多的模型使用基于物理的模型的思想来提高精度。当车辆的运动可以通过运动学或动力学模型准确描述时,基于物理的方法具有更准确的结果,但交通参与者的物理模型不断变化,因此大多数这些方法仅适用于短期预测(不超过1s)。使用一个或多个物理模型可以快速获得交通参与者的未来轨迹,但物理模型的选择和它们之间的切换将带来明显的预测误差。解决这个问题的一种方法是考虑相互作用相关因素,如IMM-KF[32]。为了达到SOTA,基于物理的方法可能需要与基于学习的方法相结合,如参考文献[36],该文献使用基于学习的判别器来提取交互信息并生成基于模型的轨迹。

经典的基于机器学习的方法

与使用多种物理模型的基于物理的方法不同,基于机器学习的方法应用数据驱动模型来预测轨迹。根据大量文献,基于经典机器学习的AV轨迹预测方法包括高斯过程(GP)、支持向量机(SVM)、隐马尔可夫模型(HMM)、动态贝叶斯网络(DBN)、K最近邻(KNN)、决策树等。由于经典机器学习中最常用的方法是GP、SVM、HMM、DBN,本节将主要介绍这些方法。

A.高斯过程

原型轨迹法是一种基于策略的方法,它将车辆的轨迹划分为几种类型的原型轨迹的集合。该模型测量历史轨迹和原型集之间的相似性,以预测可能的轨迹。高斯过程(GP)[37]是原型轨迹方法[38]–[40]中使用的有效手段。

当GP用于预测轨迹时,轨迹被视为GP的样本,沿时间轴采样。样本由N个离散点表示以映射到N维空间。之后,样本满足N维空间中的N维高斯分布。因此,GP模型在建模阶段的主要任务是通过样本确定GP的参数。在[41]中,HMM用于估计可能的行为,然后GP用于预测轨迹。GP还可以用于建模交互相关因素,Trautman等人[42]使用GP进行关节碰撞避免,以解决冻结机器人问题。Guo等人[43]应用GP和Dirichlet过程(DP)来定义运动过程,并应用非参数贝叶斯网络来提取潜在的运动模式。

对于基于原型轨迹的方法,每个轨迹可以通过训练由原型集表示。因此,这些方法之间的主要区别在于如何构建原型轨迹。Govea等人[44]通过统计计算所有轨迹样本的平均值和方差来获得原型轨迹。Hermes等人[45]将样本轨迹划分为若干子集,并在训练后获得若干原型轨迹,以反映车辆运动变化。然而,很难将这些模型推广到其他场景,因为基于轨迹样本的方法仅针对特定场景进行训练。

B.支持向量机

支持向量机(SVM)可以在复杂环境中学习和识别驾驶员的操作。SVM的关键是找到满足分类要求的支持向量,并确定能够最大化分类数据间隔的最优超平面。当应用于轨迹预测问题时,驾驶机动通常被定义为几类:左转、右转、保持直线等。然后,它使用核函数将输入数据转换为高维,并在空间中进行线性分类,以找到驾驶策略,从而预测轨迹。

Mandalia等人[46]首先将SVM应用于识别车道变化策略,使用方向盘角度、位置和加速度等特征进行识别。由于SVM可以输出分类概率的特征,Kumar等人[47]提出了一种结合SVM和贝叶斯滤波的分层结构方法,以识别变道策略,从而获得更准确的识别结果。在[48],[49]中,SVM用于识别交通参与者的策略。因此,SVM可以识别车辆的策略,但SVM需要提前定义驾驶员的策略,预设的策略也会影响最终的预测结果。

C.隐马尔可夫模型

SVM在分类问题上很有效,但在轨迹预测方面不如隐马尔可夫模型(HMM)有效。HMM是最流行的基于机器学习的轨迹预测方法之一。HMM也是一种使用马尔可夫链的基于策略的方法。马尔可夫链是指一个包含有限事件的过程,系统在时间t+1的状态仅与前一时间t有关,状态转移概率与时间无关。数学表达式为:

在现实生活中,我们只能观察暴露在表面上的独特状态,但不存在其隐藏状态的直观表示。因此,有必要建立具有隐藏状态的马尔可夫过程,并通过与隐藏状态概率相关的可观察状态集来获得事件的基本状态,这就是所谓的隐马尔可夫模型。HMM由(S,O,A,B,π)[50]表示,如图5所示:

当HMM用于轨迹预测时,交通参与者的历史状态由观测序列O表示,HMM求解最可能的未来观测序列。Holger等人[52]使用转向角和全局坐标作为HMM的输入来预测驾驶员的操作。基于HMM,乔等人[53]提出了一种称为HMTP*的算法,该算法自适应地选择参数,以动态变化的速度模拟真实场景。在[51]中,HMM结合模糊逻辑用于驾驶员策略预测。此外,HMM可以集成到决策和规划系统中。在[54]中,HMM用于轨迹预测和风险评估,并将结果输入决策和规划系统。

尽管传统的HMM方法在预测驾驶员操作方面取得了巨大成功,但它们在预测过程中没有考虑交互相关因素的影响,因此其预测结果在实际交通场景中不够准确。Deo等人[55]提出了一种基于HMM和考虑相互作用相关因素的变分高斯混合模型(GMM)的车辆轨迹预测模型。通过找到能量函数的最优解来获得车辆相互作用信息。Zhang等人[56]提出了一种基于博弈论的GMM-HMM策略预测模型,考虑了交互感知因素。

D.动态贝叶斯网络

为了提高轨迹预测的准确性,预测模型应至少考虑车辆状态和交通参与者之间的交互作用。Koller等人[57]提到的动态贝叶斯网络(DBN)可以对这种交互进行建模。DBN是一种基于策略的方法,使用贝叶斯网络并考虑时间序列。DBN的基本概念和概率推理与贝叶斯网络相同。不同的是,贝叶斯网络描述了静态系统,而Kevin等人[58]引入了时间模板的概念来解决概率模型中的时序问题。时间段是指根据DBN具体化的时间模板,它将连续时间离散为具有预设时间粒度的可计数点。

通常,预设的时间粒度应与实际状态采集频率一致,DBN根据传感器采样频率作为时间段进行训练。此外,DBN的推理和学习方法需要转化为贝叶斯网络才能直接应用。贝叶斯网络常用的推理方法包括变量消除法、团树算法和采样算法。贝叶斯网络的学习方法包括最大似然估计、贝叶斯估计、EM算法等。此外,存在用于高复杂度DBN的特殊推理方法,如前向和后向推理方法[65]。

DBN的架构包括行为层、隐藏层和观察层,如图6所示。行为层表示网络的输入信息,观察层表示驾驶员的操作。使用这种架构,Gindele等人[59]对多辆车的驾驶策略进行了建模。输入信息包括所有车辆状态、车辆相互作用关系、道路结构、观察状态等。Schreier等人[60]应用DBN来判断驾驶策略,并利用与每个驾驶策略相对应的运动学模型来预测轨迹。在[61]中,通过博弈论预测车辆策略,然后通过考虑相互作用相关因素的DBN判断车辆运动。He等人[62]使用DBN识别车辆跟随和变道策略,并预测变道的轨迹。在[63]中,DBN被设计为考虑物理相关因素、道路相关因素和相互作用相关因素。Li等人[64]将DBN与端到端模型相结合来预测行人轨迹,其中DBN用于提取交通参与者的特征和动态信息,端到端的模型将预测问题视为一个时序生成问题来生成预测轨迹。

当应用于轨迹预测时,DBN对交通参与者之间的交互作用进行建模,并在经典的基于机器学习的方法中表现良好。作为基于策略的方法,DBN模型获得了较高的识别性能,并已在多个真实世界测试中使用[66]。然而,DBN仍然面临从识别策略到生成轨迹的误差问题。许多方法只能判断两到三次策略,如车道保持和变道,模型的泛化能力不强。

E.总结

总之,经典的基于机器学习的方法通过挖掘数据特征来确定概率分布,如表II所示。经典的基于机器学习的方法为轨迹预测提供了新的思路,促进了基于学习的方法的发展。随着需要考虑的因素越来越多,这些方法的准确性不断提高,有助于轨迹预测。这些方法大多是基于策略的方法,可以通过首先判断策略来预测未来的轨迹。在这些方法中,通常需要提前提供或识别相关策略。

基于深度学习的方法

大多数传统的预测方法只适用于简单的预测场景和短时预测任务。最近,基于深度学习的轨迹预测方法越来越流行,因为它们不仅可以考虑物理相关因素和道路相关因素,还可以考虑交互相关因素,并适应更复杂的场景。这些方法的一般描述如图7所示。在下文中,本文总结了当前流行的基于深度学习的AV轨迹预测方法。

A.序列网络

序列网络用于提取历史轨迹的特征,并可用作输出层。基于深度学习的轨迹预测序列网络主要包括递归神经网络(RNN)、卷积神经网络(CNN)和注意力机制(AM)。

RNN

与经典的基于机器学习的方法和可以有效处理空间信息的CNN不同,RNN设计用于处理时序信息[67],[68]。它存储先前时间步长的信息,并利用隐藏状态和输入来确定输出,如图8所示。然而,在实际应用中,发现当时间步长数量较大时,RNN的梯度更可能衰减或爆炸。Gated RNN,例如LSTM和门控递归单元(GRU)可以解决这个问题。使用RNN的轨迹预测模型可以分为单个RNN模型和多个RNN模型。

单个RNN用于基于策略和单模态轨迹预测,或应用于其他辅助模型以支持更复杂的功能,例如交互感知预测。[69]–[71]中使用LSTM作为序列分类器来预测车辆的机动。为了实现这一目标,LSTM的单元提取车辆特征,最后一个单元的隐藏状态将被馈送到输出层以预测策略。其他相关算法[69]-[78]可以参考论文。

多个RNN架构被广泛使用。Dai等人[79]使用两组LSTM网络预测目标车辆的轨迹。一组用于模拟周围车辆的轨迹,另一组用于建模周围车辆之间的相互作用。其他相关算法[80]-[87]可以参考论文。

CNN

最近,CNN在许多任务中取得了成功,如计算机视觉[88]、[89]和机器翻译[90]。此外,Nikhil等人[91]认为,使用CNN预测轨迹优于RNN,因为轨迹具有很强的时空连续性。他们将序列应用于序列结构,将历史轨迹作为输入,通过将卷积层堆叠在全连接层之后来实现时间连续性,并通过全连接层输出未来轨迹。实验表明,使用这种基于CNN的网络运行得更快。使用CNN处理轨迹信息的一般方法如图9所示。其他相关算法[92]-[101]可以参考具体论文。

CNN和RNN结合

RNN能够提取时间特征,非常适合处理时序信息;而CNN能够提取包括交通参与者之间的交互相关因素在内的空间特征。这启发了一些研究人员使用RNN和CNN的组合来处理时间和空间信息以进行轨迹预测。Deo等人[102]使用LSTM编码器提取周围车辆的时间信息,然后将其馈送到social pooling[103]以形成social张量。在本研究中,social pooling在空间光栅化后捕获车辆之间的交互相关因素,然后将social张量馈送到一组CNN以学习车辆的空间相关性。最后,六个LSTM解码器用于生成六种特定策略的分布,其中包括三种横向策略(左变道、右变道和保持车道)和两种纵向策略(刹车、正常速度)。然后它找到具有最高概率的策略并预测其未来轨迹。其他相关算法有[104]-[105]。

为了更好地预测轨迹,研究人员引入高精(HD)地图信息,使预测的轨迹更接近真实轨迹[106]。高精地图通常包括栅格地图和矢量地图,它们包含关于道路的语义信息,并可以指示线段。一些方法使用CNN从光栅地图中提取场景上下文信息,以考虑道路相关因素和交互相关因素。因为使用CNN处理光栅地图的方法属于感知系统的范畴,这不是重点。因此,本文将简要解释从栅格地图获得语义特征后的轨迹预测过程。经典算法包含DESIRE[107],使用随机1-step策略。Hong等人[108]使用ConvNets对语义特征进行编码,以预测车辆行为。基于ConvNets,Chai等人[109]通过无监督学习找到轨迹anchor,使用GMM和语义特征来训练他们的模型。

注意力机制

注意力机制允许人类使用有限的注意力资源,从大量信息中快速过滤出高价值信息。深度学习中的注意力机制(AM)模仿了人类的思维方式,广泛用于各种类型的深度学习任务,如自然语言处理(NLP)、图像分类和语音识别[110]–[112]。AM通常用于轨迹预测任务[113]–[115]。在[116]中,多头注意力用于提取车道和车辆注意力,以输出未来轨迹的分布。其他相关算法[117]-[124]可以参考论文。

B.图网络

当涉及到考虑交互相关因素的预测方法时,环境中的每个目标都可以被视为一个节点来形成一个图。尽管一些使用RNN和CNN的方法在提取欧几里得空间数据特征时取得了巨大成功,但许多实际应用场景中的数据都是从非欧几里德空间生成的。由于许多经典的基于深度学习的方法都在处理非欧几里得空间数据,因此这些方法的性能仍然不令人满意。通常,每个场景都可以被视为一个不规则图,每个图都有一个大小可变的无序节点,如图11所示。图中每个节点的相邻节点数不同,导致一些重要操作,如卷积,这些操作很容易在图像上计算,但不再适合直接在图上使用。尽管如此,图中的每个节点都将具有与其他节点相关的边。此信息可用于捕获目标之间的相互依赖性。因此,图神经网络(GNN)非常适合于基于交互相关因素的车辆轨迹预测问题[125]。Diehl等人[126]证实了这一观点。他们使用两种流行的图形网络:图卷积网络(GCN)和图注意力网络(GAT),基于交互相关因素进行轨迹预测,并证明了其有效性。

对于道路相关因素,使用CNN处理光栅地图具有很大的计算负担,并且很容易丢失信息。相反,矢量地图使用具有多个控制点及其属性的多段线来表示结构化道路信息。这些多段线形成一组向量,可以用作GNN中的节点,GNN已广泛用于轨迹预测。接下来,本文将介绍基于GNN的车辆轨迹预测方法。

图卷积网络

图卷积网络(GCN)是最流行的图神经网络方法。图卷积网络将卷积运算从传统的图像数据处理扩展到图形数据处理。核心思想是学习映射函数,该函数可以从图中节点的特征及其邻域的特征中提取交互感知特征。

在基于空间的图卷积网络中,Li等人[127]提出了一种称为GRIP的基于GCN的轨迹预测模型。该模型将每个车辆视为每个采样时间的节点,并考虑了相互作用相关因素。如果两个节点代表同一辆车,且采样时间相邻,则两个节点之间存在一条边,表示时间关系。如果两个节点同时代表两辆车,并且两辆车之间的距离小于固定值,则两个节点之间存在一条边,表示这些目标的空间关系和交互状态。GRIP使用由几个卷积层和图操作组成的GCN模型来建模图网络。GCN的输出被馈送至LSTM编码器解码器,以预测周围车辆的轨迹。GRIP使用固定的图网络来表示交通参与者之间的交互相关因素,尽管GRIP比当时流行的模型有了相当大的改进,但复杂场景中的泛化能力有待提高。其他相关算法[128]-[132]可以参考论文。

以上所有方法都使用了基于空间的图卷积网络,但一些论文使用了基于频谱的图卷积网络。Chandra等人[133]使用双层GNN-LSTM结构来解决轨迹预测问题。第一层使用LSTM编码器-解码器来预测交通参与者的未来轨迹,第二层通过加权动态几何图网络(DGG)对交通参与者的交互相关因素进行建模[134]。图中的频谱在LSTM编码器-解码器之后通过特征值的特定正则化来提取,并且频谱序列被馈送到第一层的LSTM网络中以完成预测任务。Zhao等人[135]提出了一种基于频谱的GCN网络,可以在场景中的所有车辆之间共享信息,以考虑周围车辆的变化以适应环境。

使用矢量地图的图网络

奔驰[136]首先将HD地图应用于轨迹预测,并基于与车辆相关联的车道信息进行地图拓扑,以获得其沿车道的未来轨迹。然而,它没有考虑与交互相关的因素。自从提出了带有矢量地图的Argoverse数据集[77]以来,研究人员使用GNN来获得车辆之间、车辆和地图之间的交互特征,以提高轨迹预测的准确性。Gao等人[137]以场景中的车辆和矢量地图为节点,提出了使用GNN实现轨迹预测的VectorNet。Liang等人[138]使用CNN提取车辆特征,使用GCN从矢量地图中提取车道特征,然后将这两个特征结合起来进行轨迹预测。使用VectorNet提取地图特征,Zhao等人[139]提出了一种称为TNT的目标驱动方法,该方法定义了稀疏目标锚点并选择到目标的最佳轨迹,DenseNT[140]估计密集目标候选,并获得比TNT更好的结果。Zeng等人[141]使用LaneRCN获得每个参与者的局部车道图的表示,以编码他们的过去轨迹和局部地图拓扑,并通过交互模块完成局部车道图交互。

其他图网络

注意力机制现在已广泛应用于基于序列的任务中。它的优点是可以放大数据中最重要部分的影响。Veli ckovi等人[142]提出了图注意力网络(GAT)。当聚集特征信息时,GAT使用注意力机制来确定节点之间的权重。Huang等人[143]将GAT应用于轨迹预测。该模型首先使用LSTM编码器对交通参与者的轨迹进行编码,然后使用GAT计算每个交通参与者的注意力权重,并通过加权平均这些状态来形成每个参与者此时的交互信息。最后,该模型使用LSTM解码器生成预测轨迹。其他相关算法[144]-[145]可以参考论文。

C.生成式模型

在轨迹预测任务中,轨迹的多模态给研究带来了不确定性和挑战。为了解释固有的多模态分布,一些研究人员使用生成模型来生成多模态轨迹。轨迹预测的生成模型包括生成式对抗网络(GAN)和条件变分自动编码器(CVAE)。

Generative Adversarial Network

生成式对抗网络(GAN)由Ian Goodfellow[146]于2014年首次提出。凭借卓越的性能,它在不到两年的时间内迅速成为主要研究热点。GAN本质上是一个生成模型,它主要由两部分组成,即生成器和判别器。生成器用于生成类似于真实样本的随机样本,判别器用于确定数据是真是假。通过生成器和判别器的不断博弈进化,GAN可以获得质量更高的生成器和判断能力更强的判别器。

当将GAN应用于轨迹预测时,生成器用于生成预测轨迹,判别器用于判断预测轨迹是否正确,如图12所示。典型的应用是Gupta等人[147]将GAN用于称为SGAN的行人轨迹预测。生成器使用LSTM编码器、池化模块和LSTM解码器来生成预测轨迹,判别器使用LSTM来确定预测轨迹是否合理。在该模型中,池化模块是social pooling,其目的是帮助考虑所有行人并减少计算。与[102]中提出的social pooling不同,这里使用的池化模块处理行人之间的交互。基于SGAN,Yang等人[148]设计了行人轨迹预测模型,重点关注如何更有效地提取交互相关因素并生成各种可行轨迹,该模型在SGAN的基础上添加了潜在变量预测器以估计潜在变量。其他相关算法[149]-[153]可以参考论文。

Conditional Variational Auto Encoder

所谓的自动编码器(AE)通过编码器将数据压缩为低维矢量表示,并使用解码器对低维矢量进行解码以获得重构的输出。AE希望尽量减少重建误差。然而,AE被指责只是“记住”数据,其生成数据的能力很差。Kingma等人[154]提出了一种变分自动编码器(VAE)框架,以使用神经网络对变分推理中的分布进行参数化,从而提高模型的生成能力。在[155]中,提出了条件VAE(CVAE)来完成结构化预测任务。对于轨迹预测,将CVAE和RNN变体组合成编码器-解码器的形式是轨迹生成的有效方法[75],[82],[84]。一些使用原始传感器数据作为输入的方法也使用CVAE进行多模态轨迹预测[108]、[156]、[157]。以上已经提到了使用CVAE作为网络框架的修正方法,本节不再重复。

D.总结

总之,AV的基于深度学习的轨迹预测方法可分为表III。越来越多的研究人员将基于深度学习方法应用于空间和时间预测问题,如轨迹预测,并获得最先进的结果。因此,论文总结了基于深度学习的主流方法,给出了状态编码器、上下文编码器、交互模块、解码器以及这些方法的概要描述,如表IV所示,提取交通参与者的交互信息和道路信息,并利用时序网络获得最终预测的未来轨迹,已成为轨迹预测的主流研究方向。基于深度学习的方法在轨迹预测任务中达到了最先进的结果,并且可以预测比基于物理的方法和经典的基于机器学习的方法更长的时间。目前,越来越多的自动驾驶汽车试验使用基于深度学习的方法来预测交通参与者的未来轨迹。

基于强化学习的方法

近年来,强化学习(RL)的快速发展为理解高维复杂策略提供了新途径[160]–[162],这为AVs的轨迹预测任务提供了新思路[163],[164]。当RL用于AV的轨迹预测领域时,大多数方法使用马尔可夫决策过程(MDP)[165]来最大化预期的累积奖励。MDP是一个元组(S,A,P,R,γ),其中S是有限状态集,A是有限动作集,P是状态转移概率矩阵,R是奖励函数,γ是折扣因子。为了找到所有策略的最佳决策过程,最优状态值函数和最优行动值函数可以计算为:

使用MDP,基于RL的方法可以分为Inverse Reinforcement Learning(IRL)方法、生成对抗模仿学习(GAIL)方法和深度IRL(DIRL)方法,这将在下面讨论。

A.Inverse Reinforcement Learning

通常,MDP假设已经提供了奖励功能。然而,驾驶员的行为总是复杂的,因此手动指定奖励函数的权重是不合适的[166],[167]。IRL根据专家演示(轨迹)学习奖励函数,以生成相应的最优驾驶策略,如图13所示。

根据奖励函数权重的学习方式,论文将IRL分为基于最大边际的方法和基于最大熵的方法。基于最大边际的方法通过最小化专家演示和预测轨迹之间的特征期望来优化奖励函数权重。在[168]中,结构化最大值被应用于从特征学习映射以奖励并使用MDP中的这些最优策略来模仿专家的行为。SCIRL由[169]提出,它没有解决直接的RL问题,而是通过结构化分类来估计专家策略的特征期望。Silver等人[170]使用最大利润规划框架来学习AV的奖励功能和驾驶策略。然而,大多数基于边缘的方法在特征期望的匹配中是模糊的,因为一些退化也可以满足专家论证的最优策略。

基于最大熵的方法更受欢迎,因为它们可以使用多个奖励函数来解释专家行为的模糊性[171],其中大多数基于线性映射:

一些工作将基于最大熵的IRL(MaxEnt-IRL)应用于AV的行为预测。在[172]中,使用MaxEnt-IRL可接受性相关行为模型从专家的轨迹中学习以生成随机行为,然后通过最大化社会可接受性来选择最佳行为模型。Sharifzadeh等人[173]利用IRL和深度Q网络(DQN)提取具有大状态空间的奖励。在[174]中,相互作用相关因素被考虑来完成AV的概率预测。未来轨迹的分布是由驾驶策略制定的。[175]提出了一种时空状态格,用于从专家演示中模拟驾驶员行为。

此外,一些MaxEnt-IRL方法利用采样轨迹来完成预测任务。在[176]中,首先对候选轨迹进行采样,以最小成本选择候选轨迹作为预测轨迹。其他相关算法[177]-[181]可以参考论文。

B.Generative Adversarial Imitation Learning

Ho等人[191]在2016年提出了GAIL,该方法使用GAN的方法在RL中进行模仿学习。GAIL没有从专家与IRL的演示中学习奖励功能,而是直接从数据中提取策略。正如GAN一样,GAIL的核心思想是,生成器生成尽可能与专家轨迹相似的轨迹,判别器器尝试尽可能判断它是否是专家轨迹。

许多文章使用GAIL来完成AV的轨迹预测。Kuefler等人[182]将GAIL扩展到RNN的优化,以演示人类驾驶员行为,并通过判别器评估策略和行为。Li等人[183]应用信息最大化定理来提取专家演示的潜在结构。在[184]中,提出了GAIL的参数共享扩展,以建模多智能体之间的交互,并可以为智能体提供特定领域的知识。为了克服GAIL仅使用当前状态对下一个状态建模的缺点,Choi等人[185]提出了一种在GAIL框架内结合部分可观测马尔可夫决策过程(POMDP)的方法,并使用来自判别器的奖励函数来训练模型。

C.Deep Inverse Reinforcement Learning

由于预测问题是非线性的,因此有必要使用非线性映射来进行广义函数近似。在[192]中,提出了深度反向强化学习(DIRL)框架来近似复杂和非线性的奖励函数:

本文将完全卷积神经网络(FCN)应用于IRL中进行奖励近似。一些DIRL方法将历史轨迹作为输入。You等人[186]考虑了驾驶风格和道路几何形状,其中作者首先使用RL设计MDP,然后从IRL学习最佳驾驶策略,并使用深度神经网络(DNN)来近似奖励函数。在[164]中,流量参与者的轨迹由LSTM编码,奖励网络由FCN学习。

目前,更多基于DIRL的方法直接使用原始感知数据。Wulfmeier等人[187]应用FCN将激光雷达数据映射到可穿越性地图。该网络被预先训练以回归到人工先验成本图,并且初始化权重将由最大熵DIRL网络微调。在[188]中,使用相机图像,驾驶行为由DIRL建模,CNN将提取相关状态特征。Zhu等人[189]使用RL-ConvNet和状态访问频率(SVF)ConvNet对车辆运动学进行编码,并通过在专家演示的专家SVF和激光雷达数据的政策SVF之间反向传播损失梯度[193]来获得奖励函数的权重。在[190]中,提出了一种考虑惯性、环境和社会因素的卷积LSTM,以从激光雷达和轨迹数据中提取特征图,并将其纳入输出奖励图中,以预测可穿越性图。

D.总结

总之,基于强化学习的AV轨迹预测方法可分为表V。此类方法使用MDP最大化预期累积奖励,并通过学习专家演示生成最佳驾驶策略,其中大多数是基于规划的方法。结合深度学习网络,这些方法可以更好地提取专家演示并考虑更多因素。然而,大多数都是计算密集型的,需要长时间的训练。

评估

各种数据集的出现促进了基于学习的预测算法的性能。因此,有必要选择合适的指标来评估每个算法的性能。本节将首先介绍几个数据集,然后介绍性能评价指标,最后将比较在同一NGSIM数据集上使用不同方法的上述工作的性能[194]。

数据集

为了评估轨迹预测模型的质量,通常将预测的轨迹与从各种数据集获得的GT轨迹进行比较。这些数据集由传感器(如激光雷达和摄像机)收集,并手动标注或自动生成,以生成车辆运动序列。

表六总结了轨迹预测中使用的流行数据集。本文按时间倒序介绍了数据集,并列出了使用数据集进行轨迹预测的典型方法。本文中提到的大多数方法都以轨迹作为输入,有些方法还使用车辆状态或地图信息。然而,由于这些数据集中的大多数轨迹是通过从图像或点云学习方法获得的,因此一些模型直接使用图像或点云来作为端到端轨迹预测的输入。

评价指标

几种评估指标通常用于车辆轨迹预测。

  • Root Mean Squared Error (RMSE):RMSE计算平方预测误差平均值的平方根,RMSE对大的预测误差敏感,是轨迹预测的常用度量之一。
  • Negative Log Likelihood (NLL):对于建模的轨迹分布,RMSE用于计算模型的平均误差,而NLL更侧重于确定基于机动的模型中轨迹的正确性。
  • Average displacement error (ADE):预测轨迹和GT之间的平均L2距离。对于多模态预测,最小ADE(mADE)通常用于指示ADE超过K个预测的最小值。
  • Final displacement error (FDE):最终预测结果与相应GT位置之间的L2距离。对于多模态预测,最小FDE(mFDE)通常用于指示FDE超过K个预测的最小值。
  • Miss Rate (MR):基于最终位置的L2距离,预测轨迹不在GT2.0米范围内的情况比率。当预测结果为多模态时,假设预测结果为K个可能的未来轨迹,则将根据最佳未来轨迹判断ADE、FDE和MR,并分别记录为
  • Computation Time:计算时间对于该方法的车载性能非常重要。自动驾驶汽车的计算能力有限,但轨迹预测模型通常很复杂,需要巨大的计算资源。为了实现更高的自动驾驶水平,每个模块的计算必须相对较快,以尽可能减少延迟。因此,实时性能或计算成本对模型非常重要。
  • Prediction Horizon:Prediction horizon是指模型可以预测的未来时间步长。通常,Prediction horizon越长,在动态甚至随机驾驶环境中的准确度就越低。然而,为了满足规划和控制系统的要求,应将具有一定周期时间的轨迹预测结果输入系统,以便预测时间不应太短,并与其他模块保持一致。

不同方法的性能

对于真实世界的自动驾驶,准确度是轨迹预测方法的最重要指标之一。为了让读者更好地比较各种方法及其准确性,本文分别比较了轨迹预测方法在公路和城市场景中的性能。在表VII中,使用RMSE比较了基于NGSIM I-80和US-101公路行驶数据集[194]的方法,而论文使用minADE、minFDE和MR比较了基于表VIII中Argoverse[77]的方法。从表VII和VIII可以看出,预测时间越长,预测精度越低,大多数基于学习的方法都超过了传统方法。此外,多模态预测更符合人类的认知过程,并且多模态预测比单模态预测更准确。GNN在表VII中表现良好,能够捕获结构道路特征,因此一些最先进的方法使用GNN编码高清地图信息并完成轨迹预测。目前,大多数最新的轨迹预测方法都使用深度学习,但为了AV进行更安全的规划和控制,轨迹预测方法需要更精确。

应用

由于轨迹预测在确保AV安全方面发挥着重要作用,主要自动驾驶团队已将轨迹预测模块嵌入L4级以上AV的开发中。然而,由于软件的保密性,许多自动驾驶制造商没有提到他们使用的具体算法,因此本节仅总结了已经明确宣布的自动驾驶团队使用的轨迹预测方法。早期的真实世界研究使用基于物理的方法进行轨迹预测[23]。接下来,宝马使用动态贝叶斯网络确定周围车辆的驾驶意图,并在高速公路上进行实验[204]。中国科学技术大学的先锋IV自动驾驶汽车使用知识驱动方法获得预测车辆的未来车道,然后使用LSTM预测其未来轨迹[205]。对于百度阿波罗自动驾驶汽车[206],引入了一种基于先进方法TNT[139]的新模型Inter-TNT作为预测模块。随着自动驾驶技术的进步,越来越先进和复杂的轨迹预测方法将应用于真实车辆。

讨论和方向

本节将讨论轨迹预测的不同类别的优缺点,并概述潜在的研究方向,以指导该领域的读者。

讨论

本节讨论了轨迹预测方法在精度、计算时间、预测范围等方面的性能,分析了其在AV中的实际应用,并在表IX中给出了总结。请注意,论文参考短期和长期预测来分别描述不超过1s和不少于3s的预测范围。

基于物理的方法

它们适用于车辆的运动,可以用运动学或动力学模型精确描述。给定合适的物理模型,这些方法可以应用于各种场景,计算成本低,时间短,但无需训练。然而,基于这种模型的预测结果在很大程度上取决于输入和模型选择。输入与人类或机器驾驶员密切相关,受驾驶环境或与其他参与者的互动影响。因此,由于无法描述这些因素,基于物理的模型仅限于短期预测和静态场景。由于其简单性和快速响应,这些方法可以很容易地用于AV的实际应用,例如碰撞风险分析。

经典基于机器学习的方法

与基于物理的方法相比,这类方法能够考虑更多的因素,其精度相对较高,预测长度较长,计算成本较高。这些方法大多是基于策略的方法,通过已知的先验策略来预测轨迹。然而,人类驾驶员的车辆操纵通常是多样的,并且在不同的场景中变化很大,因此泛化能力很差。在AV的实际应用中,此类方法用于车道变化研究等场景中,利用其在策略识别方面的优势。

基于深度学习的方法

传统的AV轨迹预测方法仅适用于简单场景和短期预测,但基于深度学习的方法可以在更长的预测范围内进行准确预测。通过使用RNN、CNN、GNN和其他网络进行特征提取,考虑了交互相关因素和地图信息。其中,它可以适应更复杂的环境和更长的时间范围。基于深度学习的方法需要使用大量数据进行训练。此外,随着考虑因素的增加和网络层数量的增加,计算成本和时间急剧增加。这种方法可以自然地生成多模态轨迹,这与车辆机动的多样性相一致。在AV的实际应用中,有必要在计算时间和模型复杂度之间取得平衡,以确保AV的实时性能和安全性。目前,越来越多的真实世界试验使用这些方法来预测交通参与者的未来轨迹。

基于强化学习的方法

他们模仿人类的决策过程,通过学习专家演示获得奖励函数,从而生成相应的最优驾驶策略。它们可以通过学习不断进化,适应复杂的环境和较长的预测范围。在更长的时间域中,这种方法可能比深度学习方法生成更高精度的轨迹。然而,这些方法中的大多数在恢复专家成本函数时通常计算成本较高,并且需要较长的训练时间。在AVs的实际应用中,基于强化学习的轨迹预测方法更多地应用于轨迹规划,在决策过程中发挥了其优势。

潜在研究方向

随着自动驾驶技术的不断进步,轨迹预测的重要性越来越受到重视。轨迹预测方法已经从传统的卡尔曼滤波方法发展为基于学习的方法,可以处理更复杂的场景。在总结了过去二十年的方法之后,本文概述了潜在的研究方向,如图14所示,并进行了如下讨论。

  • 1)包含更多信息:可以看出,基于交互感知因素和地图信息的方法更适合实际应用场景,是当前最流行的发展方向之一。然而,除了交互相关因素之外,还需要考虑更多的信息。例如,当前的大多数方法不考虑基于明确交通规则的约束,但在实际场景中,交通规则可以重塑车辆的策略甚至轨迹。类似地,诸如交通灯、道路标志等信息也可以用作预测的可靠输入。此外,其他有用的视听信息,如车辆转向信号、车辆喇叭等,可以用作预测的参考。未来,鼓励研究人员使用更多信息进行轨迹预测。
  • 2)引入更先进的算法:正如Transformer模型在NLP领域的杰出成就[119]一样,通过引入更先进的算法,它可以在相同的输入数据下实现更高的预测精度。当前的算法通过添加高精地图、考虑交互相关因素并生成符合人类意图的多模态轨迹来实现高精度。此外,需要不断提出更先进的算法,以进一步提高具有新结构和训练方法的轨迹预测算法的能力。随着自动驾驶系统的不断迭代升级,提高AV的预测能力,通过更先进的算法满足自动驾驶的安全要求已成为大势所趋。
  • 3)集成AV的其他关键技术:当将轨迹预测结果用于决策、轨迹规划和运动控制时,整个系统的有效性可以大大提高。以运动控制系统为例,目前的运动控制系统大多将交通参与者的运动视为均匀的线性运动,这与交通参与者的真实轨迹截然不同。当集成轨迹预测模型时,本地决策规划控制系统可以更好地应对环境变化,提高自动驾驶的安全性。
  • 4)提升模型的鲁棒性:大多数数据集是半自动标注的,GT轨迹具有测量噪声。在AV的实际应用中,感知系统中存在各种噪声,包括跟踪误差、位置误差、地图误差等,这些噪声会带来偏差和不确定性。因此,应考虑鲁棒性以提高AV的实际应用的抗干扰能力。此外,除了位置度量(如ADE、FDE),还应应用概率度量(NLL、mADE、mFDE)来提高方法的可信度,并使模型更好地适用于真实世界的自动驾驶。
  • 5)建立基准:需要一个基准,在更复杂的环境中使用标准的统一度量和地图可用数据集。该基准应允许使用避障场景和非凸约束进行长期和多模态预测,并允许使用不同的历史范围预测不同预测范围的未来轨迹。此外,需要一个测试集来对训练的模型进行推理,并将计算时间作为统一的比较。此外,在AV的实际应用中,由于良好的感知和跟踪并不总是完成的,因此基准数据集应包括具有不准确GT的测试集,以更适合实际应用并更好地用于AV。

结论

本文对AVs的轨迹预测问题进行了深入分析,并提出了轨迹预测方法的分类。综述了AV的轨迹预测方法,包括基于物理的方法、经典的基于机器学习的方法、基于深度学习的方法和基于强化学习的方法。讨论了每种方法的性能以及将其应用于真实世界自动驾驶的机会。AV轨迹预测的最新进展令人鼓舞,但它仍然面临着各种挑战,并且在未来有潜在的研究方向,论文已经概述了这些方向,以指导该领域的读者。安全对于自动驾驶至关重要。为了突破AV的瓶颈并确保其安全,AV需要像人类驾驶员一样预测其周围环境。我们希望论文的调查将改进预测系统在AVs中的应用,并鼓励沿着所讨论的方向进行进一步研究。

参考

[1] A Survey on Trajectory-Prediction Methods for Autonomous Driving

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/149534
 
521 次点击