陈雪梅,李梦溪,王子嘉,欧洋佳欣
(北京理工大学 机械与车辆学院,北京 100081)
国内无人驾驶车辆现已能够在固定场景或者简单城市环境下行驶。然而,真正实现复杂城市环境下的车辆自主行驶,依然面临许多需要解决的关键技术问题,其中无人驾驶车辆城市交叉口通行决策就是制约其快速发展的关键问题之一。相比一般道路通行,受到交叉口型式、交通流量、交通参与者运动不确定性等多因素影响,城市交叉口通行比一般车道内行为决策更加复杂。为了保障无人驾驶车辆在交叉口能够安全且实时地决策并通行,需要对周边车辆运动轨迹进行长时(>3 s)精准预测。
国内外许多学者针对车辆轨迹预测开展了大量、系统的研究。现有的轨迹预测方法为基于物理学模型[1-2]、基于运动模式[3-4]和基于交互感知的轨迹预测方法[5-6]。ZHANG Ruifeng等[7]运用卡尔曼滤波 (Kalman Filter)和基于恒定车速的物理学模型对障碍物车辆进行状态估计。该方法由于没有考虑当前状态的不确定性,仅适用于短时(<1 s)轨迹预测。KIM等[8]利用长短期记忆(Long Short-Term Memory,LSTM)网络来预测多模态的运动模式,网络输入的是车辆的历史轨迹点。该方法依赖于训练数据,并且存在无法预测未知环境中未知风险的缺点,很难在复杂城市交叉口得以应用。BRAND等[9]使用基于交互感知的运动模型来预测车辆的轨迹,该方法考虑车辆之间的关联,虽然可长时准确预测,但耗费大量计算资源,实时性差。以上的算法都没有很好地兼顾数据量、算法实时性和预测准确性的关系,且都只适用于简单的驾驶场景,无法实现周边车辆的长时且实时预测,特别是像城市交叉口这种由于大量车辆穿行而产生冲突的热点区域,其对周边车辆轨迹做出实时正确的预测有着极高的要求。针对城市交叉口,也有大量国内外学者对此展开大量研究[10-12]。KAWASAKI等[13]利用交叉口斑马线作为速度控制点提出了一个期望速度模型来对交叉口其他车辆进行轨迹预测,该模型能预测任意位置车辆左转的轨迹。但是,该模型主要针对转向车辆建模,没有涵盖周边车辆的所有运动模式。北京理工大学梅维杰[14]针对3种不同运动模式(静止、直行和转向)利用GMM对其建模,当识别轨迹时长为1 s时,模型对运动模式的预测较为准确,并且保证了实时性的要求,但仍然不能满足城市交叉口通行安全的需求。
本文首先利用路基和实车数据采集得到车辆的轨迹数据,利用GMM混合模型对城市交叉路口周边车辆的运动模式进行提取,再对每一种运动模式建立GPR预测模型来完成对周边处于各种运动状态的车辆轨迹预测,最后在路基和实车数据集上对算法的有效性进行验证。该算法能够以较小的数据量实现对车辆轨迹的长时精准实时的预测,较好地解决了其他算法存在的数据需求大、实时性差和适用车辆单一的问题。
本研究利用路基和实车数据采集系统采集北京市海淀区魏公村路口车辆通行数据,采集频率为10 Hz。
通过手动和自动标定软件相结合的方式提取出目标车辆的位置、速度、加速度等运动信息进而组成训练和测试模型需要的轨迹数据。为了减少标定带来的标定误差和数据采集的系统误差,应用对称指数移动平均法[15](sEMA)对原始数据进行预处理。sEMA是以依次递减的形式对样本数据加权,使离目标均值最近的样本数据的权重高,边缘样本数据的权重最小。具体公式为:
部分左转车辆在平滑后的位置坐标(x,y)、横向速度和纵向速度、加速度等数据,见表1。
表1 交叉口部分左转车辆数据
实车数据采集车辆(图1)为北京理工大学智能车辆研究所比亚迪“速锐”线控智能车辆。本车搭载多动态要素跟踪系统,通过该系统可以采集到本车及本车周围其他车辆的轨迹。实车采集的数据主要用于后续对模型和算法的验证。
图1 实车数据采集平台
GMM[16]利用高斯概率密度函数(Probability Density Function,PDF)精确地量化事物,将一个事物分解为若干基于PDF行程的模型。根据PDF参数不同,可将每一个高斯模型看作一种类别,输入1个样本x,即可通过PDF计算其值,然后通过1个阈值来判断该样本属于哪个高斯模型,进而确定样本的类别。GMM具有多个模型,划分更为精细,适用于多类别的划分,可以应用于复杂对象建模。因此,本文应用GMM实现对交叉路口周边车辆的运动模式识别的建模。
GMM的定义如式(2)和式(3)所示。
式中:p(x)为混合高斯分布的表达式;πk为第k个高斯成分的影响因子,满足约束;为单个高斯分布密度函数;μk为平均值;为标准差;为方差。由此可见,求混合高斯分布的过程,就是对GMM参数πk,μk,k∑的求取。基于GMM的运动模式识别模型的模型参数选取将在2.1节和2.2节中进行具体分析。
通过数据分析可以得出,无人驾驶车辆城市交叉路口运动模式包括左转先行、左转让行、直行先行、直行让行和右转5种决策可能。
梅维杰[14]通过分析由激光雷达获得的车辆运动数据发现,转向运动的方位角θ和相对航向角Δθ随着时间呈线性变化,左转向与右转向的变化相反,而直线运动基本不发生变化,如图2所示。因此,本研究选取航向角Δθ和方位角θ为特征参数用于区分车辆的左转、直行和右转状态。通过分析正常通行车辆和让行车辆穿越交叉口的加速度分布(图3),可以发现两种运动模式的加速度分布具有不同的特性,正常行驶的左转和直行车辆的加速度普遍分布在0 m/s2附近的区间;而让行模式车辆的加速度普遍分布在-0.5 m/s2附近的区间,两者加速度呈现不同的密度分布。因此,选择加速度为特征参数用于区分车辆的直行和让行状态。
图2 三种状态下的轨迹参数变化
通过上述分析,本文构建动态障碍物的运动状态向量M如式(4)所示。
式中:[kΔφ为相对航向角的变化率;kθ为相对方位角的变化率;[kΔφ和kθ分别用来区分车辆是转向还是直行;a为目标车辆的加速度,用来区分车辆是让行还是正常行驶;n为在运动模式识别中使用运动状态向量的长度,选取n=6。
本文选择使用0均值(z-crore)标准化处理状态向量,标准化状态向量可以消除不同量纲对后续运动模式识别产生的影响,有利于提高识别模型训练的收敛速度。对于长度是n的状态向量M,其概率分布函数如式(5)所示。
式中:K为GMM中高斯分布的个数,在这里同样代表运动模式的个数,由于提前给定了运动模式的个数,所以运动模式预测问题就变成了GMM参数kλ的估计问题。对于每一个状态向量M,可以求出对应的每一个组件kλ的后验概率,其中状态向量对应概率最大的类别就是运动模式识别的最终结果,如式(6)所示。
选取600组驾驶行为轨迹作为运动模式识别模型的训练数据,其中,左转、右转和直行的轨迹数据分别有200条,左转让行、直行让行和正常行驶的轨迹数据各100条。
选取聚类个数K=3,采用GMM对[kΔφ和kθ状态向量数据进行训练建模得到穿行意图(左转、右转和直行)的识别模型,然后对左转和直行轨迹数据再次使用GMM对加速度状态向量数据建模得到让行意图(正常行驶和让行)的识别模型,最后得到完整运动模式识别模型的识别过程如图4所示。
图4 目标运动模式识别模型
GPR[17]算法是一种近几年才发展起来的数据驱动建模方法,并且已经成为机器学习领域的研究重点。由于GPR模型较高的预测精度,本文应用GPR模型对车辆的轨迹进行长时精准预测分析。
使用路基平台采集的轨迹数据训练GPR模型并优化其超参数。GPR模型训练过程如图5所示。
图5 GPR模型训练过程
由于局部核函数具有较强的非线性逼近能力,而城市交叉口车辆轨迹数据测试集的运动参数空间与训练集的运动参数空间基本相同(即测试集的数据分布在训练集的领域),采用局部核函数可以很好地描述输出与输入之间的非线性映射关系。因此,本文采用局部核函数中的一种平方指数协方差函数(SE)作为核函数。
对于超参数的训练寻优,采用共轭梯度优化算法搜索最优超参数,收敛标准设为最大迭代步数为100或迭代步之间的相对目标值小于0.001。
本文利用路基平台采集的轨迹数据训练GPR模型并优化其超参数,训练过程如图5所示。为了减小模型的复杂度,将加速度在X和Y方向解耦。使用目标的位置和速度[x(t),y(t),vx(t),vy(t)]作为预测模型的输入,X方向上的模型预测值是加速度ax(t),Y方向上的模型预测值是加速度av(t),通过GPR算法建立加速度与车辆当前位置和速度的映射关系,训练得到的GPR加速度预测模型如图6所示。
图6 GPR加速度预测模型
GPR加速度预测模型训练完成后,采用物理学模型计算即可得到下一步车辆的运动状态,本文采用CA[18]模型计算得到下一步的车辆运动状态,通过下一步车辆的运动状态得到下一步车辆的加速度,进而迭代计算出未来多步的车辆轨迹,GPR轨迹预测模型如图7所示。
图7 GPR轨迹预测模型
由于运动模式差异,本文将转向车辆轨迹和直行车辆轨迹进行分开验证。为了验证不同运动状态下的车辆轨迹预测效果,把轨迹数据分成不同片段,将直行车辆轨迹预测时长分别设为3 s、4 s、5 s和6 s,转向车辆轨迹预测时长设为3 s、4 s和5 s,每组测试数据有80条轨迹片段。
采用均方根误差(Root Mean Square Error,RMSE)来计算预测模型的误差,如式(7)所示:
直行车辆轨迹的预测误差如图8a所示,在3 s、4 s、5 s、6 s的长时预测过程中,GPR模型的RMSE值均较大程度地小于恒定加速度(Constant Acceleration,CA)模型,相对于目前常用的CA模型,GPR轨迹预测模型的预测更加准确。转向车辆轨迹的预测误差如图8b所示,同理,相对于常用的恒定转向率和速度(Constant Turn Rate and Velocity,CTRV)模型[19],预测模型对于转向车辆的长时轨迹预测更加准确。
图8 直行和转向车辆预测误差结果
从测试集中挑出一条转向轨迹数据,对目标运动模式识别模型和GPR轨迹预测模型进行了统一验证。图9中是一条从西往北左转的车辆加速度和轨迹的预测结果,通过运动模式识别判断车辆处于左转让行的运动模式,并对后面3 s的运动轨迹进行预测。可以发现,在3 s左右的预测时长内,预测模型不但准确地预测了车辆未来的运动轨迹还准确地捕捉到了让行车辆加速度的变化趋势。
图9 预测值和真实值对比
通过路基数据集的交叉验证可以得出以下结论:与基于物理学的预测模型相比,基于GPR算法建立的轨迹预测模型误差较低,并且长时预测误差较为稳定。
实车数据验证中,由于车载传感器得到的目标车辆运动状态信息存在测量误差,本文采用无迹卡尔曼的高斯过程滤波(GP-UKF)算法对车辆轨迹进行预测。
采用GP-UKF[20]算法对前0.6 s历史轨迹数据进行滤波,基于滤波后的结果预测之后4.4 s的直行车辆运动状态,预测结果如图10所示。由图可知,相比于GPR算法直接利用目标观测状态进行预测,GP-UKF算法对未来轨迹的预测效果更好,更加贴近实际测量值。
图10 试验车辆数据预测结果分析
本文主要针对城市道路环境下交叉口的周边车辆轨迹预测问题,通过基于GMM和GPR模型的车辆轨迹预测模型解决了城市交叉口周边车辆轨迹预测问题。主要研究结论如下:
(1)分析轨迹数据得到不同运动模式的特征运动参数(相对方向角、相对航向角和加速度),构建了运动轨迹特征向量,采用GMM训练得到动态目标运动模式识别模型。
(2)提出了基于GPR算法的城市交叉口周边车辆轨迹预测模型。将城市交叉口周边车辆轨迹预测问题与机器学习理论结合起来,利用高斯过程对每种运动模式进行建模,结合GPR预测周边车辆的长时轨迹。
(3)利用路基数据集对模型进行交叉验证,并与常见的物理模型进行对比;利用结合无迹卡尔曼的GP-UKF算法在实车数据上进行离线测试。经验表明,该算法在实现对城市交叉口周边车辆轨迹的长时预测时表现良好,对智能驾驶汽车在交叉路口的决策有重要影响。
受限于本文篇幅,没有考虑不同驾驶员,车辆与行人的交互以及不同结构的城市交叉口等因素对决策行为的影响,这些影响将在后续工作中予以考虑。