时间:2024-05-04
宋旭东,任梦雪
(大连交通大学软件学院,辽宁 大连 116028)
道路交通系统通常是随时间变化的,具有一定形式的多样性,没有固定规律可言。相关研究人员出具了各种各样的数据分析模型用以预测短时间内的交通情况,包括求取过往平均值、统计、回归方法,以及以交通流为基础的方法及机器学习等[1,2]。
在现有的研究中,沈琴琴[3]等人提出一种基于复化Simpson公式的季节性灰色Fourier模型,在季节性GM(1,1)模型的基础上,首先利用复化Simpson公式对背景值进行优化,然后用Fourier级数方法修正预测结果。李敏[4]等人在深度学习模型的基础上提出一种集成深度信念网格方法;通过考察交通流序列的高斯混合分布特性,加入高斯混合分布噪声进行数据优化,并采用Bagging集成学习的方法对各子深度信念网络进行集成,得到改进的深度集成信念网络模型。董伟[5]等人提出了一种新的组合控制预测算法。该方法利用多尺度的小波分析方法将交通流量分解为均匀部分和随机部分,并根据状态的动态变化构建了组合控制预测模型,分别利用支持向量机回归和Markov链法来预测交通流的均匀序列和随机序列,从而动态选择训练数据得到最优预测结果。Shao H[6]利用长短期记忆网络进行短期交通流量预测实验表明该模型具有良好的性能。YaldaRajabzadeh[7]等人提出了一种基于随机微分方程(SDE)的两步方法来改善短期预测。第一步,应用Hull-White(HW)模型来获取前几天的基线预测模型。然后使用扩展的Vasicek模型(EV)对一天中的观测值和基线预测(残差)之间的差异进行建模。
当前较流行的预测手段主要是借助于单一的预报模型来对时间序列实施建模,但其不适用于变化多端、包含多个变量的具备动态演化行为的非线性时间序列,也就是说这种模型有一定的短板,不能很好的表现非线性,因为其中的很多数据没有办法被充分展示,而这也会直接影响最终的预测结果,极有可能出现预报误差超限问题。
因此,论文提出了基于极限学习机(ELM)、经验模态分解(EMD)和改进PSO算法优化的门循环单元(Gated Recurrent Unit,GRU神经网络的组合预测模型,对短时交通流数据进行预测。该模型包括ELM模型的初始预测、基于EMD的预测残差分解和基于ASPSO算法优化的GRU进行分量预测。本文对组合预测模型、GRU模型、ELM-GRU模型的预测结果进行了比较分析。仿真结果表明该方法具有较明显的优势,不仅降低了建模预报的难度,同时也提高了预报精度和效率。
ELM[8]是一种单隐层前馈神经网络算法,其比之一般的神经网络有更多优势,任意给出权值、阈值,舍弃了惯用的参数训练,再借助于摩尔-彭洛斯广义逆矩阵来处理获得这一方程组的最小二乘解,并将其作为网络权值参数。这个策略整体实施简洁,具有极好的泛化能力。
经验模态分解(EMD)[9]主要用来处理非线性、非平稳时变序列,此模型依照数据的时间尺度特点来适时的分解信号,比之傅里叶、小波分析具有更多的优势。其算法的选择原理是把没有规律的时序数据逐一规整为固定数目的本征模方程(IMF),具体获得的方程分量囊括了各个时间点原数据的波动动态。
PSO是由Kennedy和Eberhar[10]于1995年提出的一种群智能优化算法,种群中每个粒子在给定的搜索空间中,按如下两个公式通过不断地调整自身的速度和位置进行寻优,直到满足收敛终止条件。
Vi(t+1)=w*Vi(t)+c1*r1[Pi(t)-Xi(t)]
(1)
Xi(t+1)=Xi(t)+Vi(t+1)
(2)
在PSO算法中,粒子种群的多样性直接影响算法早熟收敛及陷入局部极值的风险。算法在每次迭代时粒子都会参考自身的历史最优位置与群体最优位置,这种影响会使种群多样性在早期过快下降,算法陷入非最优区域。针对上述问题,论文提出了一种自适应分期变异粒子群算法(An adaptive staged mutation particle swarm optimization algorithm,ASPSO)。算法首先给出了粒子群学习因子的独立调整策略,更好的平衡了算法局部搜索与全局搜索的能力;然后在算法运行初期使部分适应度过低的粒子发生变异,后期采用进化停滞步数作为触发条件(预设一个阈值,若超过则执行操作),对个体极值和全局极值进行随机扰动。
1)学习因子自适应调整
学习因子是体现粒子向自身历史最优学习与向群体历史最优学习能力的两个参数。在ASPSO中,将学习因子c1设计为递减函数、c2设计为递增函数的,在此基础上根据粒子进化能力的变化率去调整每一代中每个粒子的学习因子。这样的设置方式与其它经典学习因子的取值方式相比,不但能在迭代初期保证粒子的学习能力,加强全局搜索;在迭代后期保证粒子的社会学习,利于局部精准搜索,还通过独立粒子之间不同的进化率,对学习因子作进行调整,使粒子结合自身情况调整学习模式。调整公式如下所示
(3)
(4)
其中,cmax表示学习因子的最大值;cmin表示学习因子的最小值。粒子在迭代初期应该具有较强的自我学习能力,此时的c1值较大、c2值较小。若某粒子i的进化率较小,那么该粒子相比其它粒子的c1稍大、c2稍小,更有利于该粒子做全局搜索。本文中,每个粒子的学习因子均根据粒子进化能力的变化率进行自适应调整。
2)分期变异机制
PSO算法在进化初期,由于微粒群中的个体相对分散,部分微粒可能距离其它微粒很远,多样性偏高导致初始迭代进程缓慢。随着迭代的进行,微粒都朝着个体局部最优位置和全局最优位置的方向聚集,在后期会变得较为集中,甚至出现多次迭代后极值未发生变化的情况。群体多样性下降到较低程度,不利于搜索到全局最优解。
在ASPSO中,按照式(5)将算法运行初期部分适应度过低的粒子进行变异操作,使其位置更新为与当前适应度值最高的粒子位置的平均值;后期采用进化停滞步数作为触发条件(预设一个阈值,若超过则执行操作),按照式(6)和(7)对个体极值和全局极值进行随机扰动。
xi=(xi+xm)/2
(5)
Vi(t+1)=wt*Vi(t)+c1*r1[r3*Pi(t)-Xi(t)]
(6)
Vi(t+1)=wt*Vi(t)+c1*r1[Pi(t)-Xi(t)]
(7)
其中,xm为当前适应度值最高的粒子位置,r3和r4均为介于(0,1)之间的随机数。
经过上述操作,能够始终将粒子群的多样性控制在合理的范围之内,从而有效提高全局收敛能力。
GRU属于LSTM神经网络的变种,由Chung等首次提出的[11]。它较之LSTM[12],升级了门控制结构,同时把LSTM里的输入门、遗忘门整合成了zt门(Update Gate),此外,还用rt门将LSTM的输出门进行了替换。其中,zt主要作用是帮助模型进行新输入信息的过往数据归纳,而rt主要影响前一步骤中状态信息输入模型的概率。因为神经网络中门的数量从3个变成了2个,具体参数被有效降低了,所以无形中节省了训练时间。
GRU神经网络的训练公式如下:
(8)
(9)
zt=σsig(Wzst-1+UZxt+bz)
(10)
rt=σsig(Wrst-1+Urxt+br)
(11)
从式(8)~(11)能够获知:如果rt恒等于1同时zt等于0的话,GRU将直接演变成简洁的RNN模型了。
GRU神经网络采用的梯度下降法易使得权值收敛到某个值,但不能保证它是误差平面的全局最小值。利用ASPSO优化GRU神经网络是将ASPSO代替GRU神经网络中的梯度下降法。ASPSO-GRU神经网络模型的主要思想是通过ASPSO算法优化GRU神经网络的连接权值和阈值,这样能够改善GRU神经网络的预测性能。
因为短时交通流时间序列一般会呈现较为复杂的特点,如果在预测时顾及到太多的细节,不但会使模型变得复杂,同时也将大大降低其效果。ELM模型具有单隐含层,在与其它浅层学习系统,例如单层感知机(single layer perceptron)和支持向量机(Support Vector Machine,SVM)相比较时,在学习速率和泛化能力方面具有优势;ASPSO粒子群算法具有较强的全局寻优能力,利用其可进行GRU神经网络参数优化。论文在上述基础之上,提出了全新的预测模型——ELM-EMD-ASPSO-GRU模型,预测流程如图1所示。
图1 基于ELM-EMD-ASPSO-GRU组合模型的短时交通流预测流程图
基于ELM-EMD-ASPSO-GRU组合预测的短时交通流预测步骤如下:
1)ELM训练与预测。将交通流数据分成训练集、预测集,按照规律设置隐含层层数h、隐含层节点数l和激活方程g,依据梯度下降的方式实施有监督的模型训练,并以此获取到训练集预测值和实际值的残差Ye、预测集的预测值Yb。
2)分解残差序列。借助于EMD分解的步骤,把ELM训练集预测残差Ye划分成n组具有差异化频率的样本模态分量{IMF1,IMF2,…IMFn}及残差项rn。
3)本征模态分量的ASPSO-GRU时序预测。就差异化频率的IMF分量{IMF1,IMF2,…IMFn}及残差项rn依次制定ASPSO-GRU模型来实施时序预测,将获取的值相加,从而获取ASPSO-GRU训练集残差的预测值Y′e。
4)获取最终数据。最终的数据结果是Yb和Y′e之和,即Y′=Yb+Y′e。
为了评估ASPSO算法的性能,利用python进行仿真分析。实验在相同参数情况下同时实现了PSO、QPSO[13]和ASPSO3种算法。并选择3种最具代表性的基准函数进行粒子群优化性能的测试,包括:Sphere函数f1、Quadric函数f2、Rosenbrock函数f3
(12)
(13)
表1给出三个基准函数的相关声明,三个模型的参数设置为:种群规模N=30,初始速度Vmax=30,学习因子cmax=1.2,cmax=0.5,惯性权重wmax=1.0,wmax=0.5。
表1 函数声明
1)种群分布。
种群分布一定程度上可以反映种群的多样性。下面记录了在迭代次数为50、100时三种算法所有粒子的位置信息(见图2)。
图2 三种算法在50、100次迭代时的种群分布
由于多峰函数在此项指标上更具代表性,图2给出了多峰函数的实验结果。对于PSO,种群始终处于较分散的状态。尤其在后面的阶段中,一些粒子很容易陷入至某些局部极值点的区域内。比较PSO,QPSO具有更好的全局收敛性,同时,在后期的阶段中,QPSO中的大部分粒子可能进入全局最优点的区域中。ASPSO中的粒子明显具有比PSO更好的聚集,并且ASPSO不会陷入局部最优点区域从而导致早熟。而比较QPSO,ASPSO则拥有更快的收敛速度。
2)收敛性
由图3可知,在相同初始值的条件下,ASPSO在收敛速度和收敛精确度上均优于PSO和QPSO。QPSO通过利用聚簇得到了比PSO更高的解能力,其收敛速度也更快。而ASPSO则通过自适应调整克服了ASPSO的缺点,降低了对初始参数的依赖性,这可以提高算法的局部搜索和全局搜索能力。
图3 三种算法收敛性能对比
1)实验数据
本文选择的交通流信息采集自美国明尼苏达大学数据研究实验室[14]公布的数据,具体包含美国明尼苏达的圣保罗及明尼阿波利斯市之间公路的交通信息及使用率信息。实验采集2019年1月7日到10日期间交通相关信息,在每间隔十五分钟进行一次数据汇总的情况下,每天获得的数据总数为96个。为测试所使用的模型算法是否合理,择取了前3天的288个数据来实施具体的训练,同时择取第4天的96个数据来实施验证。具体情况见图4,交通流信息一般呈现变化多变的状态,只有在不间断的时间序列上才能呈现些许的规律。
图4 交通流量数据变化曲线
2)仿真结果分析
当前关于预测误差的指标种类繁杂,本文选取的是平均绝对百分比误差(MAPE)、均方根误差(RMSE)这两种,具体计算公式是:
(14)
(15)
为充分展示ELM-EMD-ASPSO-GRU模型在本次预测里的优势所在,本文还引入了GRU模型和ELM-GRU模型,在设置方面,不管是哪一种,其GRU输入层节点数都是1,隐含层节点数都是4,隐含层层数都是1,输出层节点数都是1,初始学习率都是0.001,另外激活方程则是relu、sigmoid。图5展示的是三种模型的预测结果,图5则展示的是三种模型的预测误差对比结果,表2是它们有关MAPE及RMSE的对比情况。
图5 三种模型预测结果
从图5、图6、表2可以看出,ELM-EMD-ASPSO-GRU模型相对于GRU模型和ELM-GRU模型,最终数据的平均绝对百分比误差依次减少了6.54%、3.51%,均方根误差依次减少了4.3032、2.1633。三种模型最终获得的预测数据和真实状况的演变极为相似,可以清晰的展示其具体变化。比之其余两种方法,ELM-EMD-ASPSO-GRU模型的最终数据不管是在哪种误差上都展现绝对优势,这表示此模型的精准性更佳,尤其是具有非平稳、非线性特性的短时交通流数据更加的适用。
图6 三种模型预测误差对比结果
表2 评价指标对比
本文针对短时交通流数据的随机性及复杂性,设计了以ELM-EMD-ASPSO-GRU为基础的短时交通流组合预测模型。该模型主要是将短时交通流数据利用ELM模型进行初始预测,然后将预测的残差利用EMD算法实施分解,借助于ASPSO-GRU模型测评每一残差分量,然后通过所获得的两个结果数据来进行最终数值的预测。实验结果表明:ELM-EMD-ASPSO-GRU模型不但有效改善了预测的精准性,同时还极大地缩小了预测点和真实数据之间的差距,而这也为精准度的提升奠定了基础。而分析其主要原因是得益于对于复杂预测问题的有效分解,借助于诸多的、有序可循的分量预测来进行了简化,另外又借助于对预测结果的整合提升了最终数据的精准性。
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!