基于优化BP神经网络和非参数估计的风功率区间预测
2022-07-08崔颢马平
崔颢,马平
(青岛大学 电气工程学院,山东青岛 266071)
风功率预测技术能够预测风电场未来一段时间内输出的风功率值,有利于发电策略的及时调整以及电网的安全与稳定运行[1]。
短期风功率预测的方法主要包括物理方法、统计方法和组合方法。物理方法是依照数值天气预报(NWP)等信息计算得到风功率值[2-3]。统计方法通过研究数据的时间序列,以历史数据映射出未来数据,具体分为时间序列法和机器学习法。时间序列法主要有建立差分自回归滑动平均模型(ARIMA)[4-5]等。机器学习法主要包括反向传播神经网络(BP)[6]、支持向量机(SVM)[7]等。组合方法[8]是将上述方法相结合的方法。
风功率的概率区间预测能够降低预测误差所带来的风险,常用的方法有参数法建模和非参数法建模两种模式[9-11]。
提出一种基于灰狼算法优化BP神经网络和非参数估计的风功率短期区间预测模型来提高预测精度,在已知置信度的条件下,得到风功率区间的上、下限。
1 基于优化BP 神经网络的风功率点预测模型
1.1 数据选取
为提高预测的准确度,简化预测的难度,则保留影响风功率预测的主要影响因素即可。
1)风速
风速变化较为频繁且波动范围较大。风速与输出功率的关系为:
其中,vin为风电机组的切入风速;vout为切出风速;vN为额定风速。
2)风向
风电场中由于地形因素,风电机组的排布在各方向上并不严格对称,使得不同风电机组的风轮扇面上的风向会有略微差异,加之风轮扇存在尾流效应,会影响输出功率。
3)其他因素
温度、湿度、空气密度等也是影响风功率预测的因素,但对于预测结果的影响相对较小且在量化上较为复杂,故视为次要因素,可忽略不计。
1.2 数据预处理
将影响风功率预测的各因素作为BP 神经网络的输入并在训练前对数据进行归一化处理。归一化可以消除不同变量之间的量纲,使所有输入量处在相同数量级上,有助于加快网络训练速度。
对风速、风向进行归一化处理,如式(2)所示:
其中,xmax为该变量的极大值。
1.3 点预测模型
1)BP 神经网络
如图1 所示,采用三层BP 神经网络:输入层、隐含层和输出层。将影响风功率预测的因素归一化后作为网络的输入,预测结果作为输出。
图1 三层BP神经网络
神经网络的信号正向传播时,输入量由输入层输入,经隐含层处理后,到达输出层。此时若输出实际值不等于输出期望值,则转到误差的反向传播过程。反向传播时,误差通过隐含层反向传播,误差信号是用来纠正每个神经元权重的基础。在训练中循环进行权值调整,直到输出误差达标。
2)灰狼优化算法
灰狼优化算法(Grey Wolf Optimizer,GWO)[12]通过模拟灰狼群体的等级系统和狩猎机制来完成寻优工作。头狼带领捕食行为,其他灰狼个体负责围攻。求解优化问题时,适应值最高的灰狼个体为α,即最优解;β和δ分别表示两个次优灰狼个体;其他灰狼个体定义为ω,即候选解。采用GWO 寻优时,由α带领,β和δ协助,其余ω完成包围、狩猎行为,以此寻找全局最优解。
灰狼群体首先包围猎物,包围过程如式(3)所示:
其中,D表示灰狼个体和猎物间的距离;k为当前迭代次数;Xp(k)为k次迭代中猎物的位置;X(k)为k次迭代中灰狼个体的位置;A和C为系数向量;r1、r2为[0,1]间的随机数;a为收敛因子;kmax为最大迭代次数。
然后由α、β、δ狼领导,灰狼群体对猎物进行狩猎,狩猎过程如式(4)、(5)所示:
其中,Dα、Dβ和Dδ分别表示α、β、δ与其他个体间的距离;Xα(k)、Xβ(k)和Xδ(k)表示α、β、δ个体k次迭代的当前位置;C1、C2、C3分别表示α、β、δ的系数;X1(k+1)、X2(k+1)、X3(k+1) 分别 表 示ω狼 经α、β、δ狼指导后更新的位置;A1、A2、A3分别为α、β、δ的系数。
3)GWO 优化BP 的风功率点预测
针对BP 神经网络在训练过程中对网络初始值非常依赖,使用灰狼优化算法对其进行优化。
具体步骤为:
步骤一:选取风电场中风速和风向的历时数据,将其分为训练数据集和测试数据集并将其归一化处理后作为BP 的输入;
步骤二:基本参数的初始化。初始化灰狼种群和参数α、A、C,设置最大迭代次数kmax;
步骤三:计算得到所有灰狼个体的适应度值,保存适应度值的最优解(α狼对应位置)、次优解(β狼、δ狼对应位置),更新剩余灰狼ω位置以及参数α、A和C的值;
步骤四:判断迭代次数是否达到kmax,若达到,则输出最优解α的适应度和位置,位置对应为BP 的最优权值和阈值;若未达到,则返回步骤三;
步骤五:训练BP 神经网络,计算各层的输入、输出以及输出Yi和期望输出Oi间的误差Ei;
步骤六:更新各层权值和阈值,重新计算各层的输出值;
步骤七:判断误差是否达标或是否达到Kmax,若达到,则输出风功率点预测值;若未达到,则返回步骤六。
2 基于非参数核密度估计的风功率区间预测模型
风电具有很强的随机性与波动性,这使得即便预测模型的精度再高,也会出现误差。确定性预测的方法对于风电发电规律的描述不够全面,故在得到风功率点预测值的基础上,还需得到该预测值的波动范围,构造出预测区间。风功率的区间预测是使用概率区间来表示风功率的实际输出和预测输出之间的差值,即预测误差,再结合已得风功率的点预测值,得到预测区间。
描述预测误差概率分布的方法主要分为参数估计法和非参数估计法。由于风电较强的随机特性使其在预测时存在较多偶然性,非参数估计的方法无需提前假定预测误差的分布,而是依照误差数据直接拟合得出,与参数估计相比,能更真实、更准确地反映预测误差的分布,适应性更高。
2.1 构造风功率预测区间
基于风功率点预测值和预测误差的概率分布,构造出风功率的预测区间,设点预测值为P,预测误差的概率分布函数为F(·),则1-α置信度下的预测区间表示为:
其中,α1、α2分别为概率分布内的上、下限,
2.2 非参数概率密度估计
核密度估计(Kernel Density Estimation,KDE)[13-14]属于非参数估计方法之一。KDE 以每个数据和带宽作为核函数的参数,以此获得若干个核函数,然后将若干个核函数叠加得到核密度估计函数,对其归一化处理后,即可得到核密度的概率密度函数,用于确定预测误差的概率分布。
采用KDE 求得的概率密度函数为:
其中,N为样本数量;h为窗宽;K(·)为核函数;xi为第i个预测误差的样本值。
核函数选择Epanechnikov 函数,公式为:
由于预测误差的波动情况受不同功率水平的影响,在预测误差概率统计时,将得到的风功率值分段并对每一区段内的值通过KDE 进行误差分布估计。先对功率值进行等间隔划分,再合并部分样本点过少的区段,保证每个区段内的样本数量充足,能够反映该区段的误差统计规律。获得每一区段的误差概率密度曲线后,对某一预测值求其区间时,先判断该预测值所属区段,再查找相应的误差概率密度曲线,最后计算相应曲线的分位点和1-分位点,结合对应时刻的点预测值,构造预测区间。
2.3 风功率区间预测
基于上述所得构造预测区间,具体步骤为:
步骤一:预测得到风功率的点预测值;
步骤二:将功率值等间隔划分为多个区段;
步骤三:获得每一区段的预测误差,即预测值与实际值的差值ei=yi-oi;采用核密度估计方法确定预测误差的概率密度曲线;
步骤四:依照每一区段的概率密度函数曲线,确定对应的α1、α2点值;
2.4 评价指标
概率预测的评价指标主要包括可靠性和敏锐度两个方面[15-16]。选用预测区间覆盖率来评价可靠性,选用预测区间平均宽度来评价敏锐度。
1)可靠性指标
预测区间覆盖率(PICP)为实际值在预测区间上下界内的概率,能够反映预测区间的准确性。区间覆盖率为:
其中,N为预测样本数;为布尔量,若第i个预测点的实际值包含于置信区间内,则=l,否则=0。其值越大,预测效果越好。
2)敏锐度指标
预测区间平均宽度(PINAW)能够反映预测区间的敏锐度,避免因只考虑可靠性,造成区间宽度过大。其定义为:
3 算例分析
选取某一风电场的实测数据进行实验,风电场的容量为60 MW,每间隔15 min 进行一次数据采样;选取该风电场4 日的实测历史数据为例:前3 日数据作训练样本,样本数为288 个;最后一日数据作预测样本,样本数为96 个。
3.1 风功率点预测
将基于GWO 优化BP 得到的风功率点预测结果与传统BP 得到的结果进行对比。采用3 层BP 神经网络:模型输入层有3 个节点,分别为风速和风向(分为余弦和正弦两个输入),归一化后输入;隐含层有6 个节点;输出层有一个节点,输出风功率点预测结果。实际风功率作为模型期望输出。目标预测误差为0.01。GWO 算法中的种群规模N设为50,最大迭代次数kmax设为100。
用平均绝对百分比误差(MAPE)和均方根误差(RMSE)对预测结果进行评定,公式为:
其中,N为样本容量;Prwt为风电场的实际输出功率,Pwt为风电场的预测输出功率。
以风电场前3 日的风功率实测历史数据为训练样本进行训练,得到24 h 的风功率预测值(96 个预测样本),预测结果如图2 所示,图中分别为实际风功率值、传统BP 神经网络风功率点预测值和基于GWO 优化BP 的风功率点预测值。
图2 风功率预测曲线
计算不同预测模型下的MAPE 和RMSE 指标,对比两种预测模型的评价结果,如表1 所示。
表1 不同预测模型的评价结果对比
将传统BP 算法和基于GWO 优化BP 算法的收敛情况进行对比,结果如图3 所示。
图3 不同算法收敛情况对比
由表1 和图3 可知,基于GWO 优化BP 算法的MAPE、RMSE 指标均优于传统BP 神经网络。
3.2 风功率区间预测
在已得点预测值的基础上,构造预测区间。
预测误差的概率分布的确定:以风电场前3 日的风功率实测历史数据为训练样本(样本数为288个),将训练数据集划分功率区段,区间间隔为10 MW,共划分为6 个区段并得到各区段预测误差的概率分布,由此构造预测区间。置信度(1-α)为90%时,风功率区间预测结果如图4 所示,实际风功率值基本处在预测区间的中间位置,且区间上、下限的走势与风电实际功率的走势基本一致。
图4 风功率区间预测结果
区间预测评价结果如表2 所示,通过对比基于高斯函数的参数估计方法、基于高斯函数为核函数的非参数估计方法以及基于Epanechnikov 函数为核函数的非参数法获得的预测结果评价指标,结果表明非参数方法的预测效果要优于参数方法,且非参数方法中选用不同核函数的结果相近,差别很小,验证了所提方法的优越性。
表2 不同区间预测方法评价结果对比
4 结论
文中提出一种基于灰狼优化算法优化BP 神经网络和非参数估计的短期风功率区间预测模型。采用灰狼优化算法优化BP 得到风功率点预测值,算例结果表明,相较传统BP 神经网络,其预测精度明显提高;以点预测为基础,使用非参数估计方法进行概率区间预测,算例结果表明,相较参数估计方法,区间预测的效果有一定提升。