一种基于并行树突状神经网络的光伏功率超短期预测方法

文档序号:26141678发布日期:2021-08-03 14:26阅读:112来源:国知局
一种基于并行树突状神经网络的光伏功率超短期预测方法

本发明涉及光伏发电的技术领域,具体涉及一种基于并行树突状神经网络的光伏功率超短期预测方法。



背景技术:

伴随着全球环境的日益恶化以及传统化石燃料的逐渐枯竭,世界各国都开始逐渐关注可再生能源的开发与应用,太阳能则凭借其范围广、利用率高、无污染等优点获得了更多的关注。光伏发电即是利用光伏电池将太阳能转化为电能,太阳辐照度是影响光伏输出功率的重要因素之一。因为太阳辐照度受云团运动的影响,导致光伏发电具有一定的波动性和随机性。光伏输出功率的骤然衰减导致的斜坡事件不但会损耗太阳能电池的寿命更会对电网的稳定运行带来冲击,因此准确预测光伏功率具有深远的实际意义。

光伏功率的预测方法有很多,人工神经网络在其中的应用最为广泛,并且已经开发出许多模型应用于实际的功率预测并取得了较好的效果,包括反向传播神经网络(bpnn)、径向基函数神经网络(rbfnn)和递归神经网络(rnn)。同时为了提高预测的精度,会利用各种算法对预测模型的数据进行处理优化,如levenberg-marquardt算法、小波算法,微分进化和粒子群优化算法。虽然不断有新的模型和学习算法被应用于光伏功率预测中,但是由于传统神经网络的设计缺乏理论指导,导致以往的预测模型中往往存在大量的节点,使得预测精度以及运算效率较为低下。

近年来,学者们提出了一种新的树突状神经网络(dnm)模型,相较于传统的神经网络,其结构更加简单,收敛速度也更快,同时能够更全面、准确的学习数据的特征规律。如文献[adendriticneuronmodelforshort-termphotovoltaicpowerprediction.the30thchinesecontrolanddecisionconference,june9-11,2018]首次将树突状神经网络引入光伏功率预测,预测效果优于传统神经网络模型;文献[aphotovoltaicpowerforecastingmodelbasedondendriticneuronnetworkswiththeaidofwavelettransform.neurocomputing,2020,397:438-446;基于小波变换-树突状神经元模型的光伏功率预测方法,受理号:201910051839.0]进一步引入小波变换对输入数据进行分解,建立了基于小波变换-树突状神经网络的光伏功率预测模型,提高了预测精度。但上述模型仅适用于小批量数据集离线模型的训练,很难应对大批量数据集的模型训练,而且由于是单一模型结构,对异常数据比较敏感,一旦有异常噪声数据,将影响到整个模型的精度。



技术实现要素:

为解决上述技术问题,本发明针提供了一种基于并行树突状神经网络的光伏功率超短期预测方法,可以较好地应用于较大数据集的预测模型训练,而且具有较好的抗干扰能力。

本发明所述的一种基于并行树突状神经网络的光伏功率超短期预测方法,包括以下步骤:

步骤1)、确定并选取影响光伏功率预测的因素作为树突状神经网络的输入变量,得到树突状神经网络的离线训练数据集和在线预测数据集,并将离线训练数据集和在线预测数据集中的数据进行归一化处理;

步骤2)、确定聚类的个数,利用fcm算法对离线训练数据集进行划分,得到各组离线数据对于聚类中心的一个隶属度矩阵,并将各组离线数据聚类到隶属度最高的类别中,得到离线训练数据的子数据集;

步骤3)、基于树突状神经网络对每一个离线数据的子集分别训练子网络模型,并将训练完成的子网络模型搭建成一个并行结构的整体预测模型;

步骤4、通过fcm算法计算各组预测数据对各个聚类中心的隶属度矩阵;

步骤5)、将预测数据传输至隶属度最大的的子模型中,并计算各个子模型的预测结果;

步骤6)、对所有子模型的计算结果进行一个算术平均的计算,即可得到并行多子网络模型的最终预测结果。

进一步的,所述步骤1)中,选取影响光伏功率预测的因素包括:太阳辐照度、相邻时刻的光伏功率、环境温度、光电板温度、风速。

进一步的,所述步骤2)中,fcm算法通过不断重复迭代离线数据划分以及更新隶属度矩阵来进行训练,训练过程如下:

步骤2)-1、初始化迭代结束阈值ε,随机选取c个样本作为初始聚类中心并确定最大迭代次数t;

步骤2)-2、计算每一组样本数据对于聚类中心的隶属度矩阵u=[uij]c×n;

则:

r使则:

其中,m∈[1,∞)为隶属度的指数,vi表示现有的第i个聚类类别的中心,u=[uij]c×n为隶属度矩阵,矩阵中的uij表示第j个数据xj从属于第i个聚类类别的隶属度,而d(xj,vi)为数据与类别中心间的欧氏距离||xj-vi||;

步骤2)-3、计算聚类中心vk+1

步骤2)-4、判断结束条件,当||vk+1-vk||<ε,或者训练迭代次数大于预设阈值t,则fcm算法训练完成,否则转至步骤二,重复迭代过程;

步骤2)-5、将离线的训练数据集根据上述计算后的隶属度矩阵进行划分,进而得到离线数据的子数据集。

进一步的,所述步骤4)中,根据步骤2)对在线预测数据进行计算,得到了预测数据对各个聚类中心的隶属度矩阵;

即在输入模型前,每一组在线预测样本需要计算对所有聚类中心的隶属度矩阵,此时的隶属度矩阵表达式如下:

uj=[u1j,u2j,...,ucj]t

其中ucj表示第j个预测样本与第c类聚类中心间的隶属度,该隶属度矩阵表示当前在线预测样本数据与各聚类中心的隶属度大小,得到隶属度矩阵后即可选择前n个较大隶属度的子模型传入该组数据,以获得样本预测输出。

进一步的,所述步骤6)中,在获得所选的多个子模型的计算结果后,最终预测输出的汇总公式如下:

本发明所述的有益效果为:本发明通过fcm算法将较大的数据集划分为多个较小子数据集,然后用各个子数据集分别训练一个dnm子模型,最后通过汇总多个子模型的结果来得到最终的预测结果。利用fcm算法对离线数据集进行划分使得各个子模型所需要学习的数据特征更加集中,提高了训练的效率,缩短了单个模型的训练时间,同时各个子网络模型对特征的建模更加的准确,大大提高了整体并行预测模型的预测精度。此外,并行的多子网络结构可以通过采用并行计算的技术来进一步提高训练的速度以及计算的效率。

附图说明

为了使本发明的内容更容易被清楚地理解,下面根据具体实施例并结合附图,对本发明作进一步详细的说明。

图1为辐照度与光伏功率的相关曲线图;

图2为面板温度、环境温度与光伏功率的相关曲线图;

图3为基于单个树突状神经模型的光伏功率预测模型;

图4为fcm算法划分数据集的过程图;

图5为子模型离线训练过程图;

图6为多子网络预测模型的整体结构图;

图7为本发明实例得到的两种并行多子网络预测模型与单个树突状神经网络模型对实际光伏数据进行预测分析的对比图;

图8本发明实例得到的两种并行多子网络预测模型与单个树突状神经网络模型实际光伏数据误差曲线对比图。

具体实施方式

本发明所述的一种基于并行树突状神经网络的光伏功率超短期预测方法,包括以下步骤:

步骤1)、确定并选取影响光伏功率预测的因素作为树突状神经网络的输入变量,得到树突状神经网络的离线训练数据集和在线预测数据集,并将离线训练数据集和在线预测数据集中的数据进行归一化处理;

其中,选取对光伏功率影响较大的几个气象数据作为预测的输入,根据光电转换的原理,辐照度的变化会直接影响光伏发电的输出,因此太阳辐照度是光伏输出的关键因素。同时,由于短时期内光伏功率一般不会发生较大的波动,所以相邻时刻的光伏功率也是光伏功率的一个影响因素。此外,温度也会对光伏发电产生影响,其通过改变光伏阵列的光电转换效率,进而改变光伏功率的输出,作为影响因素的温度又可细分为环境温度和光电板温度。

步骤2)、采用模糊c均值聚类(fcm)算法对离线训练数据集进行划分,得到每一组离线数据对于聚类中心的一个隶属度矩阵,并将各组离线数据聚类到隶属度最高的类别中,得到离线训练数据的子数据集;

步骤3)、基于树突状神经网络对每一个离线数据的子集分别训练子网络模型,并将训练完成的子网络模型搭建成一个并行结构的整体预测模型;

通过fcm聚类算法得到各个子数据集过后,可利用各个子数据集基于树突状神经网络来训练子网络模型。聚类算法的类别划分大幅减少了单个子数据集的数据量和特征量,使单个子集中的数据特征更为集中,也由此减少了单一树突状神经网络模型所学习的数据样本规模,使所训练的各子网络模型规模更小,进而提高了训练效率以及预测准确度,最后将个子模型搭建成为一个并行结构的整体预测模型。

步骤4)、对并行结构模型进行实际的光伏功率预测应用,根据步骤2),通过fcm算法对各组预测数据进行计算,确定预测数据对各个聚类中心的隶属度矩阵;

即在输入模型前,每一组在线预测样本需要计算对所有聚类中心的隶属度矩阵,此时的隶属度矩阵表达式如下:

uj=[u1j,u2j,...,ucj]t

其中ucj表示第j个预测样本与第c类聚类中心间的隶属度。该隶属度矩阵表示当前样本数据与各聚类中心的隶属度大小,得到隶属度矩阵后即可选择前n个较大隶属度的子模型传入该组数据,以获得样本预测输出。

步骤5)、将预测数据传输至隶属度最大的的子模型中,并计算各个子模型的预测结果;

步骤6)、对所有子模型的计算结果进行一个算术平均的计算,即可得到并行多子网络模型的最终预测结果。

其中,所述步骤2)中,fcm算法通过不断重复迭代离线数据划分以及更新隶属度矩阵来进行训练,训练过程如下:

步骤2)-1、初始化迭代结束阈值ε,随机选取c个样本作为初始聚类中心并确定最大迭代次数t;

步骤2)-2、计算每一组样本数据对于聚类中心的隶属度矩阵u=[uij]c×n;

则:

r使则:

其中,m∈[1,∞)为隶属度的指数,vi表示现有的第i个聚类类别的中心,u=[uij]c×n为隶属度矩阵,矩阵中的uij表示第j个数据xj从属于第i个聚类类别的隶属度,而d(xj,vi)为数据与类别中心间的欧氏距离||xj-vi||;

步骤2)-3、计算聚类中心vk+1

步骤2)-4、判断结束条件,当||vk+1-vk||<ε,或者训练迭代次数大于预设阈值t,则fcm算法训练完成,否则转至步骤二,重复迭代过程;

步骤2)-5、将离线的训练数据集根据上述计算后的隶属度矩阵进行划分,进而得到离线数据的子数据集。

所述步骤4)中,根据步骤2)对在线预测数据进行计算,得到了预测数据对各个聚类中心的隶属度矩阵;

即在输入模型前,每一组在线预测样本需要计算对所有聚类中心的隶属度矩阵,此时的隶属度矩阵表达式如下:

uj=[u1j,u2j,...,ucj]t

其中ucj表示第j个预测样本与第c类聚类中心间的隶属度,该隶属度矩阵表示当前在线预测样本数据与各聚类中心的隶属度大小,得到隶属度矩阵后即可选择前n个较大隶属度的子模型传入该组数据,以获得样本预测输出。

所述步骤6)中,在获得所选的多个子模型的计算结果后,最终预测输出的汇总公式如下:

如图1和图2所示,分别描述了光伏输出功率与太阳辐照度、环境温度以及面板温度关系曲线图,由图中所示,光伏功率与上述的几个气象因子有着明显的正相关;同时,由于短期内光伏功率通常都不会发生较大的波动,因此把相邻时刻的光伏功率也作为光伏功率的一个影响因素。综上所述,我们选取辐照度r、气温t、电池板温度h、风速w、以及前一时刻的光伏输出功率p-1作为树突状神经元的输入变量。

为了提高模型的预测精度,通常要对训练样本的数据进行预处理,首先剔除样本中的奇异数据;其次,在树突状神经网络网络中通常使用sigmoid函数作为非线性激活函数,其输出被限定在[0,1]或者是[-1,1]的区间内,但是期望输出往往不在此区间,为防止样本数据训练可能会带来的神经网络过饱和的问题,在输入变量进入突触之前一般要先对其进行归一化处理,将样本训练数据采用如下公式进行处理换算至区间[0,1]内,

上式中,p为原始数据,pmax和pmin为p的最大值和最小值,p*为归一化处理后的输出数据。

图3表示基于单个树突状神经模型的光伏功率预测模型,将选取的5个影响因子作为突触层的输入变量,每个分支会在突触处接受到输入变量,并进行非线性的sigmoid运算,下式给出了第i(i=1,2,3,...i)个输入变量与第m(m=1,2,3,...m)个分支层的输出之间的计算公式为:

其中xi是指光伏功率预测模型的第i个输入,它的取值范围是0-1。yim指的是第i个输入变量到第m个分支层的输出。k是一个正值常数,wim和θim是突触的权值和阈值。

接着分支层对这些突触信号的运算结果进行一个乘积运算,第j个分支的计算公式如下所示:

然后胞膜层汇总各个分支层中的信号,即在分支结点处对各个分支层的乘积结果进行线性求和运算。计算公式如下所示:

最后将细胞膜层的求和结果输入到细胞体中,并利用一个sigmoid函数来计算得到最终的预测输出数据,计算公式如下所示

树突状神经网络采用误差反向转播的方式来进行突触权值和阈值的更新。先利用期望输出t以及实际输出o计算求得该神经网络的最小方差,再根据其条件来导出神经元的模型,计算公式如下所示:

根据梯度下降学习算法,突触的参数wim和θim在训练过程中会沿着误差e减小的方向不断地被调整。修正公式如下所示:

参数wij和θij根据如下公式更新

wim(t+1)=wim(t)+δwim(t)

θim(t+1)=θim(t)+δθim(t)

图4为fcm算法划分数据集的过程图,如图中所示,数据集划分需要先将归一化后的输入数据构成样本数据矩阵,将其作为模糊c均值算法的训练数据。接着通过不断重复迭代样本数据以及隶属度矩阵更新两个步骤进行训练,直到训练次数大于设置的最大迭代次数或是聚类算法收敛。通过上述训练,目标的数据集被划分为所需要的c个类别,且数据集中的每一组数据对各个聚类中心vi都有一个专属的隶属度uij,u=[uij]c×n为隶属度矩阵。最后根据隶属度矩阵将数据集中的数据划分到其最大隶属度所对应的类别中,矩阵中的uij表示第j个数据xj从属于第i个聚类类别的隶属度,即将数据xj归类到uij最大那个类别i中,形成各个子数据集。样本数据矩阵与聚类中心的隶属度矩阵计算公式如下所示:

其中,uij为第j个预测数据从属于第i个聚类中心的隶属度,而||xj-vi||则表示两者间的欧几里德距离。

图5为子模型离线训练过程图。在通过fcm算法得到子数据集后,利用这些子数据集训练子网络模型。训练的网络采用树突状神经网络(dnm),将各个子数据集作为突触层的输入变量,并根据图3中dnm的学习规则进行训练,完成各个子网络的权值和阈值的迭代更新并确定其各项基本参数,形成具有一定预测能力的初始预测模型。同时,因为数据集的划分,各个子模型需要学习的数据特征大幅减少,进而使得各个子模型规模较单一的dnm模型要更小,提高预测精度的同时也提升了运算的效率。

图6为多子网络预测模型的整体结构图。将通过训练的子网络模型组成一个并行结构的整体在线预测模型来完成在线的光伏功率预测。利用fcm算法求得在线预测数据的隶属度矩阵,选择预测数据隶属度较大的前n类子模型输入数据,并计算各个子模型的预测结果。最后将这些子模型的预测结果通过求算数平均值的方法进行汇总,从而得到最终的结果。

图7和图8分别为本发明实例得到的两种并行多子网络预测模型与单个树突状神经网络模型对实际光伏数据进行预测分析的对比图以及误差曲线对比图。

为了验证所设计的并行多子网络光伏功率预测模型(dnm_mc)的有效性,采用甘肃省某光伏电站真实历史数据进行仿真实验,并与单一dnm预测模型进行对比分析。由于dnm_mc模型的训练需要将数据集进行聚类分析划分为多个子数据集,为了测试不同子网络数量对最终预测结果的影响,利用fcm算法将原始数据集的聚类中心个数分别取得3和5,进而得到两组子数据集个数分别为3和5的训练数据集,将原始数据集利用fcm算法分别划分为3类和5类,对应的多子网络模型记为并行3子网络光伏功率预测模型(dnm_mc3)、并行5子网络光伏功率预测模型(dnm_mc5)。选用该发电站2018年7月至9月的数据作为离线训练过程的数据集,在线预测过程则选用2019年8月的共9天的数据,邻近两组数据集之间的间隔为15分钟。

从图7和图8中我们可以看出,本发明所设计的dnm_mc模型在大部分预测点处,相较于单一的dnm模型,其拟合效果都要更好。尤其在峰值处,可以明显看出dnm_mc模型的预测精度要高于单dnm模型,其预测结果能更好的跟随实际的光伏发电功率值。且在两个dnm_mc模型中,可以看出在子模型数量较多的nbdm_mc5模型的预测效果要更好,拟合度更佳。同时,dnm_mc模型的平均绝对误差在整体上要明显小于单一的dnm模型,并且dnm_mc模型的误差的波动幅度也更小,验证了并行多子网络模型的预测结果是要更优于单个模型的。同时dnm_mc5的绝对误差较dnm_mc3也更小,证明了在数据集较大的情况下,并行多子网络的预测精度会随着子模型的增加而提高。

以上所述仅为本发明的优选方案,并非作为对本发明的进一步限定,凡是利用本发明说明书及附图内容所作的各种等效变化均在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1