法律状态公告日
法律状态信息
法律状态
2020-06-26
授权
授权
2019-11-01
实质审查的生效 IPC(主分类):B60W50/00 申请日:20190704
实质审查的生效
2019-10-08
公开
公开
技术领域
本发明属于自动驾驶车辆环境认知与决策技术领域,特别涉及一种基于混合动态贝叶斯网络和高斯过程的车辆轨迹预测方法。
背景技术
目前,一种主流的实现车辆自动驾驶的方案是基于“感知-决策-控制”架构。这种分层式架构采用了拟人化的思想,就像人需要用眼、耳、鼻等感觉器官感知周边的环境;然后通过大脑对感知信息的处理,形成对周边的环境的理解和判断,从而作出合理的决策与规划;最后通过人的肢体,如手、脚等执行确定的任务。显然,就像大脑是人体的核心一样,自动驾驶车辆的决策系统起着至关重要的作用。决策系统首先是驾驶情境的认知,需要深层理解感知信息,不断地对驾驶环境的变化进行估计、判断和预测,其次,利用认知信息决定自动驾驶车辆未来的驾驶行为和规划自动驾驶车辆未来的行驶路径。其中,如何提高自动驾驶车辆对驾驶情境的认知程度,并且正确估计、判断和预测周围交通参与者的未来轨迹,是自动驾驶车辆决策系统的核心与挑战。
针对自动驾驶车辆决策系统目前存在的难题与挑战,之前已经有部分科研人员关于自动驾驶车辆行驶过程中对周周车辆的轨迹预测展开研究,总结有如下三大类方法:1、基于物理模型的车辆轨迹预测:它将车辆表示成由物理规则约束的动态实体,根据车辆动力学或运动学模型预测车辆未来的轨迹;2、基于驾驶意图估计的车辆轨迹预测:它将车辆表示成单独的行为实体,根据对当前车辆的意图估计结果,得到车辆在该驾驶意图下对应的未来轨迹;3、基于深度网络的车辆轨迹预测:利用车辆的自然行驶数据,通过深度学习等方法,得到由数据到轨迹的直接映射。
第一类方法,基于物理模型的车辆轨迹预测,只考虑当前车辆的运动特征,适合短时间内的轨迹预测;由于车辆物理模型的选择直接影响轨迹预测结果,而车辆在不同行驶状态下对应的物理模型不同,因此根据单个车辆模型无法准确进行轨迹预测;同时,由于未考虑车辆驾驶员信息(如驾驶意图;驾驶特性),无法预测车辆长期范围内的运动轨迹;除此之外,该方法忽略了车辆周围环境因素对车辆轨迹的影响。第二类方法,基于驾驶意图估计的车辆轨迹预测,它能够预测车辆执行一个特定的操作(如路口转弯:减速、转向、加速转弯)所引起的运动轨迹的变化,部分实现方法也可以预测由于周围环境因素变化引起的车辆轨迹变化,因此这类方法能够进行长时间范围内的车辆轨迹预测,但是,由于没有考虑车辆本身的物理运动特征,所以短时间内的预测误差较大。第三类方法,基于深度网络的车辆轨迹预测,它是由于人工智能和大数据技术的迅速发展而产生的,主要涉及长短期记忆网络(LSTM)、深度贝叶斯网络等,由于该方法的拟合性能极强,能够实现复杂交互场景(如有交通信号灯或者无交通信号灯的交叉路口)下的车辆轨迹预测。但是由于需要大量的标定数据样本,未考虑车辆本身的物理运动特征,且建立的神经网络模型的泛化能力不强、可解释性差的缺点,难以完成多个场景下的车辆轨迹预测,难以根据错误输出结果找到对应的原因,且难以进行预测不确定性的表示。
因此,亟需一种自动驾驶车辆行驶过程中对周周车辆的轨迹预测方法来克服或者至少减轻现有技术的上述缺陷。
发明内容
针对上述技术问题,本发明的目的是提供一种基于混合动态贝叶斯网络和高斯过程的车辆轨迹预测方法,对自动驾驶车辆行驶过程中周周车辆的轨迹进行预测,为自动驾驶车辆的决策层提供较为可靠的信息。
为了实现上述目的,本发明提供了如下技术方案:
一种基于混合动态贝叶斯网络和高斯过程的车辆轨迹预测方法,包括如下步骤:
步骤1、构建自然驾驶数据库;
建立自动驾驶车辆感知系统采集的周围车辆相关序列信息、道路相关序列信息和交通相关序列信息的测试集,以及对上述信息进行驾驶意图和驾驶特性标定的训练集;其中,所述测试集包括混合动态贝叶斯网络的测试集和高斯过程的测试集;所述训练集包括混合动态贝叶斯网络的训练集和高斯过程的训练集;
步骤2、采用混合动态贝叶斯网络,得到周围车辆的短期预测轨迹,以及驾驶意图与驾驶特性的估计概率;
以驾驶员信息、车辆模型选择和车辆状态信息作为隐层变量,以自动驾驶车辆感知系统采集的周围车辆相关序列信息、道路相关序列信息和交通相关序列信息作为观测层变量,搭建混合动态贝叶斯网络模型;通过后验概率推理得到混合动态贝叶斯网络的输出:基于车辆模型的短期轨迹预测以及驾驶意图与驾驶特性的估计概率,并将该输出作为步骤4的输入;
步骤3、建立不同驾驶意图和不同驾驶特性下的高斯过程函数;
包含如下步骤:
步骤3.1、均值函数和协方差函数的设定
以x作为输入,高斯过程函数的表达式如下:
f(x)~GP(u(x),Σ(x,x’))
其中,均值函数u(x)表示某种驾驶意图下的车辆轨迹趋势,因此均值函数能够用来表示期望预测轨迹;协方差函数Σ(x,x’)既表示不同输入x自身的方差,又表示了(x,x’)间的方差,因此协方差函数能够用来表示期望预测轨迹对应的不确定性;
根据不同驾驶意图下的车辆轨迹设定对应的均值函数u(x);
带噪声的均方指数形式表示的协方差函数Σ(x,x’)设定如下:
其中,σf为信号标准差,l为特征长度,σn为观测噪声标准差,δ为克罗内克函数;
步骤3.2、高斯过程函数未知参数的学习
根据步骤3.1设定的均值函数u(x)和协方差函数Σ(x,x’),利用步骤1建立的高斯过程的训练集对涉及的未知参数进行学习,根据对数边际似然函数及其对各未知参数的偏导,利用基于梯度的优化算法得到参数学习结果,从而分别建立不同驾驶意图和驾驶特性下的高斯过程函数;
步骤4、基于混合动态贝叶斯网络和高斯过程进行长期轨迹预测及其不确定性表示;
根据步骤2中混合动态贝叶斯网络输出的驾驶意图和驾驶特性的估计概率,利用最大概率原则确定相应的驾驶意图和驾驶特性,从而根据该驾驶意图和驾驶特性确定步骤3中对应的高斯过程函数;
将步骤2中混合动态贝叶斯网络输出的基于车辆模型的短期预测轨迹作为车辆轨迹序列信息x1,预测的未来轨迹为x2,则(x1,x2)服从的高斯分布如下:
其中,
则已知车辆轨迹x1下的车辆未来可能轨迹x2的条件概率P(x2|x1)服从的高斯分布表达式如下:
其中,u2|1和Σ2|1是变量x2|1对应的均值函数和协方差函数,且(u2|1,Σ2|1)的表达式由下式推导得到:
u2|1=u2+Σ12TΣ11-1(x1-u1)
Σ2|1=Σ22-Σ12TΣ11-1Σ12
最终得到利用最大概率原则确定的驾驶意图和驾驶特性下的车辆长时域内的未来轨迹及其不确定性表示。
所述步骤1中,所述周围车辆相关序列信息包括车辆位置、车辆速度、车辆加速度、车辆横摆角速度,车辆距道路两侧的距离和车辆左右转向尾灯的开闭情况;
所述道路相关序列信息包括道路的结构特征和道路指示标志;
所述交通相关序列信息包括周围交通指示标志和交通信号灯状态。
所述步骤1包括如下步骤:
1.1、驾驶数据的采集
采集在正常行驶过程中自动驾驶车辆感知系统的周围车辆相关序列信息、道路相关序列信息和交通相关序列信息;
1.2、驾驶意图分类与标定
根据车辆所处场景定义周围车辆可能的驾驶意图;针对每一种可能的驾驶意图,选择用于驾驶意图分类与标定的关键特征参数;然后结合步骤1.1采集到的周围车辆相关序列信息,判定周围车辆在一段时间内的驾驶意图并设定相应的驾驶意图标签;
其中,所述车辆所处场景由自动驾驶车辆的智能导航系统获得,车辆所处场景包括高速场景、山路场景、城市正常直行道路场景、城市有交通信号灯交叉路口场景、城市无交通信号灯交叉路口场景;
所述驾驶意图包括沿当前道路直行、沿当前道路转弯、左换道、右换道、左转弯、右转弯、掉头、停车与起步;
所述用于驾驶意图分类与标定的关键特征参数包括车辆横向位置、车辆横向速度、车辆横摆角速度、车辆距道路两侧的距离和车辆左右转向尾灯开闭情况;
1.3、驾驶特性的分类与标定
首先定义周围车辆可能的驾驶特性,选择用于驾驶特性分类与判定的关键特征参数,根据步骤1.1采集到的周围车辆相关序列信息,结合步骤1.2获得的周围车辆在一段时间内的驾驶意图,判定周围车辆在某一驾驶意图下的驾驶特性并设定相应的驾驶特性标签;
所述驾驶特性包括缓慢驾驶、平稳驾驶和急促驾驶;
所述用于驾驶特性分类与判定的关键特征参数包括车辆纵向速度、车辆横向速度、车辆纵向加速度、车辆横向加速度和车辆横摆角速度;
1.4、训练集与测试集的建立
将步骤1.1采集的周围车辆相关序列信息、道路相关序列信息和交通相关序列信息作为混合动态贝叶斯网络MDBN的测试集;
取对应于某一驾驶意图和驾驶特性下的车辆横向位置和纵向位置的前段时刻的序列信息作为高斯过程的一个测试集;
步骤1.1采集的周围车辆相关序列信息、道路相关序列信息和交通相关序列信息经步骤1.2驾驶意图分类与标定和1.3驾驶特性的分类与标定后,得到混合动态贝叶斯网络MDBN的训练集;
根据混合动态贝叶斯网络MDBN的训练集,将对应于某一驾驶意图和驾驶特性下的车辆横向位置和纵向位置的全部序列信息作为高斯过程GP的一个训练集。
所述步骤2中,所述观测层变量、隐层变量以及两变量间的连接关系,利用自然驾驶数据和改进遗传算法得到;连接关系对应的概率参数通过最大似然法得到。
所述步骤2中,所述车辆模型包括匀速模型、匀加速模型、匀速转向模型;
所述车辆状态信息包括车辆横向位置、车辆横向速度、车辆横向加速度、车辆纵向位置、车辆纵向速度、车辆纵向加速度以及车辆横摆角速度。
所述步骤2中,所述隐层变量进一步包括其他相关高层隐含变量,所述其他相关高层隐含变量包括车辆和环境的风险评估、车辆间的交互作用;
所述观测层变量进一步包括与隐层变量的其他相关高层隐含变量相对应的其他相关底层观测信息。
所述步骤2具体包括如下步骤:
2.1、定义混合动态贝叶斯网络模型的隐层和观测层节点
隐层节点包含三层信息:第一层是驾驶员信息变量D,第二层是车辆模型选择变量M,第三层是车辆状态信息变量S;隐层变量集合H={D,M,S},其中{D,M}为离散变量,{S}为连续变量;
观测层节点主要包含一层信息:自动驾驶车辆感知系统采集的周围车辆相关序列信息、道路相关序列信息和交通相关序列信息;观测层变量集合为{O},且为连续变量;
2.2、网络结构的优化
给定变量集{D,M,S,O}和训练集T,通过学习与搜索的方式找到一个最佳匹配此训练集T的网络N=(B,θ),且使用一个准则函数作为匹配程度的度量;其中,B表示网络结构,θ表示网络的参数;
2.3、网络节点间的未知参数学习
部分隐层变量的条件概率通过数据统计的方法获得,其余隐层和观测量间的条件概率利用步骤1得到的混合动态贝叶斯网络MDBN的训练集进行参数学习,使用最大似然估计法来解决,已知训练样本D下关于网络参数θ的似然函数L(θ)=logP(D|θ),利用基于梯度的优化算法求解最优解
2.4、引入观测层变量下的后验概率推理
后验概率指已知观测层变量下隐层变量的概率分布P(H|O),即在步骤1得到的混合动态贝叶斯网络MDBN的测试集下,推断相应的驾驶意图、驾驶特性、车辆模型与车辆状态的过程,得到基于车辆模型的短期轨迹预测以及驾驶意图与驾驶特性的估计概率。
所述步骤2中,所述后验概率推理为一种假定密度滤波近似推理,具体过程如下:
1)预测:用t时刻的概率分布得到t+1时刻的联合概率分布;设t时刻所有离散隐层变量{Mt,Dt}的联合分布为
则t+1时刻的离散隐层变量{Mt,Dt,Mt+1,Dt+1}联合分布为:
t+1时刻连续隐层变量{St+1}的条件概率为:
2)更新:引入t+1时刻的观测变量来获得新的概率分布;设车辆模型的观测变量为{V},且满足
其中,
t+1时刻连续隐层变量{St+1}的条件概率为:
3)边缘化:将由上得到的t+1时刻概率分布中t+1时刻前的变量边缘化,只保留当前t+1时刻下变量的概率分布,从而用于下次预测及更新步骤的迭代:
其中,D表示驾驶员信息变量,驾驶员信息包括驾驶意图和驾驶特性;M表示车辆模型选择变量,车辆模型包括匀速模型、加速模型、匀速转向模型;S表示车辆状态信息变量,车辆状态信息包括车辆横向位置、车辆横向速度、车辆横向加速度、车辆纵向位置、车辆纵向速度、车辆纵向加速度以及车辆横摆角速度;利用
所述步骤3.2中,选择最大似然法进行高斯过程的未知参数学习。
所述步骤3.2的具体过程为:
根据步骤3.1设定的均值函数u(x)和协方差函数Σ(x,x’),利用步骤1建立的高斯过程GP训练集DGP(X,Y)={(xi,yi),i=1:N1}对涉及的未知参数进行学习,其中,N1为训练样本的序列长度,设均值函数和协方差函数的未知参数为Θ={θi,i=1:N2},其中,N2为参数个数,其对数边际似然函数logP(Y|X,Θ)为:
其中,
选择最大似然法,通过下式求解得到高斯过程的未知参数
利用基于梯度的优化算法得到参数学习结果,其中对未知参数Θ的各分量θi求偏导如下式所示:
其中γ=∑Y-1(Y-uY),
通过高斯过程的参数学习,分别建立不同驾驶意图和驾驶特性下的高斯过程函数。
与现有技术相比,本发明的有益效果在于:
本发明的基于混合动态贝叶斯网络和高斯过程的车辆轨迹预测方法,通过结合混合动态贝叶斯网络(Mixture Dynamic Bayesian Network,简称MDBN)和高斯过程(Gaussian Process,简称GP)实现基于车辆模型融合和数据学习的车辆轨迹预测,相比于目前基于车辆物理模型、基于驾驶意图估计、基于大数据学习的三大类方法,本发明通过车辆自然驾驶数据学习MDBN和GP的参数,利用MDBN融合多个车辆运动学模型,得到短期轨迹预测以及驾驶意图和驾驶特性的估计概率,接着,利用GP进行长期轨迹预测及预测不确定性的表示。该方法既能够考虑车辆物理运动模型下的短期预测特性,又可以考虑车辆驾驶员信息进行长期轨迹预测与不确定性表示,相比于目前的车辆轨迹预测方法,本发明结合了车辆模型、抽象意图和数据驱动,MDBN和GP模型的扩展性强,可以适用不同的驾驶场景,能够结合更多有效的情境信息,比如道路信息、交通信息。
附图说明
图1为本发明基于混合动态贝叶斯网络和高斯过程的车辆轨迹预测方法框架图;
图2为本发明混合动态贝叶斯网络(MDBN)原理图。
具体实施方式
下面结合附图和实施例对本发明进行进一步说明。
如图1所示,基于混合动态贝叶斯网络和高斯过程的车辆轨迹预测方法,包括如下步骤:
步骤1、构建自然驾驶数据库;
建立自动驾驶车辆感知系统采集的周围车辆相关序列信息、道路相关序列信息和交通相关序列信息的测试集,以及对上述信息进行驾驶意图和驾驶特性标定的训练集;其中,所述测试集包括混合动态贝叶斯网络的测试集和高斯过程的测试集;所述训练集包括混合动态贝叶斯网络的训练集和高斯过程的训练集;
所述周围车辆相关序列信息包括车辆位置、车辆速度、车辆加速度、车辆横摆角速度,车辆距道路两侧的距离和车辆左右转向尾灯的开闭情况;
所述道路相关序列信息包括道路的结构特征(如直道和弯道)和道路指示标志;
所述交通相关序列信息包括周围交通指示标志和交通信号灯状态。
步骤1.1、驾驶数据的采集
为了训练混合动态贝叶斯网络模型和高斯过程中的函数模型,需要大量的训练样本,因此需要采集在正常行驶过程中自动驾驶车辆感知系统的周围车辆相关序列信息、道路相关序列信息和交通相关序列信息;其中,自动驾驶车辆感知系统包括传感器技术(如雷达、摄像头、导航定位)和无线通信技术(如V2V、V2I),感知系统处理得到的数据类型包括物理数据和图像数据。为了配合之后网络模型训练的需要,根据混合动态贝叶斯网络MDBN观测层的需要,采集并处理得到相关序列信息,包括由物理数据处理得到车辆位置、车辆速度、车辆加速度、车辆横摆角速度,车辆距道路两侧的距离,由图像数据处理得到车辆左右转向尾灯开闭情况、道路的结构特征、道路指示标志、周围交通指示标志、交通信号灯状态。
步骤1.2、驾驶意图分类与标定
根据车辆所处场景定义周围车辆可能的驾驶意图;针对每一种可能的驾驶意图,选择用于驾驶意图分类与标定的关键特征参数;然后结合步骤1.1采集到的周围车辆相关序列信息,判定周围车辆在一段时间内的驾驶意图并设定相应的驾驶意图标签。
其中,所述车辆所处场景可由自动驾驶车辆的智能导航系统获得,车辆所处场景包括高速场景、山路场景、城市正常直行道路场景、城市有交通信号灯交叉路口场景、城市无交通信号灯交叉路口场景等。
所述驾驶意图包括沿当前道路直行、沿当前道路转弯、左换道、右换道、左转弯、右转弯、掉头、停车与起步。
所述用于驾驶意图分类与标定的关键特征参数包括车辆横向位置、车辆横向速度、车辆横摆角速度、车辆距道路两侧的距离和车辆左右转向尾灯开闭情况。
例如,如果车辆处于高速场景下,那么周围预测车辆可能的驾驶意图有沿当前道路直行、沿当前道路转弯、左换道和右换道,这四类驾驶意图标签分别设为1、2、3、4。针对沿当前道路直行的驾驶意图,选择车辆横向位置和车辆距道路两侧的距离作为关键特征参数;针对沿当前道路转弯的驾驶意图,选择车辆横摆角速度和车辆距道路两侧的距离作为关键特征参数;针对左换道和右换道的驾驶意图,选择车辆横向位置和车辆距道路两侧的距离作为关键特征参数。假设步骤1.1采集的周围某辆车在一段时间内的相关序列信息为车辆横向位置和车辆距道路两侧的距离均保持不变,则可判断该车辆在这段时间内的驾驶意图为沿当前道路直行,其驾驶意图标签设为1。
步骤1.3、驾驶特性的分类与标定
由于在同一意图下驾驶员的驾驶特性不同,导致车辆的行驶轨迹发生明显差异。首先定义周围车辆可能的驾驶特性,选择用于驾驶特性分类与判定的关键特征参数,根据步骤1.1采集到的周围车辆相关序列信息,结合步骤1.2获得的周围车辆在一段时间内的驾驶意图,判定周围车辆在某一驾驶意图下的驾驶特性并设定相应的驾驶特性标签。
所述驾驶特性包括缓慢驾驶、平稳驾驶和急促驾驶;
所述用于驾驶特性分类与判定的关键特征参数包括车辆纵向速度、车辆横向速度、车辆纵向加速度、车辆横向加速度和车辆横摆角速度。
例如,如果处于高速场景下的车辆,将三类驾驶特性标签分别设为1、2、3。针对沿当前道路直行的驾驶意图,选择车辆纵向速度、车辆纵向加速度作为关键特征参数;针对沿当前道路转弯的驾驶意图,选择车辆横摆角速度作为关键特征参数;针对左换道和右换道的驾驶意图,选择车辆横向速度和车辆横向加速度作为关键特征参数。假设步骤1.2得到周围某车辆的驾驶意图为沿当前道路直行,步骤1.1采集的该车在一段时间内的相关序列信息为车辆纵向速度为60km/h左右、车辆纵向加速度在零值附近波动,则可判断该车辆在沿当前道路直行的驾驶意图下的驾驶特性为缓慢驾驶,其驾驶特性标签设为1。
步骤1.4、训练集与测试集的建立
所述训练集是:为了进行网络模型参数学习准备的数据集。将周围车辆相关序列信息、道路相关序列信息和交通相关序列信息进行驾驶意图和驾驶特性的标定。
所述测试集是:为了验证学习后的网络模型参数的有效性而准备的数据集。将周围车辆相关序列信息、道路相关序列信息和交通相关序列信息当作网络模型的输入。
将步骤1.1采集的周围车辆相关序列信息、道路相关序列信息和交通相关序列信息作为混合动态贝叶斯网络MDBN的测试集;
取对应于某一驾驶意图和驾驶特性下的车辆横向位置和纵向位置的前段时刻的序列信息作为高斯过程的一个测试集;
步骤1.1采集的周围车辆相关序列信息、道路相关序列信息和交通相关序列信息经步骤1.2驾驶意图分类与标定和1.3驾驶特性的分类与标定后,得到混合动态贝叶斯网络MDBN的训练集;
根据混合动态贝叶斯网络MDBN的训练集,将对应于某一驾驶意图和驾驶特性下的车辆横向位置和纵向位置的全部序列信息作为高斯过程GP的一个训练集。
步骤2、采用混合动态贝叶斯网络,得到周围车辆的短期预测轨迹,以及驾驶意图与驾驶特性的估计概率。
以驾驶员信息、车辆模型选择和车辆状态信息作为隐层变量,以自动驾驶车辆感知系统采集的周围车辆相关序列信息、道路相关序列信息和交通相关序列信息作为观测层变量,搭建混合动态贝叶斯网络模型;通过后验概率推理得到混合动态贝叶斯网络MDBN的输出:基于车辆模型的短期轨迹预测以及驾驶意图与驾驶特性的估计概率,并将该输出作为步骤4的输入。
所述观测层变量、隐层变量以及两变量间的连接关系,利用自然驾驶数据和改进遗传算法得到;连接关系对应的概率参数通过最大似然法得到。
所述车辆模型包括匀速模型、匀加速模型、匀速转向模型。
所述车辆状态信息包括车辆横向位置、车辆横向速度、车辆横向加速度、车辆纵向位置、车辆纵向速度、车辆纵向加速度以及车辆横摆角速度。
优选地,由于网络节点的可扩展性,如果考虑其他高级语义可以添加变量,所述隐层变量进一步包括其他相关高层隐含变量,所述其他相关高层隐含变量包括车辆和环境的风险评估、车辆间的交互作用。所述观测层变量进一步包括与隐层变量的其他相关高层隐含变量相对应的其他相关底层观测信息。
所述步骤2具体包括如下步骤:
步骤2.1、定义混合动态贝叶斯网络模型的隐层和观测层节点
如图2所示,混合动态贝叶斯网络主要由节点和边组成,节点代表变量,边代表变量间的依存关系,节点分为隐层节点和观测层节点,网络模型的表示主要根据车辆所处的交通场景定义隐层和观测层节点的数量与含义,现定义如下:
①隐层节点包含三层信息:
第一层是驾驶员信息变量D,包括驾驶意图和驾驶特性,体现了在某一车辆所处场景下周围车辆的可能驾驶意图(比如:高速场景的驾驶意图有沿当前道路直行、沿当前道路转弯、左换道、右换道)和驾驶特性(比如缓慢驾驶、平稳驾驶、急促驾驶);
第二层是车辆模型选择变量M,用于选择在某一观测序列下的车辆模型。车辆模型包括匀速模型、加速模型、匀速转向模型;
第三层是车辆状态信息变量S,选择车辆模型所需要的车辆状态信息。车辆状态信息包括车辆横向位置、车辆横向速度、车辆横向加速度、车辆纵向位置、车辆纵向速度、车辆纵向加速度以及车辆横摆角速度。如图2所示,隐层变量集合H={D,M,S},其中{D,M}为离散变量,{S}为连续变量。
②观测层节点主要包含一层信息:
观测信息包括自动驾驶车辆感知系统采集的周围车辆相关序列信息、道路相关序列信息和交通相关序列信息,其具体内容见步骤1。如图2,观测层变量集合为{O},且为连续变量。
混合动态贝叶斯网络的表达形式如图2所示,它是按时间序列展开的贝叶斯网络,由于增加了车辆状态信息变量S,此时的隐层变量既有离散变量又有连续变量,故称为混合动态贝叶斯网络。
步骤2.2、网络结构的优化
网络结构的优化也称为网络模型的结构学习,是关于已知网络参数下的网络结构确定问题,即给定变量集{D,M,S,O}和训练集T,通过学习与搜索的方式找到一个最佳匹配此训练集T的网络N=(B,θ),且使用一个准则函数作为匹配程度的度量。其中,网络的结构是指定义的网络节点间的连接关系,B表示网络结构,θ表示网络的参数。
如图2所示,如果隐层变量之间、隐层变量与观测层变量之间存在一定的概率关系,则用有向边将它们联系起来,否则两变量相互独立,因此,由节点和有向边构成了网络的结构;如果变量间存在有向边,则这一有向边就赋予了变量间的条件概率,这些条件概率就是网络的参数。网络的结构和参数可以根据数据学习得到,也可以人为定义。
对于混合动态贝叶斯网络MDBN的结构优化问题,由于其计算量相对较大,大多数动态贝叶斯网络结构根据实际问题人为定义,尤其在网络节点数量较多的情况下。这里,由于定义的网络节点中,部分强关联的节点可以预先定义其连接关系以减少计算量,如图2所示,图中节点M和节点S是具有强关联性的,可以确定一条有向边。当定义一定量的节点变量并且给定一定量的数据时,可以通过启发式算法进行网络结构学习,比如贪婪算法机制的遗传算法、基于概率模型进化算法等。当有足够的数据支撑时,利用数据学习网络结构使得网络结构能够与数据更好地吻合。
步骤2.3、网络节点间的未知参数学习
网络节点间的未知参数学习也称为网络模型的参数学习,是关于已知网络结构下的网络参数确定问题,其中,网络的参数就是网络模型里的条件概率。
对于混合动态贝叶斯网络MDBN的参数学习问题,由于部分隐层变量的条件概率可以通过数据统计的方法获得,从而减少一定的计算量,其余隐层和观测量间的条件概率可以利用步骤1得到的混合动态贝叶斯网络MDBN训练集进行参数学习,使用最大似然估计法(Maximum Likelihood Estimation,MLE)来解决,已知训练样本D下关于网络参数θ的似然函数L(θ)=logP(D|θ),利用基于梯度的优化算法求解最优解
所述结构学习和参数学习共同构成网络模型的学习内容,而网络模型学习内容的理论需要下一步网络模型的推理内容的支撑,这里为了解释方便先解释了网络模型的学习内容。
2.4、引入观测层变量下的后验概率推理
引入观测层变量下的后验概率推理也称为网络模型的推理。主要解决给定网络参数和结构下的后验概率计算问题,其中,后验概率指已知观测层变量下隐层变量的概率分布P(H|O),即在已知各观测变量的时间序列信息(即步骤1得到的混合动态贝叶斯网络MDBN测试集)下,推断相应的驾驶意图、驾驶特性、车辆模型与车辆状态的过程。推理方法主要分为精确推理和近似推理,精确推理算法有向前向后算法(Forward-Backward SmoothingAlgorithm)、分解树算法(Unrolled Junction Tree Algorithm)等,由于动态贝叶斯网络的序列延展性,采用精确算法容易导致NP hard问题,因此采用合适的近似算法,比如ADM(Moment Matching)、重要性采样(Importance Sampling)、马尔科夫蒙特卡洛(MCMC)、粒子滤波(Particle Filtering)等。
对于图2中的MDBN框架,这里给出一种假定密度滤波ADF(Assumed DensityFiltering)近似推理过程:
①预测:用t时刻的概率分布得到t+1时刻的联合概率分布。设t时刻所有离散隐层变量{Mt,Dt}的联合分布为
则t+1时刻的离散隐层变量{Mt,Dt,Mt+1,Dt+1}联合分布为:
t+1时刻连续隐层变量{St+1}的条件概率为:
②更新:引入t+1时刻的观测变量来获得新的概率分布。设车辆模型的观测变量为{V},且满足
其中,
t+1时刻连续隐层变量{St+1}的条件概率为:
③边缘化:将由上得到的t+1时刻概率分布中t+1时刻前的变量边缘化,只保留当前t+1时刻下变量的概率分布,从而用于下次预测及更新步骤的迭代:
其中,D表示驾驶员信息变量,驾驶员信息包括驾驶意图和驾驶特性;M表示车辆模型选择变量,车辆模型包括匀速模型、加速模型、匀速转向模型;S表示车辆状态信息变量,车辆状态信息包括车辆横向位置、车辆横向速度、车辆横向加速度、车辆纵向位置、车辆纵向速度、车辆纵向加速度以及车辆横摆角速度。利用
通过步骤2.1定义了各网络节点的含义;步骤2.2确定了网络节点的连接关系;步骤2.3确定了网络的参数,从而由步骤2.4引入观测变量下的后验概率推理,得到基于车辆模型的短期预测轨迹以及驾驶意图和驾驶特性的估计概率,将其与步骤4中的高斯过程相融合得到最终的预测轨迹。
步骤3、建立不同驾驶意图和不同驾驶特性下的高斯过程函数。
由于在同一意图下驾驶员的驾驶特性不同,会导致车辆的行驶轨迹发生明显差异,因此根据不同的驾驶意图和驾驶特性,分别建立不同驾驶意图和不同驾驶特性下的高斯过程函数。
不确定性对于车辆轨迹预测而言主要由车辆感知系统存的误差以及周围交通环境的动态性和随机性造成的,这些不确定因素可能导致车辆轨迹预测结果出现偏差。
建立这些意图下不同驾驶特性的车辆轨迹高斯过程函数。高斯过程主要包含如下步骤:
步骤3.1、均值函数和协方差函数的设定
以x作为输入,高斯过程函数的表达式如下:
f(x)~GP(u(x),Σ(x,x’))
其中均值函数u(x)表示某种驾驶意图下的车辆轨迹趋势,因此可以均值函数可以用来表示期望预测轨迹;协方差函数Σ(x,x’)既表示不同输入x自身的方差,又表示了(x,x’)间的方差,因此协方差函数可以用来表示期望预测轨迹对应的不确定性。
均值函数有多种形式,比如常数、线性函数、各种非线性函数等,这里根据不同驾驶意图下的车辆轨迹设置对应的均值函数u(x),比如高速场景下,沿当前道路直行驾驶意图下的均值函数可设为常数,沿当前道路转弯驾驶意图下的均值函数可设为二次函数,左换道或右换道驾驶意图下均值函数可设为五次多项式形式。协方差函数也称为核函数,常用的核函数有多种,比如线性函数、高斯核函数、对称核函数等,不同核函数具有不同的特性,考虑车辆行驶轨迹的平滑性高,这里的核函数选择均方指数形式,除此之外,由于考虑到预测不确定性因素的存在,需要引入噪声变量,这里将其设为高斯白噪声,因此,带噪声的均方指数形式表示的协方差函数Σ(x,x’)设定如下:
其中,σf为信号标准差,l为特征长度,σn为观测噪声标准差,δ为克罗内克Kronecker函数。
步骤3.2、高斯过程函数未知参数的学习
根据步骤3.1设定的均值函数u(x)和协方差函数Σ(x,x’),利用步骤1建立的高斯过程GP训练集DGP(X,Y)={(xi,yi),i=1:N1}对涉及的未知参数进行学习,其中,N1为训练样本的序列长度,设均值函数和协方差函数的未知参数为Θ={θi,i=1:N2},其中,N2为参数个数,其对数边际似然函数logP(Y|X,Θ)为:
其中,
选择最大似然法,通过下式求解得到高斯过程的未知参数
利用基于梯度的优化算法可以得到参数学习结果,其中对未知参数Θ的各分量θi求偏导如下式所示:
其中γ=∑Y-1(Y-uY),它是用来简化表达式的算子。
通过高斯过程的参数学习,可以分别建立不同驾驶意图和驾驶特性下的高斯过程函数。由于该算法可能导致局部最优,因此需要多设置几组初始参数。
步骤4、基于混合动态贝叶斯网络MDBN和高斯过程GP进行长期轨迹预测及其不确定性表示。
通过混合动态贝叶斯网络MDBN得到的结果,适合于短时间内的预测,因此需要结合高斯过程在短期预测结果上进行长期的轨迹预测,同时描述预测不确定性。
这里,根据步骤2中混合动态贝叶斯网络MDBN输出的驾驶意图和驾驶特性的估计概率,利用最大概率原则确定相应的驾驶意图和驾驶特性,从而根据该驾驶意图和驾驶特性确定步骤3中对应的高斯过程函数,将步骤2中混合动态贝叶斯网络MDBN输出的基于车辆模型的短期预测轨迹作为x1,预测的未来轨迹为x2,则(x1,x2)服从的高斯分布如下:
其中,
则已知车辆轨迹x1下的车辆未来可能轨迹x2的条件概率P(x2|x1)服从的高斯分布表达式如下:
其中,u2|1和Σ2|1是变量x2|1对应的均值函数和协方差函数,且(u2|1,Σ2|1)的表达式由下式推导得到:
u2|1=u2+∑12T∑11-1(x1-u1)
∑2|1=∑22-∑12T∑11-1∑12
最终得到利用最大概率原则确定的驾驶意图和驾驶特性下的车辆长时域内的未来轨迹及其不确定性表示。
步骤4结合了步骤2与步骤3完成从短期预测向长期预测的转变,同时对预测不确定性进行了表示。
本发明设计的基于混合动态贝叶斯网络和高斯过程的车辆轨迹预测方法,主要有三大阶段:
第一阶段是根据驾驶场景进行混合动态贝叶斯网络的定义、推理以及相关的数据学习,其主要作用是为下一阶段提供依据。将网络模型观测变量的一段时序数据输入到MDBN网络模型,得到周围车辆这段时间内的驾驶意图和驾驶特性的估计概率以及基于车辆模型的短期预测轨迹;
第二阶段是根据不同驾驶意图和驾驶特性建立相应的高斯过程函数,其主要作用是进行车辆长期轨迹预测以及对预测不确定性进行表示。根据某一驾驶意图和驾驶特性下的车辆横向位置和纵向位置的部分序列信息,计算已知部分车辆轨迹序列信息下的车辆未来可能的轨迹。
第三阶段是根据第一阶段的输出结果,结合第二阶段的内容,完成确定驾驶意图和驾驶特性下的车辆长期范围内的轨迹预测及预测不确定性的表示。
机译: 可移动物体,即车辆,动作检测和预测方法,涉及基于轨迹之间和/或轨迹的局部区间之间的相似性的度量来产生对象的预期运动的假设。
机译: 基于长短期内存网络和高斯过程回归的船舶运动预测方法
机译: 基于高斯过程建模的能源利用预测方法