APP下载

基于CGABC-Elman的光伏发电功率短期预测

2022-09-29崔馨元马艳娟宁兆秋

电源技术 2022年9期
关键词:蜜源权值向量

崔馨元,张 东,马艳娟,宁兆秋

(1.沈阳工程学院研究生部,辽宁沈阳 110136;2.沈阳工程学院新能源学院,辽宁沈阳 110136)

“双碳”战略——碳达峰、碳中和的提出表明新能源大发展的时代已经到来。太阳能具有收集方便、分布广泛、清洁无污染等优点,已经广泛应用于国内外发电系统中。然而气象因素的不稳定性使得光伏出力具有强烈的波动性和间歇性,对光伏并网的稳定运行产生影响。光伏发电功率预测可以与电网调度、负载调配相结合,减少光伏并网对电力系统产生的负面影响,提高系统调度能力和利用率。

关于光伏预测的方法有很多,以人工神经网络为主的智能预测方法引起了众多专家学者的关注。文献[1]通过萤火虫算法(firefly algorithm,FFA)优化的广义回归神经网络(generalized regression neural network,GRNN)进行光伏出力预测。文献[2]改进长短期记忆神经网络(long short term memory,LSTM)作为预测模型,从提高输入数据质量的角度抑制过拟合,提升预测的准确性。文献[3]采用基本人工蜂群算法(artificial bee colony,ABC) 优化反向传播(back propagation,BP)神经网络,预测不同天气状况下的光伏发电功率,但该方法存在迭代速度慢且预测精度低的问题。

本文提出了一种交叉全局人工蜂群算法(cross global artificial bee colony,CGABC)优化Elman 神经网络的模型(CGABC-Elman)预测光伏出力。Elman 神经网络能解决传统BP 对历史数据不敏感、适应时变能力差等问题。CGABC 可以改善ABC 迭代时间长、陷入局部极值等现象。通过算例仿真证明了本文所建立模型的良好预测效果。

1 光伏出力数据处理

光伏发电的基本原理是光生伏特效应,利用光伏电池将太阳能转为电能[4]。其等效模型表达式如下:

式中:Ipv和Vpv为等效电路输出的电流和电压;Iph为光生电流,主要影响因素为光照强度;I0为二极管逆向饱和电流;Tj为PN结热力学温度;Rsh、Rs分别为并联电阻和串联电阻;K和q分别为玻尔兹曼常数和电子电量,是固定值。

一般情况下,Rsh远远大于Rs,故式(1)中最后一项一般忽略不计,式(1)可以变形为:

由此可以看出,影响光伏电池输出电压的变化项为Iph和Tj,故影响光伏出力的主要因素为太阳辐射强度和空气温度,所以本文只选取这两种气象数据作为网络模型的输入向量,选取光伏发电功率样本数据作为网络模型的输出向量。与现有的需输入3~4 种气象数据的功率预测方法相比,神经网络的输入维数变少,模型计算量减少,预测时间也得以大幅降低。

为了减少绝对数值的差异,需要将太阳辐射强度、空气温度和光伏发电功率这三种不同变化范围的数据进行归一化处理,将值统一缩放到[-1,1]的范围后再输入网络模型。归一化的公式如下:

式中:xnormal(k)为样本数据中第k种类型数据归一化后的值;x为实际数据中第k种类型数据的值;xmax为实际数据中第k种类型数据的最大值;xmin为实际数据中第k种类型数据的最小值。

选取与训练样本时段相近的某一日作为待预测日,由于夜间没有光照,光伏电站不发电,故只需预测从日出到日落时段的光伏出力。将输出结果进行反归一化处理,可以直观地与实际值对比,有利于评估预测模型的性能。

2 Elman 神经网络与参数设置

2.1 Elman 神经网络

Elman 神经网络是一种反馈型神经网络[5],结构如图1 所示。它与BP 网络的区别是新增了一个反馈层,从输出到输入有了反向连接。它对历史数据更加敏感,适应突变数据的能力更强。具体公式如式(4)~式(6)所示。

图1 Elman 神经网络结构

式中:f(*)为隐藏层传输函数;g(*)为输出层传输函数;y=[y1,y2,…,ym]为输出层m维向量;h=[h1,h2,…hn]为隐藏层n维向量;x=[x1,x2,…xr]为输入层r维向量;u=[uc1,uc2,…ucn]为反馈层n维向量;w1,w2,w3为神经网络不同层之间的连接权值。

2.2 Elman 参数设置

随着神经网络不断地学习,各层神经元之间的衔接强度会不断增加,网络对样本特征的记忆度和敏感度也会随之增加。本文利用优化算法通过多次迭代,寻找Elman 神经网络的最佳权值并记忆最优网络。测试隐藏层神经元个数不同的Elman 神经网络,计算各预测点的误差和,结果如下:神经元个数为7、9、11、13、15 时,预测误差和分别为5.210 9、5.064 3、4.817 7、5.056 2、5.103 7。由此可知,当隐藏层有11 个神经元时,预测结果误差最小。输入为各个时刻的太阳辐射强度和空气温度,是二维向量;输出仅为光伏功率,是一维向量。综上,本文Elman神经网络结构为2-11(11)-1。

3 ABC 算法及其改进

3.1 ABC 算法

ABC 是以蜜蜂采蜜为直观背景,不同工种的蜜蜂进行不同的采蜜行为,共享信息后寻找最优蜜源[6],即神经网络连接权值的最优解,基本过程如下。

a.初始化所有蜜源向量:

式中:xmi为蜜源向量;m为向量个数,m=1,2…N;i为每个向量的变量,i=1,2…n;ui和li分别为蜜源向量的最大和最小边界值。

b.雇佣蜂在蜜源附近寻找新蜜源:

式中:vmi为雇佣蜂找到的新蜜源;xki为随机选取的蜜源;Φmi为邻域搜寻系数,Φmi∈[-1,1]。

c.计算每个蜜源适应度值:

式中:fitmi为蜜源适应度的值,在本文中为训练数据的均方误差。每产生一个新蜜源都要计算其适应度值,与原值进行比较,按照贪婪法则保留最优解,即保留均方误差最小时的连接权值。

d.观察蜂根据轮盘赌策略选择是否跟随:

式中:Pm为观察蜂跟随雇佣蜂的概率。若计算概率大于随机产生的数值,则观察蜂跟随雇佣蜂;反之,则变为侦察蜂重新搜寻新蜜源。

e.侦察蜂阶段:每个蜜源拥有参数trial,初始值为0,被开采一次trial值加1。如果蜜源的trial值高于初始阈值limit,说明蜜源枯竭。此时侦查蜂将化身为雇佣蜂,同式(8)继续寻找新蜜源vmi。

f.判断当前迭代次数是否大于初始设置的最大迭代次数。若大于,则循环停止,输出神经网络的最佳连接权值。

3.2 CGABC 算法

从ABC 的工作过程可以看出,该算法有相当好的邻域搜寻能力,但并没有被较好地开发。此外,该算法在雇佣蜂邻域探索、观察蜂选择跟随以及蜂群身份变化的各种选择过程中,都是以适应度值作为贪婪法则的比较条件,这使蜂群的多样性逐渐减少,容易发生因全局搜寻能力不足而收敛到局部极值的现象。

针对上述问题,Zhu 和Kwong[7]参照粒子群算法(particle swarm optimization,PSO),提出一种雇佣蜂根据全局最优解的指引在邻域寻找新蜜源的全局人工蜂群算法(global artificial bee colony,GABC),其搜寻式如下:

式(11)与式(8)相比,增加了最后一项,将全局最优解加入算法的迭代与更新,可以提高收敛速度,使算法得到较好的开发。但本文认为新增的最后一项会使算法的全局寻优能力有一定程度的损伤,可能会陷入局部极值。所以借鉴遗传算法(genetic algorithm,GA)中的二项交叉操作,使之与GABC相结合,提出CGABC 算法。

二项交叉运算是选择两个父代个体,对个体的每一位基因随机创造一个对应的数值rand,rand∈[0,1]。若rand小于初始设定的交叉操作改变系数cr,则保留当前个体对应的基因编码值;反之,则将两个个体的基因编码值进行位置互换,最终得到一个新的子代个体。

将雇佣蜂进行邻域搜寻后的解与全局最优解进行交叉操作,具体如式(12)所示。

改变系数cr可以协调算法的开发能力与全局寻优能力。实验证明,cr=0.5 左右时,算法较为稳定;β在[-1,1]区间取值,可以减少算法过早收敛的情况发生。

4 CGABC-Elman预测模型

本文提出基于CGABC-Elman 的光伏出力预测模型,具体流程如图2 所示。

图2 CGABC-Elman 模型流程

首先,将太阳辐射强度、空气温度和光伏发电功率组成的“气象-功率”样本数据归一化,作为训练数据输入神经网络。

然后,创建结构为2-11(11)-1 的Elman 神经网络,设置训练速率为0.01,训练精度为1×10-4;初始化人工蜂群参数:种群数量为30;雇佣蜂数量为10,观察蜂数量为10;最大迭代次数为500;β取1;cr取0.6,limit取5。

接下来,将Elman 的连接权值作为CGABC 的优化目标,以训练数据的均方误差作为适应度值。通过多次迭代,找到神经网络的最佳连接权值并记忆此时的最优网络。

最后,将待预测日数据输入最优网络中对光伏出力进行预测,将预测结果反归一化后与实际值相比较,证实本文预测模型有效且准确。

评价模型训练效果以及预测性能的主要指标有:平均相对误差(average relative error,σ)、均方误差(mean squared error,MSE)和均方根误差(root mean squared error,RMSE)。其值越小,表示模型具有越高的预测精度。

式中:Wtest为预测数据;Wtrue为实际数据;i为数据个数,i=1,2...N。

5 算例分析

本实验选择在Matlab R2020a 平台进行仿真。采用CGABC-Elman 模型对光伏发电功率进行预测,结果如图3 所示。

图3 CGABC-Elman模型

由图3(a)可以看出,CGABC-Elman 模型预测值曲线和实际值曲线走向基本重合,表现出很好的拟合度,验证了CGABC-Elman 预测模型的有效性。由图3(b)可以看出,CGABC-Elman 模型的预测误差大多分布在[0,0.05)之间,说明其具有良好的预测精度。误差最大值为0.237 1,发生在中午12:00 左右。由图3(a)可知,此时光伏出力出现急剧下降,从数据上推断可能是发生了剧烈天气变化,导致模型出现最大误差。

本文依照参考文献[8]改变输入数据的维度,将光照辐射强度、光照辐射强度+空气温度、光照辐射强度+空气温度+全天云量平均值+相对湿度(下文简称方法1、2、3)分别输入CGABC-Elman 模型进行光伏功率预测,结果如表1 所示。

表1 三种输入维度对比

由表1 可知,方法1 的运行时间最短,但预测误差相对较大,本文认为可以牺牲部分时间来提高预测精度。方法3 的预测误差最小,但方法2 和方法3 的误差值相差不大。方法2仅有两种输入维度,模型计算量小,运行时间比方法3 少很多。故本文所提出的输入两种气象数据的预测模型能较好地预测光伏发电功率。

本文分别采用ABC、GABC 与CGABC 算法优化神经网络,各算法参数设置相同,均以连接权值作为优化目标,MSE作为适应度函数。对比分析它们的优化效率及优化结果,如图4 所示。

图4 三种算法迭代收敛曲线

由图4 可知,CGABC-Elman 在迭代80 次左右时可以稳定收敛,收敛精度为4.28×10-3。相比之下,ABC 算法的收敛速度较慢,在迭代期间出现了三次局部收敛,且在局部最优解附近持续时间较长。而CGABC 算法最先达到最优解,较好地避免了ABC 算法的缺陷,具有更高的寻优效率。CGABC算法无论是在收敛速度还是收敛精度上,与ABC、GABC 算法相比都有显著提高。

为了更好地分析Elman 神经网络的性能及优点,本文选择BP 神经网络与其对比。BP 除了没有反馈层外,其余参数设置和各层神经元节点个数与Elman 神经网络保持一致,同为2-11-1 结构。

本文采用BP、Elman、ABC-BP、ABC-Elman 和CGABCElman 五种模型进行仿真对比,输入相同的样本数据集,将预测结果和性能评估进行比对,评估结果见表2,可以看出CGABC-Elman 模型的各种误差都最小,预测精度最高。

表2 五种预测模型性能对比

为了更直观地展现五种模型的预测性能,将待预测日数据分别输入五种模型中,由于五种模型的预测值曲线都较为贴合真实值曲线,故只选取测试数据中功率输出波动较小的时间段(9:00—10:00)展示,如图5 所示。

图5 五种预测模型对比

由图5(a)可以看出,CGABC-Elman 模型预测值曲线最贴合实际值曲线,预测效果最佳。图5(b)中CGABC-Elman 模型预测误差最大值为0.217 3,最小值2.111 7×10-4,总体来说,每个预测点的误差值与其他四种模型相比较低。CGABCElman 模型分布在[0,0.05)之间的误差个数最多,分布在[0,0.1)之间的误差个数显著高于前3 种模型,这与MSE的计算结果相呼应。综上,本文所提出的CGABC-Elman 模型具有良好的预测精度。

6 结论

预测光伏发电功率对光伏并网和电力系统的稳定发展具有至关重要的作用,可以为电网调度部门提供一定的参考价值。本文提出了一种光伏发电功率短期预测模型CGABCElman,将全局最优解引导的人工蜂群算法与二项交叉操作相结合,实现光伏出力的精准预测。通过与其他预测模型比较,验证了本文所建模型的有效性与准确性。

猜你喜欢

蜜源权值向量
一种融合时间权值和用户行为序列的电影推荐模型
林下拓蜜源 蜂业上台阶
向量的分解
聚焦“向量与三角”创新题
基于5G MR实现Massive MIMO权值智能寻优的技术方案研究
强规划的最小期望权值求解算法∗
指示蜜源的导蜜鸟
程序属性的检测与程序属性的分类
蜜蜂采花蜜
向量垂直在解析几何中的应用