1.本发明属于发电预测技术领域,尤其涉及一种基于改进粒子群的神经网络预测光伏短期发电方法。
背景技术:2.伏发电存在的间歇性、不可预测性的固有缺点,其势必会对电网带来冲击,将制约光伏产业的发展。为了降低光伏并网的危害性,保证电网安全稳定运行。目前,有很多技术被应用在光伏发电预测领域以保证为调度提供准确的调度依据。最典型预测方法是运用神经网络训练光伏模型,但是,典型的神经网络存在训练时间长,预测精度低等缺点,其不利于提供实时的预测数据。因此,考虑模型的缺点,本发明专利对神经网络内部参数进行优化,改进的神经网络模型可以对光伏发电进行快速准确的预测。
技术实现要素:3.本发明提出了一种基于改进粒子群的神经网络预测光伏短期发电方法。在考虑光伏发电量受多种气象因素的影响下,运用相关性分析方法对气象因素进行分析,提取影响主要影响发电的气象因素,基于此,构建神经网络预测模型。并且,运用改进的粒子群算法对神经网络的初始参数进行优化,进而提高预测精度。
4.一种基于改进粒子群的神经网络预测光伏短期发电方法,包括以下步骤:
5.步骤1:根据历史数据选取影响光伏发电的气象数据作为输入,并对历史数据进行处理;
6.步骤2:基于步骤1,构建神经网络预测模型的层数以及各层的神经元个数;
7.步骤3:运用改进的粒子群算法对神将网络中的初始权值进行优化,以提高神经网络的预测精度;对传统的粒子群算法进行权重、认知学习因子以及社会学习因子改进形成改进的粒子群算法;
8.步骤4:基于步骤3,对步骤2中的神经网络初始参数进行优化;
9.步骤5:将步骤4优化的参数结果更新至神经网络中,完成对神经网络的优化。
10.进一步地,根据公式(1)的pearson相关系数方法对气象数据相关性进行分析,其中所述的气象数据包括光照强度、温度、湿度、气压、pm10,公式(1):
[0011][0012]
式中,为相关系数,|λ
xp
|值越大,表示影响光伏发电的气象因素数据x与光伏发电量p的相关性越强,联系越紧密,联系越紧密,
[0013]
且比较气象数据与光伏发电量的相关性,选取主要影响发电的气象因素作为模型
数据输入。
[0014]
进一步地,构建神经网络预测模型的层数以及各层的神经元个数包括:确定模型输入层神经元数目j,输出层神经元数目为1,即光伏预测功率;确定隐含层层数以及每个隐含层神经元个数,其中神经网络隐含层层数为1;隐含层中神经元个数为选取tanh 函数作为激活函数。
[0015]
进一步地,对传统的粒子群算法进行权重、认知学习因子以及社会学习因子改进形成改进的粒子群算法包括:对粒子群算法中的速度迭代公式进行改进:
[0016]
vk=wv
k-1
+c1r1(p
best,k-1-x
i,k-1
)+c2r2(g
best,k-1-x
i,k-1
)
[0017]
式中,v是粒子的速度;w是惯性权重,其影响寻优能力;c1是认知学习因子;c2是社会学习因子;p
best
是单个粒子最优位置;g
best
是群体粒子最优位置;
[0018]
进一步地,采用下式改进惯性权重w以提高对神经网络参数的寻优能力:
[0019][0020]
式中,w
max
是最大惯性权重,w
min
是最小惯性权重,m为当前迭代次数,m
max
是设置的最大迭代次数,当m≤m
max
/2时,λ=0.5;当 m≥m
max
/2时,λ=2。
[0021]
进一步地,采用下式改进认知学习因子c1:
[0022][0023]
进一步地,通过下式改进社会学习因子c2:
[0024][0025]
进一步地,优化神经网络参数包括:初始化粒子群与确定适应度函数fitness:
[0026]
粒子群中粒子的数目为l=j*q+q,粒子群的数目为k;
[0027]
粒子群的适应度函数选取预测模型的输出值与实际值误差的平方和。
[0028][0029]
式中,pr是为实际的光伏发电量。
[0030]
与现有方法相比,本发明的有益效果在于:
[0031]
本方法利用pearson相关系数方法对神经网络输入进行分析,选取影响光伏功率较大的气象因素作为神经网络的输入,对数据进行降维处理。同时本技术中运用改进的粒子群算法对神经网络参数进行优化,其中对粒子群的惯性权重、认知学习因子以及社会学习因子进行改进,其可以防止在优化神经网络时,粒子群陷入局部最优,并且提高了粒子群算法的收敛速度,进而更好的对神经网络模型进行优化,整体实现了光伏预测的准确性。
附图说明
[0032]
图1为所提出算法流程图;
[0033]
图2为本发明专利的神经网络结构图;
[0034]
图3为传统神经网络与改进神经网络的预测曲线;
[0035]
图4为传统神经网络与改进神经网络的预测误差。
具体实施方案
[0036]
下面将结合本发明附图和实施例中,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。
[0037]
步骤1:确定神经网络模型的输入数据
[0038]
步骤1.1:根据历史数据选取影响光伏发电的气象数据作为输入。本发明选取光伏电站中的光照强度、温度、湿度、气压以及pm10作为输入数据,在实施例中,选取的历史气象为30天内气象因素数据,时间分辨率为1h,每类气象采集数据数目为720个,并且以此作为神经网络的测试集。
[0039]
步骤1.2:根据pearson相关系数方法对气象数据相关性进行分析,根据公式(1)可计算以下相关系数:
[0040]
表1:气象因素相关度分析
[0041]
气象因素相关系数λ
xp
光照强度0.92温度0.83湿度-0.67pm10-0.69气压0.2
[0042]
步骤1.3:在本实施中,选取|λ
xp
|>0.65的气象数据作为神经网络模型的输入,即光照强度、温度、湿度以及pm10。
[0043]
步骤2:构建预测模型
[0044]
步骤2.1:根据步骤1.3分析的相关性数据,确定模型输入层神经元数目为4,输出层神经元数目为1,即光伏预测功率。
[0045]
步骤2.2:确定激活函数
[0046]
在本发明中,选取tanh函数作为激活函数
[0047][0048]
式中,e为常数,其为无理数。
[0049]
步骤2.3:确定隐含层层数以及每个隐含层神经元个数:
[0050]
本发明中,神经网络隐含层层数为1;隐含层中神经元个数为3。
[0051]
步骤3:改进pso算法
[0052]
步骤3.1:改进速度迭代公式
[0053]
vk=wv
k-1
+c1r1(p
best,k-1-x
i,k-1
)+c2r2(g
best,k-1-x
i,k-1
)
[0054]
式中,v是粒子的速度;w是惯性权重,其影响寻优能力;c1是认知学习因子;c2是社会学习因子;p
best
是单个粒子最优位置;g
best
是群体粒子最优位置;
[0055]
步骤3.2:改进惯性权重w
[0056]
在本发明中,对w进行改正以提高对神经网络参数的寻优能力。
[0057][0058]
式中,m为当前迭代次数,粒子群算法的最大迭代次数m
max
=1000,当m≤m
max
/2时,λ=0.5;当m≥m
max
/2时,λ=2。
[0059]
步骤3.3:改进认知学习因子c1[0060][0061]
步骤3.4:改进社会学习因子c2[0062][0063]
步骤4:优化神经网络参数
[0064]
步骤4.1:初始化粒子群
[0065]
粒子群中粒子的数目为15个,粒子群的数目为k=50。
[0066]
步骤4.2:确定适应度函数fitness。
[0067]
本发明中,粒子群的适应度函数选取预测模型的输出值与实际值误差的平方和。
[0068][0069]
式中,pr是为实际的光伏发电量。
[0070]
步骤4.3:基于步骤4.2的适应度函数,对神经网络中的初始参数进行优化;优化步骤如图1所示,基于步骤4.1的初始化粒子群,根据适应度函数计算每个粒子的适应度值;根据步骤3.1改进速度迭代公式更新粒子的位置,并且更新粒子的位置速度;最后得到全局最优粒子值。
[0071]
步骤4.4:将最优粒子值更新至神经网络中
[0072]
结合步骤4.1-4.4,对神经网络初始参数进行优化,将优化后的参数输入至神经网络中,进而,运用优化的模型对光伏发电量进行预测。
[0073]
图3是改进的神经网络对96个(4天)光伏功率进行预测,由图中可知,改进的神经网络模型可以对光伏功率进行有效预测;图4为改进神经网络与传统神经网络预测的误差率,由图可知,改进的神经网络显著的提升了预测精度;表2为传统神经网络与改进的神经网络平均误差率。
[0074]
表2.平均误差率
[0075]