基于遗传算法优化BP神经网络的短期发电量预测

2017-07-10 12:09郭文强李可可佘金龙高文强
陕西科技大学学报 2017年4期
关键词:发电量权值适应度

郭文强, 师 帅, 张 筱, 李可可, 佘金龙, 高文强

(陕西科技大学 电气与信息工程学院, 陕西 西安 710021)



基于遗传算法优化BP神经网络的短期发电量预测

郭文强, 师 帅, 张 筱, 李可可, 佘金龙, 高文强

(陕西科技大学 电气与信息工程学院, 陕西 西安 710021)

针对传统神经网络的网络初始权值和阈值随机给出,训练结果易陷入局部极小值的问题,本文提出一种采用遗传算法(GA)对BP网络的初始权值和初始阈值进行优化的方法.通过模拟生物进化中的自然选择和遗传机理,首先将网络的初始权值和初始阈值表示为染色体基因编码,再利用遗传算子进行组合交叉、变异、选择,产生出新的染色体来完成初始参数优化,形成初始权值和初始阈值,最后经BP网络训练得到最终权值和阈值,建立用于短期发电量预测的网络.实验结果表明,与传统BP神经网络预测方法相比,该预测方法精度更高,为短期电量预测提供了一种新途径.

遗传算法; BP神经网络; 优化; 短期发电量预测

0 引言

随着社会经济的发展,预测算法在生产、生活各个领域的应用越来越广泛.多年来,专家和学者们建立了很多发电量数据预测模型和方法,文献[1]用回归分析的方法对燃气-蒸汽轮机联合循环机(包括两个燃气涡轮机、一个蒸汽涡轮和两个热回收系统)用环境温度、环境压力、相对湿度和排气真空度四个变量(输入变量)进行1 h后短期发电量(输出变量)的预测.回归分析等方法相对比较成熟,应用也比较多.但这种预测方法是基于数理统计的方法,需要建立数据序列的主观模型,然后根据主观模型进行计算和预测,不具备自适应和自学习的能力,系统的鲁棒性没有保障.

近年来,许多学者对非线性进行了深入的研究,建立了多种考虑的非线性发电量预测模型,如BP神经网络模型、RBF神经网络、支持向量机预测模型等,对电网调度操作和用电诱导提供了一定的参考[2-4].其中,BP神经网络模型是比较成功的预测模型.文献[5]采用人工神经网络分析环境压力、温度、相对湿度和风速对发电量的预测,文献[6]用人工神经网络对操作和性能参数在不同环境条件下的蒸汽轮机的发电量进行预测分析.但该模型具有容易产生局部极小值和不易收敛等缺点,导致预测精度受到一定影响.文献[7]用竞争选择、交叉、变异等遗传算子帮助BP网络来确定模型的权值和阈值,建立了汛期降水短期气候预测模型.

本文采用遗传算法(Genetic Algorithm,GA)来优化BP神经网络,试图得到更好的网络初始权值和阈值,利用每个染色体个体来代表神经网络的初始权值和阈值,将每个染色体进行BP神经网络预测的预测误差绝对值之和作为适应度值,通过短期发电量输入和输出关系利用遗传算法寻找最优个体,确定出BP神经网络的初始权值和初始阈值.随后,将初始值赋值给BP神经网络进行训练,得到最终的预测神经网络(本文称之为GA-BP,BP neural network optimized by GA),实现对短期发电量的预测.

1 基于GA-BP算法的短期发电量预测

1.1 原始数据分析

选择合适的参数对预测的可行性至关重要,适当的影响因素和变量数选择可以提高预测算法的速度和精度.本文采用灰色关联度分析来选择合适的输入参数.由后面2.1节讨论可知,文献[1]中预测算法所用环境温度、环境压力、相对湿度和排气真空度四个变量和1 h后短期发电量数据之间具有较大相关度,因此其数据适用于本文研究的预测模型所需的输入量和输出量.

1.2 GA-BP算法

GA是一类借鉴生物界的进化规律(适者生存,优胜劣汰遗传机制)演化而来的随机化搜索方法,由美国的J.Holland教授1975年首先提出[8].

本文将GA全局优化能力引入BP神经网络实现对网络的初始权值和阈值优化,利用优化后的初始权值和阈值来构造预测模型(GA-BP)完成目标预测任务.基于GA-BP的预测算法流程如图1所示.

图1 基于GA-BP的预测算法流程图

主要包括以下步骤:

步骤1:数据预处理

对短期发电量原始数据进行预处理,包括数据量化、归一化,使预处理后的数据作为神经网络的输入.

步骤2:判断是否已有构成优化网络

若已有优化网络,直接跳至步骤12,用已有网络进行预测.若没有优化网络则进行下一步.

步骤3:确定BP网络结构

随机初始化BP神经网络的权值和阈值,按照GA算法要求给染色体进行编码,既完成种群初始化.将染色体输入GA算法进行优化,算法执行GA算法部分.

步骤4:GA初始化操作

(1)确定种群规模K;

(2)确定最大迭代次数T;

(3)确定交叉概率P与变异概率M;

(4)确定训练终止调节,如最大期望误差值;

(5)给出权值阈值的上下界:上界ub和下界lb都为(l×d) 维矩阵;d为BP神经网络权值和阈值总数,即输入层与隐层之间的权值、隐层与输出层之间的权值、隐层的阈值和输出层的总个数;

(6)生成初始种群X(X1,X2,…,Xd),其中Xi是每个染色体(即实现个体编码,i=1,…,d),包含了BP神经网络全部的权值和阈值(即w1,…,wm;b1,…,bd-m).若BP神经网络结构已知,结合一条染色体就可以创造一个权值、阈值和结构都确定的BP神经网络.采用线性插值函数生成种群中个体Xi的一个实数向量作为GA的一个染色体.为了得到高精度的权值和阈值,采用实数编码方法.

步骤5:计算适应度

根据每个染色体得到BP神经网络的权值和阈值,用训练集训练BP神经网络并预测输出,适应度值fit为期望值与预测值误差绝对值之和,如公式(1)所示:

(1)

其中,n为输出层节点数;Yi为节点i的期望输出值;Zi为节点i的预测输出值;R为常数.

步骤6:保存到目前最好的染色体

计算每个染色体的适应度值,保存到目前为止适应度最优(最小)的染色体信息:

最优适应度:

Cbest=fitbest

(2)

最优染色体:

Rbest=Xbest

(3)

步骤7:选择操作

选择操作是指从就旧群体中以一定的概率选择个体到新群体中,个体被选中的概率跟适应度值有关,个体适应度值越好,被选中的概率越大.本文选择轮盘赌法实现,每个染色体的选择概率pi为

(4)

式(4)中:fi为个体Xi的适应度,由于适应度越小越好,所以在个体选择前对适应度求导数.

步骤8:交叉操作

交叉操作是指从种群中选择两个个体,通过两个染色体的交换组合来产生新的优秀个体.交叉过程为从群体中任意选择两个染色体,随机选择一点或多点染色体位置进行交换.因个体采用实数编码,所以用实数交叉法来实现.第k个染色体Xk和第1个染色体X1在j位的交叉操作公式如下所示:

(5)

式(5)中:b是[0,1]间的随机数.

步骤9:变异操作

变异操作就是从群体中任意选取一个个体,选择染色体中的一个点进行变异以产生更优秀的个体.第i个个体的第j个基因Xij的变异操作公式如下所示:

(6)

(7)

式(6)~(7)中:r2为随机数;g为当前迭代次数;r为[0,1]间的随机数.

步骤10:结束条件判断(是否完成参数优化)

(1)判断是否达到期望误差值,达到则结束迭代,输出最优染色体Rbest,否则执行下一步.

(2)判断是否达到最大迭代次数 ,没有达到则回到步骤5,如果达到则输出最优染色体Rbest.

步骤11:构造训练网络

从GA算法部分获取输出Rbest(即优化后的w1,…,wm;b1,…,bd-m),将得到的优化后的初始权值和阈值赋值给BP网络并构建网络,采用训练集对网络进行训练直到训练,误差达到要求,完成网络建模.

步骤12:预测输出

将预处理数据输入到训练好的GA-BP神经网络,网络输出结果即为所求的短期发电量预测值.

2 结果与分析

为了验证本文提出的基于GA-BP算法的短期发电量预测,进行了如下实验.另外,为了突出本文算法的优越性,实验中还与传统BP神经网络预测法作了性能比较.实验所用工具为MATLAB R2014a,计算机配置为Intel(R) Core(TM) i5-4288U CPU @2.60GHz 2.10GHz和4G内存.

2.1 数据预处理

燃气-蒸汽轮机联合循环是把燃气轮机和蒸气轮机这两种按不同热力循环工作的热机联合在一起的装置[9].实验所选用到的数据同文献[1]一样,来自于UCI数据库中的燃气-蒸汽联合循环机数据集[10],它是常用来验证人工智能和机器学习算法的数据集.

该数据集主要包括采集的每小时发电量(EP,单位:MW)和如下4组发电量影响因素及其取值范围:

环境温度(T)在1.81 ℃~37.11 ℃之间;

环境压力(AP)在992.89~1 033.30 mb之间;

相对湿度(RH)在25.56%~100.16%之间;

排气真空度(V)在25.36~81.56 cm Hg之间.

其中参数V对蒸汽轮机产生影响,其它3个参数影响燃气轮机.

为验证输入变量与预测变量之间的关系,对数据集进行灰色关联度分析,分析影响因素与测试目标变量的关联程度.分析结果如表1所示.

表1 关联度分析

从表1可以看出,4个因素与目标变量EP的关联程度都大于0.6(通常认为关联度达到0.5以上就有很好的关联性),可以认为相关性很高,适合用于预测模型.

取其中的9568组数据,选前9468组为训练集,后100组为测试集,即取用后100组数做测试,用4个发电量影响因素数据(输入变量)进行1 h后短期发电量(输出变量)的预测.

根据前文第2部分的GA-BP预测算法步骤1~步骤11进行网络初始权值、阈值优化,构建GA-BP网络.

2.2 GA-BP算法预测

由原始数据知道输入4个变量,输出1个变量,所以设置GA-BP神经网络结构为4-9-1,即输入层4个节点,隐含层9个节点,输出层1个节点,共有个4×9+9×1=45权值,9+1=10个阈值,所以染色体编码长度为d=45+10=55.隐层激励函数用tan-sigmoid,输出层的激励函数是linear,训练函数是traingd.

设置种群规模K为10,最大迭代次数T为50,确定交叉概率P为0.2与变异概率M为0.1,适应度系数R取1,权值和阈值的最小值、最大值分别取-5和5.

2.3 预测结果分析

为了体现本文提到算法的优越性,在相同的网络结构下,用传统BP对相同样本做预测,并与GA-BP算法预测做比较,并将网络训练前后的部分权值阈值进行了对比.

图2显示的是在其它参数相同情况下,传统BP和GA-BP方法初始权值、初始阈值、BP网络训练的权值、阈值四组数据变化情况.从中可明显看出,传统BP预测模型和GA-BP预测模型权值W2、阈值B1是不相同的;究其原因模型的差异主要是两个模型的初始权值、初始阈值选择的差异引起的.

本文方法与传统BP法进行每小时发电量预测的实验结果对比如图3所示.图4更清楚地展示了两种预测算法与真实值之间的误差情况.预测评价指标对比如表2所示,其中主要考量了下述评价指标:平均绝对误差(MAE)、均方误差(MSE)、绝对误差与期望值商的平均值(MAPE).

(a) W2训练前后参数情况

图3 不同预测算法实验

图4 不同预测算法实验结果误差比较

表2 预测评价指标对比

从表2可以看出,除优化耗时较多外,GA-BP法多项评价指标均优于传统BP算法,误差范围总体趋小.分析可知,GA-BP法预测性能提高的原因是由于GA算法引入生物进化中的自然选择和交叉与变异算子等实现了高效启发式搜索,有效地缩小了BP模型参数寻优的取值范围,提高了预测模型的准确度.

3 结论

本文提出的基于GA-BP算法的短期发电量预测方法,对BP网络初始权值、阈值优化引入生物进化中的自然选择和交叉与变异算子,有效地缩小了预测模型寻优参数的取值范围.实验结果表明,GA-BP预测算法与传统BP相比,整体预测准确度得到了提高.本文方法对短期发电量等预测问题,具有良好的应用价值.从预测算法模型的4个影响因素可以看出发电量预测与环境有极大关联,而在实际应用中环境参数都是由周围气象预报平台获得,目前可以较准确的预测两天内的环境参数,所以本算法相应可以较准确的预测两天之内的短期发电量情况.随着天气环境预测技术水平的发展,本算法也可以随之提高预测精度和预测时间范围.

[2] 郑 淏,薛惠锋,冯海涛.基于BP神经网络的地表水污染指标短期预测分析[J].陕西科技大学学报(自然科学版),2016,34(3):156-160.

[3] 彭显刚,胡松峰,吕大勇.基于RBF神经网络的短期负荷预测方法综述[J].电力系统保护与控制,2011,39(17):144-148.

[4] 吴倩红,高 军,侯广松.实现影响因素多源异构融合的短期负荷预测支持向量机算法[J].电力系统自动化,2016,40(15):67-72.

[5] Kesgin U,Heperkan H.Simulation of thermodynamic systems using soft computing techniques[J].International Journal of Energy Research,2005,29(7):581-611.

[6] Fast M,Assadi M,De S.Development and multiutility of an AN(s)N model for an industrial gas turbine[J].Applied Energy,2009,86(1):9-17.

[7] 胡邦辉,成 龙,王学忠,等.长江中下游汛期降水GA-BP预测模型[J].解放军理工大学学报(自然科学版),2016,17(6):564-570.

[8] 宋晓勇,陈年生.遗传算法和神经网络耦合的金融预测系统[J].上海交通大学学报,2016,50(2):313-316.

[9] 蒋松含,李中豪,张沛超,等.燃气-蒸汽联合循环机组的实时数字仿真建模[J].电力系统保护与控制,2015,43(20):137-142.

[10] H Kaya,P Tufekui.Local and global learning methods for predicting power of a combined gas & steam turbine[DB/OL].https://www.cmpe.boun.edu.tr/~kaya/kaya2012gasturbine.pdf,2012-03-05.

【责任编辑:蒋亚儒】

Short-term power generation prediction based on BP neural network optimized by genetic algorithm

GUO Wen-qiang, SHI Shuai, ZHANG Xiao, LI Ke-ke, SHE Jin-long, GAO Wen-qiang

(College of Electrical and Information Engineering, Shaanxi University of Science & Technology, Xi′an 710021, China)

In order to reduce the influence of unreliable initial weights and thresholds problem,a back-propagation neural network based on genetic algorithm(GA-BP) optimization is proposed which leads to improve the prediction model performance.Genetic mechanism of crossover,mutation and selection and in nature is introduced to represent the network′s initial weight and threshold values as the chromosomes coded gene.According to the principle of survival fitness in the evolution,the genetics combination of crossover and mutation operators helps to produce new chromosomes,which achieves the network parameter optimization.Then the GA-BP prediction model is constructed via BP training to predict the short-term electricity power generation.Experimental results show that,GA-BP prediction approach superiors to the tradition BP prediction algorithm with better accuracy.The proposed approach may also be utilized in wide other prediction domains.

genetic algorithm; back propagation neural network;optimization; short-term prediction

2017-01-10

陕西省科技厅自然科学基金项目(2017JM6057); 陕西省教育厅专项科研计划项目 (2013JK1114); 陕西科技大学博士科研启动基金项目(BJ12-03)

郭文强(1971-),男,陕西咸阳人,副教授,博士,研究方向:智能系统与模式识别

2096-398X(2017)04-0159-05

TP183

A

猜你喜欢
发电量权值适应度
改进的自适应复制、交叉和突变遗传算法
一种融合时间权值和用户行为序列的电影推荐模型
CONTENTS
乌东德水电站累计发电量突破500亿千瓦时
2019年全国发电量同比增长3.5%
一种基于改进适应度的多机器人协作策略
全国上半年水力发电量同比增长2.9%
基于权值动量的RBM加速学习算法研究
基于多维度特征权值动态更新的用户推荐模型研究
肯尼亚火电发电量下降