改进灰狼算法的核极限学习机的风功率预测
2022-07-07朱昶胜赵奎鹏
朱昶胜 赵奎鹏
(兰州理工大学 甘肃 兰州 730050)
0 引 言
风力发电作为一种绿色可再生能源,目前已得到广泛的重视和政策性激励,并纳入国家能源长期发展战略。但是由于风能自身具有随机性、波动性等特点,对于整个电力系统安全、高效运行产生了很大的障碍,因此研究高精度的风电功率预测方法,可以保障整个电力系统的安全运行[1-2]。
目前,关于提高风电功率预测精度的研究已经在国内外成为了热点,其预测方法主要是基于物理方法和统计方法进行风电功率预测[3-4]。参考各个文献分析,大多采用统计方法对于风电功率预测,当前统计方法主要包括人工神经网络、支持向量机和极限学习机等,由于这些单一模型的预测精度较低,所以从多个方面考虑采用了一些组合模型来提高风电功率预测精度。首先,考虑到风能具有随机性、非平稳性的特点,采用信号降噪分解方法对原始风电数据进行预处理。文献[5]采用了小波信号分解方法和支持向量机结合的一种组合预测模型。通过实验仿真分析,其预测结果相比单一预测模型有较高的预测精度;文献[6]采用经验模态分解方法和人工神经网络相结合,将原始数据分解为一系列相对平稳的各个分量,对每个分量建立对应的预测模型,最后将各个分量的预测结果叠加得到最终预测结果,实验分析该模型可以提高风电功率预测精度。其次,由于神经网络自身具有易陷入局部最优解、收敛速度慢等缺点,考虑如何改善神经网络自身缺陷,已有研究学者采用智能优化算法如遗传算法[7]、粒子群优化算法[8]、蚁群优化算法[9],将优化算法和单一模型相结合用于模型相关参数的优化,从而提高模型预测的精度。但这些智能优化算法自身存在收敛早熟、寻优精度较低和易陷入局部最优解等缺陷,借鉴差分进化算法思想,将变异、交叉和选择引入智能优化算法,提高寻优搜寻空间,同时也增加了种群的多样化。对于核极限学习机,优化算法主要优化它的核参数G和惩罚系数C是提高网络预测精度的关键。
基于此,本文采用一种可变模式分解技术和改进的灰狼算法优化核极限学习机的短期风电功率预测模型,以提高模型预测精度。
1 变分模态分解
1.1 变分模态分解原理
VMD[10]技术是近几年新提出的自适应信号处理分解技术,利用VMD分解技术将原始数据进行分解,得到各模态分量,对于每一个分量存在与其相对应的中心频率为w的带宽,将其转换为变分问题求取个模态分量带宽之和最小约束问题,模型构造如下:
(1) 对模态分量函数通过Hilbet变换求取对应的解析信号以及单边频谱,即:
(1)
(2) 对式(1)得到的解析信号与中心频率wk相混合,把各模态对应的频谱变换到与其相对应的基带,即:
(2)
(3) 利用式(2)计算梯度的平方L2范数,求取各模态带宽,从而构建约束变分问题,即:
(3)
式中:wk={w1,w2,…,wk},uk={u1,u2,…,uk}。
对上述构建的约束变分问题模型中,使用二次惩罚因子α和拉格朗日算子λ(t)将变分问题优化重构为非约束变分问题,即:
L({uk},{wk},λ)=
(4)
(5)
(6)
1.2 变分模态分解(VMD)算法步骤
(7)
式中:τ是噪声容限值。
(4) 通过收敛精度ε判断是否满足迭代条件,即:
(8)
2 核极限学习机
极限学习机(ELM)[11]是一种含L个神经元的单隐藏层前馈神经网络(SLFN)算法,相比于其他神经网络(如BP)具有训练速度快和泛化能力强等特点。但是ELM算法是随机生成各个神经元连接权值和阈值,易造成算法的波动性和不稳定性,因此在ELM算法(算法步骤详见文献[11])中,在映射函数h(x)未知时,引入核函数,核极限学习机构建如下:
(9)
由式(9)输出层对应的输出可表示为:
(10)
式中:核函数K(x,x1)采用RBF函数。
3 模型优化
3.1 灰狼算法
灰狼算法[12]是近几年新兴的一种智能优化算法,具体从以下三个方面对算法进行描述:
(1) 寻找和包围猎物。狼群对于目标猎物以群体寻找方式搜寻,接近目标,直到发现目标确定最优α、β、δ狼,狼群位置更新:
(11)
式中:A和C为系数向量;D是狼群中个体和目标猎物距离;t为迭代次数;X是灰狼位置;XP是目标猎物位置。
(2) 捕杀猎物。通过式(11)确定的最优α、β、δ狼向ω狼和其他狼群传播信息,更新自身所处位置,即:
(12)
式中:Xα、Xβ、Xδ代表狼群中α、β、δ狼位置,Dα、Dβ、Dδ是其他个体与α、β、δ狼距离。
(3) 攻击目标。狼群猎物时,以α、β、δ的位置来确定猎物的最优位置逐步缩小包围范围。对随机变量A大于1时,狼群对最优目标寻找以全局搜索方式进行。相反A小于1时,狼群对目标进行攻击时,是以局部寻优搜索方式。
3.2 改进灰狼算法
基本灰狼算法中对目标搜索存在全局搜索和局部搜索两种方式,采用差分进化算法[13]提高GWO的寻优能力,降低算法寻优时易陷入局部优解的缺陷,同时调整GWO线性因子a[14],由参数A=2ar1-a可知,A随线性收敛因子而变化,其值是一种线性的变化从2逐渐变为0的过程,不能更好地体现狼群寻猎过程。
1) 差分进化优化GWO算法(DGWO)。差分进化算法主要由变异、交叉和选择三个步骤对狼群中的个体进化择优,提高狼群多样化。具体描述如下:
(1) 变异操作是将狼群中的两个不相同的狼群个体,即β、δ狼进行差分缩放再与α狼合成产生变异体,即:
(13)
式中:t为迭代次数;b是随机缩放因子。
(2) 交叉操作是将狼群个体与变异操作得到的变异个体进行元素交换,产生新的种群,即:
(14)
(3) 选择操作经过变异,交叉产生新个体,计算每一个个体的适应度值,假如子代个体优于父代个体,则更新父代个体,即:
(15)
式中:g是适应度函数。
2) GWO中线性因子的调整(IGWO)。狼群对目标进行搜索、包围、攻击的过程存在局部和全局两种方式,基本GWO中收敛因子a是随着迭代次数的变化呈现一种线性递减的趋势,不能完全表达狼群对目标追捕的搜索方式,采用一种非线性收敛因子平衡全局和局部两种搜索方式,两种收敛因子随着迭代次数增加各自变化趋势如图1所示,非线性因子描述为:
(16)
图1 收敛因子变化趋势
3.3 优化预测模型参数
因核极限学习机中惩罚因子C和核参数g对核极限学习机性能至关重要,对C和g优化会提高核极限学习机的预测精度,采用3.2节中的两种策略改进灰狼算法(DIGWO)优化核极限学习机(KELM)参数。DIGWO-KELM算法流程图如图2所示。
图2 DIGWO-KELM算法流程
DIGWO-KELM算法步骤如下:
(1) 初始化狼群数量、最大迭代次数、随机种群位置、交叉概率值等。
(2) 根据相应的适应度函数计算个体的适应度值,并将各个适应度值按照大小进行排序,挑选出最优的α、β、δ狼。
(3) 根据式(12)更新ω狼的位置,同时计算适应度值。
(4) 由差分进化算法原理中变异、交叉和选择操作对其他个体进一步择优,确定α、β、δ狼。
(5) 判断算法是否满足最大迭代次数或达到收敛条件的给定精度,若条件不满足,则返回执行步骤(3);否则将最优α狼位置作为预测模型的最优参数进行风电功率预测。
4 模型建立
建立VMD-DIGWO-KELM模型。首先,原风电功率数据信号本身具有强烈的波动性和随机性,采用时频域分析方法(VMD)能将风功率信号分解为有限个具有物理意义的固有模态函数,降低原始数据信号(称为混合信号)的复杂性,对各个模态分量单独预测,消除原始数据信号的非稳定性等特性。其次,利用改进的灰狼算法(DIGWO)对核极限学习机(KELM)预测模型参数进行优化,同时运用优化后模型对模式分量进行预测。最后,将各个模式分量的预测值进行叠加求和,进而获得最终预测值。VMD-DIGWO-KELM模型的基本流程如图3所示,具体流程如下:
(1) 根据VMD分解技术降低风电数据非平稳性,将风电功率信号分解成IMF1-IMFn共K个分量。
(2) 对分解后的各个IMF分量采用DIGWO-KELM进行风电功率预测。
(3) 预测得到的各个IMF分量值进行叠加,作为最后风电功率预测值。
图3 预测模型构建流程
5 实验与结果分析
采用某风电场实际功率数据验证本文所提出的风电功率预测模型的性能。以风电场实际测量风电功率数据作为实验样本进行实验分析,该数据样本为每5分钟采样1个点,共1 525个数据。风电机组的额定容量1.6 MW,原始功率数据设定编号为1-1525的时间序号,取前1 400个数据作为训练样本集。预测模型输入层维度是5,进行单步预测,即用序号为1401-1405风电功率数据点预测序号1406,序号为1402-1406风电功率数据点预测序号1407,依次递推,功率数据预测实际编号为1406-1525共120个数据点。因此采用120个数据集进行模型预测性能验证,原始的风电场输出功率时间序列如图4所示。
图4 功率时间序列图
5.1 数据预处理与实验设计
原始数据采用某风电场实际数据,图5所示为风速-功率散点图。可以看出一部分数据点形成直线形式,一部分偏离实际的曲线,这是由于原始风电场采集的风电功率数据存在异常值和缺失值等数据问题所致。
图5 原始风速-功率图
首先采用四分位法[15]进行异常值的处理,处理异常数据后,将缺失数据进行拟合插补得到完整时间序列的风速-功率散点图。如图6所示,实际风电场的风电数据基本上能够展现出一条光滑曲线。
图6 处理后的风速-功率图
然后将处理之后的数据采用利用VMD信号分解技术对风电功率时间序列分解为K个模式分量。因各分量对应中心频率值不同,利用中心频率确定原始数据分解个数K,通常K取值区间为2~5。依据K值求取各分量对应的中心频率,如表1所示。
表1 各K值对应的中心频率
可以看出,当K=5时,对应的分量频率出现112和117数值接近的频率,因此分量个数K=4,各个模式分量如图7(a)所示,从各分量可以看出相比于原始风电功率信号,分解后的各个模式分量相对平稳,降低了原始数据信号的复杂性。同时对比完全集合经验模态(CEEMDAN)信号分解算法,分量如图7(b)所示。
(a) VMD分量图
(b) CEEMDAN分量图图7 模式分量图
最后将分解得到的各个模式分量,建立DIGWO-KELM模型进行分量预测,采用VMD技术分解后的各个分量IMF1-IMF4预测效果如图8所示,CEEMDAN技术分解后的各个分量IMF1-IMF5预测效果如图9所示。从各模式分量的预测效果图可以看出预测值和实际值基本吻合,采用优化后的预测模型(DIGWO-KELM)能够较好地进行功率预测。CEEMDAN技术分解的分量存在高频和低频分量这两种分量,高频分量如图8(b)所示,预测精度低于低频分量的预测精度,这也是造成预测误差原因之一。整体而言,DIGWO-KELM预测模型实现了对各分量的较高精度的预测。
(a) IMF1预测图
(b) IMF2预测图
(c) IMF3预测图
(d) IMF4预测图图8 VMD+DIGWOKELM分量预测图
(a) IMF1预测图
(b) IMF2预测图
(c) IMF3预测图
(d) IMF4预测图
(e) IMF5预测图图9 CEEMDAN+DIGWOKELM分量预测图
5.2 模型评估
为了进一步检验本文所提模型的预测精度,对相同的输入数据分别建立以下五种风电预测模型,分别为利用人工蜂群算法优化BP神经网络(ABC-BP)、核极限学习机(KELM)、可变模式分解和核极限学习机的组合模型(VMD-KELM)、改进的灰狼算法优化核极限学习机(IGWO-KELM)和本文所提模型(VMD-DIGWO-KELM),并进行实验分析。得到各个模型的预测效果,如图10所示。并选用归一化均方根误差eRMSE和归一化绝对平均误差eMAE这两个模型评估指标来评估各个预测模型的预测精度,指标的定义如式(17)和式(18)所示,评估结果如表2所示,这两个评估指标越小,则模型预测性能越好。
(17)
(18)
图10 各模型预测曲线图
表2 各模型误差评估(%)
由图10和表2可以看出,整体来说预测值和实际值大体趋势相近。采用VMD分解技术对于原始功率数据进行降噪预处理后,可提高风电功率预测精度。VMD-KELM预测模型与单一预测模型预测相比,VMD-KELM预测模型比KELM预测模型在eRMSE和eMAE分别降低了1.03百分点和0.77百分点。将智能优化算法中的线性因子调整后和KELM相结合,得到的eRMSE和eMAE为2.62%和1.94%。对比单一模型预测结果说明,智能优化算法可提高功率预测精度。本文将VMD分解技术和改进的灰狼算法DIGWO(线性因子调整和差分进化算法同时改进GWO)优化KELM的组合模型进行风电功率预测得到的eRMSE和eMAE指标是1.5%和1.16%,相比其他三种模型较大地提高了风电功率预测精度。
6 结 语
本文采用可变模式分解技术(VMD)和改进的智能优化算法(GWO)优化核极限学习机(KELM)的组合模型对风电功率进行短期预测,得出如下结论:
(1) 由于原始风电功率数据信号存在非线性、不稳定性等特性,本文利用VMD分解技术对原始风电功率数据进行预处理,分解原始信号为一系列相对稳定的IMF分量,相比于CEEMDAN信号分解能够降低原始数据信号的复杂性,提高模型预测精度。
(2) 对于VMD分解技术得到的各个模式分量IMF,分别用核极限学习机(KELM)进行风电功率预测时,考虑到KELM模型中的惩罚因子和核参数对于模型性能的重要性,利用改进的灰狼算法对这两个参数进行优化,建立VMD-DIGWO-KELM预测模型,并将各个模式分量的预测值进行叠加,以获得最终的功率值。
(3) 采用山西某风场的实际采集数据对建立的模型进行短期的风电功率预测。实验结果表明,采用分解降噪技术对原始数据信号进行预处理,再利用智能优化算法对预测模型精度进行优化,能够更好地提高预测精度。