2
计算机应用
2
第 30卷第 1期
2010年 1月
文章编号 : 1001 - 9081 (2010) 01 - 0224 - 03
Journal of Computer App lications
Vol. 30 No. 1
Jan. 2010
基于遗传算法和 BP神经网络的城区中长期电力负荷预测与分析
程玉桂 ,黎 明 ,林明玉
(南昌航空大学 经济管理学院 ,南昌 330063)
(chengyugu111@126. com)
摘 要 :由于产业结构的调整 、居民消费能力消费结构的变化和市场化等因素的影响 ,城区中长期电力负荷预测
具有相当的难度 。建立一个基于遗传算法和 BP算法相结合的神经网络预测模型 ,以南昌市为例做实证 ,并与传统 BP
神经网络和模拟退火预测结果做对比 ,验证了该模型的准确性 。最后对城区未来十几年的基本用电负荷进行了预测
和分析 。
关键词 :中长期电力负荷 ;模拟退火算法 ;前馈型网络
中图分类号 : TP391 文献标志码 : A
Foreca sting and ana lysis on long
electr ic load of c ity by GA
term
BP neura l networks
term /m id
(College of Econom ics M anagem en t, N anchang Hangkong U n iversity, N anchang J iangxi 330063, Ch ina)
CHENG YU
gui, L IM ing, L IN M ing
yu
oriented and so on,
long
In the past two years,
term power load forecasting rather than long
term /m id
Abstract: Due to the industrial structure adjustment,
term /m id
the change of resident consump tion ability and pattern of
term power load forecasting for urban p lans faces considerable
consump tion, and market
the methods that combined genetic algorithm and Back Propagation (BP) algorithm have
difficulties.
In this
been used for short
paper, a neural network p rediction model with combination of genetic algorithm and BP neural network was established;
the
examp le in Nanchang was given to validate the accuracy of the algorithm , by comparing with the traditional BP neural network
and Simulated Annealing ( SA ) p rediction. Then the basic electricity load of Nanchang in the next dozens of years was
forecasted and analyzed.
Key words: long
term power load; Simulated Annealing (SA ) algorithm; feed
term power load forecast of electricity.
forward type network
term /m id
0 引言
中长期电力负荷预测通常是指对 5~10年以上期间的预
测 ,它是城市电网规划中基础性工作 ,其精度的高低直接影响
城区发电项目 、电网改造与建设项目的规划与决策 。随着城
区中长期发展规划的调整 、工业化城市化发展变化 、居民消费
水平消费结构变化以及产业结构调整 ,城区居民用电 、工业和
商业用电的需求量和需求结构都在发生变化 ,市场化的运作
也带来了很多不确定的因素 ,这些因素的随机性 、关联性变化
大 ,给准确地预测城区的中长期电力负荷带来了新的难度 。
目前 ,国内外常用的中长期电力负荷预测的方法有 :增长
率加大用户法 、分产业产单耗法 、分部门预测法 、电力弹性系
数法 、分区负荷密度法 、时间序列法 、相关分析法 、人均电量指
标换算法 、回归分析法 、专家系统预测法等 。相对传统的预测
方法如时间序列分析方法和因果分析法 [ 1 - 3 ] ,一些新的预测
方法如 :灰色预测法 、模糊预测法 、专家系统预测法 、人工神经
网络预测法 、优选组合预测法 、小波分析法和系统动力法以及
上述方法的混合算法 [ 4 - 9 ]为电力负荷预测问题的研究提供了
有力的工具 。其中 ,人工神经网络因其具有大规模分布式并
行处理 、非线性 、自组织 、自学习 、联想记忆等优良特性 ,是目
前中长期电力负荷预测的一种先进手段 ,同时人工神经网络
还可以与模糊集合理论相结合 ,构成模糊神经网络 ,可以对负
荷预测中出现的模糊信息加以处理 [ 10 ] 。然而 ,单纯使用神经
网络有许多缺陷 ,如训练速度慢 、易陷入局部极小点和全局搜
索能力弱等 。遗传算法由于其能从概率的意义上以随机的方
式寻求到问题的最优解而被用于电力负荷预测中 ,但单纯的
遗传算法的应用中也会产生如早熟现象 、局部寻优能力较差
等 问 题 。因 此 , 应 用 模 拟 退 火 法 及 遗 传 算 法 ( Genetic
A lgorithm , GA )和 BP算法相结合的遗传神经网络 ,近两年开
始被用于短期电力负荷的预测中 [ 11 - 12 ] ,但尚未见有用于中长
期电力负荷预测的报道 。
本文拟建立一种 GA 和 BP神经网络相结合 (以下简称
BP算法 )的电力预测模型 ,以南昌城区 1993年 ~2007年
GA
实际用电量为实证对象 ,对城区中长期电力需求做负荷预测
和分析 ,并与单纯 BP算法和模拟退火法做比较 。
1 模型建立
GA
BP算法是用于训练前馈型网络的方法 ,其主要思想
是 :先利用神经网络试探出最好的网络的隐层节点数 ,再利用
遗传算法在整体寻优的特点将网络的权值优化到一个较小的
范围 ,然后再用 BP算法继续优化 。具体实施步骤如下 :
1. 1 BP网络模型的建立
1)网络隐层数和输入 ,输出的节点数的确定 。
收稿日期 : 2009 - 07 - 13;修回日期 : 2009 - 09 - 03。
基金项目 :国家自然科学基金资助项目 (60475002) ;航空科学基金资助项目 (2008ZD5600) ;江西省教育厅科技项目 ( GJJ09197) 。
作者简介 :程玉桂 (1964 - ) ,女 ,江西南昌人 ,副教授 ,主要研究方向 :产业经济 ; 黎明 ( 1965 - ) ,男 ,江西南昌人 ,教授 ,博士生导师 ,主要
研究方向 :人工神经网络、图像处理 ; 林明玉 (1983 - ) ,女 ,湖北武汉人 ,硕士研究生 ,主要研究方向 :图像处理、模式识别。
第 1期
程玉桂等 :基于遗传算法和 BP神经网络的城区中长期电力负荷预测与分析
522
对数据进行归一化批处理模式处理 ,使数据处于区间
[ 0, 1 ] ,并对数据进行累加处理 ,用电量预测的 BP神经网络
模型中输入和输出之间只设一个隐层 ,并根据实际需要将输
入设为 5维 ,输出设为 1维 。
2)隐含层神经元数确定 。
根据 Kolmogorov定理 ,本文的隐含层节点数理论值为
21。利用 matlab软件 ,通过试凑法取 10~21节点对网络进行
训练 ,将隐层节点设置为不同数 ,将其输入计算机 ,在相同训
练条件下进行训练 ,相应的训练结果如表 1所示 。
表 1 不同隐层节点数的训练次数
隐层节
点数
10
11
12
13
14
15
训练
次数
287
138
94
96
165
45
均方差
0. 099 6
0. 094 6
0. 096 8
0. 099 3
0. 098 9
0. 094 5
隐层节
点数
16
17
18
19
20
21
训练
次数
107
146
158
128
135
163
均方差
0. 099 4
0. 099 9
0. 097 3
0. 099 5
0. 098 7
0. 099 8
可以看出 ,在经过 2 000次训练 (训练误差为 0. 001)后 ,
隐层节点数为 15的 BP网络对函数的逼近效果次最好 ,迭代
次数最少 ,训练 45次就达到了目标误差 ,所以选取 15为隐层
节点数 。隐含节点数为 11和 12的网络误差也比较小 ,但是
所需要的训练时间比较长 。考虑到网络性能的训练速度 ,这
里将隐层节点数定为 15。
3)训练方法及其参数选择 。
本文以南昌城区 1993—2007年的总用电量为对象 ,选取
了动量批梯度下降函数 ( traingdm ) 、Levenberg
Marquardt算法
( trainlm )和贝叶斯归一化算法 ( trainbr)进行比较 ,结果如表 2
所示 。
表 2 不同训练函数的平均训练时间和平均训练次数
训练函数 平均训练时间 / s 达到 MSE值的平均训练次数
traingbr
trainlm
traingdm
1. 026 0
0. 425 1
45. 667 0
54. 9
4. 8
—
以上的参数设置一致 ,即 net.
trainParam. epochs = 10 000;
net. trainParam. goal = 0. 000 1; net. trainParam. lr = 0. 01,并重复
试验 100次取平均值 。很明显 , trainglm所用的平均训练时间
是最少的 ,平均的训练次数也是最少的 。而 traingdm 在最大
的训练步长达到了也没有达到预先设定的网络性能函数值
0. 000 1,故它的训练效果最差 。再分别用 traingdm、trainlm 和
trainbr来拟合总用电量 ,结果如图 1、图 2所示 。
图 1 训练函数预测总用电量的相对误差
从图 1、2可以明显看出 ,对于本文的 BP神经网络 ,用训
练函数 trainlm相比其他两个训练函数 ,可达到更好的效果 。
1. 2 使用 GA对网络进行训练优化权值
使用 GA对网络进行训练优化权值步骤如下 :
1)编码与群体的初始化 。采用实数编码 ,每一个连接权
值直接用一个实数来表示 ,网络权值的一种分布用一组实数
(称为一个个体 )来表示 。如本文有 5个输入单元 , 15个隐层
节点数 , 1个输出单元 ,再加上隐含层和输出层单元的阈值 ,
计算每个个体 (染色体 )的长度为 5 ×15 + 15 ×1 + 15 + 1 =
106。初始群体有 M 个个体 (染色体 ) 组成 ,本例 M = 40。
2)适应度函数的确定 。适应度函数选取为 :
f ( i) = 1 / E ( i)
E ( i) = ∑
10
k =1
( yk - Tk ) 2
(1)
(2)
其中 i = 1, 2, …, M 为染色体数 , K = 1, 2, 3, …, 10,为学习样
本数 , yk 为训练值 , Tk 为期望目标值 。
3)选择 ,交叉 ,变异遗传操作 。采用随机遍历抽样选择 ,
两点交叉 ,均匀变异遗传操作 。
4)终止条件 。达到最大进化代数 ,或者误差小于 0. 01。
图 2 训练函数预测 1998—2007年总用电量值
1. 3 给定 BP网络的权值和阈值的初始值进行 BP网络训练
结束 GA操作 ,保留适应度最大的个体 ,即误差最小的个
体 ,将其进行解码 ,从而得到一个权值结合 ,作为 BP对应不
同层的不同神经元的权值和阈值的初始值 ,再运用 BP神经
网络进行训练 ,计算其误差 ,并不断修改其权值和阈值 ,直至
满足精度要求 。
2 实例应用及分析
本文以南昌城区为实证对象 ,一共得到 15组数据 (1993—
2007年 ) (数据来源于南昌市电力公司和南昌市 1993—2007年
统计年鉴 ) (见表 3) ,将南昌市城区当年的总用电量、居民用电
量、工业用电量、商业用电量数据作为网络的输入变量。在这
里 ,以前五年的总用电量、居民用电量、工业用电量、商业用电
量的负荷数据分别作为网络的样本数据 ,而下一年的总用电
量、居民用电量、工业用电量、商业用电量的负荷数据分别作为
输入样本对应的教师值 (也即目标期望值 ) 。
以遗传加 BP算法和传统 BP算法及模拟退火方法做比
较 ,遗传和 BP算法的训练次数 、时间大大少于传统 BP算法
和模拟退火方法 (见表 4) 。图 3的拟合结果也表明遗传加
BP算法在预测精度上优于传统的 BP算法和模拟退火法 ,由
此可见 ,遗传算法与 BP算法相合是十分有效的算法 。
其中遗传神经网络的运行时间分两部分 :一部分为遗传
算法运行的时间 34. 312 s;另一部分为神经网络运行的时间
0. 453 s,所以遗传神经网络的运行时间总时间为 34. 312 +
0. 453 = 34. 765 s。
通过表 4和图 3的分析可以明显地看出 ,遗传神经网络
2
622
2
2
计算机应用
第 30卷
权值优化到一个范围 ,从而减少 BP算法的迭代次数 ,它在一
定程度提高了神经网络的性能 ,避免了陷入局部极小值 ,相对
传统的 BP算法减少了权值和阈值初始化的随机性 ,缩短了
BP算法的收敛时间 ,减少了迭代次数 。
将 GA
BP算法预测的结果和文献 [ 13 ]做验证分析 :如图
4所示 , 2006—2008年间 ,南昌城区总体用电增长迅猛 ,但受
金融危机等影响 , 2009—2011年增速下降 ; 2011—2018年 ,工
业化发展速度迅猛 ,基础建设和基本产业投入加大 ,使得工业
用电量迅速增加 ,这期间 ,随着城镇化率的逐步提高 (到 2020
年 ,城镇化率将达到 70% ~80% ) ,城区人口和消费能力也在
稳步增加 ,因此 ,城区总用电 、工业用电和居民用电量仍然在
增加 ,但增速相对减缓 ;“十一五 ”期间 ,三次产业结构调整目
标为 5∶56∶39,服务业比重减少 ,导致商业用电量有所减少 。
可见 ,预测结果符合规划目标要求 。
2
2
算法优于其他的两个算法 ,不管从运行时间还是拟合的效果
来看 ,本文算法是可行和正确的 。为此以本文算法对南昌城
区 2008—2020年的用电量做电力预测 ,结果如表 5。
表 3 1993—2007年南昌城区基本用电量 kW ·h
年份 总用电量 居民用电量 工业用电量 商业用电量
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
269 037
282 208
312 510
325 074
314 246
326 558
332 203
360 835
385 977
437 378
527 274
614 828
738 684
854 364
945 496
32 266
39 522
47 655
50 171
53 336
64 141
46 871
52 707
56 956
63 526
86 233
89 983
170 289
172 097
188 253
174 395
177 665
194 006
204 856
194 889
187 455
194 632
233 018
255 432
273 151
324 657
361 535
395 741
505 249
554 889
1 538
1 851
2 192
2 214
3 165
3 377
3 478
12 001
11 639
12 118
14 295
19 159
25 600
25 980
39 940
表 4 GA
BP算法和传统 BP算法、模拟退火法比较
训练次数 运行时间 / s 允许误差
GA
算法
BP算法
模拟退火算法
传统 BP算法 > 10 000
6
50
34. 765
40. 630
48. 891
0. 000 1
0. 000 1
0. 000 1
图 4 南昌市 2008—2020年用电量增长速率
图 4结果也表明 , GA
BP算法对城区未来 10年的预测比
较准确 , 10年后的预测曲线则趋于平坦 。因此 ,它更适合对
城区未来 10年以内用电负荷的预测 。
参考文献 :
[1 ] AL
HAMAD I H M , SOL IMAN S A. Long
load forecasting based on short
[J ]. Electric Power System s Research, 2005, 74 (3) : 353 - 361.
term electric
term correlation and annual growth
term /m id
图 3 GA
BP算法与模拟退火算法和传统 BP算法预测拟合图
表 5 2008—2020年南昌城区基本用电负荷 kW ·h
年份 总用电量 居民用电量 工业用电量 商业用电量
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
999 437
1 056 014
1 164 207
1 343 561
1 597 777
1 820 831
1 918 098
1 944 048
1 953 287
1 964 577
1 969 643
1 970 718
1 970 899
214 667
296 936
338 907
336 945
342 201
349 954
352 026
352 441
352 402
352 477
352 558
352 580
352 583
665 321
936 752
981 534
992 414
1 133 929
1 144 802
1 160 746
1 168 377
1 167 541
1 169 785
1 169 888
1 169 958
1 170 023
42 207
56 487
61 737
62 302
62 336
62 330
61 388
60 568
60 253
60 061
60 010
60 147
60 288
3 结语
与使用模拟退火算法以及纯粹 BP算法来确定网络权值
的方法相比 , GA
BP算法相结合的方法在用于对城区中长期
电力负荷预测中 ,利用了遗传算法的全局寻优的特点 ,将网络
[2 ] KAND IL M S, DEBE IKY S M , HASAN IEN N E. Overview and
term forecasting techniques for a fast develop ing
comparison of long
utility[J ]. Electric Power System s Research, 2001, 58 (1) : 11 - 17.
[3 ] X IE DA, YU J IANGYAN, YU J ILA I. The physical series algorithm of
long term load forecasting of power system s[J ]. Electric Power
m id
System s Research, 2000, 53 (1) : 31 - 371.
[4 ] 肖俊 ,孙德宝 ,秦元庆. 灰色模型在电力负荷预测中的优化与应
用 [J ]. 自动化技术与应用 , 2005, 24 (2) : 19 - 21.
[5 ] L IAO G C, TSAO T P. App lication of fuzzy neural networks and ar
tificial intelligence for load forecasting [J ]. Electric Power System s
Research, 2004, 70 (4) : 237 - 244.
[6 ] 刘耀年 ,王卫 ,杨冬峰. 基于模糊划分聚类的中长期用电量预测
[J ]. 华东电力学院学报 , 2004, 24 (4) : 56 - 67.
[7 ] 黄海萍. 基于 BP神经网络的中国电力需求预测 [J ]. 科学技术与
工程 , 2007, 7 (4) : 46 - 55.
[8 ] CHEN G L, L I K K, CHUNG T S, et a l. App lication of an innovative
combined forecasting method in power system load forecasting [ J ].
Eletric Power System Research, 2001, 59 (2) : 131 - 137.
[9 ] LOPES M L M , M INUSSI C R, LOTUFO A D P. Electric load fore
casting using a fuzzy ART&ARTMAP neural network [ J ]. App lied
Soft Computing, 2005, 5 (2) : 235 - 244.
[10 ] 牛东晓 ,陈志业 ,邢棉 ,等 ,遗传神经网络优化预测方法研究及
其应用 [J ]. 华北电力大学学报 , 2001, 28 (1) : 59 - 67.
[11 ] 张元敏 ,蔡子亮. 基于遗传优化神经网络的电力系统短期负荷
预测 [J ]. 继电器 , 2008, 36 (9) : 103 - 111.
[12 ] 梁志武、吴杰康 , 陈明华 ,等. 基于遗传和模拟退火算法优化的
短期负荷预测 [J ]. 现代电力 , 2008, 25 (2) : 46 - 55.
[13 ] 南昌市发改委. 南昌市国民经济和社会发展第十一个五年规划
纲要 [ EB /OL ]. [2009 - 03 - 15 ]. http: / /www. jxdpc. gov. cn.