张晓艳,向 勉,朱 黎,周丙涛,刘洪笑,段亚穷
(湖北民族大学 智能科学与工程学院,湖北 恩施 445000)
近年来我国经济快速发展,各方面能源消耗与日俱增。随着化石能源的逐渐枯竭,调整以化石能源为主体的能源结构,进一步增加对风能等新能源的开发和利用势在必行[1]。由于风能具有清洁、可再生等优势,因此我国的风电装机数量不断攀升。据国家能源局2022年发布的统计数据来看,2021年全国风电总装机容量约为3.4×108kW,相比2020年增长了约17.2%[2]。由于风力本身具有随机性、波动性、不可控性等特点,所以风电并网时如果不进行合理的规划会给电网系统带来严重冲击,影响电网的安全运行。故风电功率的精准预测对于风力发电场节约成本、解决风电并网过程中的难题、保证电网系统经济稳定的运行都有十分重要的意义[3]。
为了进一步提高风电功率预测的精度,国内外的专家提出了许多方法。这些方法按照模型类型划分,可分为单一模型预测和组合模型预测。经典的单一模型预测有多层感知机(multi-layer perceptron,MLP)[4]、卷积神经网络(convolutional neural network,CNN)[5]、时间卷积网络(temporal convolutional network,TCN)[6]、循环神经网络(recurrent neural networks,RNN)[7]、长短期记忆(long short-term memory,LSTM)网络[8]、支持向量机(support vector machines,SVM)[9]、双向长短期记忆(bidirectional long short-term memory,BiLSTM)网络[10]等方法。但是单一模型预测精度较低、误差较大,在实际应用中较为受限。而组合模型通过融合各个单一模型的优点,比如数据特征处理、预测性能等,进而提升了预测精度。组合模型预测可分为4类:基于多模型加权的组合预测、基于数据分解的组合预测、基于优化技术的组合预测、基于误差修正的组合预测[11]。崔昊杨等[12]采用K近邻(K-nearest neighbor,KNN)算法求解各个风机的空间相关性,用门控循环单元(gate recurrent unit,GRU)-MLP模型完成各台风机的风电功率预测,但是未考虑环境影响因素,不利于风电稳定运行。张浩田等[13]提出了一种加入注意力机制的TCN进行风电预测,具有更快的计算速度,但是预测精度仍有不足。赵凌云等[14]先采用完全自适应噪声集合经验模态分解(complete ensemble empirical mode decomposition with adaptive noise,CEEMDAN)方法对原始数据进行模态分解,再通过改进的TCN对子序列分别进行预测,虽然提高了预测的准确率,但是CEEMDAN分解后要对多个分量单独预测大大增加了整体的计算量。刘永强等[15]提出了基于BiLSTM模型的风电功率预测方法,虽然相较于LSTM模型提高了预测的精度,但是单一的神经网络模型预测精度低、误差大。陈德余等[16]提出了基于皮尔逊相关系数(Pearson correlation coefficient,PCC)-GRU-注意力机制(Attention)组合的风电功率超短期预测。辛征等[17]提出了CNN-BiLSTM组合深度学习模型进行风电功率预测,在一定程度上降低了预测的误差。
上述组合模型研究存在对比模型少、说服力不强等问题。为此,提出了一种基于MLP-BiLSTM-TCN组合模型的超短期风电功率预测。首先对3种单一模型进行调参实验,每种模型选出最优的4种参数,最后用线性规划法将12种模型参数进行组合预测。相较于目前常见的组合模型而言,用12种模型进行预测,可以有效地减少传统组合模型中单一模型出现偏差带来的影响,且具有很强的灵活性和适应性。
风电场内影响风电功率的原因有很多种,其中气象特征是最重要的影响因素,包括风速、风向、温度、湿度、气压等。皮尔逊相关系数是用来描述2个变量的相关性程度[18],即气象特征和风电功率的相关程度,对其相关性进行分析,有利于量化气象特征对风电功率的影响程度。引入皮尔逊相关系数筛选出与风电功率强相关的气象特征作为输入值进行实验,可以提高计算效率,去除杂乱因素对实验造成的干扰。皮尔逊相关系数的计算公式如下:
(1)
多层感知机是一种前向结构的人工神经网络,包含输入层(单层)、隐藏层(单层或多层)和输出层(单层),其中层与层之间的连接方式是全连接,同一层神经元之间没有连接。在输入层中接收风电功率的数据集,然后传入隐藏层进行数据处理分析,再将分析处理过的数据传入输出层进行输出。输入层用X表示,隐藏层进行输出是经过激活函数变换的,即隐藏层的输出为f(W1X+B1),其中W1为隐藏层的权值,B1为隐藏层的偏置值,激活函数f选择Sigmoid函数,计算公式为Sigmoid(x)=1/[1+exp(-x)],激活函数将x的值变换到(0,1)区间。从隐藏层到输出层是多类别的Softmax回归,输出层用Y表示,即输出层的输出为Y=Softmax(W2X1+B2),其中W2为输出层的权值,X1为隐藏层的输出f(W1X+B1),B2为输出层的偏置值。最后通过迭代训练求出W1、W2、B1、B2的值,以达到模型的最优解。
双向长短期记忆网络是由双向的LSTM组成,可以从2个方向对时间序列的特征进行提取,从而提高预测精度,具体的模型结构如图1所示。由图1可知,在Xt处输入信息,然后由正向和反向的长短期记忆网络对数据的序列信息进行特征提取、处理,最后从Ht处输出预测值信息。
图1 BiLSTM模型结构Fig.1 Structure of BiLSTM model
计算公式如下:
(2)
(3)
(4)
TCN由多个残差模块构成。残差模块包括正则化层、非线性激活函数、权重归一化、一维扩张因果卷积,能更好地提取时序数据的特征。TCN模型结构如图2所示。由图2可知,数据从输入层输入,经过残差模块进行时序数据的提取和一系列的处理,最后将预测值进行输出。权重归一化是指对卷积进行归一化处理,非线性激活函数使用非线性映射,正则化层是对卷积进行正则化处理,一维扩张因果卷积是单向结构,对于上层t时刻的值,只与下层t时刻和之前的值有关。计算公式如下:
图2 TCN模型结构Fig.2 Structure of TCN model
(5)
式(5)中,k为过滤器大小,d为扩张系数,s-di为对过去进行卷积,x为输入序列,s为序列元素,i为网络的层数,fCONV()为卷积运算。
利用线性规划法对MLP、BiLSTM、TCN进行组合模型预测,对于不同的模型及参数赋予不同的权值以达到最优解,线性规划计算公式如下:
(6)
(7)
基于MLP-BiLSTM-TCN模型的预测流程如图3所示。由图3可知,具体的预测过程如下:
图3 基于MLP-BiLSTM-TCN模型预测流程Fig.3 Flow of prediction based on MLP-BiLSTM-TCN model
1) 利用皮尔逊相关系数法对数据集进行相关性分析,选取强相关性和弱相关性的气象信息作为输入值。
2) 对数据集进行预处理,对空值进行填充,划分数据集,并将数据集进行归一化和反归一化处理。
3) 生成3种单一神经网络模型MLP、BiLSTM、TCN,将前6个真实值和皮尔逊相关系数分析后选取的值作为输入值进行实验。
4) 在进行实验时,对每种单一模型的隐藏层设置不同参数进行训练,选取训练效果好的4种参数,则3个模型总共12种不同参数。分别是:MLP 3层隐藏层取4组不同的模型参数,分别是[16,32,16]、[32,64,32]、[64,128,64]、[128,256,128];BiLSTM 4组不同的模型参数分别是32、64、100、128;TCN 4组不同的模型参数分别是16、32、64、128。12种模型分别记作MLP16、MLP32、MLP64、MLP128、BiLSTM32、BiLSTM64、BiLSTM100、BiLSTM128、TCN16、TCN32、TCN64、TCN128。每个模型在不同的时刻预测的精度不同,用12种模型的预测结果构建组合模型,可以有效减少单一模型带来的影响,减小了预测误差。
5) 采用线性规划法的求解器Cplex,在验证集中对12种不同模型求出不同权值。线性规划法包括目标函数和约束条件,目标函数求出各个模型的权值,使得不同权值模型结果相加与真实值最为接近,约束条件是各权值之和为1,并且每个模型的权值都要大于等于0。在验证集中求出权值以后放在测试集中进行测试,以达到结果的最优化,最后将求出的权值以及对应的预测值的积相加得出组合模型的预测值。
对预测结果进行误差分析,将平均绝对误差(mean absolute error,MAE) 和均方根误差(root mean square error,RMSE)作为模型误差的度量标准。其中,MAE用来评价预测误差的平均幅度,RMSE用来衡量误差的分散程度。EMAE、ERMSE的计算公式如下:
(8)
(9)
数据集来源于新疆维吾尔自治区某风电场2019年的数据,包括测风塔高度为10m的风速、测风塔高度为30m的风速、测风塔高度为50m的风速、测风塔高度为10m的风向、测风塔高度为30m的风向、测风塔高度为50m的风向、温度、气压、湿度、实际发电量。采样周期为15min,即每天96个采样点,数据预处理之后总共是35040个数据。根据处理过的气象因素和预测点前6个真实值,需要完成下一个15min的超短期风电功率预测。
所有的模型都基于Python 3.7、Tensorflow 2.6框架构建,采用Windows 10系统,内存为16GB,CPU为AMD Ryzen 7 5800H with radeon Graphics,GPU为NVIDIA GeForce RTX 3050 Laptop。使用Cuda11.3和Cudnn8.2.1对GPU进行加速。
3.2.1 数据清理及归一化 在对数据进行预处理时,首先对数据集内的异常值进行清理,将其删除作为空值和原本的空值统一处理,然后将空值用均值填充法进行填充,再将数据集划分成训练集、验证集、测试集,比例为8∶1∶1。为了消除量纲误差,加速训练过程,对数据进行归一化、反归一化处理,归一化公式如下:
x=2·(x0-xmin)/(xmax-xmin)-1,
(10)
式(10)中,x表示归一化处理后的风电数据,x0表示原始数据,xmax、xmin分别表示原始数据的最大值、最小值。
3.2.2 相关性分析 数据集中选取的风电场气象因素有测风塔高度分别为10、30、50m时的风速、测风塔高度分别为10、30、50m时的风向,以及温度、气压、湿度、实际功率,对其进行皮尔逊相关性分析。相关性热力图分析如图4所示。
图4 相关性热力图分析Fig.4 Correlation heat map analysis
由图4可知,测风塔高度分别为10、30、50m时风速与风电功率之间的相关系数分别是0.75、0.76、0.78,具有强相关性(正相关),测风塔高度为10m时风向、30m时风向与风电功率之间的相关系数分别是-0.34、-0.37,具有弱相关性(负相关),而测风塔高度为50m时风向、温度、气压、湿度与风电功率之间的相关系数分别是-0.19、0.13、-0.13、-0.14,具有极弱相关性(温度是正相关,其余为负相关)。为了提高计算效率,减少杂乱信息的干扰,将与风电功率呈极弱相关性的气象信息剔除,选取强相关性和弱相关性的气象信息作为输入值。
模型训练的参数设置:迭代次数为100轮,批量大小为32,初始学习率为0.0005。
3.4.1 组合模型与单一模型对比 按2.4节中隐藏层的参数设置依次构建12种模型,通过实验得出各模型参数下的风电功率预测值,以及组合模型的风电功率预测值。为了更加直观地展示组合模型和单一神经网络模型预测效果的对比,采样周期设为15min,选取某日的数据即96个时刻点,不同模型的预测曲线如图5所示。由图5可知,相比于其他12种模型,组合模型(MLP-BiLSTM-TCN)的预测曲线与真实值更为接近,预测的误差更小,表现出优越性。
各模型的误差对比如表1所示。由表1可知,组合模型(MLP-BiLSTM-TCN)的MAE和RMSE值均为最小,即组合模型的预测精度最高,而MLP32、MLP64的误差较大。从MAE来看,组合模型的值相较于MLP16、MLP32、MLP64、MLP128、BiLSTM32、BiLSTM64、BiLSTM100、BiLSTM128、TCN16、TCN32、TCN64、TCN128模型分别下降了0.880、1.391、1.142、1.054、0.908、0.855、0.744、0.976、0.561、0.585、0.699、0.627MW;从RMSE来看,组合模型相较于其他12种模型,分别下降了1.409、1.660、1.789、1.744、1.577、1.673、1.685、1.709、1.069、1.118、1.226、1.237MW。
表1 各模型误差对比Tab.1 Error comparison of each model
3.4.2 消融实验 为了验证所提出的组合模型MLP-BiLSTM-TCN中各单一神经网络模型的有效性和必要性,通过移除组合模型中的某个单一模型,得到3组由2个单一模型组成的组合模型,分别为MLP-BiLSTM、MLP-TCN、BiLSTM-TCN,即为3组消融实验。消融实验对比结果如图6所示。由图6可知,组合模型MLP-BiLSTM-TCN的曲线与真实值曲线更为接近,故预测精度更高。从MAE来看,以上3组模型的值分别为3.562、3.515、3.466MW,MLP-BiLSTM-TCN模型相较于3组模型分别下降了0.587、0.540、0.491MW。从RMSE来看,以上3组模型的值分别为6.659、6.577、6.603MW,MLP-BiLSTM-TCN模型相较于3组模型分别下降了1.185、1.103、1.129MW。
图6 消融实验对比
3.4.3 与其他类似组合算法对比 为了验证所提组合模型预测的精确性,通过与同类型的组合模型CNN-TCN和CNN-BiLSTM进行对比实验,结果如图7所示。由图7可知,组合模型MLP-BiLSTM-TCN的曲线与真实值曲线更为接近,预测精度更高。从MAE来看,2种对比模型的值分别为5.081、5.188MW,MLP-BiLSTM-TCN模型相较于2种模型分别下降了2.106、2.213MW。从RMSE来看,2种对比模型的值分别为8.944、9.131MW,MLP-BiLSTM-TCN模型与之比较分别下降了3.470、3.657MW。
图7 组合模型对比Fig.7 Comparison of combined models
3.4.4 不同权值情况下的组合模型对比 为了验证所求权值是否为最优解,通过与等权值的MLP-BiLSTM-TCN模型对比,结果如图8所示。由图8可知,所提组合模型与真实值曲线更为接近,预测精度更高。等权值的MLP-BiLSTM-TCN模型的MAE、RMSE分别为3.486、6.574MW,与此相比所提组合模型分别下降了0.511、1.100MW。
图8 组合模型不同权值对比Fig.8 Comparison of different weights of combined models
为了提高超短期风电功率的预测精度,降低预测误差,提出了一种基于MLP-BiLSTM-TCN组合模型的超短期风电功率预测。用新疆维吾尔自治区某风电场实际运行的数据进行实验,得出了以下结论:使用皮尔逊相关系数处理数据,选取相关性较高的气象因素作为输入,提高了实验效率。通过MLP-BiLSTM-TCN组合模型预测结果与其他12种单一预测模型结果、消融实验中MLP-BiLSTM、MLP-TCN、BiLSTM-TCN预测结果、权重相等的组合模型预测结果进行对比,发现MLP-BiLSTM-TCN模型具有更高的预测精度。该模型不但能够发挥不同模型的预测优势,而且能更好的弱化不同时刻、气象条件下单一模型的缺陷问题。但是该研究仅限于确定性的点预测,后续在概率性区间预测方面仍需要进行深入研究。