APP下载

基于改进灰狼算法优化支持向量机的短期交通流预测

2022-04-08何祖杰吴新烨刘中华

关键词:测试函数交通流灰狼

何祖杰,吴新烨,刘中华

(厦门大学建筑与土木工程学院,福建 厦门 361005)

近年来,随着我国社会经济的持续发展和汽车保有量的逐年增长,城市交通所遇到的噪声污染、交通拥堵和空气污染等问题也日益严峻.智能交通系统能够对道路交通状况实现实时监控,诱导控制交通,从而有效解决现有的交通痛点问题,而智能交通系统的实施关键就是对交通流进行准确及时的预测.

交通流具有随机性、复杂性、非线性等特点,这为短期交通流的预测带来了很大的难度.因此,建立实时、精确的短期交通流预测模型是现在国内外交通从业人员研究的热门话题之一.近年来,国内外众多的科研工作者通过建立各种交通流预测模型在交通流预测领域取得了丰硕成果.由于道路在未来某一时刻的车辆交通流量与该道路之前若干时刻的交通流量存在映射关系,故预测道路交通流时常采用构建时间序列模型和回归模型[1-5].得益于优化算法的日渐成熟,道路交通流预测中开始大量采用群体进化智能算法和神经网络算法.徐钦帅等[6]通过改进引力搜索对最小二乘支持向量机进行参数寻优基本解决了交通流预测模型的适用性问题;王建等[7]利用贝叶斯网络组合BP神经网络模型、基于小波分析的差分整合移动平均自回归(ARIMA)模型和基于小波分析反向传播(BP)神经网络模型,使其精度高于单一预测模型;傅贵等[8]提出了基于支持向量机(SVM)回归(SVR)的短期交通流预测模型,并通过实例验证证明了该方法的有效性;Song等[9]提出基于粒子群算法优化BP神经网络的短时交通流预测;Xu等[10]提出了非参数回归模型,利用分类和回归树进行短期交通量预测.

在实际工程中数据的大量采集往往是比较困难的,而SVM在针对小样本数据集的预测上有着良好的效果,且有训练时间短、泛化能力强等优点,在电力负荷预测[11]、短期风速预测[12]、铁路货运量预测[13]等领域有着广泛的应用.SVM的精度很大程度上取决于它的2个参数:惩罚系数C和核函数系数γ.目前,有关SVM的参数优化主要有3种方法:1) 经验试凑法,算法的使用者根据工程经验自行选取参数,这种方法对算法的使用者要求较高,且通常选取的不是最佳参数组合;2) 网格搜索法[14],将需要优化的参数在求解范围内划分网格,遍历所有网格上的点,找到网格内表现最佳的参数.网格搜索法思路直接但计算量大,显然不够“智能”;3) 智能优化算法,利用智能优化算法良好的寻优能力来求解最优参数组合,常见的有粒子群算法(PSO)[15]、引力搜索算法[16]、遗传算法[17]、灰狼优化算法(GWO)[18]等,利用智能算法优化SVM是现在使用最广泛的方法.寻找到的最佳参数取决于智能算法的性能,GWO相比其他智能优化算法有更好的求解精度,但依然存在收敛速度慢、易陷入局部最优解等缺陷,故本文提出引入帐篷(Tent)混沌序列、改进收敛因子更新公式、差分进化灰狼种群来改进GWO,用8个测试函数的仿真计算证明改进灰狼算法(IGWO)相比于GWO和PSO具有更好寻优性能,再将IGWO用于寻找最佳的惩罚系数C和核函数系数γ,从而建立精确的SVM短期车流量预测模型.

1 IGWO和SVM

1.1 GWO

2014年,澳大利亚学者Mirjalili等[19]提出了GWO.该算法是受自然界中灰狼捕猎行为启发从而开发的一种寻优方法,灰狼是群居动物,有着严格的社会等级制度,种群中灰狼等级由高到低划分依次是α狼、β狼、δ狼和ω狼,如图1所示.

图1 灰狼群体社会等级Fig.1 Social hierarchy of gray wolf group

等级森严的社会制度极大地提升了狼群的狩猎成功率.其中,α狼为头狼,负责指挥整个狩猎活动;β狼为协助者,通常是协助α狼做决定或进行其他狼群活动;δ狼服从α、β的命令,并指挥没有自主决策能力的ω狼寻找、包围、攻击猎物.

在数学模型中,每只灰狼个体表示模型中的一个候选解.本研究把模型中的最优解、次优解、第三优解分别称为α、β、δ,其余候选解统称为ω.随着算法的每次迭代,将α、β和δ作为表现最优的前3个解,判断潜在猎物的大致方位,指挥其余的ω狼向猎物不断逼近.狼群的狩猎行为如下所示:

1) 包围猎物

在捕猎过程中狼群会根据种群中表现最好的3只狼α狼、β狼、δ狼的联合指引,逐渐接近并包围猎物,该行为的数学公式为:

D=|C·Xp(t)-X(t)|,

(1)

X(t+1)=Xp(t)-A·D,

(2)

A=2a(r1-1),

(3)

C=2r2.

(4)

式中,t为当前迭代次数;Xp(t)为猎物所处的位置向量;X(t)为灰狼的位置向量;A和C为系数向量;r1,r2为在[0,1]之间的随机向量;a为由2线性递减到0的收敛因子,其计算公式为:

(5)

式中tmax为最大迭代次数.

在包围猎物过程中,灰狼搜索猎物可以通过调整A和C的值来实现,并通过随机向量r1,r2的选取,来对猎物周围不同的方向进行搜寻.|A|表示A值的大小,由式(2)可知,当|A| >1时,灰狼向外分散,在较大的空间进行全局搜索;当|A|<1时,灰狼将集中对某个区域进行精细的局部搜索,逐步逼近最优解.

2) 狩猎

灰狼有识别猎物的位置并包围它们的能力,在一个搜索空间内,假设α狼距离猎物的潜在位置最近,β狼、δ狼紧随其后,这只狼将联合指导其余的δ狼包围猎物,其行为的数学描述如下:

Dα=|C1Xα(t)-X(t)|,

(6)

Dβ=|C2Xβ(t)-X(t)|,

(7)

Dδ=|C3Xδ(t)-X(t)|,

(8)

X1(t+1)=Xα(t)-A1Dα,

(9)

X2(t+1)=Xβ(t)-A2Dβ,

(10)

X3(t+1)=Xδ(t)-A3Dδ,

(11)

(12)

式中:A1和C1、A2和C2、A3和C3依次代表α、β、δ的系数向量;Xα(t)、Xβ(t)、Xδ(t)分别表示α、β、δ的位置向量;X1(t+ 1)、X2(t+1)、X3(t+1)分别表示α、β、δ灰狼个体在(t+1)次迭代时的位置向量.达到最大迭代次数后,头狼α的适应度即为最优解.

1.2 IGWO

GWO存在收敛速度慢、求解精度低、易陷入局部最优等缺陷,针对此问题国内外学者也提出多种方法来改进GWO.魏政磊等[20]提出非线性策略控制参数来加快算法的收敛速度;龙文等[21]参考PSO个体记忆功能,提出一种全新的灰狼个体空间位置更新公式;郭振洲等[22]引入动态权重来改进GWO的收敛策略;Bhadoria等[23]结合模拟退火算法来强化GWO的局部寻优能力;Gupta等[24]提出高等级狼随机行走的IGWO.

以上学者的研究是通过调整非线性控制参数、更改个体空间更新方式或结合其他智能算法的算子对GWO进行优化,虽然可以在一定程度上改善算法的性能,但依然无法很好解决局部搜索能力和全局搜索能力的平衡问题,以及容易陷入局部最优解的缺陷.为解决上述问题,本文通过引入Tent混沌序列初始化种群,提高种群遍历度;改进GWO的收敛因子更新公式,平衡全局搜索能力和局部搜索能力;提出种群差分进化丰富种群多样性,最大程度避免算法过早陷入局部最值影响求解精度.

1) Tent混沌映射初始化灰狼种群

初始种群的分布情况对GWO的性能有很大的影响,随机均匀的初始种群有助于提高算法的收敛速度和最优解的质量.GWO初始种群是随机产生的,这也意味着在这种随机序列下初始种群不可能做到均匀分布于整个搜索空间上,这种不均匀分布将会极大拖累算法的寻优性能.混沌算法具有非线性、随机性和遍历性等特点,特别是具有良好的避免陷入局部最优解的能力,因此,通过引入混沌映射优化GWO可以避免GWO初始化种群随机性的缺点,使其在求解空间分布均匀,提高灰狼群体遍历度.由于Tent混沌映射产生的混沌序列具有更好的遍历均匀性[25],故本文采用引入Tent混沌映射生成灰狼种群以达到优化GWO的目的.

Tent映射的表达式为:

(13)

Tent映射经贝努利移位变换后可表示为:

xn+1=g(xn)=(2xn)mod 1.

(14)

在GWO使用中,把原来标准灰狼算法生成的随机序列替换成Tent混沌映射生成的混沌序列,设置Tent混沌序列参数α=0.7,初始值p(i)=0.3.当p(i)大于0并小于等于α时

p(i+1)=p(i)/α,

(15)

反之

p(i+1)=[1-p(i)]/(1-α).

(16)

在GWO算法的约束条件下,利用Tent混沌序列生成器在求解空间中生成分布均匀的混沌序列,再把产生的混沌因子传入GWO中.因此,得益于混沌序列的特点,狼群初始化时避免了种群随机分布在搜索空间中,使狼群做到了均匀分布.

2) 改进收敛因子更新公式

所有基于群体进化的智能优化算法都要考虑平衡全局搜索和局部搜索,如果不能平衡好这两者的关系则算法容易过早收敛以至错失理论最优解或影响收敛速度.全局搜索意味着种群在广大的搜索空间进行搜寻,此时搜索的步子要相对较大以减小算法陷入局部最优解的概率.局部搜索则要求种群在局部空间内进行精细化搜索,以免搜索步子太大与理论最优解越来越远.GWO作为智能群算法的一种,如何平衡全局搜索和局部搜索也是至关重要的.由式(9)~(12)可以看出GWO的性能在很大程度上依赖A的取值,而从式(3)可知收敛因子a的变化决定了A的取值,从式(5)看出Mirjalili提出的GWO中,收敛因子呈线性递减.在实际的灰狼群体狩猎中,收敛因子若是线性递减则不能很好地平衡局部搜索和全局搜索,所以本文提出基于余弦的收敛因子更新公式如下所示:

(17)

式中,t为当前迭代次数,tmax为最大迭代次数.图2可以直观看出收敛因子的变化.

图2 收敛因子对比Fig.2 Comparison of convergence factors

从式(17)和图2中可以看出,改进后的收敛因子随着迭代次数的不断增加,下降的速率先慢后快.在迭代初期,a的下降速率较慢,以便算法在广阔的搜索空间寻优,迭代后期a的下降速率加快,以便算法在局部精细寻优.a基于余弦的非线性变化,有效协调了算法全局搜索和局部搜索能力,提高了GWO的寻优性能.

3) 灰狼种群差分进化

差分进化是种群通过不断变异、交叉和选择逐渐丰富种群多样性的生物进化机制,在GWO中引入差分进化机制,可以在一定程度上弥补GWO易陷于局部极值的缺陷,提高算法的全局搜索能力[26].为增加种群的多样性,可以进行如下改进:

a) 变异

本文采用β狼与δ狼作为进化种群的父代,将其向量差放缩后与α狼向量结合获得变异因子,其表达式如下:

Vi(t+1)=Xα+W(Xβ-Xδ),

(18)

式中:Vi(t+1)为变异个体在搜索空间中的位置,W为动态变化范围为[0,2]的收缩因子.

b) 交叉

将种群中未变异个体与变异个体进行交叉产生中间个体.对于第i个个体的第j维变化表达式如下:

(19)

式中:R表示交叉概率常数,取值为0.7;rand表示[0,1] 之间的随机数.

c) 选择

在变异和交叉操作产生的Vi(t+1)与Ui(t+1)中选择适应度值较好地作为下一代个体,其表达式如下:

(20)

式中f为适应度函数.

1.3 SVM

对于样本集T={(xi,yi),i=1,2,…,l},其中xi∈RN,yi∈R.首先将变量x映射至高维特征空间,若存在f(x)=wTx+b,使得|f(x)-y|≤ε(∀(xi,yi)∈T,ε>0),则称f(x)=wTx+b是样本T的线性回归函数,其中w和b是如下方程的解:

s.t.yi-(wTxi+b)≤ε+ξi,

(21)

式中:C为惩罚系数,C值越大对误差的包容度越差,过拟合的风险也越大,C越小时对误差的包容度越好,欠拟合的风险也越大;ε为不灵敏损失函数;ξi,*ξi为松弛变量.利用拉格朗日乘子式,将式(21)转化为如下对偶问题:

(22)

(23)

2 IGWO性能测试

2.1 测试函数

为了测试IGWO的寻优性能,本文选取了8个测试函数进行数值仿真计算,并将计算结果与GWO、PSO进行综合对比.表1给出了测试函数的基本信息.测试函数分为3类,f1~f4为高维单峰基准函数,f5~f7为高维多峰基准函数,f8为固定维数多峰基准函数.

2.2 IGWO与GWO和PSO的比较

利用本文提出的IGWO对上述的8个测试函数进行计算,并把结果与GWO和PSO进行综合对比.为了保证对比结果的公平性,3种算法的参数选取一致:选取种群初始数量为30,最大迭代次数为500,每个函数独立求解20次,为测试算法的准确性和稳定性,选取最优值、最差值、平均值和标准差等4个统计学指标对算法进行综合评价,以上3种算法对8个测试函数的测试结果如表2所示.

f1~f4是高维单峰函数,可以测试函数在高维空间下的全局搜索能力,从表2可以看出3种算法都能在一定程度上接近理论最小值,但是IGWO的求解精度要远高于GWO和PSO,同时IGWO的标准差也要远小于其余的两种算法,说明算法在求解的稳定性上也要强于GWO和PSO.f5~f7是高维多峰函数,为数众多的局部最优解为算法寻找全局最优解带来了极大的挑战,所以可以用来测试算法在高维求解空间下的全局搜索能力及算法跳出局部极小值点的能力.从表2可以看出,IGWO相比GWO、PSO更接近理论最优值,其中对于f7函数每次都可以收敛到理论最小值,同时IGWO对f5~f7函数计算的标准差最小,说明IGWO的稳定性最强.f8为固定维数多峰基函数,3种算法求解后都能得到f8的理论最小值.

表1 8个测试函数Tab.1 Eight test functions

表2 3种算法对8个测试函数的综合对比Tab.2 Comprehensive comparison of three algorithms for eight test functions

为了进一步确定算法的收敛速度,图3中画出了8个测试函数的收敛曲线.从图3中可以直观的看出针对高维函数运用PSO求解的效果不佳,往往在算法迭代初期就早熟收敛,与函数的理论最优解相差甚远,GWO、IGWO都能在迭代500次后不同程度上接近理论最优解,其中在相同精度要求下IGWO所需迭代次数要远小于GWO;针对Schaffer函数这类三维函数3种算法都能在500次迭代中找到最优解,IGWO、GWO找到最优解所需的迭代次数要远远小于PSO,其中IGWO所需迭代次数只相当于GWO的一半,可见IGWO相对于GWO、PSO所求解不仅更接近理论最小值还具有更快的收敛速度.

3 构建IGWO-SVM短期交通流预测模型与实例分析

3.1 IGWO-SVM模型构建

通过使用预测算法分析现有交通数据估计下一时间段的交通流数据被称为交通流量预测,短期交通流预测的时间跨度一般认为不超过15 min.构建IGWO-SVM模型的目的在于寻找到交通流时间序列变化的规律F,通过F预测出下一时刻的交通流量数据.假设对交通流数据{xt}进行预测,目前已有前n个交通流数据,p为最优秀学习样本数,采用{x1,x2,…,xn-1,xn}做为训练样本,其对应特征向量为{X1,X2,…,Xn-1,Xn},其中Xi=[xi-p-1,xi-p,…xi-2,xi-1]T(i=1,2,3,…,n),通过SVM回归预测第xi+1时刻的交通流.在得到最新时刻的交通流数据后,将其加入历史交通流数据影响下一时刻的预测结果,如此循环反复,实现对交通流的滚动预测.

SVM进行预测时,惩罚参数C和核函数参数γ取值将极大影响预测结果.SVM中的超平面与支持向量之间有一段距离,在实际工程中,参数C影响了这段距离的大小,C越大表明这段距离越小,模型在训练时对误差的容忍度越小,同时泛化能力降低,过拟合风险增大,反之,C越大表明这段距离也越大,模型训练时对误差的容忍度越大,但泛化能力降低,欠拟合风险增大.参数γ主要是对低维数据进行高维映射,γ越大映射维度越高,训练误差越小模型越复杂,但是容易过拟合,反之,γ越小映射维度越低,训练误差越大,增加了欠拟合风险.可见,参数C和参数γ不能取太大也不能取太小.传统的SVM有关C和γ的取值依赖经验,这种方法不仅会花费大量时长且往往难以找到最佳选择.IGWO-SVM模型利用交叉验证把训练集分成5折,确定参数C和参数γ的取值范围为0.01到100,通过IGWO处理连续优化问题的优秀能力寻找到在训练集中表现最佳的C、γ组合,将最佳参数组合运用到SVM的预测,从而达到提高预测精度的效果,其流程图如图4所示.

算法实现具体步骤如下:

1) 对数据进行预处理并划分数据集,将数据集划分成训练集和测试集.

2) 初始化狼群种群参数.设定灰狼种群规模,搜索空间和最大迭代次数等参数.

3) 在搜索空间内用Tent混沌序列生成分布均匀的、随机的灰狼初始种群.

4) 计算种群中每只灰狼个体的适应度值.

5) 根据适应度值,将表现最好的3只灰狼记为Xα、Xβ和Xδ,根据式(3)、式(4)和式(17),生成A、C和a,根据式(6)~(12)指引其余的灰狼个体更新搜索位置.

6) 计算更新后的灰狼个体的适应度,将新的适应度值与上一代灰狼的适应度值进行比较,若新适应度优于原适应度则新狼位置代替原狼位置,反之保持原狼位置不变.

7) 进行差分进化操作,根据公式(18)~(20)通过交叉、变异和选择操作选择优秀个体做为下一代.

8) 若迭代次数达到最大迭代次数要求,则进入步骤9),反之返回步骤5).

9) 将获得的最优灰狼个体位置信息(C、γ)作为SVM的参数建立模型.

10) 训练数据后输出预测结果.

3.2 模型评价指标

本文采取均方误差(MSE)和平均绝对误差(MAE)对建立的短期交通流预测模型进行评价.其计算公式如下:

(24)

(25)

图3 测试函数收敛曲线Fig.3 Convergence curve of test functions

图4 IGWO-SVM算法流程图Fig.4 Flow chart of IGWO-SVM algorithm

3.3 实例分析

本文所用实验数据来自于美国加利福尼亚州交通运输部的PeMS系统,该系统在加州境内超过39 000 个传感器使用先进的感应线圈检测技术收集数据,数据来源真实可靠.同时,PeMS系统收集的数据具有随机性、波动性、周期性和非线性等交通流普遍特性,这也使得PeMS数据集成为交通流预测领域使用最广泛的开源数据集之一.SVM针对小样本数据即可获得良好的预测效果,过多的训练数据不会对超平面产生影响,因为支持向量早已确定,太多的数据反而会在计算速度和精确度上产生消极影响.因此,本文选取数据为2019年10月7日至2019年10月11日编号为308512观测站记录的某城市主干道共5 d的车流量数据,数据记录时间间隔为5 min,共1 440个交通流数据,取前4天的1 152个数据为训练集,最后一天288个数据为测试集.部分数据如表3所示.

表3 部分交通流数据(2019-10-07)Tab.3 Partial traffic flow data (2019-10-07)

先对实验数据进行剔除冗余数据,修改错误数据和数据归一化等一系列预处理.将预处理完毕的数据输入本文所构建的IGWO-SVM、GWO-SVM、PSO-SVM和SVM模型中,比较4种模型的预测结果.为保证实验结果的公平性,保持种群个数,最大迭代次数一致.设置PSO、GWO和IGWO的初始种群数量为30,最大迭代次数为500,4种模型预测结果如图5和6所示.

图5 4种预测模型结果对比Fig.5 Comparison of four prediction models

图6 4种预测模型部分时间段预测结果对比Fig.6 Comparison of partial time prediction results of four prediction models

为了更加精确地比较以上4种模型的预测精度,表4给出了4种模型的误差对比.

表4 4种预测模型的误差比较Tab.4 Error comparison of four prediction models

从图4可以看出未经优化算法调参的SVM预测模型在时间轴[0,50]和[175,225]预测的交通流量与实际交通流误差相比误差较大,其余时间段预测输出与实际交通流相差较小,所以SVM模型难以实现全天全时间段的交通流短期预测.IGWO-SVM、GWO-SVM和PSO-SVM模型可以较为准确地描述短期交通流的变化趋势,预测结果与实际交通流数据较为接近,从表4可以看出IGWO-SVM模型的均方误差与GWO-SVM模型、PSO-SVM模型和SVM模型相比分别小3.62、6.98和16.25,同时IGWO-SVM模型相较于其余3种模型平均绝对值误差也有不同程度的降低,说明IGWO-SVM模型相比其余3种模型可以实现更加精确的短期交通流预测.

4 结 论

本文针对GWO收敛速度慢、易陷于局部最优解等缺陷,通过引入Tent混沌序列初始化狼群种群;将GWO的收敛因子线性递减的计算公式进行更改;对狼群进行变异、交叉和选择操作以增加种群多样性等方法提出了IGWO,有效地提高了算法收敛速度,极大的避免了陷入局部最优解.把IGWO、GWO和PSO对8个测试函数进行仿真计算,通过综合比较结果表明IGWO比GWO和PSO更有优越性;建立IGWO-SVM交通流预测模型,通过实际数据验证IGWO-SVM模型比GWO-SVM模型、PSO-SVM模型和SVM模型有更好的预测精度,可以准确预测道路短期交通流,具有良好的应用前景.

猜你喜欢

测试函数交通流灰狼
基于LSTM的沪渝高速公路短时交通流预测研究
基于GM跟驰模型的内河限制性航道船舶交通流基本图
一种基于精英选择和反向学习的分布估计算法
基于自适应选择的多策略粒子群算法
混沌精英哈里斯鹰优化算法
灰狼和山羊
谷谷鸡和小灰狼
灰狼的大大喷嚏
具有收缩因子的自适应鸽群算法用于函数优化问题
灰狼照相