APP下载

基于PSO的BP神经网络-Markov船舶交通流量预测模型

2018-07-04范庆波江福才马全党马勇

上海海事大学学报 2018年2期
关键词:交通流量残差粒子

范庆波, 江福才, 马全党, 马勇

(武汉理工大学 a. 航运学院; b. 内河航运技术湖北省重点实验室 430063)

0 引 言

船舶交通流量的准确预测对于海事主管机关制定合理有效的水上交通组织方案,保障船舶的安全通航具有重要意义。同时,它可以指导港口部门准确把握船舶交通流的变化趋势,合理规划布局航道、码头、锚地等港口水域。

为对船舶交通流进行准确预测,国内外学者已经做了大量的研究并取得了相应的成果,如:马晓波等[1]应用GM(1,1)灰色系统模型,通过引入残差修正等方法对模型进行了优化,并用优化后的模型对长山水道的船舶交通流量进行了预测;李晓磊等[2]通过构建自回归滑动平均模型消除了趋势成分和季节等因素的影响,并对荆州港船舶月均流量进行了预测;郑友银等[3]构建了灰色自回归模型,通过仿真对某港口船舶交通流量进行了预测;FENG等[4]构建了支持向量机模型对船舶交通流量进行了预测;CHEN等[5]运用优化小波最小二乘支持向量回归模型对船舶交通流量进行了预测;杨双双等[6]运用非凸低秩约束模型对天津港水域船舶交通流量进行了预测。

因BP神经网络和Markov模型具有自身的优点,有很多学者将其应用到船舶交通流量预测中。翟久刚等[7]将基于BP神经网络和残差分析的船舶交通流量预测方法用于对长江九江大桥月度船舶交通流量的预测;郝勇等[8]利用遗传算法对RBF神经网络进行了优化,提高了港口船舶交通流量预测的精度;吕鹏飞等[9]将BP神经网络与Markov模型结合,发挥了Markov模型对波动性大的数据预测精度高的优点,使预测精度得到了提高。然而,BP神经网络和Markov模型各自也存在缺点:前者易陷入局部极小值、收敛速率慢;后者在求取状态区间可能值和选择白化系数的过程中存在误差。

本文在前人研究的基础上,构建BP神经网络-Markov预测模型,充分利用BP神经网络和Markov模型的优势,并用粒子群优化(particle swarm optimization, PSO)算法对模型进行优化,以武汉长江大桥月度标准船舶交通流量为样本进行预测,以期提高船舶交通流量预测精度。

1 模型构建

1.1 BP神经网络模型

BP神经网络算法是误差反向传播算法,其基本结构见图1。

输入层神经元的输入为X(k)={y(k-1),…,

图1 BP神经网络结构

(1)

隐含层的激励函数为log-sigmoid函数,即f(x)=1/(1+e-x),估算隐含层神经元数量的公式为

(2)

式中:n和l分别为输入层和输出层神经元数量。激励函数的导数为

k时刻输入层第i个神经元的输出为

(3)

式中:i=1,2,…,n,n=ny+nu-d+1。

k时刻隐含层第j个神经元的输入和输出分别为

输出层神经元的输出为

(4)

式中:α为动量项因子,α∈[0,1)。

1.2 BP神经网络-Markov预测模型

Markov模型具有无后效性或Markov性。设一个具有Markov性的随机序列为{Y(t),t∈T},T为离散的时间集合,E={E1,E2,…,Eλ}为状态空间,则Markov模型的Markov性可以表示为

P{Yλ+1=Eλ+1|Y1=E1,Y2=E2,…,Yλ=Eλ}=

P{Yλ+1=Eλ+1|Yλ=Eλ}

(5)

依据残差序列将Markov模型划分为λ个状态,第i步的第j个状态的上边界和下边界分别用Qij和Hij表示,计算方法[10]如下:

(6)

在每一个时间点,随机过程中的每一个值只能处于一种状态,每个状态在接下来的状态转移中有λ个转向(包括转向自身),即

{Ei→E1,Ei→E2,…,Ei→Eλ}

从状态Ei经过1步转移到状态Ej的概率:

(7)

同理可得到l步状态转移概率:

(8)

系统的1步状态转移概率矩阵为

(9)

BP神经网络-Markov预测模型的预测值为

(10)

1.3 基于PSO算法的优化

在以上建模过程中,fi(i=1,2,…,λ)值的确定方法多种多样,有的取状态区间的中间值(白化系数取0.5),有的运用黄金分割定律(白化系数取0.618)。这些方法都不具有普适性,误差较大。本文引入PSO算法对上述模型进行优化,以根据数据序列的实际变化,求取最佳的白化系数。

PSO算法是由KENNEDY等[11]提出的,该方法简单、高效、全局搜索能力强,因此被应用到很多领域进行模型优化。该算法模拟鸟群觅食行为进行社会性搜索,个体(也称粒子)在超维度空间中飞行,而粒子位置的改变是受到群体中其他粒子的成功经验及其自身的记忆影响的。

对于某个粒子i,其粒子群搜索公式为

vi(t+1)=wvi(t)+c1r1(xpbest-xi(t))+

c2r2(xgbest-xi(t))

(11)

xi(t+1)=xi(t)+vi(t+1)

(12)

式中:xi为粒子在t时刻的位置;vi为粒子在t时刻的速度;xpbest为群体微粒搜索到的自身最佳位置;xgbest为群体微粒经历过的全局最好位置;r1和r2为服从U(0,1)的随机数;w为惯性系数;c1和c2为学习因子。

本文用均方差EMS来衡量每个粒子的适应度函数:

应用粒子群算法进行全局搜索,求取最佳白化系数ai,状态区间内可能的预测值fi求取方法为

fi=(1-ai)Qij+aiHij,ai∈[0,1]

(13)

基于PSO的BP神经网络-Markov预测模型建立步骤见图2。

图2 基于PSO的BP神经网络-Markov预测模型建立步骤

2 模型应用及分析

2.1 数据样本的选取

标准船舶的选取是为了便于对不同水域相同时段或同一水域不同时段的船舶交通流量进行统计,更好地表征船舶交通流的概念。文献[12]提到标准船舶作用有:实现不同航段船舶交通流量的比较,反映不同航段船舶交通流量的特点。日本运用“L系数”“L2系数”的方法进行标准船舶的确定,我国采用表1所示的换算系数将原始数据转化为标准船舶数据。

表1 标准船舶换算系数

根据表1中的换算系数,对从AIS轨迹流量分析软件得到的武汉长江大桥2014年1月至2017年10月的船舶交通流量数据进行标准船舶转换,得到的标准船舶交通流量见表2。

表2 武汉长江大桥标准船舶交通流量统计 艘次

2.2 BP神经网络模型预测

2.2.1 数据预处理

为便于利用BP神经网络模型进行预测,将表2中的数据划分为如表3所示的43组样本数据,以相邻前3个月的船舶交通流量数据为样本输入值,第4个月的船舶交通流量为输出值,如:2014年1—3月的标准船舶交通流量数据为输入值,2014年4月的数据为输出值。选择前22组数据为训练样本,后21组数据为测试样本。

表3 43组样本数据统计 艘次

2.2.2 模型结构及参数选取

选择输入层神经元数量为n=3,输出层神经元数量为l=1。根据经验公式(2)得到隐含层神经元数量m=4。本文选用的是mapminmax函数,训练函数为trainlm,训练次数为10 000次,训练目标为0.000 01,学习函数为learngd,学习速率为0.01。

2.2.3 模型预测

运用MATLAB 2014a编制BP神经网络辅助计算程序,训练界面见图3。

图3 BP神经网络训练界面

选择拟合相对较好、误差较小的运行结果作为BP神经网络预测值,结果见表4。

表4 BP神经网络模型预测值和残差 艘次

2.3 BP神经网络-Markov预测模型

根据BP神经网络的预测结果可以发现,单独利用BP神经网络进行预测,预测结果拟合效果较差。为提高预测精度,引入Markov模型对BP神经网络模型进行优化。

2.3.1 状态划分

由表4可知,由BP神经网络模型得到的标准船舶交通流量预测值残差β(k)∈[-2 462,3 597]。按式(6)进行计算,将残差序列划分为4个状态区间E1、E2、E3和E4,分别为[-2 462,-947.25)、[-947.25,567.5)、[567.5,2 082.25)、[2 082.25,3 597]。残差状态分布见表5。

表5 残差状态分布

2.3.2 求取状态转移概率

根据表5中的残差状态划分情况,对残差的状态从Ei经1步转移到Ej的频数进行统计,结果见表6。

表6 1步状态转移频数

经计算得到1步状态转移概率矩阵为

2.4 基于PSO算法的优化

灰区间(每个状态区间)可能的值应该基于具体问题具体分析。本文引入PSO算法对BP神经网络-Markov预测模型进行优化,根据样本数据进行全局搜索,找到最佳的白化系数。

根据式(13),对灰区间进行白化:

f1=-2 462a1-947.25(1-a1)

f2=-947.25a2+567.5(1-a2)

f3=567.5a3+2 082.25(1-a3)

f4=2 082.25a4+3 597(1-a4)

这里选取:粒子位置区间为[0,1];粒子长度为4;惯性系数w=1;粒子数为1 000;粒子速度区间为[-0.01,0.01];迭代次数k=1 000,学习因子c1=c2=2。运用MATLAB 2014a编制基于PSO算法的优化程序,辅助求解4个灰色系数(白化系数),计算值如下:

a1=0.210 8,a2=1.000 0,

a3=0.968 6,a4=0.430 2

进而得到f1、f2、f3、f4的值如下:

f1=-1 266.56,f2=-947.25,

f3=615.06,f4=2 945.35

根据式(10)对预测值进行计算,计算结果见表7。

由表7可知,与单纯利用BP神经网络模型的预测结果相比,基于PSO BP神经网络-Markov预测模型的预测值与船舶交通流量实际值更加接近。

2.5 误差比较和预测

为便于进行误差分析,运用平均绝对误差和平均绝对百分误差[10]对两种模型的误差进行分析。

从表8可知,本文模型预测精度为91.050 8%,高于单纯利用BP神经网络模型的预测精度,说明用该模型预测的船舶交通流量是可供参考的。下面运用该模型对武汉长江大桥2017年11月和12月的船舶交通流量进行预测。

表8 两种模型误差比较结果统计

第43组数据转移到第44、45组数据的1、2步状态转移概率矩阵分别为

根据式(7)和(8)计算两组数据的1、2步状态转移概率:

(0 0.2 0.4 0.4)

因为第43组数据的残差处于E4状态,所以第44组数据处于E3、E4状态的概率最大,第45组数据处于E1状态的概率最大。

得到2017年11月、12月的船舶交通流量分别为12 142/艘次、11 975/艘次。

3 结束语

本文提出了一种预测船舶交通流量的新方法,该模型在综合考虑预测中非线性映射、残差序列、状态区间、状态转移概率的基础上,自适应求解最佳白化系数,用以克服BP神经网络和Markov模型在预测过程中存在的不足。基于粒子群优化(PSO)的BP神经网络-Markov模型预测精度比传统BP神经网络模型预测精度高。计算结果可以为港口水域的合理规划和相关主管机关制定合理有效的水上交通组织方案等提供参考。在后续的工作中还会在BP神经网络存在的其他误差、Markov模型最佳的状态划分方法、PSO算法的改进等方面进行研究,以期进一步提高预测精度。

参考文献:

[1] 马晓波, 刘雪菲, 戴冉. 优化的长山水道船舶交通流量灰色系统预测模型[J]. 上海海事大学学报, 2016, 37(2): 12-16. DOI: 10.13340/j.jsmu.2016.02.003.

[2] 李晓磊, 肖进丽, 刘明俊. 基于SARIMA模型的船舶交通流量预测研究[J]. 武汉理工大学学报(交通科学与工程版), 2017, 41(2): 329-332, 337. DOI: 10.3963/j.issn.2095-3844.2017.02.030.

[3] 郑友银, 徐志京. 基于灰色自回归模型的船舶流量预测方法[J]. 船海工程, 2011, 40(1): 122-124. DOI: 10.3963/j.issn.1671-7953.2011.01.037.

[4] FENG Hongxiang, KONG Fancun, XIAO Yingjie. Vessel traffic flow forecasting model study based on support vector machine[J]. Communications in Computer and Information Science, 2011, 143: 446-451.

[5] CHEN Jinbiao, TIAN Yanhua, YING Shijun. Optimized LS-SVR method applied to vessel traffic flow prediction[C]//2010 2nd International Conference on Computational Intelligence and Natural Computing. Wuhan, China, 13-14 Sept, 2010: 315-320.

[6] 杨双双, 吴传生, 刘钊, 等. 基于非凸低秩稀疏约束的船舶交通流量预测[J/OL]. 计算机应用研究, 2018, 35(1): 43-47[2017-01-19]. http://www.arocmag.com/article/02-2018-01-002.html.

[7] 翟久刚, 田延飞, 严新平. 基于BP神经网络与残差分析的船舶交通流量预测[J]. 上海海事大学学报, 2013, 34(1): 19-22. DOI: 10.3969/j.issn.1672-9498.2013.01.005.

[8] 郝勇, 王怡. 基于优化RBF网络的港口船舶交通流量预测[J]. 中国航海, 2014, 37(2): 81-84, 117.

[9] 吕鹏飞, 庄元, 李洋, 等. 船舶交通量的BP神经网络-马尔科夫预测模型[J]. 上海海事大学学报, 2017, 38(2): 17-21, 28. DOI: 10.13340/j.jsmu.2017.02.004.

[10] 樊冬雪. 基于优化灰色马尔科夫链模型的铁路客流量预测方法研究[D]. 重庆: 重庆交通大学, 2015.

[11] KENNEDY J, EBERHART R. Particle swarm optimization[J]. IEEE, 2002, 4(8): 1942-1948.

[12] 马勇. 基于排队论的T型航路船舶交通通过能力研究[D]. 大连: 大连海事大学, 2008.

猜你喜欢

交通流量残差粒子
基于残差-注意力和LSTM的心律失常心拍分类方法研究
用于处理不努力作答的标准化残差系列方法和混合多层模型法的比较*
碘-125粒子调控微小RNA-193b-5p抑制胃癌的增殖和侵袭
融合上下文的残差门卷积实体抽取
基于Matlab GUI的云粒子图像回放及特征值提取
基于残差学习的自适应无人机目标跟踪算法
一种用于抗体快速分离的嗜硫纳米粒子的制备及表征
燕山路与曹雪芹西道交叉口运行有轨电车可行性研究
无人车对交通流的影响分析
交通流量增长下的空管安全预警系统研究