一种基于遗传算法优化bp神经网络的风电功率预测方法

文档序号:6156935阅读:170来源:国知局

专利名称::一种基于遗传算法优化bp神经网络的风电功率预测方法
技术领域
:本发明涉及一种用于风电场风电功率预测的方法,特别涉及一种基于遗传算法优化BP神经网络的风电功率预测方法。
背景技术
:随着风电规模的扩大,风电并网所引发的一系列问题急需解决,其中包含对含风电场的电力系统调度问题,风电功率的准确预测是解决这一问题的关键。准确的风电功率预测有助于电力部门制定出有效的发电计划,从而保证电力系统的安全稳定经济运行,因此,风电功率预测是风电调度的必要前提和重要支撑。目前的预测方法主要有V-P曲线法,即首先预测风速,再根据风电功率与风速的曲线求取风速功率值;另一种是直接预测法,即直接根据风电功率历史数据和影响风电功率的物理因子预测其输出。本发明方法是基于后者。l风电机输出功率模型风电机输出功率公式为Pw=CpAPv3/2(1)式中Pw为风轮输出功率,kW;Cp为风轮的功率系数;P为空气密度,kg/m3;A为风轮扫掠面积,m2;v为风速,m/s。2BP神经网络风电功率预测模型按一定时间间隔取值所构成的时间序列间存在着一定的关系,本发明方法所建立的预测模型主要就是基于建立未来数据与历史数据的函数映射关系,从而根据历史数据预测未来输出。人工神经网络中的BP神经网络是被应用得最广泛和成熟的网络,它具有很好的函数逼近能力,含一个隐层的网络就可以实现任意非线性预测。对于风电功率预测来说,可以将任意不同性质的影响风电功率输出的数据作为BP神经网络的输入数据,将待预测的风电功率作为输出数据,并实现二者的映射。考察风电机输出功率模型从物理原理的角度看,风电功率的大小与风速、风轮机的扫风面积和功率系数,以及空气密度有关,其中空气密度又与温度、湿度、大气压强有关温度越低,湿度越小,压强越大,空气密度越大;而从统计学的角度看,风电功率的输出还与其历史输出功率密切相关。综合以上,将风电功率、风速、风向、温度、湿度及大气压强作为BP神经网络的输入数据,又由于需要进行跨测量时间间隔的多步预测,将包括风电功率在内的所有物理量均作为BP神经网络的输出。其预测模型可描述为4W,v。(r),v《。(4v《《),7;W,^W,/^)>w(,-AO,A(,-2A/),…,《0-("+v(卜A/),v(卜2A/),…,v(f—(w+。AT),v《(f-A/),v《-2Ar),".,v《(卜("+),=/A0,v《(/-2A0,""<(/—("+),(2)r(f-A/),-2A0,".,W-("+,),邵-AO,邵-2A/),…,邵-(w+■PG—A/),尸(f一2A0,尸G—(w+r)AO式中,v。f/),vcZ:(O,vcO),7;'^),//。A(0,尸。l)分别表示风电功率,风速,风向正弦,风向余弦,温度,湿度和大气压强在t时刻的预测值;等式右边中括号内分别表示以上各物理量的历史实际测量值;At表测量时间间隔,f表示未来数据与历史数据间的映射关系。以上模型只能预测未来At时刻的值,若将等式左边的预测值代到等式右边,反复利用以上模型,则可以预测未来qAAt时刻的值,q为预测的次数,称之为预测宽度。可知,预测时间尺度tp=AtXq。若At=10min,q=l,则预测10min后的值;若At=10min,q=2,则预测20min后的值;若At=lh,q=l,则预测lh后的值;若At=lh,q=3,则预测3h后的值。现有的基于BP神经网络的预测方法在训练BP神经网络时主要是梯度最速下降法,在此基础上的许多的改进方法都具有很好的性能,但仍旧存在以下问题(1)预测过程中BP神经网络收敛速度慢且训练过程可能陷于局部最小,导致预测时间增加,预测精度降低,这需要通过改变BP神经网络各权值和阈值的初始值,进行多次训练予以改善;(2)由于至今没有确定BP神经网络结构的有效方法,实际预测过程中隐层神经元数大多通过试算法决定,当数据改变时,已训练好的BP神经网络可能无法继续适用,进一步影响预测结果;(3)现有预测方法对数据的依赖性较大,当遇到不良数据时,BP神经网络训练将变得难以收敛,此时计算时间将明显增加,预测系统不够稳定。现有的基于BP神经网络的预测方法所存在的以上问题在一定程度上限制了其在实际风电功率预测中的应用。
发明内容本发明针对现有技术的不足,提出一种遗传算法优化BP神经网络的风电预测方法,采用多种群编码,同时优化了BP神经网络的结构和权值及阈值的初始值,大大改善了BP神经网络的性能,使预测精度提高,运算时间较少,风电功率预测系统稳定性增强。同时在Matlab7.8平台上编程,并利用Matlab自带的神经网络工具箱和Sheffield大学编写的遗传工具箱。本发明的技术方案如下—种基于遗传算法优化BP神经网络的风电功率预测方法,包括如下步骤(1)数据的获取和预处理从风电功率预测系统的数据处理模块中获取指定时间范围内的风电机输出功率、风速、风向、气温、湿度及大气压强数据,由此得到训练集和预测集并分别归一化处理;(2)结合经归一化后的训练集和预测集构建BP神经网络,进行一次预测(2.1)判断风速变化是否超过设定阈值,若是,则转向(2.2),若否,则直接转向(2.4);(2.2)根据输入输出数据的维数,确定BP神经网络隐层神经元数的范围以及输出层神经元数,据此形成遗传算法中的多个种群,每个种群具有相同个体数和不同变量数;(2.3)对每个种群初始化并采用遗传算法进化优化用选择、交叉、变异遗传操作在前代种群的基础上产生新一代种群,计算适应度值,判断遗传算法收敛条件是否满足并从所有种群中选择最优个体,该个体同时包含了BP神经网络的结构和权值及阈值的初值信息;(2.4)根据上述最优个体所提供的结构、权值、阈值信息创建BP神经网络并对其初始化,利用经归一化后的训练集数据作为BP神经网络输入输出数据,用学习率可变的动量BP算法进一步训练BP神经网络直至收敛;(2.5)对上述训练好的BP神经网络输入经归一化后的预测集数据,对BP神经网络输出进行反归一化处理得到输出数据;(3)判断预测宽度q值大小,并据此控制预测次数(3.1)若预测宽度q>l,则用最新一次预测的输出数据更新训练集和预测集,并转向步骤(2),同时q=q-l;(3.2)若预测宽度q=1,则本轮预测结束,从输出数据中提取待预测的风电功率数据作为本轮预测结果,并进入步骤(4);(4)根据设定的预测轮数判断是否结束风电功率预测系统的预测工作(4.1)若实际预测轮数达到设定的预测轮数则结束预测工作,将风电功率预测系统的预测数据显示供电网调度部门使用;(4.2)若预测工作尚未结束,则首先将已预测的风电功率预测数据显示,然后等到下一轮预测开始时从风电功率预测系统的数据处理模块中获取实时测量数据更新训练集和预测集,转向步骤(2)进行新一轮的预测。进一步地,步骤(1)中,所述的指定时间范围内的风电机输出功率、风速、风向、气温、湿度及大气压强数据是指一定个数的等时间间隔的按时间先后顺序排列的一组数据Var=[var(t_(n+r)At),var(t_(n+r_l)At,….,var(t-At)],其中var=Pw,v,vds,vdc,T,H或P(3)式中,Pw为风电功率,v为风速,vds为风向正弦,vd。为风向余弦,T为温度,H为湿度,P为大气压强;t为待预测时刻,At为测量时间间隔,n为训练集输入数据的组数,r为训练集单个物理量每组数据维数,因此共需获取7*(n+r)个数据;所述训练集和预测集由如下方法得出首先列出训练集单个物理量的输入输出分别为既=var(f—("+r)A/)var(卜(w—l+/-)Ar)var0-("+r—1)A/)var(卜(M—l+r—l)AZ)var(卜(2+A0A/)var(卜(l+r)AO■var(卜(2+r—1)A/)var(卜(l+r—l)AOvar(f_("+l)Ar)var(卜2A/)(4)Vart。=[var(t-nAt)var(t-(n-1)At)...var(t-2At)var(t-At)]以及预测集单个物理量的输入输出分别为Varpi=[var(t_rAt)..var(t_2At)var(t_At)],So=var(O,其中var=Pw,v,vds,vdc,T,H或P(5)式中,Varti为训练集单个物理量的输入矩阵,Vart。为训练集单个物理量的输出向量,Varpi为预测集单个物理量的输入向量,V^l^为预测集单个物理量输出值;接着由上述Varti、Vart。、Varpi、V^。得到训练集和预测集训练集输入输出输入/^=尸,幼'输出=V,Wo7:/0尸(6)预测集输入输出尸,,输入,_<formula>formulaseeoriginaldocumentpage10</formula>输出O,<formula>formulaseeoriginaldocumentpage10</formula>(7)c"表示预测集输出向式中,k表示训练集输入矩阵,(^表示训练集输出矩阵,Ips表示预测集输入向量,,符号"'"表示转置,由上式可知,训练集和预测集具有相同的形式,只是矩阵的列数和具体数据不相同,矩阵的列数代表训练集或预测集的组数,行数为各物理量输入维数之和;所述归一化处理具体是①训练集输入数据按行进行归一化<formula>formulaseeoriginaldocumentpage11</formula>(f))<formula>formulaseeoriginaldocumentpage11</formula>(8)式中Xti(t)是归一化前数据;gti(t)为归一化后数据;mean(Xti(t))为训练集输入数据中xti(t)所在行的平均值;Std(Xti(t))为上述Xti(t)所在行的标准偏差;这样处理后数据平均值为O,标准偏差为1,②训练集输出数据同样按行进行归一化<formula>formulaseeoriginaldocumentpage11</formula>式中Xt。(t)是归一化前数据;gt。(t)为归一化后数据;mean(Xt。(t))为训练集输入数据中xt。(t)所在行的平均值;Std(Xt。(t))为上述Xt。(t)所在行的标准偏差;③预测集输入数据的归一化r,"、W)-画"(A0))式中Xpi(t)是归一化前数据;gpi(t)为归一化后数据;④预测集输出数据反归一化"、—X/"")-附e朋"。(f))式中Xp。(t)是反归一化前数据;gp。(t)为反归一化后数据。进一步地,步骤(2.2)中所述输入输出数据维数分别指训练集总输入矩阵行数R7*r和训练集总输出矩阵行数;输出层神经元数S2与输出数据维数相等,S2取值为7;所述隐层神经元数范围是:S,—及+S2+fl,a为110中的自然数,所述的相同个体数是指编码时不同种群染色体个数,不同变量数是指BP神经网络可调变量个数證r=S丄XR+SAXSi+S2(12)由上式可知,根据S工取值不同,将产生10个种群,各种群染色体的变量数各不相同。进一步地,步骤(2.3)中对不同种群编码并初始化及采取的遗传操作包括①编码并随机生成初始种群采用实数编码,随机产生10个种群,各种群变量数不同,即长度不同,染色体个数Nind相同,其中第i个种群中的一个个体Xi可表示为《,)聘)…;^(')if)瑪(')...《聘)zif…辨')玛(')...《)》、u".10(13)式中,IW为输入层到隐层权值,有S^R个;Ib为隐层阈值,有S!个;LW为隐层到输出层权值,有S^S工个;Lb为输出层阈值,有S2个;最终形成的初始种群为其中,Chrom表示初始种群,op表示子种群,Nind表示每个种群中的个体数;nva巧nva巧。中的下标与a的取值一致,表示所产生10个种群中各个种群的长度,即BP神经网络可调变量个数;②个体适应度评估首先计算目标函数,目标函数计算公式为式中var0)表t时刻预测值,var(t)表t时刻实际值,目标函数实质为预测值与实际值的均方差,故目标函数越小,适应度越大;再对目标函数进行降序排序,同时给定一组适应度值,根据目标函数值所在的位置分配适应度值;若适应度值范围为,对于一个有Nind个个体的种群,处在第pos个位置上的个体的适应度为③对每个种群中分别进行选择、交叉、变异进化操作生成新种群,并采用②中所述方法对新种群的个体适应度进行评估;④优化终止条件判断判断BP神经网络优化终止条件是否满足,若优化终止条件满足,则BP神经网络优化过程结束,输出最优个体,它同时包含了BP神经网络的结构、权值和阈值信息;否则,返回对每个种群重新进行优化,优化终止条件为进化过程达到一定的代数,或连续若干代进化BP神经网络优化目标函数值没有变化。进一步地,步骤(3)中所述预测宽度q是指从已有的实际数据所在时刻算起,向后推一个At的时间段为一个预测宽度,其计算公式为《,其中t为预测时刻,ts为已有的实际数据所在时刻,At为测量时间间隔,q必须为大于O的自然数,预测宽度决定了一轮预测的预测次数。飾K(尸OJ)-2xpos的取值为1Nind;(16)12本发明方法与现有的BP神经网络训练方法相比的有益效果在于—、本发明采用的遗传算法本质上属于随机寻优,可以在全局范围内寻得一个近优解,再在此基础上用原有的BP神经网络训练方法寻找最优解,避免了陷于局部最优,使风电功率预测系统的预测精度提高,计算时间减少,稳定性增强。二、本发明的预测系统采用多种群编码,各种群变量在内部进化,全局竞争,最后得到的最优个体不仅包含了权值阈值的初始值信息,还包含了隐层神经元数信息,从而实现了对BP神经网络结构的优化,进一步减少预测系统的计算时间,增强系统的稳定性。三、现有的基于BP神经网络的预测方法对数据的依赖性很大,当遇到不良数据时,BP神经网络将变得很难收敛,训练时间成倍增长,本发明的预测方法对数据要求相对较低,它属于并行搜索,搜索效率高,使风电预测系统的稳定性大大增强。图1是具体实施方式中所述风电预测系统构成图;图2是实施方式中基于BP神经网络的风电功率预测模型图;图3是实施方式中预测方法的总体流程图;图4是实现一次预测的流程图;图5是实施方式中选择、交叉、变异进化操作生成新种群流程图;图6是实施方式中预测效果图;图7是BP神经网络优化前收敛性能图;图8是BP神经网络优化后收敛性能图。具体实施例方式下面结合附图对本发明作进一步详细说明。图l是本发明风电预测系统构成图,它说明了风电功率预测系统的构成、作用及其实现过程。以风电预测系统中的数据处理模块为中心,一方面从测量模块获取风速、风向、温度、湿度及大气压强的实际测量数据,另一方面从现电力部门已有的EMS/SCADA模块获取风电场发出的风电功率数据;预测模块接收到电网调度部门的控制指令,按其要求直接从数据处理模块获取所需的历史数据进行预测并将结果反馈到数据处理模块,调度部门再从数据处理模块中读取风电功率预测值并据此来制定调度计划。图2是基于BP神经网络的风电功率预测模型图。其中1、0分别是BP神经网络的输入、输出,R表示输入层维数,Sl、s2分别表示隐层和输出层的神经元数,IW、LW分别表示输入层到隐层的权值矩阵和隐层到输出层的权值矩阵。每一个神经元用一个节点表示,BP神经网络由输入层、输出层和隐层节点组成。隐层可以是一层或多层,每一层的神经元仅通过权值与下一层的神经元相连接,本层内神经元无相互连接。实际利用BP神经网络进行风电功率预测时,输入层包含的物理量有风电功率、风速、风向正弦、风向余弦、温度、湿度和大气压强,每个物理量的维数相同,设为r,最后BP神经网络输入向量的总维数为R=7*r;相应的输出包括风电功率、风速、风向正弦、风向余弦、温度、湿度和大气压强,其维数各为一维,因此输出向量的总维数为7维。图3是本发明的总流程图。下面对其执行程序进行具体说明(1)首先获取数据并进行预处理,从风电预测系统的数据处理模块中获取指定时间范围内的风电机输出功率、风速、风向、气温、湿度及大气压强数据,由此得到训练集和预测集并分别归一化处理;(2)结合经归一化后的训练集和预测集构建BP神经网络,进行一次预测①判断风速变化是否超过设定阈值,若是,则转向②,若否,则直接转向④;②根据输入输出数据的维数,确定BP神经网络隐层神经元数的范围以及输出层神经元数,据此形成多个种群,每个种群具有相同个体数和不同变量数;③对每个种群初始化并采用遗传算法进化优化,用选择、交叉、变异遗传操作在前代种群的基础上产生新一代种群,计算适应度值,判断遗传算法收敛条件是否满足并从所有种群中选择最优个体,此个体同时包含了神经网络的结构和权值及阈值的初值信息;④根据最优个体所提供的结构、权值、阈值信息创建BP神经网络并对其初始化,将经归一化后的训练集数据作为BP神经网络的输入输出数据,用学习率可变的动量BP算法进一步训练网络直至收敛;⑤对上述训练好的BP神经网络输入经归一化后的预测集数据,对BP神经网络输出进行反归一化处理得到输出数据;(3)判断预测宽度q值大小,并据此控制预测次数①若预测宽度q>l,则用最新一次预测的输出数据更新训练集和预测集,并转向步骤(2),同时q二q-l;②若预测宽度q=l,则本轮预测结束,从输出数据中提取待预测的风电功率数据作为本轮预测结果,并进入步骤(4);(4)根据设定的预测轮数判断是否结束风电功率预测系统的预测工作①若实际预测轮数达到设定的预测轮数则结束预测工作,将风电功率预测数据显示供系统调度部门使用;②若预测工作尚未结束,则首先将已获得的风电功率预测数据显示,然后等到下一个时间段到来时从数据处理模块中获取实时测量数据更新训练集和预测集,转向步骤(2)进行新一轮的预测。图4是本发明实现一次预测的流程图,即为图3说明中(2)步骤中②⑤的细化流程图。下面对其执行程序进行具体说明(1)数据获取。包括经归一化后的训练集和预测集数据;遗传算法各项参数每个种群的变量个体数,最大迭代次数,选择代沟,交叉率,变异率,迭代停止参考值;BP算法各项参数目标函数值,最大迭代次数;(2)权值阈值编码,形成初始种群采用实数编码,根据输入输出数据维数,随机产生10个种群,各种群变量数不同,即长度不同,染色体个数Nind相同,其中第i个种群其中的一个个体Xi可表示为《《碎)/Hf…瑪(')瑪(')…W)对)聘)…气(')ZZf《…《)],/="10式中,IW为输入层到隐层权值,有S^R个;Ib为隐层阈值,有S工个;LW为隐层到输出层权值,有S^S工个;Lb为输出层阈值,有S2个;最终形成的初始种群为0/^W,."rfx/jvar2其中,Chrom表示初始种群,op表示子种群,Nind表示每个种群中的个体数;nva巧。中的下标与a的取值一致,表示所产生10个种群中各个种群的长度,即BP神经网络可调变量个数;(3)计算个体适应度值首先计算目标函数,目标函数计算公式为7「"fA、2、7w式中var(f)表t时刻的预测值,var(t)表t时刻的实际值;目标函数实质为预测值与实际值的均方差,故目标函数越小,适应度越大;再对目标函数进行降序排序,同时给定一组适应度值,根据目标函数值所在的位置分配适应度值;若适应度值范围为,对于一个有Nind个个体的种群,处在第pos个位置上的个体的适应度为F/CP(W)=2x-pos的取值为1Nind;7VirW-1(4)对各种群采取进化操作生成新种群对每个种群中分别进行选择、交叉、变异进化操作生成新种群,并采用(3)中所述方法对新种群的个体适应度进行评估;其详细流程如图5;本发明方法采用了Sheffield大学编写的遗传工具箱,所采用的选择、交叉、变异函数分别为sus,xovdp,mutbga;(5)优化终止条件判断判断BP神经网络优化终止条件是否满足,若优化终止条件满足,则BP神经网络优化过程结束,输出最优个体,此个体同时包含了BP神经网络的结构、权值和阈值信息,转向(6);否则,返回(4)对每个种群重新进行优化,优化终止条件可取为进化过程达到一定的代数,或连续若干代进化BP神经网络优化目标函数值没有得到改善;(6)根据上述选取的最优个体得到隐层神经元数,利用Matlab自带的神经网络工15具箱创建BP神经网络,且选用对数S形传输函数logsig为输入层到隐层传输函数,线性传输函数purelin为隐层到输出层传输函数,并进一步根据个体中包含的权值和阈值信息初始化所创建的网络;(7)利用经归一化后的训练集作为输入输出数据,用神经网络工具箱中学习率可变的动量BP算法traingdx对BP神经网络进行训练,进一步调整权值和阈值;(8)收敛条件判断判断BP神经网络收敛条件是否满足,若收敛条件满足,则训练结束,保存训练好的网络转向(9)步;若不满足,则返回(7)继续训练,收敛条件取为训练达到设定的目标函数值或者达到设定的最大迭代次数;(9)对上述训练好的BP神经网络输入归一化后的预测集值,并对输出进行反归一化处理即可得预测输出值,包含风电功率、风速、风向正弦、风向余弦、温度、湿度和大气压强。为了说明本发明的原理,用一个具体实例来演示整个预测过程。采用某风电场某日下午12:0016:10时每间隔lOmin测得的数据。1、输入数据(1)各历史测量数据如表1所示,其中温度、湿度及大气压强的数据分别以第一个值为标准量进行标准化处理。表1<table>tableseeoriginaldocumentpage17</column></row><table>(2)其他各项参数遗传算法和BP神经网络各项参数设置如表2所示表2<table>tableseeoriginaldocumentpage17</column></row><table>2、数据预处理(1)数据分类根据输入向量组数n和单位维数r的值将表1中的数据按照(4)(7)式分为训练集和预测集,分类如下训练集4二V《,:97.75955495959B.33939S939291.0589.0989貌0989股098887—95顆95959333939352,89貌Q989888727878793.94959593335393939291.05股0989貌09貌098887278787879495959133939393'9291.05貌09粉沼貌098881278787878612.812.412.212.412.212.212.212.212.312.212.312.31U11.111.,1U11.711.711.311.111.7U.311.1U,O11.311.111.111.011.010.810.810.811.010.810.710.50.110.10.120.10.120.10.120.10.10.J0.10.130.10.10.130,120.U0.10.130.120.110.10.130.120.110.10.10.10.10.120.10.120.120.110.110.120.110.120.1310.810.810.710.50.120.130.110.810.70.510.50.130.10.10.J0.10.130.120.110.10.10.120.110.120.130.10.10.110.120.110.1.Q朔鹏Q朔Q朔鹏鹏,鹏Q朔鹏Q效Q吸鹏,d勉(i吸鹏Q吸Q朔鹏鹏Q菊(i朔Q吸Q朔Q執Q朔Q裕《鹏鹏鹏a朔a鹏鹏111.121.141.141.131.131.151.121.14U41.131.131.151.161.141."1.131.131.151.161.161.141.131,131.151.161.161.171.161.16u71.181.161.171.181.1911.021.041.031.021.041.031.031.031.051.071.071.041.031.031.031.051.071.071.081.031.031.031.051.071.071.081.081.031.031.051.071.071.081.081.09Q朔鹏Q朔Q朔Q執Q朔Q朔Q吸1.171.181.181.191.191.201.201.201.081.081.081.091.091.091.091.10鹏Q吸a效U91.201.201.211.091.091.101.11鹏a效Q菊a裕1.201.201.211.221.091.101.111.12Q吸a裕a菊Q執1.201.211.221.221.10l.lt1.121.121a朔a别,,,a朔q朔,,a吸ci990,q嫩鹏a鄉q朔,q朔a朔鹏a吸oi吸a别,a朔,a粥a鄉,ci朔q朔a吸q恥a吸,,q粥a嫩a粥ci吸a987,a朔a吸a吸Q992a别a别,,q吸ci效a987ci987尸w尸'.140x410.710.510.510.410.410.3-10.510.510.410.410.310.210.510.410.410.310.210.210.410.410.310.210.210.3—0.10.10.110.10.110.1—0.10.110,12O.U0.10.120.110.120.110.10.120.130.120.110.10.120.130.14—鹏鹏鹏鹏鹏鹏—Q995Q别Q朔Q别Q裕Q朔鹏Q朔鹏Q9S6鹏鹏鹏鹏a筋a朔Q吸Q知1.211.221.221.231.231.24—1.221.221.231.231.241.241.221.231.231.241.241.251.231.231.241.241.251.24.1.111.12U21.141.141.15-U21.121.141.14U51.151.121.14U41.151.151.151.141.141.151.15U51.14_a效a效a效鹏'01987d98701985a嫩a勉0198501987a效Q恥Q吸Ol吸Q效a效a姬a鄉01S85(i效训练集输入",=训练集输出向,即目标矩阵A,=8787868610.210.210.310.20.130.130,140.120.9920.9920.9900.9931.251.251.241.251.151.15U41.160.9850.9850.9860.84预测集P,wpivpi=[12.312.311.811.711.711.311.111.010.810.810.710.510.510.410.410.310.210.210.310.2]wd,spivd,Tpi=[1.131.131.151.161.161.171.181.191.201.201.211.221.221.231.231.241.241.251.241.25]Hpi=[1.031.031.051.071.071.081.081.091.091.101.111.121.121.141.141.151.151.151.141.16]Ppi=[0.9930.9930.9920.9920.9920.9900.990.9890.9890.9890.9880.9870.9870.9860.9860.9850.9850.9850.9860.984]预测集输入向:PsVPi140x1(8)(2)数据归一化将以上训练集输入向:iTs,训练集输出向量oTs,预测集输入向量lPs分别按式(10)所列方法进行归一化处理,处理后的数据变为训练集'l.柳(1865~0.916"04070.8591.4801.50.50.7881.0301.1561.5000.866~0.660.5550.7611.3381.4451.5(15~0.085"0.916掘50.816O.粉"0.2644.50.50.7880.4290.516~0.柳~0.級0.8660.386O.胸0.1714.咖~0.50.5~0.鹏"0.815O.船0.816"0.705~0.608-0.50.5^0281~0.141-O.鄉"0.560O.狄<0.866(1555"0.392"0.610~0.672"0.50.5"0.6600.865O.船-1.226-1.014"0.608"0.5-1.5—1.296—1.318-O.級-O.柳"fl.級tt敏—1.500-1.233~0.柳~0.672"0.5-1.5_19V■1.4141.306"O.狄02100.8591.4800.7890.833U731.2011.1671.391(X7071.167U91O.狄0"0.783~0.狄(X00.859~0.2610.3380,8330.081a2400.5~a200.7070.5~0.20O.敏~a707"0.7830.8660.630~0.703-0.6090.338~0.5~0.57~0.24~0.83"U200"0.83~0.20"(X707(X261O.狄-1.47-1.015~O,609-1.466-U7~0.89-1.20"0.83~a99-1.41-0.83~0,99~0.87《_0.26l~0.50.5■0.83-U6~0.781.5■0.830.831,1621.306■0.5■0.83U670.387■0.78■0.51.1670.5^0.39U62《、26as"0.50.833U620,783-1.50.S33-U7-1,310.50,833-U7■0390.7830.5—1.170.5O.淑-1.49-1,3〗0.8660.261■0.83-1.41-1,220.2970.7830.866■0.78"0.83000.5940.783■0.87■0.780—50.70700.594~0.26~a871.306U670.707.225凡1,50.50866~0.50.50,866-0.50.5-0.87-0.5-1.5—0.871.2250.貼61.500.866-0.50-0.87-0.5—1.22-0.87-0.50.50.50.5一1.50.866■0,78-U10~0.39■0.780.783-1.220.3871.306■0.260U620.2610.7831.225-U60,78313060.1990L4390.783■0.78O.朔0.15-1.310.2610.199-1.32■0.260.78-1.391.025一U6~016■0.56■0.57~0.39~0.39~0.50~0.50.3870.387■0.431.498.1621.162l.柳■0.43-1220.87-122~0.780,000.866002611225a敏12251.3061.3910.8661.50.5-0,200.866-0.50.5-0.20~0.87一0.50.5-0.99~0.87-0.5-1.50-51.414~0.78-1.2200.7831.167~0.71~0.7801.225~0.26■0.83-0.710,2611.2250-1.31■0.8301.3060-1,220.7831.3060261■U78■0.870780.8660.39-1.32--1.16■0.150.3870.439U621.025-13100~0.7803871.201-1221X2611.16201306"039掘1.225"0.78—1.16-1.20■0.571.4991.498"0.55-1.22"0.870~08700.8661.2250-866-132—1221.5"0,5"0.78—1.31—1.39~0.87-122~0.87-122~0.78—1.16-1.31~0.62"0.87-1.49"0,87—122~0.50.15③~0.5"0.5掘掘0.199"0.871.0250~0.5-0.50.2610.7830.1990.8660,4390"0,5L51.3060t783O.朔0.8660.7831.3061.2250.8660,7830.26100.866"0.26~0.780"0.87-1.31—0.78—1.22"0.87-1,22~0.87-1.22~0.5_0■0.870~0500.86601.51.2250.8661.2250,5-1.49掘-1220.5-a440铺0■Q50.4410.8660l'50.6160.8661225"0,51,2250,8661.5■0.5—00.866-0.5~0,50-0.87—0.5■0.5—1.22—0.87-0.51.5综合得/尸g〃'尸g〃'目标向归化后为140x4,-0.8050.8660.866-0.87-0.87-0.5-0.51.5-0.5-0.780.2611.306-0.780.7070-1.410.707_0.870.866-0.870.866-0.870.866_0.870.833001.225_1.22预测集P卿i=[-o.-0.560.8660850.865-1.94-1.63-1.01-0.61-6.56-3.4-3.39-1.37-20.11-2.87-1.54-0.90-0.67-7.91-1.5]Vgpi=[-0.350.261-7.79-1.89-1.02-2.0-2.37-1.5-1.53-1.2-1.5-2.58-1.41-1.5-0.99-2.60-2.45-1.310.261-0.87]vdsgpi=[-0.782.50.5_1.17_0.16_1.160.3060.2611.3061.828-2.45-1.16-0.170.7070.261-1.221.2251.8281.937-0.15]vdcgpi=T印i=H印i=P印i=[-0.83-1.5-2.60—1.22—0.87—4.5-1.5-1.73-0.99-0.87-2.5-3.5-1.31-1.83-1.22-2.60-1.22-0.871.5-2.5]3、权值阈值编码,形成初始种群1)首先求隐层的范围+&+aWl40+7+a=13~22(a取1到10之间的自然数);2)求取变量数数组,nvar=SiXR+Si+^XS,;由于Si不同隐层所对应的变量数各不相同nvar=[1931207922272375252326712819296731153263]3)随机生成10个大小不同的种群尸v综合得/40x2079op340x222740x23750/^40x2523—40x267140x29674、遗传算法求解对所形成的每个种群分别进行选择、交叉和变异操作,最终求得最优个体,得到各项参数的结果为目标函数值为O.0098,隐层数为17,进一步将其形式加以转化,对BP神经网络隐层权值IWw隐层阈值It^例如,其中LW7X17、Lb7X1分别为、输出层权值LW^『输出层阈值Lb7X1分别初始化,i『=473-0.24-0,07~0.Q20.082~0.040.1750.123-0.11~0.030.1510.1290.015■0.14~0.4!~0.091289~0.220.1460.718~0.15~0.24,10.M10.04~0.220.1080.1800.947-0.27-0.06O.l诉-0.03~0.170.010~0.120.2130.001■0.15■0.570.360.140~0.010241~0.19~0.070.1240.4210.03702500.109~0.06~0.090.3210.0640.038~0.40~0.08-0.140.1030.0520.0310.4840,0900.486~0.05~0.610.058■0.300.1220.064~0.04-0.190.374~0.4180.133-0.030.0550.051~0.07~023"0.16'~0.40~0.09力21~0.08-0.060.047■0.39-0.32~0.140.2540.0680.0230.300.2960.371~0.144.14-0.270.0220.1590.0330.030-0.010.3010.0870.343~0.13~0.090.1470.4810.179~0.09^0.230.034~0.11~0.48丄6=0.163-0.03-0.180.123一0.06-O.Ol-0.025、学习率可变的动』用学习率可变的动jBP算法进一步训练网络BP算法对上述初始化后的BP神经网络继续训练,最终求得目标函数为0.00001,对应的进一步调整后的权值和阈值分别为"O.刀0.134~0.42O.100.950■0.120.1020.0350238-0.130.079■0.020.0670.0660.08-022-0.15-022~0.121.298-0.22■0.270.224~0.010.121-O.060.0970.489-0.410.10■021■0.07■0.060.039掘~0.020.1530.727~0.09~0.020.248~0.100.3320.063~0.04~0.41-0.31~0.16(X2朋0,0800.033-0.030.132~0.16~0.260.199~0.17■0210,0500.0260.0390.6203070.3060.377■0.150.140260.0610.126O.010.058■0.01~0.570.05P.41-0.060.4790.0580.0230.1560.0140.028-0.0202980.M30.04~024■0.18-0.390.1130.330.1120.0890.050.0950.368■0.12~0.110.1670.5060.1550.110.1910.0100.1460.431■0.190387~0.430.1430.180-0.10~0.240.036-0.120.490.168-0.03一0.19丄6=0.116—0.06-O.Ol-0.02比较以上结果可知,学习率可变的动量BP算法只在遗传算法所得结果上进行微调,故收敛速度很快,平均收敛迭代次数为80120。保存训练好的BP神经网络。6、利用上述训练好的BP神经网络预测风电功率对以上训练好的网络输入预测集,并按(11)式对BP神经网络输出进行反归一化处理,可得输出为—85.8310.260.130.9911.251.250.985」以上是用124个数值预测出各物理量的第25个值,由于q=l,故预测的是后10min的值,用第25个实际测得的值,即16:00所测得的值更新输入数据,重复以上过程,用第225个数值预测出第26个值。最后结果如表3:表3风电功率(MW〉风速(m/s〉风向正弦风向余弦相对温度相对湿度相对大气压强实际值8587.0610.210,50.10,10.9950.9951.221.161.170.9840.986预测值85.8386.2110,2510.200,130.100,9910.9951.251.251,251.250.9850.9847、结果比较分析(1)误差分析用平均绝对误差err_abs和平均相对误差err_rel作为评估预测精度的指标,其计算式如下1wW厶1w-w台JO_户"*WJ'*WSJ'尸一户xl00%呵'式中^为预测风电功率,Pws为相应的实测风电功率,N为预测数值的总个数。图6给出了本发明方法的预测效果图,横坐标为数据个数,纵坐标为风电功率大小,单位为丽;图中有两条曲线,带星号的实线为实测数据,虚线为预测值。按上式计算所得的最大绝对误差为9.37丽,平均绝对误差为1.52丽,最大相对误差为10.43%,平均相对误差为2.07%。预测效果较好。(2)收敛性能分析图7、图8分别为优化前和优化后学习率可变的动量BP算法收敛性能比较图,横坐标为收敛步数,纵坐标为目标函数值,比较二图可见,优化前BP神经网络很不稳定,在用试算法选择隐层神经元数的过程中,收敛速度非常慢,达到了最大收敛步数10000次,且最终未达到设定的目标函数值,而经遗传算法优化后的BP神经网络只要91步就可以收敛,且比较稳定,故最终预测用时也相应减少。综合可知,采用本发明方法的风电功率预测系统预测精度提高,用时减少,稳定性增强,整体性能得以显著改善。权利要求一种基于遗传算法优化BP神经网络的风电功率预测方法,包括如下步骤(1)数据的获取和预处理风电功率预测系统从数据处理模块中获取指定时间范围内的风电机输出功率、风速、风向、气温、湿度及大气压强数据,由此得到训练集和预测集并分别进行归一化处理;(2)结合经归一化后的训练集和预测集构建BP神经网络,进行一次预测(2.1)判断风速变化是否超过设定阈值,若是,则转向(2.2),若否,则直接转向(2.4);(2.2)根据输入输出数据的维数,确定BP神经网络隐层神经元数的范围以及输出层神经元数,据此形成遗传算法中的多个种群,每个种群具有相同个体数和不同变量数;(2.3)对每个种群初始化并采用遗传算法进化优化用选择、交叉、变异遗传操作在前代种群的基础上产生新一代种群,计算适应度值,判断遗传算法收敛条件是否满足并从所有种群中选择最优个体,该个体同时包含了BP神经网络的结构和权值及阈值的初值信息;(2.4)根据上述最优个体所提供的结构、权值、阈值信息创建BP神经网络并对其初始化,利用经归一化后的训练集数据作为BP神经网络输入输出数据,用学习率可变的动量BP算法进一步训练BP神经网络直至收敛;(2.5)对上述训练好的BP神经网络输入经归一化后的预测集数据,对BP神经网络输出进行反归一化处理得到输出数据;(3)判断预测宽度q值大小,并据此控制预测次数(3.1)若预测宽度q>1,则用最新一次预测的输出数据更新训练集和预测集,并转向步骤(2),同时q=q-1;(3.2)若预测宽度q=1,则本轮预测结束,从输出数据中提取待预测的风电功率数据作为本轮预测结果,并进入步骤(4);(4)根据设定的预测轮数判断是否结束风电功率预测系统的预测工作(4.1)若实际预测轮数达到设定的预测轮数则结束预测工作,将风电功率预测系统的预测数据显示供电网调度部门使用;(4.2)若预测工作尚未结束,则首先将已预测的风电功率预测数据显示,然后等到下一轮预测开始时从风电功率预测系统的数据处理模块中获取实时测量数据更新训练集和预测集,转向步骤(2)进行新一轮的预测。2.根据权利要求1所述的遗传算法优化BP神经网络的风电功率预测方法,其特征在于步骤(1)中,所述的指定时间范围内的风电机输出功率、风速、风向、气温、湿度及大气压强数据是指设定个数的等时间间隔的按时间先后顺序排列的一组数据Var=[var(t_(n+r)At),var(t_(n+r_l)At,...,var(t_At)],其中var=Pw,v,vds,vdc,T,H或P,式中,Pw为风电功率,v为风速,vds为风向正弦,vd。为风向余弦,T为温度,H为湿度,P为大气压强;t为待预测时刻,At为测量时间间隔,n为训练集输入数据的组数,r为训练集单个物理量每组数据维数,因此共需获取7*(n+r)个数据;所述训练集和预测集由如下方法得出首先列出训练集单个物理量的输入输出分别为<formula>formulaseeoriginaldocumentpage2</formula>以及预测集单个物理量的输入输出分别为<formula>formulaseeoriginaldocumentpage2</formula>,其中varPw,v,vds,vdc,T,H或P,式中,Varti为训练集单个物理量的输入矩阵,Vart。为训练集单个物理量的输出向:Varpi为预测集单个物理量的输入向量,V^^为预测集单个物理量输出值;接着由上述Varti、Vart。、Varpi、V^J寻到训练集和预测集训练集输入输出输入=<formula>formulaseeoriginaldocumentpage2</formula>式中,ITs表示训练集输入矩阵,0Ts表示训练集输出矩阵,Ips表示预测集输入向量,Q尸s表示预测集输出向量,符号"'"表示转置,由上式可知,训练集和预测集具有相同的形式,只是矩阵的列数和具体数据不相同,矩阵的列数代表训练集或预测集的组数,行数为各物理量输入维数之和;所述归一化处理具体是①训练集输入数据按行进行归一化式中xti(t)是归一化前数据;gti(t)为归一化后数据;mean(Xti(t))为训练集输入数据中xti(t)所在行的平均值;Std(Xti(t))为上述Xti(t)所在行的标准偏差;处理后数据平均值为O,标准偏差为1,②训练集输出数据同样按行进行归一化<formula>formulaseeoriginaldocumentpage4</formula>式中xt。(t)是归一化前数据;gt。(t)为归一化后数据;mean(Xt。(t))为训练集输入数据中xt。(t)所在行的平均值;Std(Xt。(t))为上述Xt。(t)所在行的标准偏差;③预测集输入数据的归一化式中Xpi(t)是归一化前数据;gpi(t)为归一化后数据;④预测集输出数据反归一化式中Xp。(t)是反归一化前数据;gp。(t)为反归一化后数据。3.根据权利要求2所述的遗传算法优化BP神经网络的风电功率预测方法,其特征在于步骤(2.2)中所述输入输出数据维数分别指训练集总输入矩阵行数R=7*r和训练集总输出矩阵行数;输出层神经元数S2与输出数据维数相等,S2取值为7;所述隐层神经元数范围是S-V^T^+",a为110中的自然数,所述的相同个体数是指编码时不同种群染色体个数,不同变量数是指BP神经网络可调变量个数證r=S丄XR+SAX由上式可知,根据S工取值不同,将产生10个种群,各种群染色体的变量数各不相同。4.根据权利要求3所述的遗传算法优化BP神经网络的风电功率预测方法,其特征在于步骤(2.3)中对不同种群编码并初始化及采取的遗传操作包括①编码并随机生成初始种群采用实数编码,随机产生10个种群,各种群变量数不同,即长度不同,染色体个数Nind相同,其中第i个种群中的一个个体&可表示为<formula>formulaseeoriginaldocumentpage4</formula>式中,IW为输入层到隐层权值,有S^R个;Ib为隐层阈值,有S工个;LW为隐层到输出层权值,有S^S工个;Lb为输出层阈值,有S2个;最终形成的初始种群为wvar2—緣wvar3—緣wvar4—肠""var3"6x"ar6"var7wvar8"9一var9OP10","""varl0其中,Chrom表示初始种群,op表示子种群,Nind表示每个种群中的个体数;nva巧nva巧。中的下标与a的取值一致,表示所产生10个种群中各个种群的长度,即BP神经网络可调变量个数;②个体适应度评估首先计算目标函数,目标函数计算公式为7广n广A、2AE2var汰W-vaW)7w式中varO)表t时刻预测值,var(t)表t时刻实际值,目标函数实质为预测值与实际值的均方差,故目标函数越小,适应度越大;再对目标函数进行降序排序,同时给定一组适应度值,根据目标函数值所在的位置分配适应度值;若适应度值范围为,对于一个有Nind个个体的种群,处在第pos上的个体的适应度为涵卩(尸0)=2乂-pos的取值为1Nind③对每个种群中分别进行选择、交叉、变异进化操作生成新种群,并采用②中所述方法对新种群的个体适应度进行评估;④优化终止条件判断判断BP神经网络优化终止条件是否满足,若优化终止条件满足,则BP神经网络优化过程结束,输出最优个体,它同时包含了BP神经网络的结构、权值和阈值信息;否则,返回对每个种群重新进行优化,优化终止条件为进化过程达到一定的代数,或连续若干代进化BP神经网络优化目标函数值没有变化。5.根据权利要求1所述的遗传算法优化BP神经网络的风电功率预测方法,其特征在于步骤(3)中所述预测宽度q是指从已有的实际数据所在时刻算起,向后推一个At的时间段为一个预测宽度,其计算公式为《=W5,其中t为预测时刻,ts为已有的实际数据所在时刻,At为测量时间间隔,q必须为大于0的自然数,预测宽度决定了一轮预测的预测次数。全文摘要本发明公开了一种基于遗传算法优化BP神经网络的风电功率预测方法,从风电功率预测系统的数据处理模块中获取预测参考数据;对参考数据建立BP神经网络的预测模型,并采用多种群编码对应BP神经网络的不同结构,每个种群分别对神经网络权值阈值编码,生成不同长度的个体,用遗传算法中选择、交叉、变异操作进化优化每个种群,最后判断收敛条件并选择最优个体;再对BP神经网络初始化,用学习率可变的动量BP算法进一步训练网络直至收敛,利用该网络对风电功率进行预测;最后,还反复利用预测值,在一轮预测中进行多次预测实现了跨时间间隔的多步预测。本发明预测精度提高,计算时间减少,稳定性增强。文档编号G01L3/24GK101706335SQ200910193820公开日2010年5月12日申请日期2009年11月11日优先权日2009年11月11日发明者侯荆州,叶荣,张浩,陈天恩,陈皓勇,陈盼申请人:华南理工大学;西北电网有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1