基于多尺度时空图变换网络的海上风电功率预测方法及装置
技术领域
本发明属于多任务风电场群功率集中式预测、数据处理技术领域,具体涉及一种基于多尺度时空图变换网络的海上风电功率预测方法及装置。
背景技术
风力发电作为一种清洁、可再生的能源形式,正逐渐成为全球能源转型的重要组成部分。然而,由于风速的不确定性和变化性,风力发电场的稳定供电仍面临挑战。我国风能资源主要分布在北部、西北部和东部沿海地区。然而,由于东部沿海地区的土地政策限制和陆地资源有限,陆上风电的大规模开发面临挑战。为了充分利用风能资源并满足东部负荷中心的需求,海上风电功率预测成为当前研究的热门方向,实现可持续发展的同时,准确预测海上风电功率输出对于优化电网调度、提高发电效益和可靠性至关重要。
传统的风电功率预测方法通常采用物理模型方法或统计模型方法。物理模型方法是基于数值天气预报系统(NWP)提供的气象预报值,结合风电场的地理环境和风电场的物理信息,最后根据建立的模型进行功率预测。但建模过程复杂、难度大,预测精度低。统计模型法采用一般数理统计方法,预测过程中不考虑风速、风角等气候因素的变化过程。然而,由于统计模型的非线性拟合能力较差,其预测性能也受到很大限制。针对现有的预测模型只能处理单尺度时间序列,难以充分提取高分辨率数据中的其他时间尺度信息问题,还需要考虑历史数据在不同时间尺度下的自相关性,同时考虑不同空间尺度(风电机组/场站/集群)下的时空关联特性,研究基于多尺度时空图变换网络的海上风电功率预测方法,可进一步提高风电功率预测精度,是海上风电功率预测领域非常具有前景的研究方向。
发明内容
发明目的:针对现有技术存在的问题,本发明提供一种基于多尺度时空图变换网络的海上风电功率预测方法及装置,捕捉复杂的时空关系,同时考虑多个目标指标,适应海上风电场的动态变化,提高预测的准确性和稳定性,从而实现更好的功率预测效果。
技术方案:本发明所述的一种基于多尺度时空图变换网络的海上风电功率预测方法,包括以下步骤:
(1)采集海上多个风电场的历史数据,并对数据进行小样本增强,获取高分辨率数据;
(2)构建多尺度时空图变换网络模型MSSTGTN,所述MSSTGTN模型包括多时间尺度自相关特征提取模块,时空特征提取模块以及预测输出模块;
(3)利用多时间尺度自相关特征提取模块对经过数据增强的历史数据构造不同预测时间长度的卷积算子,自适应地提取高分辨率历史数据中不同时间尺度的自相关特征;
(4)通过时空特征提取模块中的混合膨胀图卷积网络和变体Transformer来提取复杂的时空特征;并引入门控融合机制模块来增强MSSTGTN模型对数据中时空交融性的学习能力;
(5)在MSSTGTN模型中引入无导数优化算法对其超参数进行动态调整,引入时间与形状失真损失函数作为MSSTGTN模型的附加损失函数,采用多目标贝叶斯算法建立最小化时间与形状失真损失的优化目标函数,优化MSSTGTN模型的超参数以及时间与形状失真损失函数的权重;
(6)将所提取到的自相关特征和时空特征通过预测输出模块输出预测风电功率,得到预测结果。
进一步地,步骤(1)所述历史数据包括历史风电功率数据、NWP数据、地理潜在依赖数据序列、临近数据序列、周期性重复数据序列以及历史气象要素数据序列。
进一步地,所述步骤(2)实现过程如下:
通过多尺度自适应特征提取层的一维卷积算子自适应提取不同时间尺度的风速数据的自相关特征,作为后续时空特征提取模块的输入特征,其中,一维卷积算子数学公式描述如下:
其中,F表示激活函数,表示输入的高分辨历史数据向量,表示特征映射的偏差,是第k个卷积核的权重,L是卷积算子的长度,是由L和步长S确定的高分辨率历史数据的元素。
进一步地,所述步骤(4)包括以下步骤:
(41)时空特征提取模块包括四个时空卷积块,分别对地理潜在依赖序列、临近序列、周期性重复序列以及历史气象要素序列进行特征提取,每个时空卷积块都包含一个空间特征提取子模块、一个时间特征提取子模块和一个门控融合机制模块;
(42)利用空间特征提取子模块中的混合膨胀图卷积网络自适应捕获区域内风电机组之间的空间依赖性;
(43)利用时间特征提取子模块中的变体Transformer有效捕捉时间序列中不同时间尺度下的时间依赖性;
(44)在时空模块的融合中,第一层的输入为上一层的输出,然后依次叠加;输入矩阵H(l)分别进入空间特征提取子模块、时间特征提取子模块以及两个Linear层,然后将从空间和时间两个特征提取子模块输出的结果分别和权重矩阵进行点乘,将两者求和得到输出H(l+1):
H(l+1)=z⊙Xξ+(1-z)⊙(Xτ)T (2)
z=σ(Linear(H(l))+Linear((H(l))T)) (3)
其中,z表示控制门控融合机制模块中两个Linear层的比例;
(45)对于每个子模块,在每个网络层的输入和输出之间添加一个恒等映射,即不对原始输入做任何改变,只对输出求和,其表达式如下:
H(x)=F(x)+x (4)
其中,x表示残差块的输1入,H(x)表示残差块的输出,F(x)表示添加的恒等映射。
进一步地,步骤(42)中所述空间特征提取子模块的具体步骤如下:
(421)将区域内风电机组之间的位置信息抽象为图G=(V,E,A),其中V和E分别代表风电机组的节点和节点之间的连接,A是风电机组之间具有欧氏距离的邻接矩阵,矩阵中元素的具体计算式如下:
其中,vi和vj代表区域内任意两个节点i和j,(0,1)表示两者之间的关联程度值Ai,j的大小在0~1范围内;
(422)以在t时刻的图G中的输入数据为例,整个图的信号表示为x∈RN×C,并且卷积核定义为gθ(L),gθ(L)在傅里叶域中卷积的公式为:
gθ(L)*x=Ugθ(UTx) (6)
其中,θ为模型的参数,U为归一化拉普拉斯矩阵的特征向量,UTx表示对x的傅里叶变换;通过卷积核gθ提取图中每个节点的0到(K-1)阶邻域的信息;最后的卷积公式表示为:
其中,为递归公式Tk(x)=2Tk-1(x)-Tk-2(x)的最大特征值,其中T0=1,T1=x;
(423)将得到的图卷积核作用在图G的每一个节点上,捕获到图中的一阶相邻信息;图卷积网络由一层混合膨胀卷积层和一层Add-Norm共同构成,在图卷积之后添加一个前馈神经网络模块,空间特征提取子模块的前馈神经网络层表示为:
FFN(xm)=max(0,xmW1+b1)W2+b2 (8)
其中,xm∈RN×T为输入矩阵。
进一步地,所述步骤(43)包括以下步骤:
(431)在时间维度上进行建模,变体Transformer网络由位置和时间嵌入模块与多头注意力模块两个部分组成;
(432)对输入序列使用相对位置嵌入法,生成一个位置矩阵Dp,并将其整合到节点特征中,通过与相对位置编码类似的方式将时间嵌入为节点的特征,对采样的绝对时间进行编码;将日、小时和分钟分别编码为Dd、Dh和Dt,然后求和作为最终的绝对时间嵌入Dτ:
Dτ=Dd+Dh+Dt (9)
(433)将时间序列数据的编码X、相对位置编码Dp和绝对时间嵌入Dτ这3种编码求和得到一个含有位置信息的矩阵Xτ:
Xτ=X+Dp+Dτ (10)
(434)将位置和时间嵌入模块的输出作为多头注意力模块的输入;在多头注意力模块中,将一个时间片的空间的所有信息组成一个词向量,学习不同时间片之间的相关性;将输入特征矩阵按照T×N×C的形式输入,通过前馈神经网络映射到具有可学习性的潜在子空间中;多头注意力机制将输入分成同源的3个部分,分别为Query、Key、Value;并对它们进行线性变换:
Query=XτWQuery,Key=XτWKey,Value=XτWValue (11)
其中,线性变换,且在自注意力机制中,
(435)将3个同源矩阵输入到放缩点积注意力模块中,得到自注意力矩阵:
(436)重复(434)到(435),每次只进行一个自注意力操作,每次变换时参数W不同,则整个多头注意力模块表示为:
O=MultiH(Query,Key,Value)=Concat(h1,…,hn)W (14)
其中,O为多头注意力输出矩阵,n为注意力的头数,hi表示每次进行注意力运算的结果。
进一步地,所述步骤(5)实现过程如下:
(51)训练样本Train={(Xi,Yi)|i=1,2,..,N},其中Xi=[Xi1,Xi2,...,Xip]T∈Rp表示MSSTGTN模型的输入数据集,Yi=[Yi1,Yi2,...,Yiq]T∈Rq为预测风电功率数据集;时间与形状失真损失DILATE函数表示为:
其中,为预测风电功率数据集的预测值,γ为平滑参数,为规整路径,α∈[0,1]为控制平衡的参数,为欧氏距离方阵,Ω为损失方阵;考虑可靠性和准确性要求的多目标MSSTGTN模型表示为:
式中,LMSE和LDILATE表示多目标MSSTGTN模型的目标函数;λ是由多目标MSSTGTN模型的超参数组成的决策变量;S为多目标优化问题的可行域;
(52)初始化算法参数:设置样本点个数n,最大迭代次数K,代理模型GPR(x),采集函数UCB(x|D);其中,代理模型采用高效的高斯过程回归模型GPs,观测到的函数值yl通过如下的形式产生:
得到高斯似然函数形式如下:
其中,f(x)服从如下分布:
f(x)~GP(m(x),kθ(x,x')) (20)
式中,m(x)为均值函数,kθ(x,x')为核函数,θ为核函数的超参数;
采集函数是根据后验分布Pθ(f(·)|D)来构造,选取GPs作为代理模型条件下,其后验分布仍然是高斯分布:
Pθ(f(x1:q)|D)=N(μθ(x1:q),∑θ(x1:q)) (21)
则采集函数UCB(x|D)表示如下:
其中,γθ(xj)=f(xj)-μθ(xj),μθ(xj)是后续点的后验均值;
(53)初始化样本点:在可行域S中使用拉丁超立方采样生成n个样本点的集合Xinit={x1,x2,...,xn};
(54)计算适应度值:对Xinit={x1,x2,...,xn}进行适应度值计算得到f(Xinit),初始化评估点集D0={Xinit,f(Xinit)},令t=n,Dt--1=D0;
(55)根据当前获得的评估点集,构建代理模型GPR(x);
(56)更新评估点:基于代理模型GPR(x),最大化采集函数UCB(x|Dt-1),获得下一个评估点:
xt=argminUCB(x|Dt-1) (23)
(57)更新适应度值:计算评估点xt的适应度值f(xt),并将其添加到当前评估点集合中:
Dt=Dt-1∪{xt,f(xt)} (24)
(58)输出最优解:通过非支配排序算法得到当前最优Pareto解集,若t<N,则跳转步骤(55);否则停止迭代输出优化问题的Pareto最优解集;利用最优解集对MSSTGTN模型的超参数进行动态调整。
进一步地,步骤(6)所述的预测输出模块为一个两层的全连接前馈神经网络。
本发明所述的一种装置设备,包括存储器和处理器,其中:
存储器,用于存储能够在处理器上运行的计算机程序;
处理器,用于在运行所述计算机程序时,执行上述基于多尺度时空图变换网络的海上风电功率预测方法的步骤。
本发明所述的一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被至少一个处理器执行时实现上述基于多尺度时空图变换网络的海上风电功率预测方法的步骤。
有益效果:与现有技术相比,本发明的有益效果:1、本发明建立多尺度时空图变换网络预测模型MSSTGTN,将区域内多个风电场的时间序列数据作为模型输入,不仅将多源NWP时间序列数据作为输入,还将历史时间序列数据和单个机组的功率预测结果作为输入,以协助预测和校准误差,然后通过混合膨胀图卷积网络和变体Transformer提取NWP数据和历史数据的时空特征,并将其通过融合模块结合起来;充分挖掘了海上风电场数据中的多时间尺度自相关特征和复杂的时空特征,并将其应用于风电功率预测任务中;具有提高特征表达能力、捕捉时空关系、自适应性和鲁棒性等优势,可以提高海上风电功率预测的准确性和稳定性;2、本发明采用多目标贝叶斯优化算法对MSSTGTN模型的超参数进行动态调整,在海上风电功率预测模型结构确定的基础上有效提升预测结果可靠性。
附图说明
图1为本发明提出的多尺度时空图变换网络模型框架图;
图2为本发明提出的基于多目标贝叶斯优化的模型超参数自适应整定流程图。
具体实施方式
下面结合附图对本发明作进一步详细说明。
如图1所示,本发明提出了一种基于多尺度时空图变换网络的海上风电功率预测方法,具体包括以下步骤:
步骤1:采集海上多个风电场的历史数据,包括历史风电功率数据、NWP数据、地理潜在依赖数据序列、临近数据序列、周期性重复数据序列以及历史气象要素数据序列;并对数据进行小样本增强,获取高分辨率数据。
步骤2:如图1所示,构建多尺度时空图变换网络模型MSSTGTN,所述MSSTGTN模型包括多时间尺度自相关特征提取模块,时空特征提取模块以及预测输出模块组成。
步骤3:利用多时间尺度自相关特征提取模块对经过数据增强的历史数据构造不同预测时间长度的卷积算子,自适应地提取高分辨率历史数据中不同时间尺度的自相关特征。
获取经过小样本增强的高分辨率数据;然后通过高分辨率数据输入层将经过数据增强的历史数据转化为相同长度的一系列输入单元。通过多尺度自适应特征提取层的一维卷积算子自适应提取不同时间尺度的风速数据的自相关特征,作为后续时空特征提取模块的输入特征,其中,一维卷积算子数学公式描述如下:
其中,F表示激活函数,表示输入的高分辨历史数据向量,表示特征映射的偏差,是第k个卷积核的权重,L是卷积算子的长度,是由L和步长S确定的高分辨率历史数据的元素。
步骤4:通过时空特征提取模块中的混合膨胀图卷积网络和变体Transformer来提取复杂的时空特征;并引入门控融合机制模块来增强MSSTGTN模型对数据中时空交融性的学习能力。
(4.1)设计4个时空卷积块分别对地理潜在依赖序列、临近序列、周期性重复序列以及历史气象要素序列进行特征提取,每个每个时空卷积块都都包含一个空间特征提取子模块、一个时间特征提取子模块和一个门控融合机制模块。
(4.2)利用空间特征提取子模块中的混合膨胀图卷积网络自适应捕获区域内风电机组/风电场站之间的空间依赖性。
将区域内风电机组/场站之间的位置信息抽象为图G=(V,E,A),其中V和E分别代表风电机组/场站的节点和节点之间的连接;A是风电机组之间具有欧氏距离的邻接矩阵;矩阵中元素的具体计算式如下:
其中,vi和vj代表区域内任意两个节点i和j,(0,1)表示两者之间的关联程度值Ai,j的大小在0~1范围内。
以在t时刻的图G中的输入数据为例,整个图的信号可以表示为x∈RN×C,并且卷积核定义为gθ(L),gθ(L)在傅里叶域中卷积的公式为:
gθ(L)*x=Ugθ(UTx) (6)
其中,θ为模型的参数,U为归一化拉普拉斯矩阵的特征向量,UTx表示对x的傅里叶变换。利用切比雪夫多项式的近似展开来求解这个公式,相当于通过卷积核gθ提取图中每个节点的0到K-1阶邻域的信息。因此最后的卷积公式可以表示为:
其中,为递归公式Tk(x)=2Tk-1(x)-Tk-2(x)的最大特征值,其中T0=1,T1=x。
将得到的图卷积核作用在图G的每一个节点上,从而捕获到图中的一阶相邻信息。图卷积网络由一层混合膨胀卷积层和一层Add-Norm共同构成,此外,为了提高模型的泛化能力,在图卷积模块之后添加一个前馈神经网络模块,空间特征提取子模块的前馈神经网络层可以表示为:
FFN(xm)=max(0,xmW1+b1)W2+b2 (8)
其中,xm∈RN×T为输入矩阵。
(3.3)利用时间特征提取子模块中的变体Transformer有效捕捉时间序列中不同时间尺度下的时间依赖性。
为了有效捕捉时间序列数据中不同时间尺度下的时间依赖性,提出一种变体Transformer网络,在时间维度上进行建模,主要由位置和时间嵌入模块与多头注意力模块两个部分组成。
首先对输入序列使用相对位置嵌入法,生成一个位置矩阵Dp,并将其整合到节点特征中,通过与相对位置编码类似的方式将时间嵌入为节点的特征,对采样的绝对时间进行编码。将日、小时和分钟分别编码为Dd、Dh和Dt,然后求和作为最终的绝对时间嵌入Dτ,表示如下:
Dτ=Dd+Dh+Dt (9)
将时间序列数据的编码X、相对位置编码Dp和绝对时间嵌入Dτ这3种编码求和得到一个含有位置信息的矩阵Xτ,表达式如下:
Xτ=X+Dp+Dτ (10)
将位置和时间嵌入模块的输出作为多头注意力模块的输入。在多头注意力模块中,将一个时间片的空间的所有信息组成一个词向量,学习不同时间片之间的相关性;将输入特征矩阵按照T×N×C的形式输入,通过前馈神经网络映射到具有可学习性的潜在子空间中。多头注意力机制将输入分成同源的3个部分,分别为Query,Key,Value。并对它们进行线性变换,表达式如下:
Query=XτWQuery,Key=XτWKey,Value=XτWValue (11)
其中,线性变换,且在自注意力机制中,
将3个同源矩阵输入到放缩点积注意力模块中,得到自注意力矩阵,表达式如下:
以上操作重复多次,每次只进行一个自注意力操作,每次变换时参数W不同,则整个多头注意力模块表示为:
O=MultiH(Query,Key,Value)=Concat(h1,…,hn)W (14)
其中,O为多头注意力输出矩阵,n为注意力的头数,hi表示每次进行注意力运算的结果。
(3.4)通过引入门控融合机制模块,增强模型对数据中时空交融性的学习能力,在时空模块的融合中,第一层的输入为上一层的输出(H(0)=X),然后依次叠加。输入矩阵H(l)分别进入空间特征提取子模块、时间特征提取子模块以及两个Linear层,然后将从空间和时间两个特征提取子模块输出的结果分别和权重矩阵进行点乘,最后将两者求和得到输出H(l+1),该步骤的计算式如下:
H(l+1)=z⊙Xξ+(1-z)⊙(Xτ)T (2)
z=σ(Linear(H(l))+Linear((H(l))T)) (3)
其中,z表示控制门控融合机制模块中两个Linear层的比例。
(3.5)针对深度神经网络的退化问题,对于每个子模块,在每个网络层的输入和输出之间添加一个恒等映射,即不对原始输入做任何改变,只对输出求和,其表达式如下:
H(x)=F(x)+x (4)
其中,x表示残差块的输入,H(x)表示残差块的输出,F(x)表示添加的恒等映射。
步骤5:如图2所示,在MSSTGTN模型中引入无导数优化算法对其超参数进行动态调整,引入时间与形状失真损失(DILATE)函数作为预测模型的附加损失函数,采用多目标贝叶斯算法建立最小化时间与形状失真损失(DILATE)的优化目标函数,优化训练模型的超参数以及时间与形状失真损失(DILATE)函数的权重。
(5.1)假设训练样本Train={(Xi,Yi)|i=1,2,..,N},其中Xi=[Xi1,Xi2,...,Xip]T∈Rp表示MSSTGTN模型的输入数据集,包含地理潜在依赖序列、临近序列、周期性重复序列、历史气象序列等数据信息,Yi=[Yi1,Yi2,...,Yiq]T∈Rq为预测目标数据集。则传统的欧几里得损失函数(MSE)表示如下:
其中,为预测目标数据集的预测值。时间与形状失真损失(DILATE)函数表示为:
其中,γ为平滑参数,为规整路径,α∈[0,1]为控制平衡的参数,为欧氏距离方阵,Ω为损失方阵。考虑可靠性和准确性要求的多目标MSSTGTN最优模型可表示为:
式中,LMSE和LDILATE表示多目标MSSTGTN预测模型的目标函数;λ是由多目标MSSTGTN模型的超参数组成的决策变量;S为多目标优化问题的可行域。
(5.2)初始化算法参数。设置样本点个数n,最大迭代次数K,代理模型GPR(x),采集函数UCB(x|D);其中,代理模型采用高效的高斯过程回归模型(GPs),假设观测到的函数值yl通过如下的形式产生:
进而,可以得到高斯似然函数形式如下:
其中,f(x)服从如下分布:
f(x)~GP(m(x),kθ(x,x')) (20)
式中,m(x)为均值函数,kθ(x,x')为核函数,θ为核函数的超参数。
采集函数是根据后验分布Pθ(f(·)|D)来构造的。选取GPs作为代理模型条件下,其后验分布仍然是高斯分布:
Pθ(f(x1:q)|D)=N(μθ(x1:q),∑θ(x1:q)) (21)
则采集函数UCB(x|D)表示如下:
其中,γθ(xj)=f(xj)-μθ(xj),μθ(xj)是后续点的后验均值。
(5.3)初始化样本点。在可行域S中使用拉丁超立方采样生成n个样本点的集合Xinit={x1,x2,...,xn}。
(5.4)计算适应度值。对Xinit={x1,x2,...,xn}进行适应度值计算得到f(Xinit),初始化评估点集D0={Xinit,f(Xinit)},令t=n,Dt--1=D0。
(5.5)构建代理模型。根据当前获得的评估点集,构建代理模型GPR(x)。
(5.6)更新评估点。基于代理模型GPR(x),最大化采集函数UCB(x|Dt-1),获得下一个评估点:
xt=argminUCB(x|Dt-1) (23)
(5.7)更新适应度值。计算评估点xt的适应度值f(xt),并将其添加到当前评估点集合中:
Dt=Dt-1∪{xt,f(xt)} (24)
(5.8)输出最优解。通过非支配排序算法得到当前最优Pareto解集,若t<N,则跳转步骤(5.5);否则停止迭代输出优化问题的Pareto最优解集。
步骤6:将所提取到的特征通过全连接预测输出模块预测风电功率,得到预测结果。
经过步骤4得到最终的隐藏表示H(l+1);将这个最终的隐藏表示通过一个两层的全连接前馈神经网络模块进行预测。
本发明还提供一种装置设备,包括存储器和处理器,其中:存储器,用于存储能够在处理器上运行的计算机程序;处理器,用于在运行所述计算机程序时,执行上述基于多尺度时空图变换网络的海上风电功率预测方法的步骤。
本发明还提供一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被至少一个处理器执行时实现上述基于多尺度时空图变换网络的海上风电功率预测方法的步骤。