APP下载

基于时空信息融合学习的路段行程车速短时预测

2021-12-20邓明君徐丽萍

计算机工程 2021年12期
关键词:路网车速路段

杨 顶,邓明君,徐丽萍

(华东交通大学交通运输与物流学院,南昌 330013)

0 概述

精确实时的路段行程车速预测有利于出行者的路径规划和时间安排,减少高峰时段的拥堵[1],且可为制定交通管理策略提供技术支撑[2],但是路段行程车速的变化受路网结构影响,具有高度非线性、不确定性等特点[3],使得路段行程车速的精确实时预测面临较大困难。学者们关于提高路段行程车速的预测精度进行了大量研究,并主要建立了统计模型、参数模型、非参数模型等3 种模型。统计模型根据数据的统计规律推断变化趋势,代表模型为历史平均(Historical Average,HA)模型[4],该模型计算简单快速,但不能很好地适应时间特征,预测精度较低。参数模型通过时间序列数据确定参数然后基于回归函数进行预测,常见的模型有自回归积分移动平均(Autoregressive Integral Moving Average,ARIMA)模型[5-6],该模型依赖于平稳性假设,不能有效反映路段行程车速的非线性和不确定性。非参数模型从历史数据中发现路段行程车速的变化规律,常见的模型有支持向量回归(Support Vector Regression,SVR)模型[7]、贝叶斯网络模型[8]等,它们能够更好地适应路段行程车速的非线性和不确定性,但仅在时间维度寻找序列数据变化趋势,很难解决路网结构对路段行程车速预测的影响。

近年来,深度学习模型已被证实能够有效挖掘路段行程车速数据的高维特征[9],从而降低预测误差,如循环神经网络(Recurrent Neural Network,RNN)、长短期记忆(Long Short-Term Memory,LSTM)网络等能够有效地利用自循环机制来挖掘路段行程车速的长期变化特征[10-11]。然而,路段行程车速的变化不单受时间因素的影响,路网空间结构及上下游交通状态也是需要考虑的因素。针对路网的空间特性,文献[12]使用深度卷积神经网络(Deep Convolutional Neural Network,DCNN)提取路网结构特征,使用长短期记忆网络获得时间动态变化规律,并通过实验证明了模型的有效性,但DCNN 在数据组织上适用于图像、规则网格等欧几里得空间,路网属于典型非欧几里得空间,需要对路网结构进行空间转换,增加训练步骤,从而导致预测实时性较差。文献[13]利用图卷积层获取路网空间特征,并结合门控卷积层对交通预测问题进行建模,在时间维度采用全卷积的方式减少模型参数,从而提高训练效率,但该模型结构无法充分获取交通数据长期变化特征,预测精度有待提高。文献[14]结合图卷积网络设计了时间序列T-GCN 模型,经过实验验证具有优于SVR 和门控循环单元(Gated Recurrent Unit,GRU)的预测结果,然而该模型在预测过程中未能有效表达预测对象的拓扑结构,预测结果的可解释性较差。文献[15]利用图卷积网络和自由流动可达矩阵(FAST-GCN)来挖掘路网的时空依赖性,以可达矩阵近似表达路网邻接矩阵,相较LSTM 模型能够适应大规模路网的预测,但引入可达矩阵的方式增加了参数量,使模型变得复杂,从而降低了训练效率。以上研究均对路网空间结构提出学习方法,但在数据组织和预测精度上仍存在一定的改进空间。

本文在上述研究的基础上,结合图卷积网络(Graph Convolutional Network,GCN)和门控循环单元建立深度学习模型,挖掘路段行程车速预测问题中的时空特性,通过图卷积网络适应路网任意拓扑结构,利用门控循环单元充分挖掘路段行程车速长期变化特征,同时基于Python 程序从在线地图平台上实时获取并滚动更新路段行程车速数据。

1 基于GCN-GRU 模型的路段行程车速预测

1.1 问题描述

路段行程车速反映路段的运行情况,与一般时间序列预测问题不同,路段行程车速具有复杂的时空特性。在时间维度上,路段行程车速的变化是一个渐变过程,前一时刻的车速影响着下一时刻车速的变化。在空间维度上,多个相连接的路段组成路网,形成上下游路段、交叉路段等多种连接关系,上游路段行程车速通过传递效应影响下游路段行程车速,下游路段行程车速通过反馈效应作用于上游路段行程车速,交叉路段通过空间结构制约交通流向,从而影响路段行程车速的变化[16-17]。因此,路段行程车速预测的难点在于如何挖掘路段行程车速数据的时空特性。为直观解决这一问题,给出如下假设与定义:

假设1路网是点和线的集合,路网中每一条路段为一个节点,节点的连接关系由集合中的边线表示。路网时空演变过程如图1 表示,其中节点的不同颜色代表路段不同的行程车速区间,随着时间的变化每个路段的行程车速在发生动态变化,同时路段行程车速的变化与相连接路段行程车速的变化相互影响。

图1 路网时空演变过程Fig.1 The spatio-temporal evolution of the road network

定义1一个具有拓扑结构的路网表示为G[18],当时间序列长度为S时,动态变化的路网是一个形如{G1,G2,•••,GS}的连续集合,且G=(V,E,A),其中:V表示路网中所有路段的集合,当路段数量为N时V={v1,v2,•••,vN};E表示连接各路段的边线集合;A是一个N行N列的邻接矩阵,组成元素为0 或1,表示两路段之间不连接或者相连接。

定义2路网的特征矩阵表示为X,构成元素为路段行程车速,X∈RN×S,Xt表示在时刻t的路段行程车速集合[14]。

定义3路段行程车速为车辆通过某一路段的速度值,是路段长度与行程时间的比值[18],其中行程时间包含通过起始交叉口的时间。时刻t的路段行程车速为该路段在t-1 至t时刻所有车辆的路段行程车速平均值。

依据定义1,图1 中部分路段的邻接矩阵如表1所示。

表1 邻接矩阵Table 1 Adjacency matrix

因此,路段行程车速预测问题可表达为:依据路网空间结构G和时间序列数据X,通过预测模型得到未来某一个时刻的路段行程车速,其中路网空间结构和时间序列数据根据路段编码相互对应。

1.2 GCN-GRU 模型

在空间维度上,路网是一个典型的非欧几里得空间,路网中每条路段的相连接路段个数以及路段信息都具有不确定性,路网非结构化的特点使得传统卷积神经网络(Convolutional Neural Network,CNN)无法对其进行局部卷积来提取特征,图卷积网络能够适应任意拓扑结构的节点和图,很好地解决了非欧几里得空间的卷积处理问题,因此选取图卷积网络来学习路网结构特征。在时间维度上,路段行程车速数据是典型的时间序列数据,循环神经网络通过自身循环机制能够很好地对时间序列数据进行预测,但传统循环神经网络存在梯度消失、梯度爆炸等问题,长短期记忆网络以及门控循环单元通过门控机制选择性地保留历史信息,能够有效学习路段行程车速数据的长期变化特征,改善了梯度消失和梯度爆炸的问题[19-20]。门控循环单元和长短期记忆网络具有相似的控制机理,但门控循环单元具有更简单的逻辑和更快的学习速度,因此采用门控循环单元来学习路段行程车速数据在时间维度上的变化规律。

为同时提取路网时空特征,结合图卷积网络和门控循环单元建立组合深度学习模型,通过学习和训练输入的路网G和特征矩阵X进行预测。模型由两部分组成:第一部分为时空信息融合,使用图卷积网络将路网拓扑结构融入路段行程车速序列数据;第二部分为数据特征学习,通过门控循环单元进一步挖掘路段行程车速的动态变化规律。如图2 所示,输入路网拓扑结构和路段历史行程车速数据,经图卷积网络学习,得到融合路网空间特性的数据X′t,然后结合上一个时刻隐藏状态ht-1,输入门控循环单元,经由激活函数和控制门处理后得到预测值Yt和隐藏值ht。

图2 GCN-GRU 模型结构Fig.2 Structure of GCN-GRU model

1.2.1 图卷积网络

图卷积网络通过构造傅里叶域过滤器捕获路网中的路段节点及其一阶邻域的空间特征,如图3 所示,首先依次对每一个路段进行空间特征提取,通过激活函数Relu(•)和σ(•)分别控制每个卷积层的输出,然后堆叠多个卷积层,最终输出融合路网空间结构的特征矩阵。

图3 双层图卷积网络模型结构Fig.3 Structure of double layer map convolutional neural network model

双层图卷积网络模型的计算过程如式(1)~式(6)所示:

其中:X是特征矩阵;A是邻接矩阵是自邻接矩阵;是正则化的拉普拉斯矩阵,通过式(2)和式(3)对A进行对称归一化处理得到;IN是N阶单位矩阵是度矩阵,矩阵中数值表示与对应路段相连接路段的个数;W0和W1代表图卷积网络第一层和第二层的权重矩阵;σ(•)是非线性激活函数;Relu(•)是线性整流函数。

1.2.2 门控循环单元

门控循环单元在长短期记忆网络的基础上[10],将遗忘门和外部输入门整合为更新门,提高了模型计算速度。门控循环单元通过更新门和复位门控制数据的输入与输出,其中,更新门控制当前输入信息的保留情况,复位门控制前一个时刻的输出对当前输入的影响,门控循环单元原理如图2 中右侧矩形框所示,计算公式如式(7)~式(11)所示:

1.2.3 损失函数

本文在预测模型的训练过程中,选取自适应矩估计(Adam)优化算法对模型参数进行优化。自适应矩估计优化算法是一种可以替代传统随机梯度下降过程的一阶优化算法,基于训练数据迭代更新神经网络的权重。训练过程中通过设置的损失函数来控制模型的学习方向,需要在尽可能最小化路段行程车速预测值和真实值之间误差的同时避免过度拟合。因此,设置损失函数如下:其中:n是样本总量;Xt是路段行程车速的真实值;Yt是路段行程车速的预测值;Lr是正则化项,防止过度拟合;λ是损失函数超参数,通过精细化调参确定。

1.2.4 训练步骤

通过输入路网空间结构数据G和路段行程车速历史数据X对深度学习模型进行训练。图卷积网络能够适应任意拓扑结构的特点使模型可直接对输入的路网数据G进行特征提取,经双层图卷积网络的学习,路网空间结构对路段行程车速的影响能够有效融合至时间序列特征矩阵X′。通过门控循环单元的门控与循环机制充分挖掘融合时空特性的路段行程车速序列数据的长期变化特征。基于图卷积网络和门控循环单元的深度学习模型训练步骤如下:

步骤1数据预处理,得到路网空间数据G和时间序列数据X。

步骤2对路网邻接矩阵A进行对称归一化处理得到拉普拉斯矩阵

步骤3通过拉普拉斯矩阵和权重矩阵W0依次对路网中路段及相连接路段进行第一层卷积计算,经Relu(•)函数激活并输出。

步骤4对步骤3 输出的特征矩阵进行第二层卷积计算,通过σ(•)函数激活并输出特征矩阵X′。

步骤5将t时刻特征信息和t-1 时刻隐藏信息ht-1输入至门控循环单元,通过复位门rt和更新门zt进行处理,确定ht-1中需要丢弃和更新的信息。

步骤6将t时刻特征信息和复位门rt进行处理,运用tanh(•)激活函数产生候选的状态信息

步骤7通过丢弃ht-1中部分信息和保留信息,得到t时刻隐藏信息ht和预测信息Yt。

步骤8令t=t+1,重复步骤5~步骤7 直至预测出全部时刻信息。

步骤9计算损失函数值,并通过自适应矩估计优化算法对模型权重进行调整。

步骤10在损失函数值符合精度要求或达到最大训练次数时完成模型训练,否则返回步骤3。

1.3 基于数据等维递补的实时预测

1.3.1 等维递补

等维递补方法的基本原理是将最新数据值补充到已知序列后,同时去掉原序列第一个已知数据,保持数据序列与原数据序列等维,利用新的序列预测下一个值,依次递补直至完成预测[21-22]。

从在线地图平台获取实时更新的路段行程车速数据,采用等维递补方法对序列数据进行更新,如图4 所示,设t时刻为预测开始时刻,历史数据序列长度为S,在t+1 时刻使用获取的最新数据代替t-S时刻历史数据,保证数据的实时性和数据维度一致。深度学习模型对数据量大小比较敏感,输入相同维度的数据能够避免模型超参数多次重复标定。

图4 数据等维递补方法Fig.4 Data equal dimension recursive compensation method

1.3.2 路段行程车速预测

使用等维递补方法不断补充最新的路段行程车速信息,通过新的时间序列数据进行路段行程车速预测,预测流程如图5 所示,其中虚线在满足条件时触发,在路网结构不变时可以不间断对路段行程车速进行预测。首先,通过编写的程序按固定采集时间间隔从在线地图平台获取路段行程车速数据并存储于本地数据库中。然后,在收到预测需求后从数据库调取一定长度历史时间序列数据和路网结构数据,进行精细化调参后确定模型超参数并完成训练。最终,通过训练好的深度学习模型进行路段行程车速预测。在得到预测结果后,等待再次从在线地图平台处获取实时数据,以获取到的最新路段行程车速数据等维递补历史序列数据,从而进入下一次预测。当路网结构发生变化或者收到终止预测的指令后结束预测。

图5 路段行程车速预测流程Fig.5 Prediction procedure of road travel speed

2 实验设计与分析

2.1 实验环境与数据获取

以Tensorflow 中Keras 高层神经网络API 为框架,在Python3.7 环境中完成模型搭建和训练。选取深圳市福田区部分区域路段组成实验路网,研究区域路网地图如图6(a)所示,路网拓扑结构如图6(b)所示,路段编号采取高德地图平台编码。该区域中新洲路、深南大道和益田路为城市主干路,民田路、福中路和福华一路为城市次干路,福中三路等为城市支路,共计66 个路段,道路等级覆盖较完整,具有较好的代表性。

图6 研究区域示意图Fig.6 Schematic diagram of study area

通过Python 程序从高德地图平台中以15 min 的时间间隔采集2020 年7 月1 日至2020 年7 月7 日该区域路段行程车速数据作为训练数据集、2020 年7 月8 日的数据作为测试集。实验数据由两部分组成:第一部分为表示路网空间结构的邻接矩阵,由元素0 和1 构成,路段之间存在连接关系对应1,不存在对应0,对应数据集为一个66×66 的矩阵;第二部分为表示路段行程车速变化的特征矩阵,通过高德地图平台编码与区域内的路段建立对应关系,此部分数据集为66×672的矩阵。

2.2 评价指标与超参数设置

为评价模型的预测效果,选取均方根误差(Root Mean Square Error,RMSE)、平均绝对误差(Mean Absolute Error,MAE)、精度(Acc)和方差解释分数(var)4 个评价指标,计算公式分别如式(13)~式(16)所示。均方根误差和平均绝对误差表示预测结果的误差情况,误差越小表示模型的预测效果越好;精度用于检测预测结果的精确度情况,精度越大表示模型的预测效果越好;方差解释分数表示预测结果和真实值之间的相似程度,其值越大表示模型的预测效果越好。

使用2020年7月1日至2020年7月7日的数据对模型超参数进行调试和标定,需要设置的超参数有隐藏单元层数、学习速度、批量大小、训练率、训练量以及损失函数超参数λ。深度学习模型的超参数设置与数据量密切相关,参考同类深度学习模型的训练过程总结出与该实验数据量相近的模型隐藏单元层数为4~64。

为得到适合的隐藏单元层数,通过调整隐藏单元层数(4、8、16、32 和64)来分析其对预测结果的影响,如图7 所示。RMSE 和MAE 的值随着隐藏单元层数的增大迅速减小后开始增大,如图7(a)所示。Acc 和var 的值随着隐藏单元层数的增加迅速增大后开始减小,如图7(b)所示。从各检验指标的变化情况可以看出,当隐藏单元层数为32 时,模型达到最好的预测效果。

图7 不同隐藏单元层数对预测结果的影响Fig.7 The influence of different hidden unit layers on the prediction results

学习速度决定了训练过程中的网络更新权重,学习速度过大会导致模型不收敛,过小会增加模型训练时间;批量大小是模型每次学习输入的样本数量;损失函数超参数λ控制模型优化过程的灵敏度。实验使用的数据量级为104,通过数据量级设置超参数取值区间,然后进行多次调参取优,最终确定模型超参数设置:隐藏单元层数为32,学习速度为0.005,批量大小为32,损失函数超参数λ为0.000 6,训练率为0.87,训练量为10 000。

3 实验结果分析

使用2.2 节中超参数设置进行路段行程车速预测并检验预测效果,选取ARIMA、SVR 和GRU 作为对比模型。设置预测时间为15 min、30 min、45 min和60 min,对应预测步长为1 步、2 步、3 步和4 步,分析单个路段和整体路网的预测结果,同时为检验本文模型多步预测效果,分析4 种预测步长下模型预测效果的变化情况。

单个路段的预测结果如图8 所示。对路段570(福中一路)和路段107(深南大道)的预测效果(预测时间为15 min)进行分析,如图8(a)和图8(b)所示,本文模型可以很好地预测路段行程车速变化规律。在速度发生突变时,预测误差可能会出现较大幅度的波动,如图8(c)所示,预测误差最大达到7.5 km/h;在速度变化趋势比较平稳时,预测误差分布比较平稳,如图8(d)所示,预测误差分布在3 km/h 以内。

图8 路段预测结果与误差分布Fig.8 Road prediction result and error distribution

对路段570 在不同预测步长下的误差分布进行对比分析,如图9 所示,可以看出随着预测步长的增加,误差也会有所增大,但在预测步长最长时误差分布在10 km/h 以内,相比文献[19]采用的LSTM-RNN 模型有明显的性能提升。

图9 不同预测时间下路段570 的误差分布Fig.9 Error distribution for road 570 under different prediction times

ARIMA、SVR、GRU 和GCN-GRU 模型在不同预测时间下路段行程车速预测指标结果如表2 所示,RMSE 和var 变化情况如图10 所示。通过表2 和图10 的预测结果可以看出,在4 种预测步长下GCN-GRU 模型与不同对比模型的主要评价指标有以下变化:1)相比ARIMA 模型,RMSE 分别减少了40.5%、36.7%、34.7%和32.9%,var 分别提高了99%、88.4%、80.5% 和80.6%,Acc 最高提升6.9%;2)相比SVR模型,RMSE分别减少了5.4%、6.6%、9.1% 和10.9%,var 分别提高了1.8%、2.7%、4.2%和5.7%,Acc最高提升1.3%;3)相比GRU 模型,RMSE 分别减少了2.1%、1.6%、3.0% 和2.2%,var 分别提高了0.6%、0.6%、1.2%和1.1%,Acc 最高提升0.4%。通过主要指标的对比分析可知,使用GCN-GRU 模型得到的预测效果优于对比模型。

图10 不同预测时间下4 种模型的RMSE 和var 变化情况Fig.10 Changes of RMSE and var for four models under different prediction times

表2 不同预测时间下4 种模型的路段行程车速预测指标结果Table 2 Results of prediction indexes of road travel speed for four models under different prediction times

由上述实验结果可以看出:ARIMA 模型的预测效果最差,原因是ARIMA 模型基于平稳性假设,不能对路段行程车速变化的非线性和不确定性进行准确预测;SVR 模型预测效果介于ARIMA 模型和GRU 模型之间,是因为其能更好地挖掘路段行程车速在时间序列上的变化趋势,但忽略了路段行程车速的长期变化特征;GRU 模型在对比模型中具有最好的预测效果,但未考虑到路网结构对路段行程车速的影响,因此预测效果还是稍劣于GCN-GRU模型。

不同预测时间下GCN-GRU 模型的路段行程车速预测指标变化情况如图11 所示,随着预测步长的增加整体预测误差和精度未出现很大变化,模型预测Acc 一直保持在90%以上,并且在预测步长最长时误差分布未出现大幅度增加,说明GCN-GRU 模型不但适用于路段行程车速短时预测,也适用于中长时预测,预测效果稳定。

图11 不同预测时间下GCN-GRU 模型的路段行程车速预测指标变化情况Fig.11 Changes of prediction indexes of GCN-GRU model of road travel speed under different prediction times

基于以上实验结果,总结并归纳GCN-GRU 模型具有如下优势:1)采用深度学习算法能够有效解决路段行程车速变化的非线性和不确定性问题;2)结合图卷积网络和门控循环单元能够提取影响路段行程车速变化的路网空间特征和时间序列特征;3)在长时预测过程中具有良好的稳定性;4)通过数据实时获取与更新程序,保证了预测的实时性。

4 结束语

本文基于图卷积网络和门控循环单元构建深度学习模型,通过在线地图平台采集路段实时行程车速和路网结构数据,利用等维递补方法更新历史序列数据,训练并使用GCN-GRU 模型进行路段行程车速多步预测。实验结果表明,GCN-GRU 模型有效解决了路段行程车速预测中的时空关系问题,提高了预测准确性,并且能够满足路段行程车速预测的实时性要求。后续将研究不同的路段连接关系及车速周期性变化对路段行程车速的影响,提高深度学习模型的可解释性和路段行程车速的预测准确性。

猜你喜欢

路网车速路段
冬奥车道都有哪些相关路段如何正确通行
部、省、路段监测运维联动协同探讨
A Survey of Evolutionary Algorithms for Multi-Objective Optimization Problems With Irregular Pareto Fronts
基于XGBOOST算法的拥堵路段短时交通流量预测
轮速信号在定速巡航控制中的应用
打着“飞的”去上班 城市空中交通路网还有多远
2012款奔驰R300车修改最高车速限制
跑跑卡丁车
省际路网联动机制的锦囊妙计
首都路网 不堪其重——2016年重大节假日高速公路免通期的北京路网运行状况