基于改进PSO-RBF神经网络的光伏功率预测
2020-07-13吴长林高文根
陈 玉,吴长林,高文根,2
(1.高端装备先进感知与智能控制教育部重点实验室(安徽工程大学),安徽 芜湖 241000;2.安徽工程大学电气工程学院,安徽 芜湖 241000)
引言
随着全球经济的快速发展,能源需求也在快速增长。传统化石能源日趋枯竭,气候变暖和环境污染问题相当严峻。太阳能、风能等作为可再生的清洁能源,开始受到人们的重视。利用可再生能源如太阳能、风能发电在全球发展迅速[1]。因为光伏并网规模的不断扩大,太阳能的随机性、波动性和不确定性对电力系统的安全性和稳定性产生了影响。目前,解决这个问题的重要的方法是进行光伏功率预测,根据光伏发电系统的历史数据和影响光伏发电的气象因素,预测光伏发电的变化趋势,以此提高系统的安全性、可靠性。
光伏发电的预测方法有很多,主要可归类为神经网络预测法[2-6]、时间序列预测法[7-8]和支持向量机法[9-12]等。为了提高预测精度,国内外众多学者在分析太阳能辐射强度、温度等气象因素对光伏发电功率的影响的基础上,采用神经网络算法建立光伏发电功率预测模型,以此预测未来光伏发电功率。如:文献[13]针对气象因子对功率输出的影响,将基于天气类型与BP神经网络结合的模型,对相似气象条件的同时输出功率的相关性较强;文献[14]考虑太阳能辐射强度和温度对光伏发电功率的影响,选取相似日并将其太阳能辐射度和温度设置为输入量,采用基于遗传算法-模糊径向基神经网络模型预测光伏发电功率;文献[15-16]均将其他算法与BP算法结合预测光伏功率,避免了单一模型预测的缺点。但是EEMD算法的计算量较大,且其限制迭代次数,导致分解得到的分量不一定满足IMF定义的条件;文献[17]针对PSO算法和BP算法的不足,用混沌搜索和自适应的变异来优化粒子群算法,从而提高全局搜索概率,然后将优化的粒子群算法与BP算法结合,建立预测模型。但是在空间较大时,混沌搜索存在计算时间长、可能无法搜索到最优解的问题;文献[18]通过粒子群优化BP神经网络,建立预测模型,虽然对BP神经网络有改进,但是仍然存在一定局限性。
考虑太阳能辐射强度、温度等其相似度对光伏发电功率的影响,由于径向基(Radial Basis Function,RBF)神经网络与BP网络相比,RBF网络学习过程收敛速度快,具有唯一最佳逼近的特点,本文提出一种基于改进粒子群优化RBF神经网络算法来预测光伏发电功率。采用pearson相关系数法确定相似日,选择相似日光伏输出功率的历史数据、太阳辐射强度、大气温度相对湿度、天气类型以及风速作为输入变量,采取PSO-RBF算法模型预测光伏发电功率。
1 相似日的选取
1.1 影响光伏输出功率的因素
相似日指的是与预测日气象特征相似度高的日期。影响光伏输出功率的气象因素有辐照度、大气温度、相对湿度、天气类型以及风速等。
1.2 基于Pearson相关系数法选择相似日
1.2.1 Pearson相关系数分析
Pearson相关系数[19]是用来表示两个变量之间的线性相关程度,用R(k)表示:
由式(1)可知,相关系数的绝对值越大,相关性越强。即,相关系数越接近于1或-1,相关度越强;相关系数越接近于0,相关度越弱。
1.2.2 相似度计算
(1)利用式(1)计算各气象因素与光伏输出功率的pearson相关系数计算。
(2)对各个气象因素的关联程度进行综合,采用连乘的方式定义相似度。相似度定义为:
其中:R(k)是第k个气象信息的关联系数,k是气象因素。待预测日的相似日就是相似度最大的历史日。
采用某高校光伏电站数据,计算不同气象因素的各相关系数,见表1。选择相关度较高的气象因素:辐照度,温度和湿度为输入变量。
表1 光伏发电功率和气象因子的相关系数
2 RBF神经网络
2.1 RBF的结构
RBF神经网络在不同行业和领域都有着广泛的应用[20-21]。其是具有三层结构的前向网络,分别称为输入层、隐含层和输出层,如图1所示。
图1 RBF神经网络的结构
由图1可知,第一层是输入层,其输入的维数等于节点个数;中间层是隐含层,问题的复杂程度决定节点的个数;第三层是输出层,节点的个数是输出数据的维数。隐含层的作用是串联输入层和输出层。一般情况下,隐含层的节点数越多,结果就越准确,但若隐含层节点数过多会影响网络的执行效率。
输入层的输入记为x1,x2,···xM,隐含层的输入记为q1,q2,···qM,输出层的输出表示为y1,y2,···yM;输入层到隐含层的加权系数为ωij,隐含层到输出层的加权系数为ωki。神经网络的隐含层的输出表示为:
式中:σi是第i个隐节点的常数;ci是第i个隐节点的高斯函数的中心向量;xM是输入层的输入向量。隐含层到输出层是线性映射,输出层的输出为:
式中:ωi是第i个隐节点到输出层的权系数。
2.2 RBF的关键参数
由2.1节可知,RBF神经网络有三个关键参数:
(1)隐含层中基函数中心向量ci。
(2)宽度 σi。
(3)隐藏层与输出层之间的权重ωi。
3 改进PSO算法
粒子群算法的模型简单,可以优化各种函数,但是粒子群算法的缺点是容易陷入局部最优、收敛速度慢。粒子群算法粒子的速度和位置更新公式分别见式(5)和式(6)。由公式可知,在迭代过程中,粒子的个体位置不断与群体最佳位置比较,并靠近群体最佳位置,导致算法容易陷入局部最优。
(1)速度公式:
其中:c1是一种认知学习因子,它调节粒子的步长到最佳的位置;c2是一个社会学因子,用于调整粒子的步长到全局最优的位置;r1、r2都是[0,1]之间的随机数,用来避免学习迅速达到局部极值;ω是惯性常数,保持个体的原始属性使得进化具有遗传性,这对迭代次数有很大的影响。
由式(5)可知,惯性权重在更新粒子速度中的作用举足轻重,其不仅影响粒子前一时刻的具体速度值,还影响粒子的未来速度。在标准粒子群算法中,惯性权重是一个常数,导致粒子在迭代过程中无法实时调整,实验结果不理想。事实上,当粒子速度较大时可增加粒子的搜索范围,当粒子速度较小有利于局部搜索。粒子惯性权重较大时可以提高粒子速度,这样粒子就可以跳出局部最小点,有利于全局搜索,惯性权重较小时可以提高算法的收敛性。
针对粒子群算法中容易早熟和后期容易在全局最优解附近产生振荡现象这一问题,利用线性递减权重法,将惯性权重参数设置为一个变量,有利于实现全局搜索和局部搜索之间的转换平衡,还改进了粒子群算法的收敛速度,提高算法效率。
惯性权重会随着线性从大到小地递减,其变化公式为:
式中:ωmax是最大惯性权重;ωmin是最小惯性权重;t是算法当前训练迭代次数,tmax是总迭代次数。
改进PSO算法具体步骤如图2所示。
图2 改进PSO算法
4 基于改进粒子群优化RBF算法
由第3章论述可知,RBF网络参数的确定是RBF网络的关键问题,需要通过学习和训练来完成。本文采用改进PSO优化RBF神经网络的基本思路是:优化网络中各个层次的连接权值。在RBF神经网络反向传播过程中,每个粒子搜索连接权值和阈值。与梯度降法相比,当在粒子群中搜索每个粒子时,迭代公式的计算速度更快,然后动态调整,得到最优值,达到训练神经网络的目的。PSO的神经网络是优化RBF网络的每个级别的连接权重值。
在利用改进PSO算法优化RBF神经网络中,根据RBF神经网络的训练原理,其适应度函数为:
其中,Yi和分别代表实际输出和网络预测输出。
改进粒子群算法优化RBF神经网络流程如下:
(1)确定RBF神经网络结构,包含输入层的节点数,隐含层的节点数,输出层的节点数。
(2)初始化PSO算法相关参数。包括设置PSO粒子群的群数N,惯性参数ω,学习参数c1、c2,以及最大迭代次数。
(3)根据式(8)计算粒子适应度值。
(4)更新粒子群的速度和位置。
(5)计算调整后的粒子适应度值。
(6)更新个体极值。若当前的适应度值要优于上次的迭代的值,则将当前值当做新的个体极值。
(7)更新全局极值。将前一步计算得到的个体最佳适应度值与全局最佳适应度值进行对比,如果优于后者,就选择新得到的个体最佳适应度值代替全局最佳适应度值。
(8)判断是否满足设置的结束条件,若满足条件就进行下一步,否则返回步骤(3)。本文设置的结束条件为迭代次数达到最大值。
(9)使用粒子群算法得到的RBF神经网络的最优参数后,赋值给RBF神经网络,得到预测模型。
(10)利用建立好的模型进行预测,得到预测结果。
5 实验验证
本文选择安徽工程大学110 kW光伏发电系统的光伏输出功率值。选择2018年6月3日为预测日,天气类型为多云,温度为21℃ ~29℃,湿度范围是52% ~73%。然后选择2018年5月1日到2018年7月1日的光伏输出功率历史值和气象数据,采用本文前面所述的方法计算相关系数,确定相似日。最终计算选择2018年6月1日为相似日。选择与预测日相似度最高的相似日的各个气象因素的数据和早上7:00到下午7:00之间的光伏输出功率,每10 min采集数据,构成训练样本,然后利用改进粒子群优化RBF神经网络预测该相似日的光伏输出功率,得到预测光伏输出功率的模型。预测结果如图3所示。
图3 预测值与实际值
从图3可以看出,基于改进PSO优化RBF神经网络算法预测的光伏发电功率的变化趋势与实际功率变化趋势比较接近,可以比较准确地预测未来光伏发电功率趋势。同时,为了更进一步证明本文提出的算法的优化效果,本文将改进算法分别与传统RBF神经网络、PSO-BP神经网络算法预测的发电功率进行比较,具体如图4所示,其中,图4(a)为本文算法与传统RBF神经网络算法预测值的比较,图4(b)为本文算法与PSO-BP网络算法预测值的比较。从图4可以看出,本文算法的预测值更接近于真实值。另外,为证明本文提出的改进算法的预测精度更高,将本文算法的相对误差分别与传统RBF神经网络算法、PSO-BP算法的相对误差进行比较,如图5所示,其中,图5(a)为本文算法与传统RBF算法的相对误差的比较,图5(b)为本文算法与PSO-BP算法的相对误差的比较。从图5可以看出,本文算法的相对误差在零附近,且比RBF神经网络算法、PSO-BP算法的相对误差小,更接近于零。由图4与图5的比较分析可知,本文提出的方法预测效果明显优于RBF神经网络算法和PSO-BP算法。
图4 不同算法预测比较
图5 不同算法预测相对误差对比
6 结束语
实例验证表明,与传统的RBF神经网络和PSO-BP算法相较,本文提出的改进PSO-RBF神经网络具有更好的鲁棒性,弥补了算法易陷入局部最优的缺陷,预测精度更高。利用本文的光伏发电功率预测方法,可以提前了解光伏发电功率波动情况,从而更好与储能系统配合,达到平抑功率波动目的,有利于微电网调度,具有一定的理论意义和实用价值。