一种基于图卷积神经网络的城市交通流量时空预测方案的制作方法

    专利2022-07-08  138


    本发明涉及智慧交通领域,尤其是涉及一种基于图卷积神经网络的城市交通流量时空预测方案。
    背景技术
    :交通预测是智能交通系统中的关键部分,是实现交通规划、交通管理和交通控制的重要手段。准确的交通流量预测信息可以为交通管理者提供及时的交通决策依据,更好地管理城市交通,提高道路运营效率,同时也可以让驾驶员提前了解交通情况,及时改变路线,选择合理的交通道路,节省出行时间,进而减少交通拥堵情况的出现。另外,还可以在一定程度上减少环境污染,提高交通安全。因此,城市流量预测是城市交通系统中举足轻重的一部分。然而,由于实际道路中复杂的时间和空间依赖关系,以及路口监控设备的有限性,时空交通流量依然存在着许多挑战。在空间依赖方面,城市的拓扑结构决定了路口之间的依赖关系,上游路口的交通流量输出直接影响下游路口的流量输入,下游路口的交通流量也会到达上游路口。由于相邻路口的流量之间的相互影响,其流量变化也有相似性。在时间依赖方面,交通流量随着时间动态变化,主要表现为周期性。例如,路口某时刻的流量值与之前某些时间周期的流量可能存在一定的规律。另外,路口受到前面时刻的交通状态的影响也较大。现有解决交通流量预测的方法很多,其中一部分方法只考虑了时间相关性,如arima模型,卡尔曼滤波器,支持向量机,k近邻模型,贝叶斯网络以及部分神经网络,仅仅考虑了交通流量随时间的动态变化,但是忽略了路口之间的空间依赖性,因此不能非常准确地预测交通流量。为了挖掘流量的空间特征,有的研究人员引入了卷积神经网络,但是,卷积神经网络主要使用于欧几里得结构的数据,比如图像结构。这些模型并不使用于复杂的城市路网结构的情况,因此在本质上不能很好地描述空间依赖性。公开号为cn110264709a的中国发明专利公开了一种基于图卷积网络的道路的交通流量的预测方法,基于历史流量数据和城市路网信息,利用gcn网络和lstm网络综合道路的交通流量数据的空间特征和时间特征得到下一时间段的道路的交通流量数据的预测值。但是,在实际使用时,某些路口由于地理位置以及设备的有限性,往往无法获取其历史流量数据,也就谈不上根据历史流量预测交通流量数据了。技术实现要素:本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种基于图卷积神经网络的城市交通流量时空预测方案,首先通过构建和训练st-gcn网络模型,得到有历史流量数据路口的预测流量,再通过自定义的adjacent-similar算法,对于无历史流量数据的路口,根据其相邻路口的预测流量得到其预测流量,对于“孤岛”路口,寻找与其相似路口,并用相似路口的预测流量作为该路口的预测流量,为无历史流量数据路口的流量预测提供了新的解决思路。本发明的目的可以通过以下技术方案来实现:一种基于图卷积神经网络的城市交通流量时空预测方案,包括以下步骤:s1:获取城市路网拓扑结构图g,将所有路口记为未预测路口,并标记其中的a类路口、b类路口和c类路口,所述a类路口为有历史流量数据的路口,所述b类路口为自身无历史流量数据但相邻路口中包含a类路口的路口,所述c类路口为自身无历史流量数据且相邻路口中不包含a类路口的路口;s2:获取每个a类路口的历史流量数据,构建基于gcn网络和gru网络的st-gcn网络模型,根据城市路网拓扑结构图g和每个a类路口的历史流量数据对st-gcn网络模型进行训练,得到第一流量预测模型;s3:基于第一流量预测模型得到每个a类路口的预测流量,并将所有a类路口记为已预测路口;s4:对于所有的b类路口,分别获取各个b类路口的所有相邻路口中a类路口的预测流量,使用自定义的adjacent算法得到所有b类路口的预测流量,并将所有b类路口记为已预测路口;s5:对于所有的c类路口,分别获取各个c类路口的所有相邻路口中b类路口的预测流量,使用自定义的adjacent算法得到所有c类路口的预测流量,并将所有c类路口记为已预测路口;s6:遍历城市路网拓扑结构图g,若所有路口均为已预测路口,则执行步骤s7,否则,将未被预测的路口标记为d类路口,使用自定义的similar算法得到所有d类路口的预测流量;s7:获取待预测时刻,输出所有路口在待预测时刻的预测流量。进一步的,所述历史流量数据包括时间点信息、地理位置信息和流量信息。进一步的,所述步骤s2包括以下步骤:s21:基于城市路网拓扑结构图g构建城市路口邻接矩阵,基于城市路网拓扑结构图g和历史流量数据构建a类路口的流量特征矩阵;s22:构建基于gcn图卷积网络和gru门控循环单元的st-gcn网络模型,基于城市路口邻接矩阵和流量特征矩阵,通过图卷积操作提取得到a类路口的历史流量数据的空间特征信息,将空间特征信息输入门控循环单元,提取路口的历史流量数据的时间特征信息;s23:综合所述路口的历史流量数据的空间特征信息和时间特征信息得到路口的流量预测值;s25:将流量预测值与真实流量值比较,将比较结果作为评价指标,调整st-gcn网络模型的参数,重复步骤s22,直至得到满足精度要求的第一流量预测模型。更进一步的,所述步骤s23中,还包括提取天气特征信息、节假日特征信息等其他特征信息,综合所述路口的历史流量数据的空间特征信息、时间特征信息、天气特征信息和节假日特征信息等其他特征信息得到路口的流量预测值。进一步的,所述步骤s4包括以下步骤:s41:分别获取所有未预测的b类路口的相邻路口属性,所述相邻路口属性包括该b类路口的相邻路口的数量n和相邻路口中已预测路口的数量ny;s42:分别计算各个未预测的b类路口的得分s_b1、s_b2、…、s_bj,j为b类路口的数量,按照得分大小将b类路口排序,所述得分s_bj的计算公式为:其中,numb_j表示第j个b类路口的相邻路口的数量,numb_jy表示第j个b类路口的相邻路口中已预测路口的数量;s43:选取得分最大的未预测的b类路口,计算该b类路口的相邻路口中各个已预测路口到该b类路口所需的时间;s44:获取该b类路口的相邻路口中各个已预测路口的在不同时刻的预测流量,根据各个已预测路口到该b类路口所需的时间和各个已预测路口的预测流量,得到该b类路口的部分流量部分流量的计算公式具体为:其中,表示t时刻该b类路口的部分流量,ny表示该b类路口的相邻路口中已预测路口的数量,分别表示t时刻自第1个相邻路口、第2个相邻路口、…、第ny个相邻路口汇入该b类路口的流量,δt1、δt2、…、δtny分别表示第1个相邻路口、第2个相邻路口、…、第ny个相邻路口到该c类路口所需的时间;s45:根据该b类路口的部分流量计算该b类路口的预测流量预测流量的计算公式具体为:其中,表示t时刻该b类路口的预测流量,表示t时刻该b类路口的部分流量,ny表示该b类路口的相邻路口中已预测路口的数量,n表示该b类路口的相邻路口的数量;s46:将该b类路口记为已预测路口;s47:若所有b类路口均为已预测路口,则执行步骤s5,否则,执行步骤s41。进一步的,所述步骤s5包括以下步骤:s51:分别获取所有未预测的c类路口的相邻路口属性,所述相邻路口属性包括该c类路口的相邻路口的数量m和相邻路口中已预测路口的数量my;s52:分别计算各个未预测的c类路口的得分s_c1、s_c2、…、s_ck,k为c类路口的数量,按照得分大小将c类路口排序,所述得分s_ck的计算公式为:其中,numc_k表示第k个c类路口的相邻路口的数量,numc_ky表示第k个c类路口的相邻路口中已预测路口的数量;s53:选取得分最大的未预测的c类路口,计算该c类路口的相邻路口中各个已预测路口到该c类路口所需的时间;s54:获取该c类路口的相邻路口中各个已预测路口的在不同时刻的预测流量,根据各个已预测路口到该c类路口所需的时间和各个已预测路口的预测流量,得到该c类路口的部分流量部分流量的计算公式具体为:其中,表示t时刻该c类路口的部分流量,my表示该c类路口的相邻路口中已预测路口的数量,分别表示t时刻自第1个相邻路口、第2个相邻路口、…、第my个相邻路口汇入该c类路口的流量,δt1、δt2、…、δtmy分别表示第1个相邻路口、第2个相邻路口、…、第my个相邻路口到该c类路口所需的时间;s55:根据该c类路口的部分流量计算该c类路口的预测流量预测流量的计算公式具体为:其中,表示t时刻该c类路口的预测流量,表示t时刻该c类路口的部分流量,my表示该c类路口的相邻路口中已预测路口的数量,m表示该c类路口的相邻路口的数量;s56:将该c类路口记为已预测路口;s57:若所有c类路口均为已预测路口,则执行步骤s6,否则,执行步骤s51。更进一步的,一个路口到另一个路口所需时间的计算具体为:获取两个路口之间的出租车轨迹,跟踪出租车的轨迹,根据出租车轨迹计算得到一个路口到另一个路口所需的时间。进一步的,所述步骤s6包括以下步骤:s61:遍历城市路网拓扑结构图g,若所有路口均为已预测路口,则执行步骤s7,否则,将未预测路口标记为d类路口,执行步骤s62;s62:获取城市的出租车轨迹,得到所有d类路口和所有a类路口的出租车流量;s63:选取一个d类路口,自所有a类路口中选取一个与该d类路口的出租车流量最相似的a类路口作为该d类路口的最相似路口;s64:获取最相似路口的预测流量作为该d类路口的预测流量,将该d类路口记为已预测路口;s65:若所有d类路口均为已预测路口,则执行步骤s7,否则,执行步骤s63。更进一步的,所述步骤s62具体为:获取时间段t内城市的出租车轨迹,对时间段t切片,记录t1时刻各个d类路口和各个a类路口的出租车流量、记录t2时刻各个d类路口和各个a类路口的出租车流量、…、记录tr时刻各个d类路口和各个a类路口的出租车流量,得到各个d类路口和各个a类路口的流量点,所述流量点具体为:(ft1、ft2、…、ftr),其中,ft1、ft2、…、ftr分别表示一个路口在t1时刻、t2时刻、…、tr时刻的出租车流量。更进一步的,所述步骤s63具体为:获取该d类路口的流量点,计算该d类路口的流量点与所有a类路口的流量点之间的欧几里得距离,选取欧几里得距离最小的a类路口作为该d类路口的最相似路口。与现有技术相比,本发明具有以下有益效果:(1)首先通过构建和训练st-gcn网络模型,得到有历史流量数据路口的预测流量,再通过自定义的adjacent-similar算法,对于无历史流量数据的路口,根据其相邻路口的预测流量得到其预测流量,对于“孤岛”路口,寻找与其相似路口,并用相似路口的预测流量作为该路口的预测流量,为无历史流量数据路口的流量预测提供了新的解决思路。(2)使用st-gcn网络模型预测有历史流量数据的路口时,综合考虑空间依赖、时间依赖和节日、天气等其他影响因素,使用了gcn图卷积网络和gru门控循环单元,相较于传统的预测算法,预测结果更加精准,且速度更快。(3)对于无历史流量数据路口,使用出租车流量代替实际流量,通过adjacent-similar算法,近似得到无历史流量数据路口的预测流量,虽然存在一定误差,但是一定程度上解决了因路口无监控设备导致的流量数据缺失,提升了预测效果。附图说明图1为本发明的流程示意图;图2为实施例中st-gcn单元结构图;图3为实施例中gru模型结构;图4为实施例中st-gcn网络整体结构图;图5为实施例中adjacent-similar算法的流程图。具体实施方式下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。实施例1:一种基于图卷积神经网络的城市交通流量时空预测方案,如图1所示,包括以下步骤:s1:获取城市路网拓扑结构图g,将所有路口记为未预测路口,并标记其中的a类路口、b类路口和c类路口,所述a类路口为有历史流量数据的路口,所述b类路口为自身无历史流量数据但相邻路口中包含a类路口的路口,所述c类路口为自身无历史流量数据且相邻路口中不包含a类路口的路口;s2:获取每个a类路口的历史流量数据,构建基于gcn网络和gru网络的st-gcn网络模型,根据城市路网拓扑结构图g和每个a类路口的历史流量数据对st-gcn网络模型进行训练,得到第一流量预测模型;s3:基于第一流量预测模型得到每个a类路口的预测流量,并将所有a类路口记为已预测路口;s4:对于所有的b类路口,分别获取各个b类路口的所有相邻路口中a类路口的预测流量,使用自定义的adjacent算法得到所有b类路口的预测流量,并将所有b类路口记为已预测路口;s5:对于所有的c类路口,分别获取各个c类路口的所有相邻路口中b类路口的预测流量,使用自定义的adjacent算法得到所有c类路口的预测流量,并将所有c类路口记为已预测路口;s6:遍历城市路网拓扑结构图g,若所有路口均为已预测路口,则执行步骤s7,否则,将未被预测的路口标记为d类路口,使用自定义的similar算法得到所有d类路口的预测流量;s7:获取待预测时刻,输出所有路口在待预测时刻的预测流量。步骤s2包括以下步骤:s21:基于城市路网拓扑结构图g构建城市路口邻接矩阵,基于城市路网拓扑结构图g和历史流量数据构建a类路口的流量特征矩阵,历史流量数据包括时间点信息、地理位置信息和流量信息。s22:构建基于gcn图卷积网络和gru门控循环单元的st-gcn网络模型,基于城市路口邻接矩阵和流量特征矩阵,通过图卷积操作提取得到a类路口的历史流量数据的空间特征信息,将空间特征信息输入门控循环单元,提取路口的历史流量数据的时间特征信息;s23:提取天气特征信息、节假日特征信息,再综合路口的历史流量数据的空间特征信息、时间特征信息以及天气特征信息、节假日特征信息得到下一时间段的路口的流量预测值。s25:将流量预测值与真实流量值比较,将比较结果作为评价指标,调整st-gcn网络模型的参数,重复步骤s22,直至得到满足精度要求的第一流量预测模型。对于a类路口,在空间依赖性方面,使用图卷积网络(gcn:graphconvolutionalnetwork)进行建模。图卷积网络借助于图的拉普拉斯矩阵的特征值和特征向量来研究图的性质。网络的每一个卷积层的传播规则如下:其中,σ表示激活函数,h(l 1)表示第l层的激活单元矩阵,w(l)是第l层的参数矩阵,是城市路网拓扑结构图g的邻接矩阵加上自连接(即每个顶点和自身加一条边),in是单位矩阵,是的度数矩阵,h(l)是第l层的激活单元矩阵。图卷积网络的每一层通过邻接矩阵a和特征矩阵h(l 1)相乘得到每个顶点邻接特征的汇总,再乘上参数矩阵w(l),通过激活函数σ做一次非线性变换得到聚合邻接顶点特征的矩阵h(l 1)。因此,每一层图卷积操作可以实现对于中心点,获取其自身节点及其一阶邻域的空间信息,捕捉节点之间的空间特征。在时间依赖性方面,历史流量具有周期性,因此,路口在t时刻的流量xt与t时刻前的流量有关。本实施例中,设置了3个时间间隔:lc,lt,lp,其对应的时间跨度为sc,st,sp,3个时间间隔的时间依赖性流量特征为:其中,xt表示路口在t时刻的流量。本实施例中,lc=5分钟,lt=1天,lp=1周,路口在t时刻的流量,与其前1个、2个、…、sc个5分钟,前1天、2天、…、st天,前1周、2周、…、sp周的流量数据存在周期性依赖关系。使用门控循环单元(gru:gatedrecurrentunit)来捕捉时间序列中时间步距离较大的依赖关系,它通过可以学习的门来控制信息的流动,引入了重置门和更新门的概念,从而修改了循环神经网络中隐藏状态的计算方式。除了时间依赖性因素以及空间依赖性因素,路口交通流量还会受到天气状况、节假日等因素影响,如城市举办的活动、交通规定等,因此将其他影响因素也作为特征加入网络。根据一天的平均温度以及天气状况对每天的天气进行编码;根据是否为工作日对日期进行编码,若为工作日则将节假日信息记为1,若为休息日则将节假日信息记为0。具体的,本实施例以青岛市的交通数据流为例,包括100个a类路口在9月1日到9月20日的20天流量数据,自早上7点至晚上7点,统计每个路口每5分钟经过的车流量,得到144×100的矩阵,每行数据表示在该时刻各个a类路口的流量,每列数据表示该a类路口在不同时刻的流量,再将20天的流量数据综合,最后得到2880×100的矩阵。对于100个a类路口构建邻接矩阵。根据城市网络拓扑结构图,若路口i与路口j相邻,且车辆可以从路口i至路口j,则邻接矩阵aij=1,否则aij=0。先构建st-gcncell单元,st-gcncell单元的结构如图2所示,对一天的所有流量数据来说,首先对数据进行图卷积操作,得到空间依赖关系,再将图卷积后的结果根据门控循环单元更新当前状态,获得新的状态和输出。再构建以st-gcncell为单元的gru模型结构,如图3所示。以时间间隔lc为例,本实施例中lc=5分钟,时间依赖性流量特征为按时间先后输入以st-gcncell为单元的gru模型中,最终获得时间间隔lc的时间依赖关系。同理,可以得到时间间隔lt的时间依赖关系和时间间隔lp的时间依赖关系。再构建st-gcn网络,如图4所示,输入数据为三个时间间隔的时间依赖性流量特征以及天气、节假日等其他影响因素。对于三个时间间隔的时间依赖性流量特征,构建相同结构的三个门控循环单元,将三个结果相加,并通过激活函数,将所得的结果与其他影响因素相加,再通过激活函数,得到最后结果。为评估模型的准确性,采用均方根误差rmse(rootmeansquarderror)和均方误差mse(meansquarederror)来评估结果误差。评估预测值yp与真实值t之间的rmse与mae分别为:其中,yp表示评估预测值,yt表示真实值,n表示总的数量,本实施例中,对100个a类路口进行流量预测,n=100。均方根误差rmse和均方误差mae值越小,表示预测结果误差越小。表1给出了使用不同模型对100个a类路口进行流量预测的误差对比结果。表1不同模型误差比较methodrmsemaeha27.5617.50arima29.7824.04cnn26.2819.41lstm32.0824.67gru31.0922.71gcn43.2136.37st-gcn23.1415.49表1中给出了本申请使用的st-gcn网络模型与其他网络模型的误差对比结果,对比了历史平均模型(ha)、差分整合移动平均自回归模型(arima)、卷积神经网络(cnn)、长短期记忆网络(lstm)、门控循环单元(gru)、图卷积网络(gcn),可以看出,与其他的几种模型相比,本申请构建的st-gcn模型的预测误差均小于其他模型结果。在空间依赖方面,与lstm和gru方法对比,取相同周期的时间序列,即在时间依赖上与本模型相同,不考虑城市拓扑结构,因此lstm和gru并未挖掘路口之间的空间依赖性。lstm和gru模型的rmse误差分别是32.08和31.09,st-gcn的误差为23.14,可以发现,当st-gcn与只有时间依赖的gru相比,均方根误差减少了7.95,与lstm相比,误差也减小了8.94。因此可以看出,与只有时间依赖的模型相比,st-gcn由于引进了图卷积网络,获得路口之间的空间关系,因此在空间依赖方面取得了较好的效果。在时间依赖方面,与gcn模型对比,两种模型采取相同的图卷积模型进行空间依赖处理,在时间依赖方面,gcn模型不考虑时间序列的周期性特征,即未挖掘历史流量的时间依赖关系。最终根据实验结果可以得到,gcn的rmse误差为43.21,st-gcn的误差比gcn减少了20.07。因此可以看出,与只有空间依赖的模型相比,st-gcn由于考虑了时间序列的周期性,充分挖掘历史流量序列中的时间依赖关系,因此在时间依赖方面取得了较好的效果。因此,st-gcn模型在挖掘路口历史流量的时空依赖关系中,有着较好的效果。对于有历史流量的a类路口,可以根据上述步骤得到其预测流量,对于无历史流量的b类路口、c类路口,其流量预测是通过本申请自定义的adjacent-similar算法进行的,流程图如图5所示。adjacent算法即根据相邻路口的预测流量推算得到本路口的预测流量,similar算法即寻找到一个与本路口流量最相似的路口,将该路口的预测流量作为本路口的预测流量。本实施例中,根据100个a类路口的预测流量,结合adjacent算法与similar算法,对35个无历史流量数据的路口在9月21日至24日的流量进行了预测。首先使用自定义的adjacent算法对b类路口进行预测,b类为自身无历史流量数据但相邻路口有历史流量数据的路口,步骤s4中包括以下步骤:s41:分别获取所有未预测的b类路口的相邻路口属性,相邻路口属性包括该b类路口的相邻路口的数量n和相邻路口中已预测路口的数量ny;s42:分别计算各个未预测的b类路口的得分s_b1、s_b2、…、s_bj,j为b类路口的数量,按照得分大小将b类路口排序,得分s_bj的计算公式为:其中,numb_j表示第j个b类路口的相邻路口的数量,numb_jy表示第j个b类路口的相邻路口中已预测路口的数量;s43:选取得分最大的未预测的b类路口,计算该b类路口的相邻路口中各个已预测路口到该b类路口所需的时间;步骤s43中,各个相邻路口到该b类路口所需的时间计算具体为:获取该b类路口与所有相邻路口之间的出租车轨迹,跟踪出租车的轨迹,分别根据出租车轨迹计算得到各个相邻路口到该b类路口所需的时间。出租车轨迹数据集是青岛市9月1日到20日的部分出租车gps数据,记录出租车的每个时刻经纬度,根据出租车速度以及轨迹数据,可以近似获得两个路口之间的距离。s44:获取该b类路口的相邻路口中各个已预测路口的在不同时刻的预测流量,根据各个已预测路口到该b类路口所需的时间和各个已预测路口的预测流量,得到该b类路口的部分流量部分流量的计算公式具体为:其中,表示t时刻该b类路口的部分流量,ny表示该b类路口的相邻路口中已预测路口的数量,分别表示t时刻自第1个相邻路口、第2个相邻路口、…、第ny个相邻路口汇入该b类路口的流量,δt1、δt2、…、δtny分别表示第1个相邻路口、第2个相邻路口、…、第ny个相邻路口到该c类路口所需的时间;s45:根据该b类路口的部分流量计算该b类路口的预测流量预测流量的计算公式具体为:其中,表示t时刻该b类路口的预测流量,表示t时刻该b类路口的部分流量,ny表示该b类路口的相邻路口中已预测路口的数量,n表示该b类路口的相邻路口的数量;s46:将该b类路口记为已预测路口;s47:若所有b类路口均为已预测路口,则执行步骤s5,否则,执行步骤s41。再使用自定义的adjacent算法对c类路口进行预测,c类路口为自身无历史流量数据且相邻路口无历史流量数据的路口,步骤s5包括以下步骤:s51:分别获取所有未预测的c类路口的相邻路口属性,相邻路口属性包括该c类路口的相邻路口的数量m和相邻路口中已预测路口的数量my;s52:分别计算各个未预测的c类路口的得分s_c1、s_c2、…、s_ck,k为c类路口的数量,按照得分大小将c类路口排序,得分s_ck的计算公式为:其中,numc_k表示第k个c类路口的相邻路口的数量,numc_ky表示第k个c类路口的相邻路口中已预测路口的数量;s53:选取得分最大的未预测的c类路口,计算该c类路口的相邻路口中各个已预测路口到该c类路口所需的时间;同样的,步骤s53中,各个相邻路口到该c类路口所需的时间计算具体为:获取该c类路口与所有相邻路口之间的出租车轨迹,跟踪出租车的轨迹,分别根据出租车轨迹计算得到各个相邻路口到该c类路口所需的时间。出租车轨迹数据集是青岛市9月1日到20日的部分出租车gps数据,记录出租车的每个时刻经纬度,根据出租车速度以及轨迹数据,可以近似获得两个路口之间的距离。s54:获取该c类路口的相邻路口中各个已预测路口的在不同时刻的预测流量,根据各个已预测路口到该c类路口所需的时间和各个已预测路口的预测流量,得到该c类路口的部分流量部分流量的计算公式具体为:其中,表示t时刻该c类路口的部分流量,my表示该c类路口的相邻路口中已预测路口的数量,分别表示t时刻自第1个相邻路口、第2个相邻路口、…、第my个相邻路口汇入该c类路口的流量,δt1、δt2、…、δtmy分别表示第1个相邻路口、第2个相邻路口、…、第my个相邻路口到该c类路口所需的时间;s55:根据该c类路口的部分流量计算该c类路口的预测流量预测流量的计算公式具体为:其中,表示t时刻该c类路口的预测流量,表示t时刻该c类路口的部分流量,my表示该c类路口的相邻路口中已预测路口的数量,m表示该c类路口的相邻路口的数量;s56:将该c类路口记为已预测路口;s57:若所有c类路口均为已预测路口,则执行步骤s6,否则,执行步骤s51。完成b类路口和c类路口的流量预测后,如果仍存在路口未被预测,则该类路口为“孤岛”路口,记为d类路口,使用自定义的similar算法对该类路口进行预测。步骤s6包括以下步骤:s61:遍历城市路网拓扑结构图g,若所有路口均为已预测路口,则执行步骤s7,否则,将未预测路口标记为d类路口,执行步骤s62;s62:获取城市的出租车轨迹,得到所有d类路口和所有a类路口的出租车流量;出租车轨迹数据集是青岛市9月1日到20日的部分出租车gps数据,记录出租车的每个时刻经纬度,根据出租车轨迹数据,可以近似各个路口的流量。步骤s62具体为:获取时间段t内城市的出租车轨迹,对时间段t切片,记录t1时刻各个d类路口和各个a类路口的出租车流量、记录t2时刻各个d类路口和各个a类路口的出租车流量、…、记录tr时刻各个d类路口和各个a类路口的出租车流量,得到各个d类路口和各个a类路口的流量点,所述流量点具体为:(ft1、ft2、…、ftr),其中,ft1、ft2、…、ftr分别表示一个路口在t1时刻、t2时刻、…、tr时刻的出租车流量。本实施例中,将20天的出租车流量数据切片,获取第1天、第2天、…、第20天各个d类路口和各个a类路口的出租车流量,得到流量点(f1、f2、…、f20)。s63:选取一个d类路口,自所有a类路口中选取一个与该d类路口的出租车流量最相似的a类路口作为该d类路口的最相似路口;步骤s63具体为:获取该d类路口的流量点,计算该d类路口的流量点与所有a类路口的流量点之间的欧几里得距离,选取欧几里得距离最小的a类路口作为该d类路口的最相似路口。s64:获取最相似路口的预测流量作为该d类路口的预测流量,将该d类路口记为已预测路口;s65:若所有d类路口均为已预测路口,则执行步骤s7,否则,执行步骤s63。s7:获取待预测时刻,输出所有路口在待预测时刻的预测流量。本实施例中,待预测时刻为9月21日至24日,输出所有路口在待预测时刻的预测流量。adjacent算法根据相邻路口的预测流量得到待预测的无历史流量数据路口的预测流量,误差最小,符合车流量实际流动情况。首先根据出租车轨迹数据近似得到待预测路口与其相邻的已预测路口之间的距离,此距离用车辆经过时间定义,因此可以推断,其相邻的已预测路口的对应方向的车辆经过此距离后可以到达待预测路口。因此可以计算出待预测路口自其相邻已预测路口方向涌入的流量,最终相加可以得到部分流量。而对于待预测路口的相邻路口中的未预测路口,通过近似比例划分对流量进行比例增加,得到总流量。similar算法主要根据出租车轨迹数据,比较路口之间的流量相似性。对于某个待预测路口,比较其二十天的出租车流量数据与其他有历史流量数据路口的出租车流量数据的误差,根据误差进行排序,找出误差最小的路口,作为该未预测路口的最相似路口,使用最相似路口的预测流量作为待预测路口的预测流量。表2中给出了仅使用adjacent算法预测无历史流量数据路口、仅使用similar算法预测无历史流量数据路口和使用adjacent-similar算法对无历史流量数据路口的预测结果的误差,使用均方根误差rmse(rootmeansquarderror)和均方误差mse(meansquarederror)来评估结果误差。表2adjacent-similar算法预测结果methodrmsemaeadjacent67.5255.35similar104.4966.14adjacent-similar65.2153.79自表2中可以看出,综合使用adjacent-similar算法的预测结果相比于单独使用adjacent算法或similar算法的预测结果更准确。由于已知历史流量路口的局限性以及实际城市路口结构的复杂性,对无历史流量路口的流量计算存在一定的误差。但是在逻辑上符合车流量实际流动情况,为无历史流量数据的路口提供了流量预测的解决思路。以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本
    技术领域
    中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。当前第1页1 2 3 
    技术特征:

    1.一种基于图卷积神经网络的城市交通流量时空预测方案,其特征在于,包括以下步骤:

    s1:获取城市路网拓扑结构图g,将所有路口记为未预测路口,并标记其中的a类路口、b类路口和c类路口,所述a类路口为有历史流量数据的路口,所述b类路口为自身无历史流量数据但相邻路口中包含a类路口的路口,所述c类路口为自身无历史流量数据且相邻路口中不包含a类路口的路口;

    s2:获取每个a类路口的历史流量数据,构建基于gcn网络和gru网络的st-gcn网络模型,根据城市路网拓扑结构图g和每个a类路口的历史流量数据对st-gcn网络模型进行训练,得到第一流量预测模型;

    s3:基于第一流量预测模型得到每个a类路口的预测流量,并将所有a类路口记为已预测路口;

    s4:对于所有的b类路口,分别获取各个b类路口的所有相邻路口中a类路口的预测流量,使用自定义的adjacent算法得到所有b类路口的预测流量,并将所有b类路口记为已预测路口;

    s5:对于所有的c类路口,分别获取各个c类路口的所有相邻路口中b类路口的预测流量,使用自定义的adjacent算法得到所有c类路口的预测流量,并将所有c类路口记为已预测路口;

    s6:遍历城市路网拓扑结构图g,若所有路口均为已预测路口,则执行步骤s7,否则,将未被预测的路口标记为d类路口,使用自定义的similar算法得到所有d类路口的预测流量;

    s7:获取待预测时刻,输出所有路口在待预测时刻的预测流量。

    2.根据权利要求1所述的一种基于图卷积神经网络的城市交通流量时空预测方案,其特征在于,所述历史流量数据包括时间点信息、地理位置信息和流量信息。

    3.根据权利要求1所述的一种基于图卷积神经网络的城市交通流量时空预测方案,其特征在于,所述步骤s2包括以下步骤:

    s21:基于城市路网拓扑结构图g构建城市路口邻接矩阵,基于城市路网拓扑结构图g和历史流量数据构建a类路口的流量特征矩阵;

    s22:构建基于gcn图卷积网络和gru门控循环单元的st-gcn网络模型,基于城市路口邻接矩阵和流量特征矩阵,通过图卷积操作提取得到a类路口的历史流量数据的空间特征信息,将空间特征信息输入门控循环单元,提取路口的历史流量数据的时间特征信息;

    s23:综合所述路口的历史流量数据的空间特征信息和时间特征信息得到路口的流量预测值;

    s25:将流量预测值与真实流量值比较,将比较结果作为评价指标,调整st-gcn网络模型的参数,重复步骤s22,直至得到满足精度要求的第一流量预测模型。

    4.根据权利要求3所述的一种基于图卷积神经网络的城市交通流量时空预测方案,其特征在于,所述步骤s23中,还包括提取天气特征信息、节假日特征信息,综合所述路口的历史流量数据的空间特征信息、时间特征信息、天气特征信息和节假日特征信息得到路口的流量预测值。

    5.根据权利要求1所述的一种基于图卷积神经网络的城市交通流量时空预测方案,其特征在于,所述步骤s4包括以下步骤:

    s41:分别获取所有未预测的b类路口的相邻路口属性,所述相邻路口属性包括该b类路口的相邻路口的数量n和相邻路口中已预测路口的数量ny;

    s42:分别计算各个未预测的b类路口的得分s_b1、s_b2、…、s_bj,j为b类路口的数量,按照得分大小将b类路口排序,所述得分s_bj的计算公式为:

    其中,numb_j表示第j个b类路口的相邻路口的数量,numb_jy表示第j个b类路口的相邻路口中已预测路口的数量;

    s43:选取得分最大的未预测的b类路口,计算该b类路口的相邻路口中各个已预测路口到该b类路口所需的时间;

    s44:获取该b类路口的相邻路口中各个已预测路口的在不同时刻的预测流量,根据各个已预测路口到该b类路口所需的时间和各个已预测路口的预测流量,得到该b类路口的部分流量部分流量的计算公式具体为:

    其中,表示t时刻该b类路口的部分流量,ny表示该b类路口的相邻路口中已预测路口的数量,分别表示t时刻自第1个相邻路口、第2个相邻路口、...、第ny个相邻路口汇入该b类路口的流量,△t1、△t2、...、△tny分别表示第1个相邻路口、第2个相邻路口、...、第ny个相邻路口到该c类路口所需的时间;

    s45:根据该b类路口的部分流量计算该b类路口的预测流量预测流量的计算公式具体为:

    其中,表示t时刻该b类路口的预测流量,表示t时刻该b类路口的部分流量,ny表示该b类路口的相邻路口中已预测路口的数量,n表示该b类路口的相邻路口的数量;

    s46:将该b类路口记为已预测路口;

    s47:若所有b类路口均为已预测路口,则执行步骤s5,否则,执行步骤s41。

    6.根据权利要求1所述的一种基于图卷积神经网络的城市交通流量时空预测方案,其特征在于,所述步骤s5包括以下步骤:

    s51:分别获取所有未预测的c类路口的相邻路口属性,所述相邻路口属性包括该c类路口的相邻路口的数量m和相邻路口中已预测路口的数量my;

    s52:分别计算各个未预测的c类路口的得分s_c1、s_c2、…、s_ck,k为c类路口的数量,按照得分大小将c类路口排序,所述得分s_ck的计算公式为:

    其中,numc_k表示第k个c类路口的相邻路口的数量,numc_ky表示第k个c类路口的相邻路口中已预测路口的数量;

    s53:选取得分最大的未预测的c类路口,计算该c类路口的相邻路口中各个已预测路口到该c类路口所需的时间;

    s54:获取该c类路口的相邻路口中各个已预测路口的在不同时刻的预测流量,根据各个已预测路口到该c类路口所需的时间和各个已预测路口的预测流量,得到该c类路口的部分流量部分流量的计算公式具体为:

    其中,表示t时刻该c类路口的部分流量,my表示该c类路口的相邻路口中已预测路口的数量,分别表示t时刻自第1个相邻路口、第2个相邻路口、...、第my个相邻路口汇入该c类路口的流量,△t1、△t2、...、△tmy分别表示第1个相邻路口、第2个相邻路口、...、第my个相邻路口到该c类路口所需的时间;

    s55:根据该c类路口的部分流量计算该c类路口的预测流量预测流量的计算公式具体为:

    其中,表示t时刻该c类路口的预测流量,表示t时刻该c类路口的部分流量,my表示该c类路口的相邻路口中已预测路口的数量,m表示该c类路口的相邻路口的数量;

    s56:将该c类路口记为已预测路口;

    s57:若所有c类路口均为已预测路口,则执行步骤s6,否则,执行步骤s51。

    7.根据权利要求5或6所述的一种基于图卷积神经网络的城市交通流量时空预测方案,其特征在于,一个路口到另一个路口所需时间的计算具体为:获取两个路口之间的出租车轨迹,跟踪出租车的轨迹,根据出租车轨迹计算得到一个路口到另一个路口所需的时间。

    8.根据权利要求1所述的一种基于图卷积神经网络的城市交通流量时空预测方案,其特征在于,所述步骤s6包括以下步骤:

    s61:遍历城市路网拓扑结构图g,若所有路口均为已预测路口,则执行步骤s7,否则,将未预测路口标记为d类路口,执行步骤s62;

    s62:获取城市的出租车轨迹,得到所有d类路口和所有a类路口的出租车流量;

    s63:选取一个d类路口,自所有a类路口中选取一个与该d类路口的出租车流量最相似的a类路口作为该d类路口的最相似路口;

    s64:获取最相似路口的预测流量作为该d类路口的预测流量,将该d类路口记为已预测路口;

    s65:若所有d类路口均为已预测路口,则执行步骤s7,否则,执行步骤s63。

    9.根据权利要求8所述的一种基于图卷积神经网络的城市交通流量时空预测方案,其特征在于,所述步骤s62具体为:获取时间段t内城市的出租车轨迹,对时间段t切片,记录t1时刻各个d类路口和各个a类路口的出租车流量、记录t2时刻各个d类路口和各个a类路口的出租车流量、...、记录tr时刻各个d类路口和各个a类路口的出租车流量,得到各个d类路口和各个a类路口的流量点,所述流量点具体为:(ft1、ft2、...、ftr),其中,ft1、ft2、...、ftr分别表示一个路口在t1时刻、t2时刻、…、tr时刻的出租车流量。

    10.根据权利要求9所述的一种基于图卷积神经网络的城市交通流量时空预测方案,其特征在于,所述步骤s63具体为:获取该d类路口的流量点,计算该d类路口的流量点与所有a类路口的流量点之间的欧几里得距离,选取欧几里得距离最小的a类路口作为该d类路口的最相似路口。

    技术总结
    本发明涉及一种基于图卷积神经网络的城市交通流量时空预测方案,包括以下步骤:获取城市路网拓扑结构图和历史流量数据;构建并训练ST‑GCN网络模型;预测得到所有A类路口的预测流量;使用Adjacent算法得到所有B类路口的预测流量;使用Adjacent算法得到所有C类路口的预测流量;再使用Similar算法得到D类路口的预测流量;最后输出所有路口的预测流量。与现有技术相比,本发明首先通过构建和训练ST‑GCN网络模型,得到有历史流量数据路口的预测流量,再通过Adjacent‑Similar算法,对于无历史流量数据的路口,根据其相邻路口的预测流量得到其预测流量,对于“孤岛”路口,寻找其相似路口并用相似路口的预测流量作为该路口的预测流量,为无历史流量数据路口的流量预测提供了新的解决思路。

    技术研发人员:张荣庆;汪涵秋;李冰
    受保护的技术使用者:同济大学
    技术研发日:2020.11.26
    技术公布日:2021.03.12

    转载请注明原文地址:https://wp.8miu.com/read-15253.html

    最新回复(0)