发明内容
为解决现有卡尔曼滤波方法在估计队列长度中不能提供秒级排队长度的估计,并且没有充分利用实时车联网数据的问题,本发明提出一种车联网环境下基于卡尔曼滤波的车辆排队长度估计方法,利用实时车联网数据,能够对排队长度进行逐秒估计。
本发明采用的技术方案为:车联网环境下基于卡尔曼滤波的车辆排队长度估计方法,包括:
S1、交叉口信号信息获取,建立以当前队列排队车辆数、加入和离开队列车辆数为基础的状态转移方程;所述交叉口信息包括交叉口相位及信号配时;
S2、车联网数据获取与处理,根据观测到的网联车排队长度和网联车渗透率,建立观测方程;
S3、建立一种通过使用仿真实验的离线数据来估计噪声协方差矩阵的回归模型;
S4、根据建立的状态转移方程和观测方程,通过卡尔曼滤波方法,根据噪声协方差矩阵获取卡尔曼增益,估计队列长度和误差协方差。
步骤S1所述交叉口相位的数量等于交叉口路数的两倍值。
步骤S1所述当前队列排队车辆数,根据上一时间间隔处的排队车辆,在当前时间间隔处加入和离开队列的车辆数量计算得到。
步骤S1所述离开队列车辆数根据信号状态和饱和流量计算得到。
所述饱和流量通过HCM方法估算。
还包括:选择估计和实际排队长度的平均绝对误差,平均绝对百分比误差和均方根误差作为评估标准,进行性能指标测算。
步骤S1所述状态转移方程表达式为:
其中,x
i,t是在时间间隔t的相位i的排队车辆数,q
i,t是在时间间隔t的相位i的队列加入车辆的数量,g
i,t是在时间间隔t时相位i的信号状态,s
i是相位i的饱和流速,可通过HCM方法估算,
是所有相位的集合。
步骤S2所述观测方程表达式为:
其中,Xt是时间间隔t处队列长度的状态向量,x1,t,x2,t,x3,t,…,xn-2,t,xn-1,t,xn,t分别表示在时间间隔t的相位1、2、3、……、n-2、n-1、n的排队车辆数,H是测量矩阵,ρ1,ρ2,ρ3,…,ρn-2,ρn-1,ρn分别表示相位1、2、3、……、n-2、n-1、n的网联车渗透率。
本发明的有益效果:本发明在卡尔曼滤波方法的基础上,提出了一种实时队列长度估计模型,该模型利用实时车联网数据,充分利用实时车辆轨迹和交通信号配时数据,并基于估计的交通量、饱和流量、渗透率和交通信号配时数据来建立状态转移和观测方程,本发明所提出的方法可以实现秒级的排队长度估计,并且运用Vissim仿真数据对本发明的估计方法进行验证,结果显示本发明方法估计的误差在大多数情况下都很小;本发明具有重要的实用价值,可以协助交通工程师更好地评估交通信号控制系统的有效性并调整交通信号的配时方案。
具体实施方式
为便于本领域技术人员理解本发明的技术内容,下面结合附图对本发明内容进一步阐释。
图1所示为本发明的模型建立和求解的流程示意图。一种车联网环境下基于卡尔曼滤波的车辆排队长度估计方法,包括以下步骤:
A、交叉口信号信息获取,建立以当前队列排队车辆数、加入和离开队列车辆数为基础的状态转移方程;
B、车联网数据获取与处理,根据观测到的网联车排队长度和网联车渗透率,建立观测方程;
C、建立一种通过使用仿真实验的离线数据来估计噪声协方差矩阵的回归模型;
D、根据建立的状态转移方程和观测方程,通过卡尔曼滤波方法,获取卡尔曼增益,估计队列长度和误差协方差;
E、性能指标测算,选择估计和实际排队长度的平均绝对误差(MAE),平均绝对百分比误差(MAPE)和均方根误差(RMSE)作为评估标准;
F、运用Vissim建立交叉口的仿真模型,对排队长度估计方法进行精度验证。
在步骤A中建立状态转移方程,如图2所示在信号交叉口,当前状态指示交叉口不同阶段的排队车辆。另外,在时间间隔t处的排队车辆将与在先前时间间隔t-1处的排队车辆,在时间间隔t处加入和离开队列的车辆数量有关。可以通过交叉口的到达率和转弯移动率来确定加入队列的车辆数量。离开队列的车辆数量取决于信号状态(即绿灯或许可信号)和饱和流量。因此,状态转移方程如下所示。
其中,x
i,t是在时间间隔t的相位i的排队车辆数,q
i,t是在时间间隔t的相位i的队列加入车辆的数量,g
i,t是在时间间隔t时相位i的信号状态(即1或0),s
i是相位i的饱和流速,可通过HCM方法估算,
是所有相位的集合。
如图3所示的标准四路交叉口,针对标准四路交叉口,步骤A中交叉口信号信息获取,具体包括:交叉口相位及信号配时,这里标准四路交叉口的相位共计8个,每路交叉口包括2个相位。
如图3所示的标准四路交叉口的状态转移方程的矩阵和向量形式,用下式表示:
Xt=max{AXt-1+But,0}
其中,Xt是时间间隔t处队列长度的状态向量:
Xt=[x1,t,x2,t,x3,t,x4,t,x5,t,x6,t,x7,t,x8,t]T
ut是时间t的输入变量矢量,其中包含加入队列的车辆数量和时间间隔t的信号状态:
qt=[q1,t,q2,t,q3,t,q4,t,q5,t,q6,t,q7,t,q8,t]T
gt=[g1,t,g2,t,g3,t,g4,t,gs,t,g6,t,g7,t,g8,t]T
A是状态转换矩阵:
B是控制输入矩阵:
B=[B1 B2]
在步骤B中,车联网数据获取与处理,根据观测到的网联车排队长度和网联车渗透率,建立观测方程。
利用排队的网联车数量和时间间隔t处的第i相位的渗透率,定义所观测的排队长度与实际排队长度之间的关系如下:
zi,t=ρi,txi,t
其中,ρi,t是时间间隔t时相位i的网联车渗透率,zi,t是由网联车观测的排队长度可通过下式计算:
zi,t=pi,t
其中,pi,t是在时间间隔t处第i相位排队的网联车数量,可以通过确定网联车的位置和速度来获得。
获得最终的观测方程为:
Zt=HXt
其中Zt是在时间间隔t处测量的队列长度:
Zt=[z1,t,z2,t,z3,t,z4,t,z5,t,z6,t,z7,t,z8,t]T
下标中的数字1,2,3,……,8表示相位,上标T表示转置,z1,t,z2,t,z3,t,z4,t,z5,t,z6,t,z7,t,z8,t分别表示在时间t相位1、2、3、4、5、6、7、8观测的队列长度。
H是测量矩阵:
ρ1,ρ2,ρ3,ρ4,ρ5,ρ6,ρ7,ρ8分别表示相位1、2、3、4、5、6、7、8的网联车渗透率。
通常,我们假设网联车在所有相位的渗透率都相同。因此,H变为:
其中,ρ是网联车在交通系统中的渗透率。
在步骤C中,建立的估算状态转移方程和观测方程噪声协方差矩阵的回归模型,详细信息如算法1所示:
其中,
为初始排队长度,z
t为在时间t处观测的排队长度,x
t为在时间t处实际的排队长度,P
0为初始误差协方差,R
min为观测方程的噪声协方差最小值,R
max为观测方程的噪声协方差最大值,Q
min为状态转移方程的噪声协方差最小值,Q
max为状态转移方程的噪声协方差最大值,ΔR为观测方程的噪声协方差矩阵的增量,ΔQ为状态转移方程的的噪声协方差矩阵的增量;
为时间(t-1)相位i的排队长度,
为时间t相位i的排队长度,
为时间t的误差协方差,上标*用于区分循环中的过程值,K
t为时间t的卡尔曼增益,e
R,Q实际排队长度与估计排队长度之间的度量。
在步骤D中,通过卡尔曼滤波方法估计队列长度的步骤主要包括两个步骤:时间更新和观测更新。具体地,在第一步骤中估计前方状态和前方误差协方差,并且在第二步骤中获得卡尔曼增益,估计结果和误差协方差。这些步骤的详细信息如算法2所示。
在步骤E中,所提出的方法的性能取决于估计的和实际的队列长度。因此,为了更好地评估所提出方法的性能,选择估计和实际队列长度的平均绝对误差(MAE),平均绝对百分比误差(MAPE)和均方根误差(RMSE)作为评估标准。
计算公式如下:
其中,l
i,t和
分别是在时间t处第i个相位的实际和估计队列长度,T是总的离散时间,
和
分别为周期n时第i相位的实际和估计的最大队列长度,N为总周期数。
在步骤F中,在Vissim中开发了一个车联网环境,如图4所示。选择交叉路口以收集数据,包括交通量,速度限制,转向比(左转/直行)和交叉口的几何形状。图4展示了相交的几何形状。每个入口车道具有一个左转车道和两个直行车道,并且交叉口处于不饱和状态。
在模拟实验中,一次仿真实验运行时间为4500秒,其中包括300秒的预热时间,3600秒的有效时间和600秒的清空时间。使用不同的随机种子将每个场景重复十次。另外,每辆车都以0到1之间的随机数生成。特别是,当车辆的随机数小于给定的渗透率时,表明该车辆是网联车。
图5比较了在不同相位,流量/通行能力(v/c)比和渗透率下,实际队列长度与估计队列长度。
图5(a)表明,所提出的方法可以同时估计不同相位的队列长度。这表明所提出的方法的性能不受相位的影响。图5(b)显示两条曲线随着渗透率的增加而逐渐重叠,而图5(c)显示排队长度随流量/通行能力(v/c)比的增加而逐渐增加。
为了进一步说明评估误差的分布,我们计算了估计的队列长度与实际的队列长度之间的误差。图6给出了图5中模拟实验所有秒的误差直方图。结果显示了误差的平均值接近0,并且大多数秒的误差在-0.5至+0.5车辆之间。这意味着在大多数情况下,估计的队列长度与实际的队列长度之间的误差非常小。另外,误差的分布接近于高斯分布。这验证了所提出方法的合理性。
为了更好地评估所提出方法的性能,我们为所有模拟实验计算了MAE,MAPE和RMSE。表1和图7给出了不同随机种子的MAE,MAPE和RMSE的平均值。
表1不同随机种子的MAE,MAPE和RMSE的平均值
如表1所示,当渗透率增加时,估计误差(例如,MAE,MAPE,RMSE)减小。此外,当渗透率大于30%时,MAE和RMSE分别少于2和3辆。此外,本研究中,当渗透率为40%时,MAPE小于17.5%。但是,MAPE高达70%,渗透率非常低,仅为10%。这表明该方法的性能较差,渗透率仅为10%。
图7描述了模拟条件中不同渗透率下队列长度的MAE,MAPE和RMSE。随着渗透率的增加,这三个误差均减小。此外,图7(b)显示,当渗透率达到20%时,MAPE下降最多。但是,图7(b)显示,至少需要40%的渗透率才能确保MAPE在20%以内,这意味着所提出的方法对渗透率有更高的要求。因此,在未来的工作中将考虑与基于冲击波的卡尔曼滤波方法相结合以提高估计精度的方法。
本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的原理,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。