基于IABCWNN模型的交通流量预测研究

2017-11-02 18:25杨梦灵魏赟张生
软件导刊 2017年10期

杨梦灵++魏赟++张生

摘要:传统蜂群算法采用随机法生成初始解,随机性大,难以掌握解的分布。针对这些问题,结合佳点集方法与正弦映射法,提出改进的ABC算法。使用佳点集理论构造蜂群算法的初始解,解决传统随机法构造初始种群对蜂群算法寻优的影响;使用正弦映射法优化轮盘赌算法,克服复杂的高维度项目难以跳出局部最优与负收益度问题。将改进的ABC算法作为WNN网络参数调整算法,利用ABC算法扩大最优解范围,提高搜索速度与精度,从而获得较好的短时交通预测准确度。仿真实验表明,IABCWNN预测模型算法相对误差小,稳定性好,预测精度高。

关键词:ABC算法;WNN模型;佳点集理论;正弦映射

DOIDOI:10.11907/rjdk.171675

中图分类号:TP301文献标识码:A文章编号:16727800(2017)010000404

0引言

交通流预测(ShortTerm Traffic State Forecasting)指根据当前动态的交通流参数,通过一些方法预测未来短时间内交通状态。交通流预测通过大量的历史交通数据,使用算法模型整合数据,实现城市道路交通状态预测,为交通管理和出行提供信息服务支持。短时交通流状态预测结果可以应用到ITS,为交通管理提供科学化的决策支持,给出行者提供准确的道路实时信息,实现缓解道路拥堵、路径诱导、减少污染的目的。

交通流预测已有大量研究成果 [14]。先进的智能交通管理系统不仅应具备交通预测能力,而且能充分利用已具备的经验,使算法有自学习和自适应能力。戴洪波等[5]提出一个简化的交通流宏观动态预测模型,通过分析某个站点的交通流随时间的变化规律,使用BP神经网络训练数据,实现交通流预测。傅贵等[6]通过引入核函数,把非线性交通流数据的预测问题转化为高维空间中的线性回归问题,提出基于向量机回归模型,改善SVM模型自适应能力。AN等[7]使用回声状态神经网络(ENS)进行交通预测。ENS是基于BPNN模型的改进模型。ENS克服了传统BPNN模型易陷入局部最优的缺陷,使预测数据结果更接近实际值。黄红梅等[8]提出基于模糊层次分析法优化BPNN模型和神经网络初始参数,为交通安全评价研究提出了一种新的评价方法。

支持向量机能避免陷入局部最优解,但是算法计算量大,导致收敛速度较慢,影响预测效率。基本的神经网络模型的权值阈值选取对预测结果影响较大,在寻优时易陷入局部最优解,合适的取值才能充分体现出神经网络模型的优势,因此如何避免陷入局部最优,加快寻优速度是神经网络的研究重点。

1相关工作

1.1ABC算法

群智能算法是一种新兴的仿生类演化算法,是根据自然界生物群居分工启发形成的算法,蜂群算法是群智能算法的一种。蜜蜂是群居昆虫,角色简单,行为单一,但是能完成高效的采蜜动作,并能适应环境变化,迅速找到蜜源。

蜂群根据角色行为分工:引领蜂负责花蜜开采,单次开采完后回到蜂巢将蜜源信息和位置传递给蜂巢等待的跟随蜂,此时引领蜂可以选择变成跟随蜂在蜂巢等待或去蜜源继续采蜜;侦察蜂负责开采新的蜜源,随机搜索周围环境找到新的食物源,找到新蜜源即通过摇摆舞通知跟随蜂并变成引领蜂进行花蜜开采;跟随蜂通过侦察蜂的摇摆舞得到蜜源信息,根据引领蜂和侦察蜂信息比较蜜源收益度,选择收益度高的蜜源进行开采。

蜂群算法寻优步骤如下: ①初始阶段,所有蜜蜂都是侦察蜂,在整个范围内进行随机搜索,寻找新蜜源;②找到一个蜜源后,侦察蜂通过摇摆舞通知周围蜜蜂,并成为引领蜂开始采蜜,单次采蜜结束后将蜜源质量和位置信息带回蜂巢。此后,它可以选择继续回到该蜜源采蜜,或者通过摇摆舞与周围的跟随蜂分享蜜源信息。该蜜源开采完后它将变成侦察蜂,随机搜索下一蜜源;③蜂巢内的跟随蜂根据引领蜂携带的蜜源信息判断是否去开采,重复步骤②直至满足结束条件。

在蜂群算法中,引领蜂和跟随蜂根据式(1)进行邻域搜索并更新食物源位置:

vij=xij+rij(xij-xkj)(1)

式(1)中,j∈{1,2,…,D},k∈{1,2,…,S},k是随机数,且k≠i;rij为[-1,1]之间的随机数,用于控制邻域范围。

跟随蜂根据概率pi对第i个食物源采用轮盘赌方式进行选择,pi按照式(2)确定:

pi=Fi∑SNn=1Fn(2)

式(2)中,Fi为第i个蜜源收益度,收益度Fi由下式计算:

Fi=1fi,fi≥01+abs(fi),fi<0(3)

式(3)中,fi为蜜源xi的目标函数值,根据式(1)在其邻域内同样进行新蜜源搜索,采用贪婪选择保留较优蜜源。

蜂群算法中,每一轮搜索都会产生一个最优蜜源。当下一轮产生更优的蜜源时将旧蜜源替换。经过有限次循环该蜜源没有发生变化时,说明算法陷入局部最优,此时要踢除该蜜源,并将该蜜源的引领蜂变成侦察蜂,继续搜索新蜜源。limit即为蜜源的更新次数,用于防止算法陷入局部最优。

设被踢除的蜜源是xi,侦察蜂根据公式(4)随机产生一个新解来替换xi:

xij=minjxij+rad(0,1)(maxjxij-minjxij)(4)

式(4)中,j∈{1,2,…,D},xij為向量xi的第j个元素。

算法中跟随蜂和引领蜂都根据式(1)进行邻域搜索。搜索到新蜜源后,根据蜜源收益度对新旧蜜源进行贪婪选择。如果新蜜源的收益度值大于旧的蜜源,蜜蜂会记住当前新的位置而忘记旧的位置,否则还是记住以前的位置。

1.2WNN模型介绍

WNN模型是在传统的BPNN神经网络上的改进。WNN模型使用小波基函数代替传统BPNN模型的非线性激励函数,小波基函数的尺度参数和平移参数替代隐含层的权值阈值,小波神经网络结合小波分析和神经网络优势,在数据预测方面较传统神经网络表现更好。endprint

大量研究发现,三层结构(输入层、隐含层、输出层)神经网络是最有效的非线性数据处理结构。WNN模型使用3-8-1的模型结构,即输入层使用3个神经元,隐含层使用8个神经元,输出层使用1个神经元,这种3-8-1结构最适合用于交通预测,因此本文选择这种模型结构。

图1中,w2ij表示从输入层的第i个神经元到第j个神经元之间的权值,w3jk表示第j个神经元到输出层神经元之间的权值,φ为小波基函数。

当输入信号序列为xi(i=1,2,…,k)时,隐含层输出为:

h(j)=hj∑ki-1wijxi-bjaj,j=1,2,…,m(5)

式(5)中:h(j)为隐含层第j个节点输出值,wij为输入层和隐含层的连接权值,hj为小波基函数,aj为hj伸缩因子,bj为hj的平移因子。

小波基函数有多种选择,常用的母小波有Shannon小波、Haar小波、Morlet小波等。根据实际需要,本文采用国际上最常用的Morlet母小波函数作为小波基函数,其公式为:

y=cos(1.75x)e-x22(6)

WNN模型输出层计算公式为:

y=∑mj=1wjkh(j),k=1(7)

式(7)中:m为隐含层节点数,wjk为隐含层到输出层权值,h(j)为第j个隐含层节点输出。

2IABCWNN预测模型

2.1改进的ABC算法

2.1.1基于佳点集的种群初始化

初始解是蜂群算法搜索蜜源的起点,初始解的均匀分布可以保持种群的多样性,避免过早陷入局部收敛,影响算法的收敛速度。传统的蜂群算法采用随机法生成初始解,这种方法随机性较大,难以掌握解的分布。当初始解集中于某一区域,这类解就不具备代表性,种群多样性会变差。因此,合理的种群分布对算法的寻优有促进作用。

佳点集基本结构和原理:

设GH是H维欧式空间中的单位立方体,且r∈GH,如果pM(k)={({r(M)1*k},…,{r(M)i*k},…{r(M)H*k}),1≤k≤M},且偏差满足φ(M)=C(r,ε)M-1+ε,其中C(r,ε)是只与r和ε(ε是任意的正整数)有关的常数,则称pM(k)为佳点集,r为佳点:

rk={2cos(2πk/p)},1≤k≤M(8)

式(8)中,p是满足(p-H)/2≥H的最小素数,其中{k*r(M)i}为k*r(M)i的小数部分。理论上已证明,近似计算函数在H维欧式空间单位立方体上积分时,用M个佳点构成的加权和比采用任何其它M个点所得到的误差要小。

为验证佳点集构造法生成数据的特性,使用随机抽样法、混沌序列法与佳点集构造法进行比较。图2给出了使用3种算法在取种群数为100,范围是[0,1]的条件下生成的种群分布。

从图2可以明显看出,使用佳点集方法比另外两种方法构造的初始种群分布更均匀。由于佳点集法与纬数无关,所以这种优势不局限于二维空间,将其映射到目标求解空间仍能保持均匀分布。使用佳点集构造的初始种群应用于相应算法,能使算法表现稳定,保留种群的多样性,从而避免出现早熟现象,使最终收敛到全局最优。

2.1.2改进选择策略算法

当引领蜂完成一次搜索后,它们会将蜜源信息分享给跟随蜂。跟随蜂分析引领蜂传递的蜜源信息,使用轮盘赌策略选择蜜源进行开采。

轮盘赌选择策略:将每个个体的收益度值与该种群的总收益度值相比,得到该个体的相对收益度值。把每个个体的相对收益度当作其被选择的概率,见式(2),每一轮选择会产生一个[0,1]的随机数。将该数作为选择蜜源的随机参数带入计算蜜源收益度,收益度大的个体被选择的概率就大。

这种轮盘赌方法虽应用广泛,但存在两个问题:①在进化初期,有可能收益度很高的个体被选择的概率很大,陷入局部最优;②一般都要求收益度为非负值,否则会在选择操作前对负收益度变换处理,见式(3),但被选中的概率往往都是常数值,不会随进化状态变化,每次对负收益度都处理的话有一定局限性。本文使用三角函数优化轮盘赌算法,解决过早收敛和负收益度问题。

设种群规模为n,种群内第i个体xi的收益度值为fi,记f=minfi,f=maxfi,i=1,2,3,…,n。如图3,把fi∈[f,f]等比例映射到θi∈[0,π/2],通过求sin(θi),最终把fi映射到pi∈[0,1]。经过正弦后,对应的选择概率为:

pi=sinθi(9)

其中,

θi=π2*fi-ff-f(10)

式(10)中,当fi=f时,θi=0;当fi=f时,θi=π/2,且fi∈[f,f],都有θi∈[0,π/2],因此,式(9)中pi∈[0,1]。

设同一种群内任意两个个体xi和xr的收益度值为fi和fr,满足fi

传统的蜂群算法选择概率值是根据经验设定的,而三角函数改进的选择概率是通过个体的适应能力设定的,算法更合理;三角函数选择概率对收益度值没有特殊要求,可处理负收益度,因此通用性更好。可见,正弦选择能确保收益度值较优的个体被选择概率较高,同时克服了负收益度问题。

2.2IABCWNN模型预测交通流

传统的WNN模型采用梯度法不断修正网络权值,使输出值不断接近期望输出。采用梯度法优化网络參数时,往往易使最优解陷入局部极小,引起振荡效应。为克服这一问题,本文将IABC算法代替梯度法,将ABC算法与WNN模型相结合,利用ABC算法扩大最优解范围,提高搜索速度与精度,从而获得更高的短时交通流量预测准确度。

基于IABCWNN模型预测交通流量步骤如下:①初始化。随机初始化WNN网络权值阈值,并使用IABC算法搜寻最优解;②样本分类。将样本数据分为训练样本和测试样本。训练样本用于训练IABCWNN模型,测试样本用于IABCWNN交通流预测;③预测输出。将训练样本输入IABCWNN预测模型,根据模型输出值计算输出结果与期望结果的误差error;④权值阈值修正。根据IABCWNN模型输出结果与期望结果之间的误差error,修正神经网络的权值和阈值,使预测值逼近样本值;⑤判断是否结束,若不满足结束条件,则返回步骤③。

IABCWNN模型训练完成后,用预测样本进行仿真实验,根据仿真效果评价算法性能。

3实验

3.1数据获取与仿真

为测试算法,选择I-800数据库数据作为样本数据,选取数据库中第7区随机不同路段的3个检测器同一天不同时段的交通数据,数据采样间隔为30s,将数据分为两部分,2/3用于训练,剩下用于测试。仿真环境为Windows10操作系统,Intel处理器,2.8GHz,4G内存,仿真软件Matlab7.0。算法的关键参数设置为:引领蜂50,跟随蜂50,蜂群算法迭代次数为800次。设定当IABCWNN算法的权值、阈值误差error≤10%时,结束训练。

为便于观察预测效果,使用以下5个评价指标记录预测结果:平均绝对百分比误差(MAPE)、平均绝对误差(MAE)、训练样本误差(TSE)、均方误差(MSE)、样本训练时间(STT)。经过仿真实验,选取其中1个检测器数据训练,得到实验结果如表1所示。

为检测算法的准确性,使用3个检测器在不同时间段预测的交通流量数据作为样本,通过实验得到预测交通流量与期望交通流量对比图,以及迭代次数与误差百分比关系图,见图3、图4。

3.2实验结果分析

从实验结果可以看出,无论单个检测器的预测流量还是3个检测器的预测结果都满足理想期望。从图3可以看出,大部分预测值比真实值小,预测曲线与真实值曲线趋势相同,且交通流量预测值都分布在实际值附近,误差也较小。从图4可以看出,当迭代次数达到500次时,IABCWNN模型的误差值下降速度已经很缓,说明当训练达到500次后,误差error已经达到最优值,IABC对WNN的权值阈值修正已经很小。

3.3算法对比测试

将改进的IABCWNN预测模型算法与其它算法进行

预测性能对比分析。选择对比的算法有:传统的WNN预测算法[9]、改进的GAWNN预测算法[10]、改进的PSOBPNN预测模型[11]、GMBPNN预测模型[12],这4种交通流量预测算法是目前比较流行的预测模型,使用不同的智能算法改进神经网络,都有比较好的预测准确度。

为便于观察算法预测效果,选取I-800数据库同一天同一检测器同样的时间段数据,采用其中10个数据采样点作为对比,使用不同的预测算法预测流量。为便于观察,画出交通流量误差对比图,见图5。

图5交通量预测对比

从图5可以看出:①5种算法的误差从大到小排序依次是WNN算法、GMBPNN算法、GAWNN算法、PSOBPNN算法和IABCWNN算法,本文算法预测效果明显优于其它算法;②本文算法的平均误差值最小,最接近实际交通流量;③在不同的采样点下,IABCWNN算法也表现最为稳定,相对误差控制在[0,10],精确度最高。

4结语

本文从两个方面改进ABC算法:①使用佳点集法构造初始种群;②使用正弦映射改進轮盘赌选择策略,优化蜜源的开采方式。将改进的IABC算法优化WNN模型的权值阈值,仿真实验结果证实了算法的有效性与合理性。仿真表明,IABCWNN预测模型与其它算法对比显现出一定的优势,算法误差相对较小,稳定性好,预测精度高。从应用角度看,IABCWNN模型适用性高,可应用到交通持续时间预测以及其它领域。

参考文献参考文献:

[1]YU F Y,FRISO S,HANS V L.Efficient traffic state estimation and prediction based on a localized and deterministic Ensemble Kalman Filter[C].IEEE International Conference on Intelligent Transportation Systems,2015:477482.

[2]陈杨,刘光勇,唐海周,等.一种基于平衡指数平滑的交通流数据预测方法[J].现代计算机:专业版,2014,8(20):4548.

[3]廖荣华,兰时勇,刘正熙.基于混沌时间序列局域法的短时交通流预测[J].计算机技术与发展,2015,25(1):15.

[4]史殿习,丁涛杰,丁博,等.一种基于非参数回归的交通速度预测方法[J].计算机科学,2016,43(2):224229.

[5]戴洪波,曾献辉.基于BP神经网络的高速公路短时交通流预测[J].智能计算机与应用,2015,5(4):3638.

[6]傅贵,韩国强,逯峰,等.基于支持向量机回归的短时交通流预测模型[J].华南理工大学学报:自然科学版,2013,41(9):7176.

[7]AN Y, SONG Q S, ZHAO X M. Shortterm traffic flow forecasting state neural network[C].IEEE,2011:844847.

[8]黄红梅.模糊层次分析法优化BP神经网络的交通冲突预测模型[J].价值工程,2014,33(32):242243.

[9]金玉婷,余立建.基于小波神经网络的短时交通流预测[J].交通科技与经济,2014,16(1):8286.

[10]慕伟,陈国定,钟引帆.基于KMeans和GAWNN的交通流量预测[J].现代交通技术,2015,12(5):7074.

[11]许榕,周东,蒋士正,等.自适应粒子群神经网络交通流预测模型[J].西安交通大学学报,2015,49(10):103108.

[12]陈沥,马晓旦,夏晓梅.一种改进的灰色神经网络交通量预测模型[J].物流科技,2015,38(10):149153.

责任编辑(责任编辑:杜能钢)endprint