基于卷积神经网络的交叉口过车速度短时预测模型研究1
2022-03-03刘振,张祎,慕迪
刘 振 ,张 祎, 慕 迪
上海市城乡建设和交通发展研究院
0 引 言
道路交叉口是城市交通网络联结的关键节点,交叉口通行效率降低极易引起道路拥堵,排堵的关键是交叉口交通通行效率的提升。与路段交通流不同,交叉口各种车流、人流交汇、分散、相互交织,交通流不具有明显的方向性和顺序性,而交叉口的道路条件、周边交通环境等因素都会影响其通行能力[1]。准确的交叉口交通状态预测可以给交警出警提供参考信息,从而更有效、更快速地将警力部署到最需要的地方,将交通指挥警力由“被动”转化为“主动”,由“经验”转化为“先验”。
相关学者对于路段速度预测和路口通行效率已有了较多的深入研究。朱顺应等[3]探讨了路段上小时间间隔里的交通预测ARIMA模型,并对参数进行了标定和检验;翁剑成等[4]基于北京快速路数据,构建了一种基于K近邻的非参数回归短时交通预测模型;吴志周等[5]对比了传统灰色预测模型和反向(BP)神经网络预测模型的优缺点,并建立了灰色神经网络点速度预测模型,经过实例分析,该预测模型具有更好的效果。传统的预测方法,比如自回归滑动平均(ARMA)模型、贝叶斯模型等对于异常交通状态下的交通预测能力较差,无法挖掘数据深层的特征信息,而卷积神经网络(Convolutional Neural Network, CNN)模型具有更强的数据特征提取能力,能够处理更为复杂的问题,因此本文拟采用CNN模型,对地面交叉口的速度进行短时预测研究,构建的预测系统已经在实战中进行了应用和实践,效果良好。
1 技术路线与评价指标选取
1.1 卷积神经网络概述
人工神经网络(Artificial Neural Network,ANN)是一种模拟生物神经网络结构和功能的数学模型或计算模型,由大量神经元通过相互连接而构成的自适应非限行动态网络系统。卷积神经网络[6]是常用的深度学习模型之一。卷积神经网络的基本结构由输入层、卷积层、池化层、全连接层和输出层构成。卷积层和池化层可以取多个,采用卷积层和池化层交替设置方式。卷积层输出特征面的每个神经元与其输入进行局部连接,并通过对应的连接权值与局部输入进行加权求和,并加上偏置值,得到神经元的输入值。
在大数据和云计算支撑下,采用卷积神经网络开展交叉口的过车速度预测,发挥多层的人工神经网络所具有的优异的特征学习能力,既可以快速准确地挖掘出隐藏在交通大数据背后的数据关联关系,又可以避免基于统计方法的预测算法存在的“突发、异常”场景预测不准的局限。
1.2 技术路线
研究的数据基础是浮动车实时轨迹数据、交通信号控制数据和高精度的道路基础数据。浮动车轨迹数据包含过车车辆ID、时间、经度、纬度、瞬时速度、行车方向等字段;交通信号控制数据主要是相位周期、相序、路口饱和度、绿信比、绿灯过车数;高精度的道路基础数据主要包括车道级的道路交通标线、交通标志、交通隔离、防撞设施、安全岛、绿化带、支撑杆、龙门架、天桥、减速垄、交通信号、公交专用道、公交车站、路侧停车位等信息。高精度交通地图数据见图1。
图1 高精度交通地图数据
在算法设计时,系统将获取的基础数据处理为包含特征的矩阵,基于卷积神经网络模型对道路交叉口的车速进行预测。具体流程见图2。
图2 技术路线图
1.3 评价指标
本文采用MAE(Mean Absolute Error,平均绝对误差)和MAPE(Mean Absolute Percentage Error,平均绝对百分比误差)来衡量模型效果。设真实值为y={y1,y2,y3,…,yn},预测值为MAE和MAPE的计算公式如下:
2 卷积神经网络的预测模型
2.1 输入层
研究中,系统基于上海市2万辆浮动车的轨迹数据、信号控制数据和道路网交通基础数据,实时处理成时间周期为2分钟的路段速度,速度数据记录的字段主要包含路段编号、时间和速度(见表1)。
表1 路段速度数据样例
基于道路网交通基础数据和路段速度数据,筛选交叉口及其相关联的路段和交通组织信息,融合计算出绿灯时交叉口的过车车速。
数据具体处理步骤如下:
(1)选取上海市外环线以内的中心城内的6 915个道路路段,将路段按照地理位置和交通组织下的路段联通关系,对交叉口进行序列编号和速度标定;
(2)以交叉口10个连续时间的车速记录为一组,按照路段编号序列形成一个10*6 915的序列值,作为神经网络训练的一组特征值;
(3)以2分钟为时间滑动窗口,预测30分钟后对应交叉口的过车车速。
实战中,选取了徐家汇区域内8个交叉口作为预测案例,用以指导交通疏解的排/派警。以6个月的数据作为训练样本,按照以上方法将数据处理成720*180个特征和标签的数据对,随机抽取其中的60%作为训练数据,20%作为评估数据,20%作为测试数据。如以徐汇区虹桥路/漕溪北路交叉口为例的输入数据见表2。
表2 输入数据样例
2.2 卷积层
CNN通过卷积操作来提取输入的不同特征。若干个特征面组成了卷积层,而特征面则是由多个神经元组成的,这些神经元通过卷积核与上一层的特征面的局部区域连接。就第一层卷积conv1来说,采用16个1层4*4大小的卷积核,每个卷积核对应输出一个特征面:
式中:是输出层特征面k中i行j列的值;xi,j是输入层某个特征面中第i行j列的值;l,k分别是输入和输出层的特征面编号;w是卷积核,其中是第k卷积核的特征面l中第m行n列的卷积核参数;b是偏置项;是激活函数,这里采用ReLU函数作为激活函数:
2.3 池化层
池化层跟在卷积层之后,也可以说卷积层是池化层的输入。池化层的作用是二次提取特征,每个神经元对局部接受域进行池化操作。本文采用最大池化层(MAXPOOL),池化层的维度和步长选择根据输入调整,原则上输入数据的维度越大,相应池化层的维度和步长也稍大。
2.4 Dropout层
为了防止模型的过拟合,提高泛化能力,可以通过丢失数据(Dropout)技术随机忽略一定比例的节点响应。这里采用50% Dropout。
2.5 全链接层
CNN结构中,在经过若干个卷积层、池化层后,连接一个或者一个以上的全连接层。全连接层整合卷积层、池化层中的局部信息。本文在全链接层中使用SIGMOID函数作为激活函数:
式中:表示第l层第i个神经元的输出值;θ为参数;kl表示第l层的神经元数目;特别地,=1 。
2.6 输出层
最后一层全连接层后面连接输出层,这里采用SOFTMAX函数作为输出层:
式中:vi表示第i个元素。
卷积神经网络的训练目标是最小化网络的损失函数,这里损失函数采用交叉熵函数:
在实战中,我们采用了6个卷积、池化层+2个全链接层+1个SOFTMAX层,共9层深度,另外,为了避免过拟合并提高模型的泛化能力,在其中嵌入若干个Dropout层。
卷积神经网络结构如图3。
图3 卷积神经网络结构图
最终得到预测数据,即30分钟后的交叉口的过车预测速度。输出的记录包含交叉口名称、时间和预测速度,具体见表3示例。
表3 输出层样例数据示例
2.7 模型优劣分析
本文构建的卷积神经网络道路交叉口的车速预测模型系统,通过实战应用效果良好。从MAE和MAPE两个指标来看,预测模型评价指标MAE平均值为2.06,MAPE平均值为10.57%,说明预测结果与真实值的偏差较小,模型的预测效果较好。卷积神经网络交叉口车速预测模型评价结果如表4。
表4 卷积神经网络模型评价指标
由于道路交通容易受到极端天气、交通事件等影响,为车速预测带来了一定难度。若仅以统计学方法利用历史数据来进行预测,在发生突发事件时,得到的结果往往与实际相差甚远,而卷积神经网络可以较好地避免这一技术局限。以2020年7月15日暴雨日为例,宜山路/钦州路交叉口在暴雨时采用传统统计学方法的预测结果与实际车速有较大的差距,而卷积神经网络模型良好地预测了暴雨下车速的变化。具体见图4。当然,卷积神经网络模型也有一定的不足:一是调参复杂,二是需要的样本量较大。但基于其良好的预测效果,卷积神经网络模型仍是不错的选择。
图4 暴雨时车速预测精度及车速曲线图
3 总 结
在智能交通系统中,通过交叉口的车辆速度更能体现道路交通的畅通情况。本文基于车辆轨迹数据、交通信号控制系统数据和高精度交通地图数据,构建卷积神经网络模型,实现了对道路交叉口车速的短时预测。经过误差分析,该模型可以较准确地预测交叉口的过车速度,为交叉口警力提前部署提供依据。考虑到速度仅仅是车辆通过交叉口的效率指标,而非通行的效能指标,因此在未来的研究中,可以在车速预测的基础上,结合预测交叉口的流量数据,为提升交叉口通行效能和措施执行力提供数据支撑。