一种基于大气扰动的风速预测方法及系统与流程

文档序号:16001279发布日期:2018-11-20 19:29阅读:198来源:国知局

本发明涉及风速预测领域,特别是涉及一种基于大气扰动的风速预测方法及系统。



背景技术:

自二十世纪末以来,世界能源消耗的不断增加导致全球气候持续变暖,同时进一步破坏了自然生态系统的平衡,威胁人类的食物供应和居住环境。据2018年3月22日国际能源署发布的数据显示,2017年全球碳排放量高达325亿吨,比2016年增长1.4%(净增长4.6亿吨),创历史新高,导致这种现状的主要原因是全球能源需求强劲。目前,开发利用可再生能源已成为国际上大多数国家的战略选择,许多国家把发展可再生能源作为缓解能源供应矛盾、应对气候变化的重要措施。其中风力发电作为一种没有燃料消耗且运行成本较低的发电方式成为各个国家争相研究的对象。由于风能在数小时内可能发生十分显著的变化,所以风力发电最大的问题就在于其对风能波动性的依赖,这种依赖进一步导致风电的波动性,不利于风电的并网利用。因此,精确的风速预测是大规模开发利用风能资源的关键,但同时也是十分不易控制的环节。

近年来,国内外的研究学者对风速预测进行了较深入的研究,提出了各种不同的风速预测方法,例如基于气象数据的风速预测方法,基于最小二乘法的风速预测方法,基于统计回归分析和神经网络的预测方法,基于人工智能算法的风速预测方法等,但它们几乎全部停留在对算法的改进上,而忽略了风能在大气动力系统中的非线性特征。因此,传统的风速预测方法中,普遍预测的精度不高。



技术实现要素:

本发明的目的是提供一种基于大气扰动的风速预测方法及系统,以提高风速预测的精度。

为实现上述目的,本发明提供了如下方案:

一种基于大气扰动的风速预测方法,所述预测方法包括:

获取训练好的基于长短时记忆网络的风速预测模型;

根据所述风速预测模型获得风速的初步预测序列,所述初步预测序列中每一时刻对应一个风速初步预测值;

获取洛伦兹方程的初始条件和参数;

根据所述初始条件和所述参数获得风速扰动序列,所述风速扰动序列为所述洛伦兹方程的数值解,所述风速扰动序列包括每一时刻对应的风速扰动值;

根据所述风速扰动序列对所述初步预测序列进行修正,得到风速的最终预测序列。

可选的,所述获取训练好的基于长短时记忆网络的风速预测模型,之前还包括:

获取基于长短时记忆网络的风速预测模型;

将800个风速数据作为网络训练集的输入,将100个风速预测值作为网络训练集的输出,对所述风速预测模型进行训练。

可选的,所述洛伦兹方程的初始条件为:(x,y,z)的初值h=(1.1,1,1);x表示对流运动的振幅,y表示对流时上升与下降流体的水平方向温差,z表示对流引起的垂直方向温差对线性情况的偏离;

所述洛伦兹方程的参数为:σ=10,b=8/3,r=8,其中σ为普朗特数、和、r为瑞利数,b为与容器大小形状有关的参数。

可选的,所述根据所述初始条件和所述参数获得所述洛伦兹方程的数值解,所述数值解为每一时刻风速扰动值组成的风速扰动序列,之后还包括:

利用对每一时刻的风速扰动值进行标准化处理,得到标准化的风速扰动值,进而得到标准化的风速扰动序列;其中(xn,yn,zn)为n时刻的风速扰动值,为n时刻的标准化的风速扰动值;xmin为所有风速扰动值中x的最小值,ymin为所有风速扰动值中y的最小值,zmin为所有风速扰动值中z的最小值,xmax为所有风速扰动值中x的最大值,ymax为所有风速扰动值中y的最大值,zmax为所有风速扰动值中z的最大值。

可选的,所述根据所述风速扰动序列对所述初步预测序列进行修正,得到风速的最终预测序列,具体包括:

利用确定所述风速扰动序列中第n时刻对应的扰动强度d(tn),进而得到风速扰动强度序列d(t1,t2,...,tk);其中为第n时刻的风速扰动值,(x0,y0,z0)为风速扰动值的初值;

利用v”(t1,t2,...,tk)=v'(t1,t2,...,tk)+ld(t1,t2,...,tk)对所述初步预测序列进行修正,其中v'(t1,t2,...,tk)为风速的初步预测序列,v”(t1,t2,...,tk)为修正后的风速的最终预测序列,其中第n时刻修正后的风速的最终预测值为v”(tn),l为扰动系数。

本发明还提供一种基于大气扰动的风速预测系统,所述预测系统包括:

风速预测模型获取模块,用于获取训练好的基于长短时记忆网络的风速预测模型;

初步预测序列获取模块,用于根据所述风速预测模型获得风速的初步预测序列,所述初步预测序列中每一时刻对应一个风速初步预测值;

初始条件和参数获取模块,用于获取洛伦兹方程的初始条件和参数;

风速扰动序列获取模块,用于根据所述初始条件和所述参数获得风速扰动序列,所述风速扰动序列为所述洛伦兹方程的数值解,所述风速扰动序列包括每一时刻对应的风速扰动值;

风速最终预测序列获取模块,用于根据所述风速扰动序列对所述初步预测序列进行修正,得到风速的最终预测序列。

可选的,所述系统还包括:

初始风速预测模型获取模块,用于获取训练好的基于长短时记忆网络的风速预测模型之前,获取基于长短时记忆网络的风速预测模型;

训练模块,用于将800个风速数据作为网络训练集的输入,将100个风速预测值作为网络训练集的输出,对所述风速预测模型进行训练。

可选的,所述洛伦兹方程的初始条件为:(x,y,z)的初值h=(1.1,1,1);x表示对流运动的振幅,y表示对流时上升与下降流体的水平方向温差,z表示对流引起的垂直方向温差对线性情况的偏离;

所述洛伦兹方程的参数为:σ=10,b=8/3,r=8,其中σ为普朗特数、和、r为瑞利数,b为与容器大小形状有关的参数。

可选的,所述系统还包括:

标准化模块,用于根据所述初始条件和所述参数获得风速扰动序列之后,利用对每一时刻的风速扰动值进行标准化处理,得到标准化的风速扰动值,进而得到标准化的风速扰动序列;其中(xn,yn,zn)为n时刻的风速扰动值,为n时刻的标准化的风速扰动值;xmin为所有风速扰动值中x的最小值,ymin为所有风速扰动值中y的最小值,zmin为所有风速扰动值中z的最小值,xmax为所有风速扰动值中x的最大值,ymax为所有风速扰动值中y的最大值,zmax为所有风速扰动值中z的最大值。

可选的,所述风速最终预测序列获取模块,具体包括:

扰动强度获取单元,用于利用确定所述风速扰动序列中第n时刻对应的扰动强度d(tn),进而得到风速扰动强度序列d(t1,t2,...,tk);其中为第n时刻的风速扰动值,(x0,y0,z0)为风速扰动值的初值;

修正单元,用于利用v”(t1,t2,...,tk)=v'(t1,t2,...,tk)+ld(t1,t2,...,tk)对所述初步预测序列进行修正,其中v'(t1,t2,...,tk)为风速的初步预测序列,v”(t1,t2,...,tk)为修正后的风速的最终预测序列,其中第n时刻修正后的风速的最终预测值为v”(tn),l为扰动系数。

根据本发明提供的具体实施例,本发明公开了以下技术效果:

本发明的风速预测方法及系统为基于长短时记忆网络的洛伦兹扰动风速预测过程,首先用长短时记忆网络对原始风速序列进行初步的预测,其次考虑大气系统的混沌运动,用洛伦兹扰动序列对风速序列的初步预测值进行修正,这样可以更加准确地描述风速的实际变化规律,弱化了风速序列的随机性和波动性。本发明基于长短时记忆网络的洛伦兹扰动风速预测方法具有更好的预测效果,预测结果更接近真实的风速序列,而且具有更小的预测误差。因此,本发明的预测方法及系统将大气动力系统结合到风速预测的过程中,提高了风速预测的精度,有利于促进风电产业的高速发展。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明风速预测方法的流程示意图;

图2为本发明风速预测系统的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。

大气运动是一个确定性的动力系统,其动力学行为可以用一组洛伦兹(Lorenz)方程来描述。同时,长短时记忆网络(LSTM:Long Short-Term Memory)是一种时间递归神经网络,它与传统的前向神经网络(feed-forward network)的不同点在于LSTM可以对之前的输入内容有选择的记忆,从而有助于判断当前的输入。LSTM的这一特点在处理时间序列相关的输入时有着很大的优势,适于处理和预测时间序列中间隔和延迟相对较长的重要事件,而风速序列正是一种与以前较长时段依赖密切的时间序列。因此,本发明采用基于LSTM神经网络的Lorenz扰动风速预测模型对风速进行预测。首先,对原始数据集用LSTM进行初步预测,得到初步的风速预测模型;同时,求解Lorenz方程得到大气扰动序列,模拟大气运动过程,用Lorenz扰动序列修正风速的初步预测结果,改进初步预测结果,以此来弱化风速的随机性和不确定性,使风速的预测过程更符合其实际运动规律,进而提高风速的预测精度。

图1为本发明风速预测方法的流程示意图。如图1所示,所述预测方法包括:

步骤100:获取训练好的基于长短时记忆网络的风速预测模型。LSTM神经网络能很好的掌握风速时间序列的特点,从过去的风速值中挖掘规律来预测下一时刻的风速值,因此,采用基于LSTM神经网络的风速预测模型进行风速预测。

LSTM是一种神经网络,LSTM神经网络是RNN神经网络的一种特殊形式。一般的RNN神经网络存在的最大问题是长时依赖问题,即RNN不能够学习到与预测点依赖的但相距较远的点的相关信息。但目前已经证明,LSTM神经网络是解决RNN神经网络长时依赖问题的有效技术,并且这种技术具有很高的普适性,带来的可能性变化非常多,而这进一步使得LSTM可以处理千变万化的垂直问题。LSTM区别于普通RNN的地方,主要在于它在算法中加入了一个判断信息有用与否的“处理器”,这个处理器作用的结构被称为cell。一个cell当中被放置了三扇门,分别叫做输入门、遗忘门和输出门,范围在0到1之间。一个信息进入LSTM的网络当中,可以根据规则来判断是否有用,只有符合算法认证的信息才会留下,不符的信息则通过遗忘门被遗忘。简单来说就是一进二出的工作原理,这样的结构可以有效地减轻消失梯度问题且可以自动学习更新参数。每个cell的处理过程如下:

Steep1:利用“遗忘门限层”来决定cell状态中的什么样的信息被去除,得到遗忘门的激活函数ft,ft=σ(Wf·[ht-1,xt]+bf);

Steep2:决定什么样的新信息应该被储存在cell状态中,首先,利用“输入门限层”的sigmoid层决定哪些值需要更新,得到输入门限函数it,然后利用一个tanh层创建一个包含可以添加到这个状态中新的候选值的向量其中,it=σ(Wf·[ht-1,xt]+bi),

Steep3:更新cell状态从Ct-1到Ct,

Steep4:选择输出,首先利用sigmoid层决定单元状态中哪些部分需要输出,得到输出门限函数ot,然后将单元状态输入到tanh函数(将值转换成-1到1之间)中再乘以输出的sigmoid门限值得到当前单元的输出ht,ot=σ(Wo·[ht-1,xt]+bo),ht=ot*tanh(Ct),其中Wi,Wf,Wc,Wo代表权重矩阵,bi,bf,bc,bo代表对应的偏置向量,ht-1代表前一时刻单元的输出,xt代表下一次的输入。在构建了基于LSTM的风速预测模型之后,需要对风速预测模型进行训练,将800个风速数据作为网络训练集的输入,将100个风速预测值作为网络训练集的输出,对所述风速预测模型进行训练。

步骤200:根据风速预测模型获得风速的初步预测序列。使用该基于LSTM的风速预测模型进行风速预测,可以得到每一时刻对应的风速初步预测值,预测完成后,可以得到按时间排序的所有风速初步预测值组成的初步预测序列。

步骤300:获取洛伦兹方程的初始条件和参数。由于大气中任何微小的扰动都可能对大气系统造成巨大的影响。所以在研究大气系统中的风速变化时,考虑微小扰动是有意义而且必要的。本发明采用洛伦兹方程构建的扰动模型对大气的扰动进行测量,因此,首先需要确定洛伦兹方程的初始条件和参数。本发明中洛伦兹方程的参数为:σ=10,b=8/3,r=8,其中σ为普朗特数、和、r为瑞利数,b为与容器大小形状有关的参数。

根据实验确定(x,y,z)初值为(1.1,1,1)时扰动预测效果最好,因此,将洛伦兹方程的初始条件确定为:(x,y,z)的初值h=(1.1,1,1);x表示对流运动的振幅,y表示对流时上升与下降流体的水平方向温差,z表示对流引起的垂直方向温差对线性情况的偏离。

步骤400:根据初始条件和参数获得风速扰动序列。所述风速扰动序列为所述洛伦兹方程的数值解,所述风速扰动序列包括每一时刻对应的风速扰动值。

首先将初值和参数带入洛伦兹方程中,进而确定x(t)、y(t)、z(t)的函数表达式;然后根据具体时刻确定x(t)、y(t)、z(t)的具体数值,结合该时刻对应的风速初步预测值,确定该时刻对应的洛伦兹方程的数值解,该时刻的数值解即为风速扰动值。根据每个时刻的风速扰动值获得风速扰动序列,进而得到其Lorenz吸引子。

由于Lorenz方程的数值解是一组三维的扰动序列,因而需要对风速扰动序列进行标准化处理,得到无数量级和量纲的标准化扰动序列,具体的标准化处理过程如下:

利用对每一时刻的风速扰动值进行标准化处理,得到标准化的风速扰动值,进而得到标准化的风速扰动序列;其中(xn,yn,zn)为n时刻的风速扰动值,为n时刻的标准化的风速扰动值;xmin为所有风速扰动值中x的最小值,ymin为所有风速扰动值中y的最小值,zmin为所有风速扰动值中z的最小值,xmax为所有风速扰动值中x的最大值,ymax为所有风速扰动值中y的最大值,zmax为所有风速扰动值中z的最大值。

步骤500:根据风速扰动序列对初步预测序列进行修正,得到风速的最终预测序列。本发明应用Lorenz系统出现混沌运动状态时的解向量来构造扰动序列,并将得到的扰动序列作用在初步预测结果上,得到对初步预测结果的改进。具体过程如下:

利用确定所述风速扰动序列中第n时刻对应的扰动强度d(tn),进而得到风速扰动强度序列d(t1,t2,...,tk);其中为第n时刻的风速扰动值,(x0,y0,z0)为风速扰动值的初值;

利用v”(t1,t2,...,tk)=v'(t1,t2,...,tk)+ld(t1,t2,...,tk)对所述初步预测序列进行修正,其中v'(t1,t2,...,tk)为风速的初步预测序列,v”(t1,t2,...,tk)为修正后的风速的最终预测序列,其中第n时刻修正后的风速的最终预测值为v”(tn),l为扰动系数。若l为正数,则表明风速初步预测序列需要加强扰动;若l为负数,则表明风速初步预测序列需要减弱扰动;k为预测的样本数,即k个时刻得到的样本数。

图2为本发明风速预测系统的结构示意图。如图2所示,所述预测系统包括:

风速预测模型获取模块201,用于获取训练好的基于长短时记忆网络的风速预测模型。

初步预测序列获取模块202,用于根据所述风速预测模型获得风速的初步预测序列,所述初步预测序列中每一时刻对应一个风速初步预测值。

初始条件和参数获取模块203,用于获取洛伦兹方程的初始条件和参数。所述洛伦兹方程的初始条件为:(x,y,z)的初值h=(1.1,1,1);x表示对流运动的振幅,y表示对流时上升与下降流体的水平方向温差,z表示对流引起的垂直方向温差对线性情况的偏离;所述洛伦兹方程的参数为:σ=10,b=8/3,r=8,其中σ为普朗特数、和、r为瑞利数,b为与容器大小形状有关的参数。

风速扰动序列获取模块204,用于根据所述初始条件和所述参数获得风速扰动序列,所述风速扰动序列为所述洛伦兹方程的数值解,所述风速扰动序列包括每一时刻对应的风速扰动值。

风速最终预测序列获取模块205,用于根据所述风速扰动序列对所述初步预测序列进行修正,得到风速的最终预测序列。

其中,所述系统还包括:

初始风速预测模型获取模块,用于获取训练好的基于长短时记忆网络的风速预测模型之前,获取基于长短时记忆网络的风速预测模型;

训练模块,用于将800个风速数据作为网络训练集的输入,将100个风速预测值作为网络训练集的输出,对所述风速预测模型进行训练。

所述系统还包括:

标准化模块,用于根据所述初始条件和所述参数获得风速扰动序列之后,利用对每一时刻的风速扰动值进行标准化处理,得到标准化的风速扰动值,进而得到标准化的风速扰动序列;其中(xn,yn,zn)为n时刻的风速扰动值,为n时刻的标准化的风速扰动值;xmin为所有风速扰动值中x的最小值,ymin为所有风速扰动值中y的最小值,zmin为所有风速扰动值中z的最小值,xmax为所有风速扰动值中x的最大值,ymax为所有风速扰动值中y的最大值,zmax为所有风速扰动值中z的最大值。

所述风速最终预测序列获取模块205,具体包括:

扰动强度获取单元,用于利用确定所述风速扰动序列中第n时刻对应的扰动强度d(tn),进而得到风速扰动强度序列d(t1,t2,...,tk);其中为第n时刻的风速扰动值,(x0,y0,z0)为风速扰动值的初值;

修正单元,用于利用v”(t1,t2,...,tk)=v'(t1,t2,...,tk)+ld(t1,t2,...,tk)对所述初步预测序列进行修正,其中v'(t1,t2,...,tk)为风速的初步预测序列,v”(t1,t2,...,tk)为修正后的风速的最终预测序列,其中第n时刻修正后的风速的最终预测值为v”(tn),l为扰动系数。

本发明利用Lorenz综合扰动流对风速的初步预测序列进行扰动修正,并以实现风速实际值和预测值之间的平均绝对误差最小为目标得到扰动修正的最优扰动强度和最优扰动系数;利用Lorenz综合扰动流得到的最优扰动强度和最优扰动系数对风速的初步预测序列进行扰动修正,得到风速的扰动修正序列,预测的精度更高,误差更小。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。

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