基于时空特征向量的长短期记忆人工神经网络的城市公交旅行时间预测

2021-03-18 13:45
计算机应用 2021年3期
关键词:特征向量切片站点

(1.浙江师范大学道路与交通工程研究中心,浙江金华 321004;2.西安交通大学电子信息工程学院,西安 710049)

0 引言

通过城市公交解决城市交通问题已成共识,而旅行时间预测是提升出行体验、提高服务可靠性、改善出行结构的关键技术之一。城市公共交通系统是一个具有高度的不确定性、非线性的多参数参与的、时变的复杂巨系统,其旅行时间预测较为复杂,尤其在短时旅行时间预测中(≤15 min),时变性、不确定性更强,突发事件发生概率更大,较中长期预测(≥35 min)而言,预测精度因要求更高而难度更大。文献[1]认为仅基于历史数据、实时数据的“时间特征向量输入预测法”无法有效地应对突发情况,在长期预测(≥35 min)和短期预测(≤15 min)之间难以达到平衡。

城市公交旅行时间的预测有很多代表性方法。从技术上讲,该领域最近3 年的预测方法可以分为五类:基于支持向量机(Support Vector Machine,SVM)、基于卡尔曼滤波器(Kalman Filter,KF)、基于全球定位系统(Global Positioning System,GPS)、基于粒子滤波(Particle Filter,PF)和基于神经网络。支持向量机(SVM)使用专门设计的内核将输入数据映射到更高维度的空间,以使修改后的输入数据与目标变量之间呈线性关系。文献[2]提出了一种基于主成分分析-遗传算法-支持向量机的预测方法,以提高公交车到站时间的预测精度。文献[3]提出了一种由时空参数组成的支持向量机模型(单步预测模型)。然而,文献[4]提出SVM 的非线性来自内核技巧,它不能解决大规模问题。文献[5]考虑了在卡尔曼过滤器(Kalman Filter,KF)模型中利用从社交网络获取信息的效果。文献[6]提出基于长短期记忆(Long Short-Term Memory,LSTM)和Kalman 滤波的公交车到站时间预测模型,其中LSTM 模型用来预测公交车到站的基础时间序列,Kalman 滤波模型用于对基础时间数据序列进行动态调整。文献[7]认为基于Kalman 滤波的方法需要进行调查才能估算出动态项,并且很难在给定的数据集(结合了时空信息)上构建可靠的公交车动态。文献[8]基于公交乘客的智能手机Wi-Fi 信息提出了一个跟踪和预测城市公交旅行时间预测模型。自动车辆定位(Automatic Vehicle Location,AVL)和智能手机定位(GPS)还可预测公交车的到达时间。文献[9]认为这些方法不能很好地利用历史信息,并且会忽略空间特征。粒子滤波(PF)技术已被广泛应用于处理历史GPS 信息,并且可以预测公交车的到达时间。文献[10]提出了一种使用粒子滤波方法来预测车流旅行时间的方法,该方法将预测车流旅行时间视为历史旅行时间的中位数。文献[11]提出了一种基于非参数回归-粒子滤波模型的组合预测方法,利用采样-重要性重采样思想,构建了基于粒子滤波的公交车辆到站时间预测模型。但是这两篇论文中使用的粒子滤波算法仅适用于具有状态空间模型的非线性随机系统,因具有时间特性而无法预测公交车的到达时间。神经网络由于其非线性建模能力而变得越来越流行,文献[12]提出了一种基于循环神经网络(Recurrent Neural Network,RNN)的到达时间预测方法,以预测公交车的停靠站时间。文献[13]提出了一种基于深度学习的旅行信息最大化生成对抗网络;但是,在其研究工作中,及时的GPS数据没有与神经网络模型结合。以上几种模型可以在一定程度上解决城市公交的旅行时间预测问题,但这些模型所考虑的影响因素具有片面性:SVM 过于依赖内核技巧来实现不同规模的预测;KF因需要一个探针来动态监视状态而忽略了过去的影响;GPS过分强调了公交车的当前状态,并且随着预测距离的增加,预测精度也会变差;PF 仅考虑公交车到站的时间,而忽略了公交车的空间影响;人工神经网络(Artificial Neural Network,ANN)中使用的输入过于单一,没有考虑时间和空间特征的综合影响。

为有效应对突发事件对旅行时间预测精度的影响,文献[14]提出了一种基于空间特征向量的预测方法:以交叉口为节点将公交行驶路径切分成段,计算出每个路径上所有公交车的当前速度,并将其加权平均值认定为公交车在当前路径上的瞬时速度,从而得出公交车通过当前路径所需的旅行时间。但公交车的行驶路径越长,时间累积的路径波动越明显,旅行时间预测精度越低,可以看出,基于空间特征向量的预测方法在长期预测情形下效果不佳。文献[15-17]提出,空间特征向量分析可以有效地处理突发事件对旅行时间预测的影响,但无法解决公交车的远程依赖;基于时间的特征向量分析可以有效解决此类问题,但不能应对突发事件。因此,本文提出了一种长短期记忆人工神经网络(Long Short-Term Memory Artificial neural network,LSTM-A)预测模型。该模型通过调整时间矢量和空间矢量将长短期记忆(LSTM)法和人工神经网络(ANN)结合起来,以实现基于时空特征向量的城市公交旅行时间的预测。

1 数据预处理

1.1 数据来源

本文使用的实验数据来自宁波市公交公司,调查时间为2019 年9 月1 日至9 月20 日,共包含5 804 504 条数据。实验数据的数据结构如表1所示。

表1 实验数据的数据结构Tab.1 Data structure of experimental data

1.2 数据预处理

由历史数据统计结果可知,时间切片的最优值为5 min,基于此可将一天划分为188 个时间切片,并将每个时间切片内的历史旅行时间作为时间矢量的特征值,建立长期滚动时间窗口以完成数据更新与遗忘。在实际驾驶过程中,车辆可能会遇到诸如道路养护、车辆故障、汽车加油和临时停车等突发事件,因此在数据统计中存在一些异常数据,如行驶时间大于正常行驶时间等;此外,从实验结果可以看出,在实际时间切分过程中,有一些车辆在两个站点之间行驶时跨越两个时间切片,此种情形下,车辆在两个站点之间的旅行时间远短于正常旅行时间。因此,根据历史数据统计结果,时间窗的上限设置应为300 s 下限设置为25 s,从而过滤异常数据以减少噪声干扰。

2 基于时空特征向量的旅行时间预测

本文提出了一种基于历史数据时间特征向量的长期预测结合基于空间特征向量的短期预测模型——LSTM+ANN混合神经网络模型,以准确预测城市公交旅行时间。时间特征向量用于预测长时旅行时间,通过时间切片法计算当前预测时间切片中所有公交车到达相邻站点所需的时间,该预测方法可有效避免由于车辆长时间行驶道路状况变化而导致的预测精度降低;空间特征向量用来进行短时旅行时间预测,通过路径切分来计算单个车辆的瞬时平均速度,进而获得站点间旅行时间,解决了复杂多变路况下的预测精度问题。经过大量的培训和学习,该模型在验证案例上取得了很好的结果。

2.1 基于时间的特征向量分析

目前存在多种基于历史数据的旅行时间预测方法,如移动平均法、指数平滑法。当使用上述方法来处理时间切片时,时间切片的粒度相对简单且粗糙。一种更常见的方法是将全天时间段划分为高峰时段和平峰时段,结合公交GPS数据,不同的时间段采用不同的数据处理方法来预测站点间旅行时间。这种历史预测方法在某种程度上解决了公交旅行时间预测问题,但与全天公交车旅行时间的波动相比,大颗粒的时间切片将不可避免地导致预测结果的相对粗糙。因此,本文提出了一种基于公交站点间实际旅行时间切片的时间维划分方法。

2.1.1 时间切片划分

在中国大多数城市中,两个站点之间的距离大约为1~2 km,城市公交车的平均速度为20 km/h。因此,车辆在两个站点间需要大约3~6 min。在此基础上,基于宁波市0120号公交线路2019 年9 月(全月)的运行数据,对两个站点之间的时间分布进行了统计,统计结果如图1 所示。横轴表示站点间的车辆旅行时间,纵轴表示两个相邻站点之间的行驶时间落入特定时间片的概率。从统计结果可以看出,90%的公交车在相邻站点间的旅行时间不到5 min。因此,本文以5 min 的时间间隔将单日24 h 切分为288 个时间切片。在每个时间切片中,基于预测前20 d 内同一时间切片中的历史数据来预测两个站点间当前时间切片内的旅行时间。考虑到工作日、周末和节假日的不同条件,根据工作日和休息日将实验数据分为两组。本文提到的所有案例数据均为工作日数据。

图1 站点间旅行时间分布Fig.1 Distribution of travel time between stations

2.1.2 历史旅行时间

在本节中,通过时间切片将站点间的旅行时间预测切分为小时间片的预测,并基于同一时间切片的前20 d 的历史旅行时间数据来预测该时间切片内的旅行时间。

以下内容完成了基于时间的特征向量分析,为LSTM-A综合预测提供数据支持。这些变量组合成一个向量来描述公交站点Pij的时间信息,基于时间切片的特征向量的数学表达为式(1):

其中:Oi、Oj为公交站点i、j;Tk为时间切片k;[t1,t2,…,tn]为Oi、Oj站点间第1,2,…,n天时间切片k内的旅行时间;Pij为站点Oi、Oj间时间切片k的时间特征向量。

2.2 基于空间的特征向量分析

线路的当前位置决定了下一个目标站和后续站的距离。如果忽略了突发事件,则可以通过将距离除以当前速度来简单地获得站点间的旅行时间。在早期就采用了这种公交旅行时间预测模型,但这种方法过于理想化,其预测结果与实际的预测结果相差较大。近年来,研究人员使用差分方程建立了自回归移动平均时间序列模型,并通过残差分析和数据拟合最终实现了站点间旅行时间预测;但该模型因没有考虑城市交通的复杂性和变异性,其残差序列的白噪声严重影响预测结果精度。因此,本文提出了一种基于线路空间切片的空间特征向量预测方法,以预测目标站点间的旅行时间。

2.2.1 空间切片划分

根据水库原理,由于水池中水的蓄积率取决于入水量和出水量之差,因此流入速度过快和流出速度低是造成水池淤积的主要原因。类似地,路段是否拥堵取决于上游车辆的速度和下游车辆的速度。除事故外,公交车辆的速度仅与在路段上行驶的车辆有关。因此,本文提出了一种基于交通信号收敛的空间切分方法。以宁波0120 号公交线路2019 年9 月的数据为算例,以交叉口为节点进行线路路径的空间切分,考虑到线路的起、终点,可以将22 km长的公交线路切分为18个空间切片,并通过上述步骤初始化空间特征向量。

2.2.2 行驶速度计算

通过2.2.1 节的讨论可知,车辆速度仅与当前线路路径上的车辆有关:一方面,当道路拥挤时,车辆会降低速度;另一方面,单个车辆的瞬时速度将在不同的位置发生变化,例如,道路的前半部分由于道路施工、车辆刮擦、停车和道路变窄而变得拥挤,而后半部分则由于已经离开了拥挤区域而变得流畅。在这种情况下,如果仅根据瞬时速度进行计算,则与实际旅行时间存在较大偏差,因此,本文提出了一种基于空间切片来计算车辆瞬时速度的方法:

其中:Vi为车辆i的平均速度,n是当前线路上的公交车数量,Vj是车辆j的瞬时速度。

2.2.3 到达时间预测

公交车i在当前空间切片中,可以通过GPS坐标估算距离该切片终点的距离,然后将该距离除以当前车速Vi以预测到达时间。如果公交车i不在当前空间切片中,则应通过将切片的长度除以平均车速Vi来预测当前空间切片的时间。以0120 号线为例,并在某个时刻(假设此时车辆i处于始发站)提取路径上的所有线路信息(位置、速度等),整个路径的旅行时间为63.2 min,当前计算结果另存为空间特征向量。

本节中,通过空间切片法将站点间的时间预测切分为小的空间切片进行预测,并通过综合考虑该空间切片中所有公交车辆的行驶速度来获得目标切片中的旅行时间。通过计算线路在不同空间切片中到达终点的时间来完成基于空间的特征向量分析,并且该过程为LSTM 模型提供了数据,以便最终地综合旅行时间预测。这些变量组合成一个向量,以描述空间切片Smn的空间信息:

其中:Smn为起点为m终点为n的线路空间向量;lmn为Smn的长度;[v1,v2,…,vn]为线路上所有公交车的瞬时速度。

2.3 基于LSTM和ANN的旅行时间预测

本文提出了一种基于LSTM 和ANN 的神经网络LSTM-A,它结合了基于时空的特征向量,其结构如图2 所示。在输入层中,T是当前时刻的输入参数,Pij是时间特征向量,Smn是空间特征向量。输出层输出当前的旅行时间预测结果。

图2 混合神经网络LSTM-A的结构Fig.2 Structure of hybrid neural network LSTM-A

2.3.1 基于时间特征向量的LSTM的计算

将当前时间和时间特征向量用作输入参数,基于历史信息的时间特征值由LSTM 动态更新。如果天数超过最大时间阈值,则初始时间特征向量中的值会被“遗忘门”遗忘,并且所添加的时间特征向量会通过输入门进行更新。最后,通过输出门由LSTM计算输出。

遗忘门:

输入门:

隐藏门:

输出门:

式中:W*为权重矩阵,b*为偏好;T为旧的输入;Pij为输入的时间特征向量;Smn为输入的空间特征向量;R为预测计算结果;σ为S型函数。

例如,将28 d作为时间特征向量的最大阈值,当前时间从9 月28 日移至9 月29 日时,9 月1 日的时间特征将超过最大时间窗口,9 月1 日的切片数据将通过“遗忘门”被忘记,而9 月29 日的时间特征被添加到“输入门”,最后,结果输出由“输出门”的矩阵01控制。

伪代码为算法1和算法2。

算法1 LSTM-A。

输入:时间窗口W,R(Temporalt,Spatials);

输出:Result。

2.3.2 时空特征向量归一化

时间特征向量是以站点为节点进行切分的,而空间特征向量是通过交叉口为节点进行切分的,两种测量单位特征向量不统一,因此,在对特定线路进行预测分析时,需要对两个特征向量进行相同的运算。本文使用主成分分析对数据进行分析和投影,从而通过将空间维投影到时间维上来实现特征值归一化。

2.3.3 基于时空特征向量的ANN计算

基于时间特征向量,将到达预测问题分解为点对点向量,仅取决于历史向量的长度,而与向量的前一点无关。因此,在进行与距公交起点较远的后续站点预测时,基于时间向量的到达预测更为准确。但是,面对突发事件,响应速度相对较慢。基于空间的特征向量将预测问题的解决变成当前路径的长度与当前路径的平均行驶速度之间的比值。文献[18-19]提出该比值在预测短距离到达时间时更为准确。但是,随着时间的流逝,在不同路径的交通状况发生变化后,预测值会与实际值有较大不同。

本节结合了两种分析方法的优点,并提出了一种基于时空特征向量的LSTM-A计算方法,线性回归模型为:

式(9)是线性回归模型的公式,用于训练和预测时空特征向量;式(10)是Sigmoid 激活函数,可将结果从线性转换为非线性。

3 案例验证与结果分析

3.1 数据采集

使用TensorFlow系统(Ubunut 18.04+Nvidia Driver 440.x+GTX 1080+CUDA 10.1+CuDNN 7+TensorFlow 2.0),验证预测方法的可行性与适用性,采集2019 年9 月1 日至9 月20 日的数据作为训练集(不包括6 d假期,得到14 d数据,时间窗设置为14 d),2019 年9 月21 日的数据作为测试集,将以距离较长的宁波市0114 号公交线路为案例来验证预测模型。宁波市0114 号公交线路长度为25 km,行车时间约为86 min,途经市中心、市郊等复杂的环境区域。该线路适用于长时预测+短时预测的这种综合预测模型。经过1 000次采样后,结合该线路的上下行数据进行比较、分析。

3.2 预测结果

0114 号线路公交车的完整预测结果:包括从线路起点到终点的所有站点的预测结果以及当天的实际旅行时间。根据差异分析,除某些特殊站点外,每个站点的预测时间误差均小于1 min,预测模型性能良好。由于分别获得上、下行的统计数据,因此在一定时间段内的某些站点上很少或根本没有公交车辆是合理的,而相对荒僻道路也会对实验结果产生影响,因为线路上行驶的车辆较少。一般而言,在全部29 个站点的预测中,旅行时间预测的大部分偏差小于30 s,预测结果可靠。

3.3 平均绝对误差

预测结果显示,在整个预测过程中,超过93.1%的偏差值大于70%,并且偏差值的79%大于80%,如果删除了个体数据不足的时空特征向量,并提取周期良好的数据特征以进行预测分析,整体预测精度高达80%。选择不同的时间和空间尺度以增强特征值之间的相关性,重复实验可以为模型带来进一步的改进。

3.4 对比验证

旅行时间历史数据、线路空间切分数据、实时车速数据等将被用作对比实验模型的输入。分别比对算术平均值法(AVeraGe,AVG)、线性回归法(Linear Regression Method,LRM)、弹性网络(ElasticNet,EN)模型法和反向传播(Back Propagation,BP)神经网络法,不同预测方法的对应参数如表2所示。

表2 不同预测方法的对应参数Tab.2 Corresponding parameters of different prediction methods

对比实验中,针对短、长距离两种场景来预测旅行时间,并从平均绝对误差(Mean Absolute Error,MAE)、均方根误差(Root Mean Square Error,RMSE)、平均绝对百分比误差(Mean Absolute Percentage Error,MAPE)和其他方面评估预测结果。短距离场景中,任意两个站点间的距离用于预测输入,其预测结果如表3 所示;长距离场景中,起点到终点的距离用于预测输入,其预测结果如表4 所示。从实验结果可以看出,LSTM-A 在短、长距离预测时都具有更好的性能。在不考虑其他外部影响的情况下,LSTM-A 算法在短、长距离到达预测中更接近公交车的实际到达时间,因此其结果更加准确。

表3 短距离旅行时间预测结果 单位:sTab.3 Results of short-distance travel time prediction unit:s

表4 长距离旅行时间预测结果 单位:sTab.4 Results of long-distance travel time prediction unit:s

进行了一系列对比实验,验证了LSTM-A 算法的性能优于传统的预测方法。

4 结语

本文提出了一种公交车到站预测方法,主要研究如下:

首先,将24 h 切分为288 个时间切片,以生成时间特征向量。此后,基于时间切片建立了LSTM 时间窗口模型,该模型可用于解决长时预测的窗口移动问题。

其次,本文将公交线路切分为多个空间切片,并使用当前空间切片的共同平均速度作为瞬时速度。每个空间切片的预测时间将用作空间特征向量,并将其发送到LSTM-A。

第三,提出了一种新型的混合神经网络LSTM-A 来解决公交旅行时间预测问题。时空特征向量分别由前期的处理结果得到,并将它们发送到综合模型中以完成预测任务并取得良好的效果。

总之,基于LSTM-A 的时空特征向量,有效地解决城市公交旅行时间预测问题,避免了公交车辆的远程依赖和错误积累。此外,本文将公交站点间的预测问题划分为线路空间切片预测子问题。针对每个相关的子问题引入了实时计算的概念,从而避免了复杂路况带来的预测误差。如实验结果所示,该算法在准确性、适用性方面均优于传统的预测模型。

后期可通过添加更多的特征向量来拓展深化该模型,例如交通信号的持续时间和频率、气候特征、公交车辆的临时停靠点以及上下车时间的比例等。通过引入更多的特征向量来建立高维向量分析模型,以进一步提高城市公交旅行时间预测的准确性和可靠性。

猜你喜欢
特征向量切片站点
克罗内克积的特征向量
高中数学特征值和特征向量解题策略
新局势下5G网络切片技术的强化思考
5G网络切片技术增强研究
以“夏季百日攻坚”推进远教工作拓展提升
网络切片标准分析与发展现状
三个高阶微分方程的解法研究
浅析5G网络切片安全
积极开展远程教育示范站点评比活动
怕被人认出