一种高速铁路沿线风速特征提取智能预测方法与流程

文档序号:17374704发布日期:2019-04-12 23:10阅读:260来源:国知局
一种高速铁路沿线风速特征提取智能预测方法与流程

本发明涉及一种高速铁路沿线风速特征提取智能预测方法。



背景技术:

近年来,风速预测迅速成为国内外热门研究领域之一。风速预测方法在大风环境下的高速铁路沿线安全方面有着越来越大的作用和广泛应用。风速预测方法应用于大风环境下的铁路沿线安全,实时精确预测未来风速能为列车提供更多提前预警处理时间,形成安全行车方案,保证行车安全。

风速会受到季节、温度、海拔等因素的影响,其具有很强的随机性和复杂的非线性特点。目前风速预测方法主要有学习方法、物理方法和统计方法。机器学习方法在近年来得到快速发展,因此使用机器学习方法对复杂非线性的风速进行预测更为可取,常用模型有人工神经网络、卡尔曼滤波、时间序列分析等。

为解决风速预测中的非平稳非线性的问题,有效提取风速特征,对风速进行高精度的预测,急需提供一种高速铁路沿线风速特征提取智能预测方法,实现对风速的高精度、强适应性、高鲁棒性的预测。



技术实现要素:

本发明提供了一种高速铁路沿线风速特征提取智能预测方法,其目的在于,通过聚类算法和机器学习算法分析高速铁路沿线大风环境下风速特性,并提取的风速特征,建立多种神经网络模型,对高速铁路沿线风速进行准确有效的预测。

一种高速铁路沿线风速特征提取智能预测方法,包括以下步骤:

步骤1:通过测风站获取原始风速时间序列数据集;

在高速铁路沿线指定位置设置测风站,通过测风站获取原始风速时间序列数据集;

所述原始风速时间序列数据集共由n个原始风速数据组成;其中δt为风速采样时间间隔;n为采样次数,n至少大于500;

步骤2:建立风速模型样本a;

所述风速模型样本a包括风速模型训练样本aa和风速模型筛选样本ab;

建立风速模型样本a的具体过程如下:

步骤a1:对原始风速时间序列数据集进行卡尔曼滤波,得到滤波后的风速时间序列数据集和噪声时间序列数据集;

步骤a2:将风速时间序列数据集中任意连续4个时刻的风速作为一组风速向量,得到包含有n-3组风速向量的风速模型样本a;

不同的所述风速向量中可能出现同一时刻的风速值;

步骤a3:按采样时间顺序,从风速模型样本a中,选取前3/4的风速向量组成风速模型训练样本aa,剩余的风速向量组成风速模型筛选样本ab;

步骤3:使用k-means聚类方法,对风速模型样本a中的每一组风速向量进行聚类,选取最优聚类数k,得到k个聚类中心时间序列;

步骤4:依据已经聚为k个聚类类别的风速模型样本a,将风速模型训练样本aa分为k个对应聚类类别的风速模型训练子样本{aa,1,aa,2,…,aa,k},将风速模型筛选样本ab分为k个对应风速模型筛选子样本{ab,1,ab,2,…,ab,k};

步骤5:针对k个风速模型训练子样本,建立k种基于elman神经网络的风速预测特征预选模型各100个;

所述基于elman神经网络的风速预测特征预选模型输出值命名为风速特征预选值;

步骤6:筛选模型,分别将k种基于elman神经网络的风速预测特征预选模型各100个筛选至各10个;

步骤7:每种聚类类别的10个风速预测特征预选模型组成风速预测特征模型组,得到k个风速预测特征模型组;

所述风速预测特征模型组包括10个风速预测特征预选模型,每个风速预测特征模型组输出数据组成长度为10的向量命名为风速特征向量;

步骤8:针对k个风速预测特征模型组,建立k个基于小波神经网络的风速预测归一模型;

所述风速预测归一模型输出值设定为风速归一值;

步骤9:实时预测风速;

实时采集当前时刻及近期的风速数据,数据采样时间间隔应保持与步骤1中使用的原始风速时间序列数据集的风速采样时间间隔δt一致,进行实时预测风速的具体过程如下:

步骤b1:设置风速预测目标时间t,通过测风站获取与目标时间t最接近的至少200个时刻的原始风速值组成原始风速时间序列,进入步骤b2;

步骤b2:对原始风速时间序列进行卡尔曼滤波,得到滤波后的风速时间序列,进入步骤b3;

步骤b3:计算风速时间序列中与目标时间t最接近的4个时刻的风速值与步骤3得出的k个聚类中心时间序列的欧式距离,以距离最小原则选择对应聚类类别的风速预测特征模型组,将风速时间序列中与目标时间t最接近的3个时刻的风速值作为输入数据,输入到风速预测特征模型组中,输出得到长度为10的风速特征向量,进入步骤b4;

步骤b4:将风速特征向量作为输入数据,输入到对应聚类类别的风速预测归一模型,输出风速归一值,进入步骤b5;

步骤b5:判断步骤b4输出风速归一值所在时刻是否大于目标时间t,若是,进入步骤b7,否则,进入步骤b6;

步骤b6:将步骤b4输出的风速归一值插入到风速时间序列首位,更新风速时间序列,返回步骤b3;

步骤b7:计算风速时间序列中与目标时间t最接近的100个时刻的风速值组成的向量与步骤2中得到的风速时间序列数据集任意连续的100个时刻的风速值组成的向量之间的皮尔逊相关系数,选择皮尔逊相关系数最高的风速时间序列数据集中一组100个时刻的风速值组成的向量,将步骤2中的噪声时间序列数据集对应时刻的滤波噪声附加在风速时间序列与目标时间t最接近的100个时刻中,即还原预测风速真实性,完成目标时刻的风速预测。

进一步地,所述使用k-means聚类方法,对风速模型样本a中的每一组风速向量进行聚类,选取最优聚类数k,得到k个聚类中心时间序列的具体过程如下:

步骤2.1:设置k-means聚类数k’,k’=1;

步骤2.2:采用欧式距离作为相似性度量函数,对风速模型样本a中的每一组风速向量进行聚类,获得k’个聚类类别和k’个聚类中心时间序列;

所述欧式距离的计算公式为其中,x=(x1,x2,x3,x4),y=(y1,y2,y3,y4)分别为两个不同的风速向量,d(x,y)为风速向量x,y之间的欧式距离;

步骤2.3:计算k-means聚类的误差平方和sse(k′);

其中,k′是聚类数,ci是第i个聚类类别,p是ci类中的一组风速向量,mi是ci类的聚类中心;

步骤2.4:判断k’值是否等于20,若是,进入步骤2.5,否则,令k’=k’+1,然后返回步骤2.2;

步骤2.5:分别计算当k’=2至19时的每个α(k′)和β(k′)值,然后进入步骤2.6;

α(k′)=arctan(sse(k′)-sse(k′+1)),α∈(0°,90°),k′∈[2,19]

β(k′)=arctan(sse(k′)-sse(k′-1)),β∈(90°,180°),k′∈[2,19];

步骤2.6:分别计算当k’=2至19时的每个α(k′)+β(k′)值,选取使得α(k′)+β(k′)最大时的k’值作为最优聚类数k,得到k个聚类中心时间序列。

进一步地,所述针对k个风速模型训练子样本,建立k种基于elman神经网络的风速预测特征预选模型各100个的过程为:依次将k个风速模型训练子样本中的每组风速向量前3个时刻的风速值作为输入数据,第4个时刻的风速值作为输出数据,训练elman神经网络,针对每个风速模型训练子样本训练得到的elman神经网络分别随机设置100种不同取值的elman神经网络参数,得到k种基于elman神经网络的风速预测特征预选模型各100个,共100*k个基于elman神经网络的风速预测特征预选模型。

进一步地,所述100*k个基于elman神经网络的风速预测特征预选模型在训练时均设置输入层节点个数为3,隐含层节点个数设置范围为[5,10],输出层节点个数为1,承接层节点个数为7,隐含层函数采用sigmoid函数,网络的训练采用bp算法,最大迭代次数设置为800,训练学习率设置范围为[0.001,0.5],阈值为0.005。

进一步地,所述筛选模型,分别将k种基于elman神经网络的风速预测特征预选模型各100个筛选至各10个的具体过程如下:

步骤5.1:依次将k个风速模型筛选子样本{ab,1,ab,2,…,ab,k}中的每组风速向量前3个时刻的风速值作为输入数据,分别输入到对应聚类类别的100个风速预测特征预选模型中;

步骤5.2:初步筛选风速预测特征预选模型;

依次计算每个风速预测特征预选模型输出的风速特征预选值按时间次序组成的一维向量与风速模型筛选样本ab中对应时刻的风速值组成的一维向量的均方误差,淘汰均方误差大于均方误差均值的风速预测特征预选模型;

步骤5.3:建立筛选向量;

分别利用k个聚类中心时间序列中与当前时刻最接近的3个时刻的风速值建立k个长度为3的筛选向量;

步骤5.4:更新筛选向量;

分别将k个筛选向量前3个时刻的风速数据作为输入数据,输入至对应聚类类别的风速预测特征预选模型中,将输出的第4个时刻的风速特征预选值插入筛选向量第一位置,其余数据位置顺序依次延后,重复此步骤直到k个筛选向量长度均达到200;

步骤5.5:再次筛选风速预测特征预选模型;

分别计算每种聚类类别的风速预测特征预选模型得到的筛选向量两两之间的皮尔逊相关系数,得到k个皮尔逊相关系数矩阵,分别计算每个筛选向量与其他筛选向量之间的皮尔逊相关系数的累加值,逐步淘汰皮尔逊相关系数累加值最大对应的风速预测特征预选模型,直到每种聚类类别的风速预测特征预选模型均剩余10个。

进一步地,所述针对k个风速预测特征模型组,建立k个基于小波神经网络的风速预测归一模型的具体过程如下:

步骤6.1:依次将风速模型样本a中的每组风速向量前3个时刻的风速值作为输入数据,输入到对应聚类类别的风速预测特征模型组中,输出得到风速特征向量;

步骤6.2:依次将步骤6.1得到的风速特征向量作为输入数据,风速模型样本a中对应的第4个时刻的风速值作为输出数据,训练小波神经网络,得到针对k个风速预测特征模型组的k个基于小波神经网络的风速预测归一模型。

进一步地,所述基于小波神经网络的风速预测归一模型在训练时均设置输入层节点个数为10,隐含层小波元个数为20,输出层节点个数为1;隐层小波神经元采用mexicanhat小波函数,输出层节点采用sigmoid函数,训练过程中的最大迭代次数设置为500,训练学习率为0.04,阈值为0.002。

有益效果

本发明提供了一种高速铁路沿线风速特征提取智能预测方法,该方法针对高速铁路沿线大风环境下的复杂、非线性、非平稳风速,通过聚类算法和机器学习算法,对风速数据进行聚类分析,选择聚类效果最好的聚类数k,将风速模型样本分为k类,并对每种聚类簇的风速模型样本建立100个风速预测特征预选模型,通过数学分析方法分别筛选效果好的10个模型组建成k个风速预测特征模型组提取风速特征,然后建立k个风速预测归一模型,将风速预测特征模型组的特征输出值进行归一,最后通过相关性分析,还原风速的真实性;

该方法利用聚类算法将风速数据进行聚类,并针对每种聚类簇单独构建多种不同神经网络模型,有效地提取风速特征;风速预测过程中针对风速不同特征类型进行聚类分析,建立风速预测特征模型组,最后对风速特征输出进行归一,可以有效避免风速的非平稳性变化,从而找出风速特征值,具有预测高精度、特征智能提取、适应性强、鲁棒性高的特点,适合应用于大风环境下的高速铁路沿线安全等领域。

附图说明

图1为本发明所述方法的流程示意图。

具体实施方式

下面将结合附图和实例对本发明做进一步的说明。

如图1所示,一种高速铁路沿线风速特征提取智能预测方法,包括以下步骤:

步骤1:通过测风站获取原始风速时间序列数据集;

在高速铁路沿线指定位置设置测风站,通过测风站获取原始风速时间序列数据集w(t)=[w(t=δt),w(t=2*δt),…,w(t=n*δt)];

所述原始风速时间序列数据集共由n个原始风速数据组成;其中δt为风速采样时间间隔;n为采样次数,n至少大于500;

步骤2:建立风速模型样本a;

所述风速模型样本a包括风速模型训练样本aa和风速模型筛选样本ab;

建立风速模型样本a的具体过程如下:

步骤a1:对原始风速时间序列数据集进行卡尔曼滤波,得到滤波后的风速时间序列数据集w′(t)=[w′(t=δt),w′(t=2*δt),…,w′(t=n*δt)]和噪声时间序列数据集no(t)=[no(t=δt),no(t=2*δt),…,no(t=n*δt)];

步骤a2:将风速时间序列数据集中任意连续4个时刻的风速作为一组风速向量,得到包含有n-3组风速向量的风速模型样本a;

不同的所述风速向量中可能出现同一时刻的风速值,所述风速模型样本a表示为:

其中,风速模型样本a中的每一行表示一组风速向量,共n-3组风速向量;

步骤a3:按采样时间顺序,从风速模型样本a中,选取前组风速向量组成风速模型训练样本aa,剩余的风速向量组成风速模型筛选样本ab;

步骤3:使用k-means聚类方法,对风速模型样本a中的每一组风速向量进行聚类,选取最优聚类数k,得到k个聚类中心时间序列,具体过程如下:

步骤2.1:设置k-means聚类数k’,k’=1;

步骤2.2:采用欧式距离作为相似性度量函数,对风速模型样本a中的每一组风速向量进行聚类,获得k’个聚类类别和k’个聚类中心时间序列;

所述欧式距离的计算公式为其中,x=(x1,x2,x3,x4),y=(y1,y2,y3,y4)分别为两个不同的风速向量,d(x,y)为风速向量x,y之间的欧式距离;

步骤2.3:计算k-means聚类的误差平方和sse(k′);

其中,k′是聚类数,ci是第i个聚类类别,p是ci类中的一组风速向量,mi是ci类的聚类中心;

步骤2.4:判断k’值是否等于20,若是,进入步骤2.5,否则,令k’=k’+1,然后返回步骤2.2;

步骤2.5:分别计算当k’=2至19时的每个α(k′)和β(k′)值,然后进入步骤2.6;

α(k′)=arctan(sse(k′)-sse(k′+1)),α∈(0°,90°),k′∈[2,19]

β(k′)=arctan(sse(k′)-sse(k′-1)),β∈(90°,180°),k′∈[2,19];

步骤2.6:分别计算当k’=2至19时的每个α(k′)+β(k′)值,选取使得α(k′)+β(k′)最大时的k’值作为最优聚类数k,得到k个聚类中心时间序列;

步骤4:依据已经聚为k个聚类类别的风速模型样本a,将风速模型训练样本aa分为k个对应聚类类别的风速模型训练子样本{aa,1,aa,2,…,aa,k},将风速模型筛选样本ab分为k个对应风速模型筛选子样本{ab,1,ab,2,…,ab,k};

步骤5:针对k个风速模型训练子样本,建立k种基于elman神经网络的风速预测特征预选模型各100个;

所述基于elman神经网络的风速预测特征预选模型输出值命名为风速特征预选值;

所述针对k个风速模型训练子样本,建立k种基于elman神经网络的风速预测特征预选模型各100个的过程为:依次将k个风速模型训练子样本中的每组风速向量前3个时刻的风速值作为输入数据,第4个时刻的风速值作为输出数据,训练elman神经网络,针对每个风速模型训练子样本训练得到的elman神经网络分别随机设置100种不同取值的elman神经网络参数,得到k种基于elman神经网络的风速预测特征预选模型各100个,共100*k个基于elman神经网络的风速预测特征预选模型,表示为:

其中,m_elman表示100*k个基于elman神经网络的风速预测特征预选模型,每一行表示同一聚类类型的100个风速预测特征预选模型,共k行;

所述100*k个基于elman神经网络的风速预测特征预选模型在训练时均设置输入层节点个数为3,隐含层节点个数设置范围为[5,10],输出层节点个数为1,承接层节点个数为7,隐含层函数采用sigmoid函数,网络的训练采用bp算法,最大迭代次数设置为800,训练学习率设置范围为[0.001,0.5],阈值为0.005;

步骤6:筛选模型,分别将k种基于elman神经网络的风速预测特征预选模型各100个筛选至各10个,具体过程如下:

步骤5.1:依次将k个风速模型筛选子样本{ab,1,ab,2,…,ab,k}中的每组风速向量前3个时刻的风速值作为输入数据,分别输入到对应聚类类别的100个风速预测特征预选模型中;

步骤5.2:初步筛选风速预测特征预选模型;

依次计算每个风速预测特征预选模型输出的风速特征预选值按时间次序组成的一维向量与风速模型筛选样本ab中对应时刻的风速值组成的一维向量的均方误差,淘汰均方误差大于均方误差均值的风速预测特征预选模型;

步骤5.3:建立筛选向量;

分别利用k个聚类中心时间序列中与当前时刻最接近的3个时刻的风速值建立k个长度为3的筛选向量;

步骤5.4:更新筛选向量;

分别将k个筛选向量前3个时刻的风速数据作为输入数据,输入至对应聚类类别的风速预测特征预选模型中,将输出的第4个时刻的风速特征预选值插入筛选向量第一位置,其余数据位置顺序依次延后,重复此步骤直到k个筛选向量长度均达到200;

步骤5.5:再次筛选风速预测特征预选模型;

分别计算每种聚类类别的风速预测特征预选模型得到的筛选向量两两之间的皮尔逊相关系数,得到k个皮尔逊相关系数矩阵p1,p2,…,pk,第i个皮尔逊相关系数矩阵pi表示为:

其中,pi表示第i个聚类类别的风速预测特征预选模型得到的筛选向量两两之间的皮尔逊相关系数矩阵,表示第i个聚类类别的风速预测特征预选模型中的第100个模型和第2个模型得到的筛选向量之间的皮尔逊相关系数;

分别计算每个筛选向量与其他筛选向量之间的皮尔逊相关系数的累加值,即分别对k个皮尔逊相关系数矩阵p1,p2,…,pk中的每一行进行求和,例如,第i个皮尔逊相关系数矩阵pi的第i个风速预测特征预选模型的皮尔逊相关系数的累加值为

逐步淘汰皮尔逊相关系数累加值最大对应的风速预测特征预选模型,直到每种聚类类别的风速预测特征预选模型均剩余10个,表示为:

其中,m_elman表示经筛选后的10*k个基于elman神经网络的风速预测特征预选模型,每一行表示同一聚类类型的10个风速预测特征预选模型,共k行;

步骤7:每种聚类类别的10个风速预测特征预选模型组成风速预测特征模型组,得到k个风速预测特征模型组;

所述风速预测特征模型组包括10个风速预测特征预选模型,每个风速预测特征模型组输出数据组成长度为10的向量命名为风速特征向量,第i个风速预测特征模型组表示为[m_elmani,1,m_elmani,1,…,m_elmani,10];

步骤8:针对k个风速预测特征模型组,建立k个基于小波神经网络的风速预测归一模型;

所述风速预测归一模型输出值设定为风速归一值;

所述针对k个风速预测特征模型组,建立k个基于小波神经网络的风速预测归一模型的具体过程如下:

步骤6.1:依次将风速模型样本a中的每组风速向量前3个时刻的风速值作为输入数据,输入到对应聚类类别的风速预测特征模型组中,输出得到风速特征向量;

步骤6.2:依次将步骤6.1得到的风速特征向量作为输入数据,风速模型样本a中对应的第4个时刻的风速值作为输出数据,训练小波神经网络,得到针对k个风速预测特征模型组的k个基于小波神经网络的风速预测归一模型;

所述基于小波神经网络的风速预测归一模型在训练时均设置输入层节点个数为10,隐含层小波元个数为20,输出层节点个数为1;隐层小波神经元采用mexicanhat小波函数,输出层节点采用sigmoid函数,训练过程中的最大迭代次数设置为500,训练学习率为0.04,阈值为0.002;

步骤9:实时预测风速;

实时采集当前时刻及近期的风速数据,数据采样时间间隔应保持与步骤1中使用的原始风速时间序列数据集的风速采样时间间隔δt一致,进行实时预测风速的具体过程如下:

步骤b1:设置风速预测目标时间t,通过测风站获取与目标时间t最接近的至少200个时刻的原始风速值组成原始风速时间序列,进入步骤b2;

步骤b2:对原始风速时间序列进行卡尔曼滤波,得到滤波后的风速时间序列,进入步骤b3;

步骤b3:计算风速时间序列中与目标时间t最接近的4个时刻的风速值与步骤3得出的k个聚类中心时间序列的欧式距离,以距离最小原则选择对应聚类类别的风速预测特征模型组,将风速时间序列中与目标时间t最接近的3个时刻的风速值作为输入数据,输入到风速预测特征模型组中,输出得到长度为10的风速特征向量,进入步骤b4;

步骤b4:将风速特征向量作为输入数据,输入到对应聚类类别的风速预测归一模型,输出风速归一值,进入步骤b5;

步骤b5:判断步骤b4输出风速归一值所在时刻是否大于目标时间t,若是,进入步骤b7,否则,进入步骤b6;

步骤b6:将步骤b4输出的风速归一值插入到风速时间序列首位,更新风速时间序列,返回步骤b3;

步骤b7:计算风速时间序列中与目标时间t最接近的100个时刻的风速值组成的向量与步骤2中得到的风速时间序列数据集w′(t)=[w′(t=δt),w′(t=2*δt),…,w′(t=n*δt)]中的任意连续的100个时刻的风速值组成的向量之间的皮尔逊相关系数,选择皮尔逊相关系数最高的风速时间序列数据集中一组100个时刻的风速值组成的向量,将步骤2中的噪声时间序列数据集no(t)=[no(t=δt),no(t=2*δt),…,no(t=n*δt)]中对应时刻的滤波噪声附加在风速时间序列与目标时间t最接近的100个时刻中,即还原预测风速真实性,完成目标时刻的风速预测。

以上所述仅是本发明技术的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和替换,这些改进和替换也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1