基于改进BP神经网络的城市轨道交通客流短时预测方法

文档序号:31202523发布日期:2022-08-20 01:57阅读:128来源:国知局
基于改进BP神经网络的城市轨道交通客流短时预测方法
基于改进bp神经网络的城市轨道交通客流短时预测方法
技术领域
1.本发明属于城市轨道交通短时客流预测领域,具体涉及一种基于改进bp神经网络的城市轨道交通客流短时预测方法。


背景技术:

2.随着城市轨道交通的不断发展,地铁逐渐成为人们日常选择的出行方式,因此基于历史客流的时间序列数据,实现对地铁站的未来某一时段的客流进行预测,一方面能为有关部门优化线网的运力配置、调整列车的时刻方案、制定乘客的路径诱导方案等;另一方面可为出行者提供出行方式的参考,以此来平衡各种出行方式之间的压力。
3.纵观短时客流预测的发展历程,大致可分为三个阶段。第一阶段为传统的基于数理统计的模型,例如历史平均模型(historical average model,ha)、最小二乘法、arima、逻辑回归、卡尔曼滤波模型、k近邻模型等。第二个阶段为基于机器学习的模型。随着机器学习的发展,一些机器学习模型和混合预测模型被逐渐应用至短时客流预测领域,例如利用决策树、随机森林、多层感知机、支持向量机(support vector machine,svm)模型等。作为机器学习的一个分支,深度学习近几年得到了快速发展,其良好的预测表现能力极大促进了交通预测领域的革新,例如具有较高的预测精度、能够使用一个模型进行全网所有轨道交通车站的短时客流预测等,短时客流预测也随之进入了第三个发展阶段,即以深度学习模型为代表的发展阶段。该阶段循环神经网络rnn,卷积神经网络cnn,图卷积神经网络gcn等相继被挖掘应用至短时客流预测,大量深度学习框架也随即被开发出来。
4.虽然有关短时客流或交通流预测的研究在近几年受到了广泛的关注,但大部分都未能充分把握短时客流数据具有的时序性、非平稳性、非线性等特征。因此,本发明设计了一种基于经验模态分解与神经网络的城市轨道交通客流短时预测方法。


技术实现要素:

5.发明目的:为了提升轨道交通短时客流预测精度,本发明提出了一种基于改进bp神经网络的城市轨道交通客流短时预测方法,对轨道交通客流时间序列数据进行平稳化处理,提高轨道交通短时客流预测精度。
6.技术方案:本发明提出一种基于改进bp神经网络的城市轨道交通客流短时预测方法,具体包括以下步骤:
7.(1)将预先获取到的轨道交通afc刷卡数据中单个车站在运营时间内按时间粒度汇总进站客流量作为预处理样本;
8.(2)采用经验模态分解方法对预处理样本进行处理,得到若干个本征模态函数imfs以及残差;
9.(3)对鲸鱼算法进行优化;
10.(4)基于鲸鱼优化算法改进bp神经网络,寻找最优权值和阈值,使用步骤(2)中的本征模态函数imfs作为模型输入进行训练,并且在训练过程中对参数值进行调整;
11.(5)构建基于经验模态分解的鲸鱼优化bp神经网络的组合模型,得到客流预测值。
12.进一步地,所述步骤(1)包括以下步骤:
13.(11)对异常数据进行滤除处理;
14.(12)将m天客流时间序列数据按照时间粒度划分,在每天的运营时段内按照xmin的时间粒度进行划分得到n个时间段,然后统计每个时间段内的客流量,建立初始样本;
15.(13)将处理得到的m天的数据按照9:1的比例划分为训练集以及测试集。
16.进一步地,所述步骤(2)包括以下步骤:
17.(21)k(t)=(k1,

,k
t
,

,k
t
)为客流序列,t为进站客流的时序长度初始化:令r0=k
(t)
,i=1;
18.(22)获取第i个本征模态函数imf:
19.(221)初始化:h0(t)=r
i-1
(t),j=1;
20.(222)对于给定的原始信号k(t),寻找其全部极大值点及极小值点,采用三
21.次样条插值函数拟合信号的上包络线en(t)及下包络线e
l
(t);
22.(223)计算上下包络线的平均值:
[0023][0024]
(224)计算时序hj(t):
[0025]hj
(t)=h
j-1
(t)-m
j-1
(t)
[0026]
(225)判断hj(t)是否满足成为imfn的条件;若hj(t)满足条件,则其就是原信号k(t)的第i个imf(imfi(t)),执行(23);若不满足条件,则令j=j+1,重复步骤(222)至(225),重复到满足条件停止;采用cauchy收敛准则作为停止筛选的阈值,定义的标准差为:
[0027][0028]
sd的参考数值为0.2-0.3,当连续两次的计算标准差都在此区间,则可以停止筛选;
[0029]
(23)从原始序列中筛选第i个本征模态函数imf分量,则得到残差r(t):
[0030]
r(t)=r
i-1
(t)-imfi(t)
[0031]
(26)如果残差r(t)的极值点数量仍大于等于2,则令i=i+1,继续(22),筛选其他的imf;否则结束;
[0032]
(27)将原始序列k(t)表示为若干个本征模态函数imfn以及残差r(t),即:
[0033][0034]
进一步地,所述步骤(3)包括以下步骤:
[0035]
(31)将搜索猎物的过程定义为搜索某一问题最优解的过程,数学模型如下:
[0036]
d=|c
·
xj(t)-x(t)|
[0037]
x(t+1)=xj(t)-a
·d[0038]
式中,d为搜索猎物时的更新步长;a和c是系数;xj(t)是当前位置的最优方案并且在每次迭代时被更换;x(t)为当前位置;
[0039]
(32)采用随机数进行位置更新,从而提高鲸鱼优化算法的能力,使其不易陷入局
部最优解,数学模型如下:
[0040]
d1=|x
rand
(t)-x(t)|
[0041]
x(t+1)=x
rand
(t)-a
·
d1[0042]
式中,x
rand
为随机数即随机位置;d1为包围猎物时的更新步长;
[0043]
(33)捕食猎物:收缩包围:迭代过程中将公式a=2-2t/t中的a从2讲到0,则模拟了鲸鱼收缩包围猎物的过程;
[0044]
螺旋更新位置:模仿鲸鱼螺旋捕食的方式,建立鲸鱼与目标间的位置过程,数学模型如下:
[0045]
d2=|xj(t)-x(t)|
[0046]
x(t+1)=d2·ebl
·
cos(2πl)+xj(t)
[0047]
式中,d2为捕食时的更新步长;b为常数,l是[-1,1]之间的随机数;
[0048]
假设鲸鱼在收缩包围机制或者螺旋追踪中更新优化位置的几率各为50%,数学模型如下:
[0049][0050]
式中,p为0到1之间的随机数。
[0051]
进一步地,所述步骤(4)包括以下步骤:
[0052]
(41)初始化bp神经网络的权值α和阈值β,确定网络拓扑结构,其中{k1,k2,

,kn}代表的是输入向量,{k1,k2,

,kn}代表的是输出向量;
[0053]
(42)将权值和阈值转换为鲸鱼的位置向量,设置初始种群规模n、最大进化代数tmax、选取均方误差作为鲸鱼优化的目标函数;
[0054]
(43)设置学习率α=0.01,此时模型收敛速度快且不易陷入局部最优;
[0055]
(44)激活函数选取tansig函数以及purelin函数,其公式如下:
[0056][0057]
y=αx+β
[0058]
式中,x为输入变量;e为自然常数;
[0059]
(45)计算个体适应度,找出当前最优个体的位置,记为x
best
(t);
[0060]
(46)根据a的值来更新个体位置;当p《0.5且|a|《1时,按照公式x(t+1)=xj(t)-a
·
d更新个体位置;当p《0.5且|a|≥1时,按照公式x(t+1)=x
rand
(t)-a
·
d1更新个体位置;当p≥0.5时,按照公式x(t+1)=d2·ebl
.cos(2πl)+xj(t)更新个体位置;
[0061]
(47)以目标误差精度以及最大迭代次数作为终止准则,并将得到的最优权值α和阈值β赋给bp神经网络。
[0062]
进一步地,所述步骤(5)包括以下步骤:
[0063]
(51)以连续m天的刷卡数据作为基础,按x min时间粒度计算出客流时间序列k(t)=(k1,

,k
t
,

,k
t
),使用上述emd方法对其分解得到本征模量imfn以及残差r(t);
[0064]
(52)将分解得到的分量进行归一化处理,归一化采用mapminmax函数,归一化后的值一般在[-1,1]之间;假设数据k={k
t
}归一化后为具体计算公式如下:
[0065][0066]
式中,y
ma3
与y
min
为人为设定的上界与下界,k
min
与k
ma3
是样本中的最大值与最小值;
[0067]
(53)将归一化后的数据应用于鲸鱼优化bp网络模型中,进行训练与仿真;
[0068]
(54)将各分量的预测值k
imfn
以及k
r(t)
进行反归一化,然后对其重构叠加得到最终预测值k。
[0069]
有益效果:与现有技术相比,本发明的有益效果:本发明利用经验模态分解以及鲸鱼优化算法分别对bp神经网络的外部和内部环境进行优化,建立组合预测模型应用于地铁站点进站客流预测使用经验模态分解对非平稳、非线性的进站客流时间序列实现平稳化处理,通过鲸鱼优化算法寻找bp神经网络的最优的模型参数,实现了内外部结构的优化;本发明能够提高轨道交通短时客流预测精度,为相关部门制定合理调度优化方案以及出行者选择更优的出行方式,减少交通拥堵等问题都具有重要意义,为城市轨道交通短时客流预测提供了一种新的方法。
附图说明
[0070]
图1是本发明的流程图;
[0071]
图2是本发明15min客流时序图;
[0072]
图3是本发明进站客流emd分解结果图;
[0073]
图4是本发明bp神经网络拓扑结构图;
[0074]
图5是本发明预测结果对比图;
[0075]
图6是本发明预测误差对比图。
具体实施方式
[0076]
下面结合附图对本发明作进一步详细说明。
[0077]
本发明提出一种基于改进bp神经网络的城市轨道交通客流短时预测方法,利用经验模态分解将原始客流数据分解为有限个具有局部特征且不同频率的本征模态函数imfs及残差,以获取数据非平稳、非线性的特征,并将其作为预测模型的输入,采用鲸鱼优化算法对bp神经网络的权值和阈值进行优化,得到更加稳定的预测模型。如图1所示,包括以下步骤:
[0078]
步骤1:将预先获取到的轨道交通afc刷卡数据中单个车站在运营时间内按时间粒度汇总进站客流量作为预处理样本。
[0079]
对异常数据进行处理:符合以下条件的数据将会被滤除:

将进、出站不合理:进站车站名和出站车站名相同的;

进、出站时间不合理进、出站时刻在地铁运营时间范围外的;进站时刻与出站时刻相同或进站时刻在出站时刻之后的;理论最短进站或出站时间过短或过长的;

出行时间不合理:乘客出行总用时过短,小于该od间列车时刻表记录的最短路径车内时间的;总用时过长,超过单次出行乘客最长停留时间或智能票卡失效时间的。
[0080]
将m天客流时间序列数据按照时间粒度划分,在每天的运营时段内按照xmin的时间粒度进行划分得到n个时间段,然后统计每个时间段内的客流量,以此建立初始样本;将处理得到的m天的数据按照一定比例划分为训练集以及测试集。将处理得到的数据按照
15min时间粒度进行汇总得到进站客流时序,如图2所示。
[0081]
步骤2:采用经验模态分解方法对预处理样本进行处理,得到若干个本征模态函数imfs以及残差。
[0082]
由步骤1得到的预处理样本,采用经验模态分解方法进行处理,得到7个本征模态函数(imfs)以及残差,以此作为模型输入。
[0083]
将处理得到的进站客流序列k(t)=(k1,

,k
t
,

,k
t
)进行分解,其中t为进站客流的时序长度,k
t
为时段t进(出)站客流量,其emd过程如下:
[0084]
步骤2.1:初始化:令r0=k
(t)
,i=1;
[0085]
步骤2.2:获取第i个本征模态函数imf:
[0086]
1)初始化:h0(t)=r
i-1
(t),j=1;
[0087]
2)对于给定的原始信号k(t),寻找其全部极大值点及极小值点,采用三次样条插值函数拟合信号的上包络线en(t)及下包络线e
l
(t);
[0088]
3)计算上下包络线的平均值:
[0089][0090]
4)计算时序hj(t):
[0091]hj
(t)=h
j-1
(t)-m
j-1
(t)
[0092]
5)判断hj(t)是否满足成为本征模态函数imfn的条件。若hj(t)满足条件,则其就是原信号k(t)的第i个imf(imfi(t)),执行步骤2.3;若不满足条件,则令j=j+1,重复步骤2.2的2)至5),重复到满足条件停止。采用cauchy收敛准则作为停止筛选的阈值,定义的标准差为:
[0093][0094]
sd的参考数值为0.2-0.3,当连续两次的计算标准差都在此区间,则可以停止筛选。
[0095]
步骤2.3:从原始序列中筛选第i个本征模态函数imf分量,则得到残差r(t)
[0096]
r(t)=r
i-1
(t)-imfi(t)
[0097]
步骤2.4:如果残差r(t)的极值点数量仍大于等于2,则令i=i+1,继续步骤2.2筛选其他的本征模态函数imf;否则结束。
[0098]
步骤2.5:将复杂的原始序列k(t)表示为若干个本征模态函数imfn以及残差r(t),即:
[0099][0100]
经过上述步骤得到的emd分解结果如图3所示。
[0101]
步骤3:对鲸鱼算法进行优化。
[0102]
鲸鱼优化是一种基于座头鲸狩猎行为的算法,该算法通过模仿座头鲸的三个捕食步骤:搜索猎物、包围猎物、捕食猎物(气泡网攻击方式)。具体实现过程如下:
[0103]
步骤3.1:搜索猎物:将搜索猎物的过程定义为搜索某一问题最优解的过程,数学
模型如下:
[0104]
d=|c
·
xj(t)-x(t)|
[0105]
x(t+1)=xj(t)-a
·d[0106]
式中:d为搜索猎物时的更新步长;a和c是系数;xj(t)是当前位置的最优方案并且在每次迭代时被更换;x(t)为当前位置。a和c的计算过程如下:
[0107]
a=2a
·
r-a
[0108]
c=2r
[0109]
a=2-2t/t
[0110]
式中:r是属于0至1之间的随机数;a的值为2至0线性减小;t为总迭代次数。
[0111]
步骤3.2:包围猎物:该阶段采用随机数进行位置更新,从而提高鲸鱼优化算法的能力,使其不易陷入局部最优解,数学模型如下:
[0112]
d1=|x
rand
(t)-x(t)|
[0113]
x(t+1)=x
rand
(t)-a
·
d1[0114]
式中:x
rand
为随机数即随机位置;d1为包围猎物时的更新步长。
[0115]
步骤3.3:捕食猎物
[0116]
1)收缩包围:迭代过程中将公式a=2-2t/t中的a从2讲到0,则模拟了鲸鱼收缩包围猎物的过程。
[0117]
2)螺旋更新位置:模仿鲸鱼螺旋捕食的方式,建立鲸鱼与目标间的位置过程,数学模型如下:
[0118]
d2=|xj(t)-x(t)|
[0119]
x(t+1)=d2·ebl
·
cos(2πl)+xj(t)
[0120]
式中:d2为捕食时的更新步长;b为常数,l是[-1,1]之间的随机数。
[0121]
鲸鱼在收缩包围的猎物同时并沿着螺旋形状更新自己的位置,为了塑造这种同步行为,假设鲸鱼在收缩包围机制或者螺旋追踪中更新优化位置的几率各为50%,数学模型如下:
[0122][0123]
式中:p为0到1之间的随机数。
[0124]
步骤4:基于鲸鱼优化算法改进bp神经网络,寻找最优权值和阈值,使用步骤2中的imfs作为模型输入进行训练,并且在训练过程中对参数值进行调整。具体流程如下:
[0125]
步骤4.1:初始化bp神经网络的权值α和阈值β,确定网络拓扑结构如图4所示,其中{k1,k2,

,kn}代表的是输入向量,{k1,k2,

,kn}代表的是输出向量。
[0126]
步骤4.2:将步骤4.1中权值和阈值转换为鲸鱼的位置向量,设置初始种群规模n、最大进化代数tmax、选取均方误差作为鲸鱼优化的目标函数。
[0127]
步骤4.3:设置学习率α=0.01,此时模型收敛速度快且不易陷入局部最优。
[0128]
步骤4.4:激活函数选取tansig函数以及purelin函数,其公式如下:
[0129][0130]
y=αx+β
[0131]
式中:x为输入变量;e为自然常数。
[0132]
步骤4.5:计算个体适应度,找出当前最优个体的位置,记为x
best
(t)。
[0133]
步骤4.6:根据a的值来更新个体位置。当p《0.5且|a|《1时,按照公式x(t+1)=xj(t)-a
·
d更新个体位置;当p《0.5且|a|≥1时,按照公式x(t+1)=x
rand
(t)-a
·
d1更新个体位置;当p≥0.5时,按照公式x(t+1)=d2·ebl
·
cos(2πl)+xj(t)更新个体位置。
[0134]
步骤4.7:以目标误差精度以及最大迭代次数作为终止准则,并将得到的最优权值α和阈值β赋给bp神经网络。
[0135]
步骤5:构建构建基于经验模态分解的鲸鱼优化bp神经网络的组合模型(emd-woa-bp),得到客流预测值。
[0136]
以连续m天的刷卡数据作为基础,按x min时间粒度计算出客流时间序列k(t)=(k1,

,k
t
,

,k
t
),使用上述emd方法对其分解得到本征模量imfn以及残差r(t);将分解得到的分量进行归一化处理,归一化采用mapminmax函数,归一化后的值一般在[-1,1]之间;假设数据k={k
t
}归一化后为具体计算公式如下:
[0137][0138]
式中:y
max
与y
min
为人为设定的上界与下界,k
min
与k
max
是样本中的最大值与最小值。将归一化后的数据应用于鲸鱼优化bp网络模型中,进行训练与仿真;将各分量的预测值k
imfn
以及k
r(t)
进行反归一化,然后对其重构叠加得到最终预测值k。
[0139]
以连续25天的刷卡数据作为基础,按15min时间粒度计算出客流时间序列,得到预测结果如图5所示,组合模型的预测值相对于单一的模型更加接近实际值,预测效果更优。客流预测结果图中横坐标表示测试样本编号,纵坐标表示客流量,预测时段为每天的5:45-24:00。得到的预测误差对比图如图6所示,在面对客流高峰时,组合模型的误差远小于单一模型,具有更好的拟合效果。并且从总体而言,组合模型的误差值也小于单一模型图中横坐标表示测试样本编号,纵坐标表示预测误差。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1