张志浩,熊文洁,钟 文,印云刚,刘 闯,郭文超
(1.国网湖北省电力有限公司荆门供电公司,湖北 荆门 448000;2.国网湖北省电力有限公司荆州供电公司,湖北 荆州 434000;3.三峡大学电气与新能源学院,湖北 宜昌 443000)
2021 年政府工作报告中我国明确提出了“碳达峰”和“碳中和”的目标,在“双碳”背景下,政府倡导开发和使用清洁能源[1-2]。风能是一种清洁能源,也是一种可再生能源,风力发电的大力推广能够减少碳排放量,缓解能源危机[3-4]。我国幅员辽阔,海岸线狭长,陆海风能资源都十分丰富,但风功率变化具有较大的随机波动性,在并网时会对电力系统造成一定冲击[5-6]。为此,深入挖掘风功率数据之间的关系,建立较准确的风功率预测模型,实现风功率的精确预测,对提高电力系统运行安全稳定性和风能利用效率具有重要意义。
文献[7]为了降低风功率数据的波动性,以风速、风向和风功率历史数据为输入参量,在融合卷积神经网络中引入传统门控循环单元,建立基于深度门控循环单元神经网络的短期风功率预测模型,并用工程实例验证了模型在运算速度和预测准确度方面优势。文献[8]通过分析确定风功率的主要影响因素为风速、风向正弦和余弦,采用自适应策略对人工蜂群算法(Artificial Bee Colony,ABC)进行改进,以风速、风向和风功率历史数据为输入量,利用ABC算法对BP 神经网络的权值和阈值进行优化,建立ABCBP 风功率预测模型,采用实际算例验证了模型的正确性。文献[9]针对传统历史数据预测方法的不足,首先采用带降噪处理的自动编码机构建深度神经网络模型,然后应用深度迁移方法挖掘特征数据之间的隐含联系,最后根据地理位置和相似特征提取相似数据,建立了风功率预测深度迁移模型。文献[10]为了降低风功率历史数据的波动性,采用经验小波变换(Empirical Wavelet Transform,EWT)对原始风功率数据进行分解,采用量子粒子群算法(Quantum Particle Swarm Optimization,QPSO)对核极限学习机(Kernel Extreme Learning Machine,KELM)的参数进行优化,建立了基于EWT-QPSO-KELM 的风功率预测模型。上述模型虽然能够实现风功率的预测,但预测精度有待进一步提高。
采用惯性权系数、粒子初始化规则调整和越界粒子变异操作等策略对粒子群差分融合算法进行改进,利用改进粒子群差分融合算法对最小二乘支持向量机的参数进行优化,建立基于改进粒子群差分融合算法优化最小二乘支持向量机的短期风功率预测模型,采用风电场实际运行数据对模型的正确性和实用性进行验证。
最小二乘支持向量机(Least Squares Support Vector Machine,LSSVM)是一种典型的机器学习方法,常用于解决非线性分类、回归问题,其特点是对于小样本数据也具有较高的计算精度[11]。
LSSVM 算法回归原理为[12]:设某一训练集为T={(xi,yi)|i=1,2,…,n},其中xi∈Rd,表示输入变量,yi∈R,表示输出量,n为样本容量,LSSVM 的回归思想是寻找最优函数f∈F={f|f:Rd→R}完成对训练集的回归拟合。
LSSVM 利用非线性映射φ:Rd→Rk(k≥d)将低维空间中的样本数据映射到高维空间,令高维空间中的回归方程为
式中:w∈Rk为权值向量;b∈R为阈值。
根据结构风险最小化原则,引入松弛变量,则回归问题的目标函数及相应的约束条件为
式中:ξi为松弛变量,ξi≥0;C为惩罚因子,C>0。
为了求解式(2),将拉格朗日乘子引入,可得拉格朗日函数,具体如下
式中:αi为拉格朗日乘子,αi≥0。
拉格朗日函数取得极值时,应满足关系
将式(3)中的w和ξi消去,可得线性方程组:
式中:O为全零矩阵。
式(5)中,有
令Ω=ZZT,依据Mercer 条件,引入核函数K(xi,xj)=φ(xi)T·φ(xj),则有
综合式(5)—式(7),可得:
利用最小二乘法求解式(8),即可得到LSSVM的回归函数为
核函数的形式有多种,常用的有多项式核函数、多层感知器核函数、双曲正切核函数和高斯径向基核函数[13]。由于高斯径向基核函数的对称性、可导性和光滑性均较好,具有较强的泛化能力,因此采用高斯径向基核函数,其表达式为
式中:σ为核函数参数。
研究表明,LSSVM 的回归拟合效果受惩罚因子C和核函数参数σ的影响很大[14],为了提高LSSVM的回归精度,需要采用合适的算法对C和σ进行寻优。
粒子群—差分进化(Particle Swarm Optimization-Differential Evolution,PSO-DE)融合算法是结合粒子群算法和差分进化算法寻优特点提出的一种优化算法[15]。PSO 算法和DE 算法虽然都能完成寻优,但两种算法的个体生成过程不同,PSO-DE 融合算法能够使两个种群中的信息更好地交流,在迭代过程中始终选择两个种群的整体极值进入下一代,避免单一算法在寻优过程中陷入局部最优。PSO 算法[16]和DE算法[17]的群体极值可表示为
式中:Pt为适应度函数值。
PSO-DE 融合算法虽然融合了PSO 算法和DE 算法的寻优特点,解决了算法陷入局部最优的问题,为了进一步提高算法的计算精度,从三个方面对PSODE融合算法进行改进。
1)惯性权系数调整。在PSO-DE 融合算法中,惯性权系数被设置为固定值,为了增强算法前期的全局搜索能力和后期的局部寻优能力,对惯性权系数进行如下调整,具体公式为
式中:β(k)为第k次迭代时的惯性权系数;βstart、βend分别为惯性权系数的初值和终值;δ为控制因子。
2)越界粒子变异操作。PSO-DE 融合算法在寻优过程会出现粒子越界的现象,常规方法是使越界粒子的速度等于边界值,这样会降低粒子的多样性,降低算法的全局搜索能力。为此,对越界粒子执行变异操作。
式中:γ为变异率;rand()为[0,1]之间的随机数。
3)粒子初始化规则调整。为了使PSO-DE 融合算法中不同种群间更好地信息交流,PSO 算法和DE 算法中的元素应当属于同一区间[zmin,zmax],为了保持种群多样性,将粒子初始化规则进行如下调整。
式中:ui、hi分别为PSO算法和DE算法种群的初值。
风功率具有很大的随机性和不确定性,影响风功率变化的因素(风速、温度、气压、海拔、地形等)多且复杂,很难找出这些因素与风功率变化的具体关系,研究表明,风功率的变化具有混沌属性[18],即风功率是随着时间的变化而变化的,前几个时刻的功率值会影响下一时刻的功率变化。将风功率随时间变化的序列记作{P1,P2,…,Pt},t时刻的风功率受前m个时刻风功率的影响,则t时刻的风功率Pt可表示为
式中:f为函数关系;m为嵌入维数[19]。嵌入维数的取值恰当与否对风功率预测的准确性起决定性作用。
根据式(17)可以得出,风功率预测模型的输入量、输出量和嵌入维数之间的关系如表1所示。
表1 风功率预测模型输入量与输出量关系
采用PSO-DE 融合算法对LSSVM 的惩罚参数和核函数参数进行优化,建立基于改进PSO-DE 融合算法优化LSSVM 的短期风功率预测模型,建模步骤如下,建模流程如图1所示。
图1 建模流程
步骤1)将获取的风功率历史数据组成样本数据输入运算系统中。
步骤2)对风功率历史数据进行预处理,主要包括删除错误数据和补充缺失数据,缺失数据采用前后两个数据取平均值的方法予以补充,然后根据需要将预处理后的数据分为训练集和测试集,并对样本数据进行归一化。归一化的公式为
式中:x′为归一化后的数据;x为风功率原始值;xmax为风功率最大值;xmin为风功率最小值。
步骤3)初始化LSSVM,并设置相关参数,将C和σ作为寻优目标,设置C和σ的初始值分别为100和1。
步骤4)设置PSO-DE 融合算法相关参数:种群规模为30,最大迭代次数为300,阈值为0.1,惯性权系数初值和终值分别为0.9 和0.4,加速因子为2.05,DE 加权系数、变异算子和变异率分别为0.5、0.8和0.01。
步骤5)设置适应度函数,以训练样本的均方根误差作为PSO-DE融合算法的适应度函数,具体为
式中:N为样本容量;yi为第i个风功率的实际值;为第i个风功率的预测值。
步骤6)参数初始化,将种群中的个体分配给种群PPSO和PDE,利用式(15)和式(16)分别为各粒子赋初值。
步骤7)利用PSO 算法更新种群PPSO中各粒子的速度和位置,并利用式(14)对越界的粒子进行修正。同时利用DE 算法对种群PDE中各粒子执行选择、杂交、变异操作,并利用式(14)对越界的粒子进行修正。
步骤8)找出种群PPSO和PDE中的最优个体A1=和A2=。
步骤9)计算并比较a1=θ(A1)和a2=θ(A2)的大小,选择适应度值小的个体进入下一代。
步骤10)判断是否达到目标精度或最大迭代次数,若是,则输出C和σ的最优值,否则返回。
步骤11)将C和σ最优值赋给LSSVM,对测试集数据进行预测。
根据《风电功率预测功能规范》[20],采用平均相对误差、全局最大相对误差和均方根误差对风功率预测模型进行综合评价评价。均方根误差计算公式已在式(19)中给出,平均相对误差和全局最大相对误差分别为:
式中:M为测试集的样本容量。
本算例仿真数据来源于内蒙古地区某大型风电场,图2 给出了经预处理后的该风电场3 号风电机组连续6 天输出功率数据,风功率的采集周期为15 min,共576 组采样数据。将576 组样本数据分为两部分,前132 h 共528 组数据作为训练集,用于训练模型,后12 h 共48 组数据作为测试集,用于检验模型的精度。
图2 3号风电机组连续6天输出功率数据
由于风功率时间序列具有混沌属性,建立风功率预测模型时,嵌入维数m选择至关重要,m取值过小,导致数据间的关联性较弱,回归效果较差,m取值过大,会大大增加计算量,造成数据冗余,导致误差变大。因此,首先采用MATLAB 软件libsvm 工具箱中的自带参数作为LSSVM 的惩罚因子和核函数,选择不同嵌入维数(m=1,2,…,8)组成训练样本进行训练,找出用于风功率建模最合理嵌入维数。不同嵌入维数组成训练集训练后的平均相对误差和全局最大误差如表2所示。
表2 不同嵌入维数组成训练集训练误差
从表2 可知,嵌入维数m从1 到8 变化的过程中,训练集的平均相对误差先逐渐减小,当m=3时达到最小为1.85%,然后逐渐增大,全局最大误差和平均相对误差变化趋势基本一致,全局最大误差也在m=3时达到最小为4.43%。可见建立风功率预测模型时的嵌入维数应选择m=3。
图3 给出了嵌入维数m=3 时训练集样本的相对误差,由图3可知,共有10个样本相对误差的绝对值大于3%,其他样本的相对误差均在±3%以内,可见本次风功率预测模型的训练效果较好。
图3 训练集相对误差
利用改进PSO-DE 融合算法对LSSVM 的C和σ进行寻优,改进PSO-DE 融合算法寻优迭代过程如图4所示。为了对比改进PSO-DE融合算法的优越性,图4中同时给出了PSO算法、DE算法和PSO-DE 融合算法的迭代曲线,由图4 可知,改进PSO-DE 融合算法收敛时的迭代次数更少,优化效果更好。
图4 四种优化方法适应度曲线
表3 给出了四种算法优化结果,由表3 可知,PSO 算法、DE 算法和PSO-DE 融合算法和改进PSODE 融合算法的迭代次数分别为132 次、158 次、62 次和34 次,由此可见,改进PSO-DE 融合算法能够充分发挥PSO 算法和DE 算法的优势,有效减少算法迭代次数,提高计算精度,同时也验证了所提PSO-DE 融合算法改进策略的正确性。
表3 四种算法优化结果对比
将C和σ的最优值赋给LSSVM 对测试集数据进行外推预测,预测结果如图5所示,由图5可知,基于改进PSO-DE 融合算法优化LSSVM 的风功率预测模型的预测效果较好,风功率预测结果与实际功率的变化趋势基本一致。
图5 测试集风速预测结果
测试集数据预测的相对误差如图6 所示,由图6可知,本次功率预测相对误差范围均在±6%的范围内,共有4 组样本相对误差绝对值超过5%,剩余44组样本相对误差均在±5%以内,最大相对误差为5.97%,占测试集样本总量的91.67%,可见本次预测误差控制较好。
图6 测试集预测结果相对误差
为了验证风功率预测方法的实用性,采用相同风电功率数据分别建立粒子群算法优化最小二乘支持向量机(PSO-LSSVM)、粒子群算法优化极限学习机(PSO-ELM)、遗传算法优化BP 神经网络(GA-BP)3 种风功率预测模型,利用训练集进行训练,测试集检验各模型的精度,并与基于改进PSO-DE 融合算法优化LSSVM 的短期风功率预测模型的计算结果进行对比,4 种风功率预测模型的平均相对误差、均方根误差和全局最大误差计算结果如表4所示。
表4 3种风速预测模型误差
从表4 可以看出,在平均相对误差方面,本文模型的平均相对误差最小,仅为3.26%,相比于PSOLSSVM 模型下降31.22%,误差控制效果显著;在全局最大误差方面,本文模型为5.97%,小于其他3 种模型,可见模型外推预测的波动性较小;在均方根误差方面,本文模型的均方根误差为13.53,相比于PSO-LSSVM 模型下降26.71%,可见模型外推预测稳定性更好。综上所述,基于改进PSO-DE 融合算法优化LSSVM 的短期风功率预测模型能够有效减小数据波动,提高计算精度。
采用惯性权系数、粒子初始化规则调整和越界粒子变异操作等策略对PSO-DE 融合算法进行改进,仿真分析表明,改进PSO-DE 融合算法找到最优解的迭代次数更少,收敛效果更好,有效减少了算法的迭代寻优次数,提高了算法的收敛性能。
采用改进PSO-DE 融合算法对LSSVM 的惩罚因子和核函数参数进行优化,建立了基于改进PSO-DE融合算法优化LSSVM 的风功率预测模型,采用风电场实际运行数据进行算例分析,结果表明,基于改进PSO-DE 融合算法优化LSSVM 的风功率预测模型的平均相对误差、全局最大误差和均方根误差分别为3.26%、5.97%和13.53,预测效果好于对比的其他模型,验证了提出的改进策略及短期风功率预测模型的正确性。