鱼群算法与神经网络结合的节能减排效果评价
杨淑霞1,韩奇1,徐琳茜1,刘达1,路石俊2
(1. 华北电力大学 经济管理学院,北京,102206;
2. 内蒙古电力(集团)有限责任公司,内蒙古 呼和浩特,010020)
摘要:从污染物减排率、单位工业增加值减排量、治理工业污染投资总额、GDP相关指标、能耗下降率5个方面建立节能减排效果评价指标体系,分析BP神经网络与鱼群算法结合的可行性,探讨鱼群算法优化神经网络的步骤。最后对7个地区2006~2009年节能减排效果评价指标,在专家打分测评的基础上,运用神经网络及鱼群算法优化神经网络方法进行节能减排效果评价。研究结果表明:在收敛过程中,运用神经网络所得实际输出值与专家评分的误差长时间停留在0.7左右,而运用鱼群算法优化神经网络方法能够以较大的斜率快速收敛到期望误差;在误差为0.001时,前者经过202次训练后能够达到目标,而后者只需要75次训练就能达到目标,这表明鱼群算法优化神经网络具有准确、快捷、简易等优点,此方法用于节能减排效果评价行之有效。
关键词:鱼群算法;BP神经网络;节能减排;综合评价
中图分类号:X196 文献标志码:A 文章编号:1672-7207(2012)04-1538-07
Comprehensive effect evaluation of energy saving and emission reduction based on fish-swarm algorithm optimizing neural network
YANG Shu-xia1, HAN Qi1, XU Lin-qian1, LIU Da1, LU Shi-jun2
(1. College of Economy Management,North China Electricity Power University, Beijing 102206, China;
2. Inner Mongolia Electric Power Company Ltd., Hohhot 010020, China)
Abstract: Based on five factors, i.e. pollutant emission reduction rate, emission reduction of unit industrial added value, total investment in industrial pollution control, related indicators of GDP and energy consumption reduction rate, an index system to comprehensively evaluate energy saving and emission reduction effect was established. Then the feasibility of optimizing BP neural network by fish-swarm algorithm was analyzed, and the procedures for the optimization of BP neural network by fish swarm algorithm were researched.According to the energy-saving data in seven regions from 2006 to 2009 and based on the assessment of expert scoring, energy-saving effects were evaluated by neural network and fish swarm algorithm-optimized neural network respectively. The results show that during the convergence, the error local optima is about 0.7 for a long time using neural network algorithm-optimized neural network while it reaches the target error figure quickly using fish swarm algorithm-optimized neural network.When error is 0.001, the former reaches the target after 202 times of training, and the latter only 75 times. The results indicate that the method of fish swarm algorithm-optimized neural network is accurate, fast, simple and easy, and this method is effective for the evaluation on effect of energy saving and emission reduction.
Key words: fish-swarm algorithm; BP neural network; energy saving and emission reduction; comprehensive evaluation
“十二五”伊始,国家加大节能减排力度,各地区纷纷出台政策以保证实现节能减排目标。节能减排效果评价是检验节能减排措施效果的重要手段,与国家提出的节能减排目标密切相关。目前,国内外对于节能减排效果评价的研究尚处于起步阶段,其更多专注于评价体系的建立。王震等[1]运用二次相对效益评价法构建了我国煤炭工业节能减排效果的动态评价模型,并进行了实证测试和分析。王惠文等[2]用简单算数法对生物质发电的节能减排效果进行了具体测算分析。陈一萍[3]阐述了密切值法在节能减排评价中的原理、方法与步骤,并以实际数据为例说明了模型的具体应用。王克亮等[4]采用神经网络法对地区节能减排效果进行了评价。采用神经网络进行评价具有许多优点,但是,其具有收敛速度慢、容易陷入局部最优值的缺点。鱼群算法具有良好的寻优特性,能够很好地克服这些缺点,使神经网络快速找到全局最优值。在此,本文作者首先从污染物减排率、单位工业增加值减排量、工业污染治理投资总额、GDP相关指标、能耗下降率5个方面建立节能减排效果评价指标体系;然后,从鱼群算法的优化特性并将BP(Back propagation)神经网络与鱼群算法相结合2个方面分析鱼群算法优化神经网络的可行性,探讨鱼群算法优化神经网络的原理。最后以7个地区节能减排数据为样本,对原始数据进行一致化、归一化处理,依据专家对各指标打分结果,运用神经网络及鱼群理论优化神经网络方法进行节能减排效果评价,以探讨鱼群算法与神经网络结合的节能减排效果评价方法的有效性。
1 节能减排效果评价指标体系
可操作性指标体系是对地区节能减排成效进行科学度量、分析、评价的基础。尽管国家对于节能减排提出了指导性的评价指标体系,但仍需要进一步细化。评价指标体系的建立需要遵循以下4条原则[5]:科学性与实用性、系统性与层次性、完备性与简明性、可测性与可比性。基于以上原则,在参照国家关于节能减排的相关要求基础上,构建节能减排效果评价指标体系,如图1所示。
图1 节能减排效果评价指标体系
Fig.1 Evaluation index system of energy saving and emission reduction effect
2 鱼群算法优化BP神经网络原理
2.1 鱼群算法与神经网络相结合的可行性
BP神经网络在求解最优化问题时能较好地捕捉数据间的非线性规律,但在具体应用中存在易陷入局部最优值、收敛速度慢等缺陷[6]。
鱼群算法是一种模拟鱼群运动规律的优化算法,其基本思想是鱼群向食物浓度较大的水域游动,鱼群规模最大的地方食物浓度最大。据此,鱼群算法构造人工鱼个体,模拟鱼群的觅食、群聚和追尾行为,通过个体的局部寻优,实现全局最优[7]。该算法具有操作简单、收敛快速、全局搜索能力强的特点,故将其作为学习方法以改进BP神经网络。
在确定了神经网络结构的情况下,权值与阈值的变化决定了神经网络的训练情况。利用鱼群算法训练BP神经网络,就是用人工鱼个体代表神经网络状态,用食物浓度代表输出值与期望值均方误差的倒数,人工鱼群按照鱼群算法的步骤反复优化神经网络的连接权值和阈值,通过寻找食物最大浓度使均方误差最小,从而达到寻找最优神经网络结构的目的。
2.2 鱼群算法优化BP神经网络流程
鱼群算法是一种循环算法,在寻优过程中不断循环,直到找到全局最优值为止[8]。其优化BP神经网络具体流程如图2所示。
2.1 定神经网络结构的确定
神经网络结构对训练效率和神经网络的推广极为重要[9]。当隐含层神经元数足够多时,3层神经网络足以实现任意维度的输入层到输出层的映射[10],为此,本文选择3层(输入层、输出层和隐含层)BP神经网络,其中:输入层神经元数根据问题的表达设定;输出层神经元数根据用户需要设定;隐含层神经元数根据
(1)
确定[11]。式中:n1为隐含层神经元数;n为输入层神经元数;m为输出层神经元数;a为[1,10]之间的 常数。
BP神经网络的学习训练过程通过数据正向传输和误差反向传播来实现,其收敛能力在很大程度上由初始参数决定。为了使每个神经元的状态值接近于0,初始权值一般取比较小的随机数[12];同时,为了将尽量多的样本值归入梯度最大方向,需要对输入样本进行归一化。
2.1.1 人工鱼群参数的设定
设BP神经网络有n个输入层神经元,h个隐含层神经元,m个输出层神经元,Wij为第i个输入层神经元和第j个隐含层神经元的连接权值,Vjt为第j个隐含层神经元和第t个输出层神经元的连接权值,θj为第j个隐含层神经元的阈值,γt为第t个输出层神经元的阈值。人工鱼状态用向量表示,其包含神经网络的所有权值和阈值,并按照Wij,Vjt,θj和γt的顺序排列。在鱼群算法训练BP神经网络过程中,人工鱼状态向量遵循鱼群优化算法的规定进行迭代运算,不断优化神经网络的权值和阈值,直至寻找到食物密度最大值为止。
设鱼群规模为N,人工鱼的状态Xb为D维向量,D为神经网络权值和阈值的总和,在3层神经网络中,D=(m+n)h+h+m。则(b=1,2,…,N),为第b个人工鱼个体的1个状态值,可能是1个权值或者1个阈值[13]。
鱼群算法的初始化采用随机分布的方式,在神经网络权值和阈值取值范围内随机放入N条人工鱼。在初始化过程中,设定人工鱼移动最大步长s、人工鱼的最大视野v、拥挤度因子δ、食物密度fc,在此 (其中,E为神经网络实际输出和期望输出的误差)。任意2条人工鱼个体在Xp和Xq(其中)之间的距离为[14]:
式中:1≤i≤n;1≤j≤h;1≤t≤m。
图2 鱼群算法优化BP神经网络流程图
Fig.2 Flow chart of fish-swarm algorithm optimizing neural network
2.1.2 人工鱼游动优化神经网络
人工鱼初始状态设定后,执行觅食、群聚和尾随行为,比较游动后的食物浓度,从而选择最佳的游动行为。
(1) 鱼群的觅食行为。设人工鱼当前状态为Xp,在其可视范围内(即dpq≤v),随机选择1个状态Xq,若Xq处的食物密度fcq>fcp,则人工鱼就向Xq游动,当重复tn次后仍未找到食物密度高的状态时,则随机游动。其Matlab代码如下:
for i=1:tn
If (fcq>fcp)
Vij,θj,γ与Wij的计算过程同理
else
(2) 鱼群的群聚行为。设人工鱼当前状态为Xp,在其可视范围内搜索伙伴数目fn及中心位置Xc,fcc/fn为平均食物密度,δfcp为最大拥挤度时的食物密度,若fcc/fn>δfcp,则说明鱼群中心位置食物较多且不拥挤,人工鱼向鱼群中心游动。其Matlab代码如下:
For i=0:N
If (dpq<v)
If (fcc/fn>δfcp)
Vij,θj,γt与Wij的计算过程同理
(3) 鱼群的尾随行为。设人工鱼的当前状态为Xp,食物密度最大值为maxfc,此时人工鱼的状态为Xmax。在其可视范围内搜索fc最大的伙伴Xq,若fcq/fn>δfcp,则说明伙伴Xq位置食物较多且不拥挤,人工鱼向伙伴游动。其Matlab代码如下:
maxfc=-∞;fn=0
For i=0:N
If (dpq<v?fcq>maxfc)
maxfc=fcq;Xmax=Xq
For i=0:N
If (dpq<v);fn=fn+1
If (maxfc/fn>δfcp)
Wij(p+1)=Wij(p)+
rand(s)/dp,max[Wij(max)-Wij(p)]
Vij,θj,γt的计算过程同理。
2.1.3 游动行为的选择
人工鱼游动行为的选择,是以选择该行为后食物密度最大为标准。默认行为是觅食行为,若执行其他2种行为时不满足条件,则执行觅食行为。当鱼群中的人工鱼都游动后,检查人工鱼的食物密度最大值maxfc是否达到预设值ffc,若达到,则取得最优值;若没达到,则继续循环执行。其Matlab代码如下:
While maxfc<ffc
maxfc=Prey();
maxmn=1;
maxfct=follow()
If maxfc<maxfct
maxfc=maxfct
maxmn=2;
End;
Maxfc=swarm()
If maxfc<maxfct
maxfc=maxfct
maxmn=3;
End;
Switch maxmn
Case 1
maxfc=prey()
Case 2
maxfc=follow()
Case 3
maxfc=swarm( )
end
end
3 节能减排效果评价
3.1 数据处理
根据节能减排效果评价指标体系,考虑数据的完整性和时效性,本文选用7个地区2006-2009年节能减排数据(数据来自国家统计局和发改委)。
为了使数据类型一致,对原始数据进行一致化处理,将逆指标X3,X4和X5转化为正向指标[15],处理方法为:
,x≠0 (2)
其中:x为逆指标;y为逆指标一致化处理结果。
为满足神经网络算法的数据输入要求,对原始数据进行归一化处理,其处理方法为[16]:
(3)
其中:xmin为指标x的最小值;xmax为指标x的最大值;y为归一化化处理结果。这里仅列出7个地区2007年的原始数据及数据处理结果,分别如表1和表2所示。
3.2 节能减排效果专家评分
专家评分可以综合考虑各指标特点,平衡各指标权重,根据专家经验给出较合理的分数。为此,聘请能源效率领域专家根据所设计的节能减排效果评价指标体系,使用多指标综合评价法,对原始数据进行节能减排效果评价,最终给出7个地区节能减排评价得分,如表3所示。
各项指标数据在计算初期已经转换为正向型的数据,地区得分越高,表明节能减排效果越好。
3.3 BP神经网络结构的确定
根据节能减排评价指标,确定神经网络输入层神经元数为12个,对应图1中的12个指标。输出层神经元数为1个,即节能减排效果评分。隐含层神经元传递函数选用tansig函数,输出层神经元传递函数选用purelin函数。
根据确定的输入输出层神经元数和确定隐含层神经元数(见式(1)),初步确定隐含层神经元数为14个。在matlab编程时,使用循环函数,尝试12~16作为隐含层神经元数,分别以0.001作为期望误差,都能顺利收敛,所用训练步数如表4所示。
表1 2007年7个地区节能减排指标原始数据
Table 1 Raw data of energy-saving indicators of 7 regions
表2 2007年7个地区原始数据处理结果
Table 2 Raw data processing results of 7 regions
表3 7个地区节能减排效果评价专家评分
Table 3 Energy-Saving effect scores of 7 regions
表4 不同隐层神经元网络误差和训练次数
Table 4 Errors and training times of different hidden neurons
从表4以看出:隐含层神经元数为15时收敛最迅速。因而确定隐含层神经元数为15。
3.4 算法优化BP神经网络进行节能减排效果评价
使用鱼群算法训练所确定的神经网络,设定鱼群规模N=20,人工鱼移动最大步长s=0.3,人工鱼的最大视野v=0.5,拥挤度因子δ=3.168;人工鱼代表的神经网络结构为12个输入层神经元,15个隐含层神经元和1个输出层神经元,使用鱼群算法训练。输入向量为7个地区12个指标数据,期望输出值为专家评分。将2006—2008年数据作为学习样本,训练神经网络,用2009年数据进行网络测试。比较BP神经网络和鱼群算法优化后BP神经网络的训练效果,如图3~4所示。从图3和图4可以看出:同样以0.001为误差,普通BP神经网络经过202次训练后能够达到目标(图3),而鱼群算法优化的BP神经网络只需要75次训练就能达到目标(图4)。这说明后者具有更快的收敛特性,以较大的斜率进行收敛,能够在较短时间找到最优点。而普通神经网络在收敛过程中误差长时间停留
图3 BP神经网络训练曲线
Fig.3 Training curve of BP neural networks
图4 鱼群算法优化神经网络训练曲线
Fig.4 Training curve of fish-swarm algorithm optimizing neural network
在0.7左右,这说明鱼群理论优化后的神经网络能够有效克服陷于局部最优的缺陷,在同样的训练次数下,能够得到更精确的结果。
使用鱼群算法优化的BP神经网络评价节能减排效果,将2009年各地区指标数据输入网络,得到评价结果,输出值与实际专家打分的拟合曲线如图5所示。
图5 节能减排效果评价得分拟合曲线
Fig.5 Fitting curves of energy-saving effect score
从图5可以看出:经过鱼群算法训练的神经网络输出值与专家评分非常接近。这说明鱼群算法训练神经网络能够准确地模拟专家打分,保证专家评价系统的稳定性和一致性。
4 结论
(1) 采用鱼群算法优化神经网络评价节能减排效果。该方法能够准确拟合专家评价,在得到输入值后快速得到评价分数,并使评价工作不再重复,保证了评价的准确性、快捷性和简易性。
(2) 将鱼群算法与BP神经网络相结合能够充分发挥鱼群算法快速获得全局最优值的特性,很好地克服了BP神经网络收敛较慢、收敛于局部最优值的 缺陷。
(3) 由于客观条件的限制,所采用的学习样本较少,可通过增加学习样本来提高网络训练的精度。此外,人工鱼群理论还不成熟,人工鱼群在变化不明显区域所表现出的盲目性对效率的影响有待进一步研究。
参考文献:
[1] 王震, 孙佰清, 黄金枝. 基于二次相对效益的煤炭工业节能减排效果评价模型研究[J]. 哈尔滨工业大学学报: 社会科学版, 2010, 12(5): 54-59.
WANG Zhen, SUN Bai-qing, HUANG Jin-zhi. Study on effect evaluation model for energy saving and emission reduction of coal industry based on quadratic relative performance[J]. Journal of Harbin Institute of Technology: Social Sciences Edition, 2010, 12(5): 54-59.
[2] 王惠文, 是艳杰, 李红莉, 等.生物质发电的节能减排效果分析[J]. 电网技术, 2007, 31(S2): 344-346.
WANG Hui-wen, SHI Ye-jie, LI Hong-li, et al. Analysis on energy-saving emissions effect of biomass power generation[J]. Power System Technology, 2007, 31(S2): 344-346.
[3] 陈一萍. 基于密切值法的节能减排评价研究[J]. 生态环境学报, 2010, 19(2): 419-422.
CHEN Yi-ping. Evaluation of energy saving and emission reduction based on the osculation value method[J]. Ecology and Environmental Sciences, 2010, 19(2): 419-422.
[4] 王克亮, 杨力. 基于改进BP网络的城市可持续发展水平模糊综合评价[J]. 商业研究, 2008(369): 108-112.
WANG Ke-liang, Yang Li. Fuzzy comprehensive evaluation based on improved BP network for city sustainable development[J]. Commercial Research, 2008(369): 108-112.
[5] 杨华峰, 姜维军. 企业节能减排效果综合评价指标体系研究[J]. 工业技术经济, 2008, 27(10): 55-58.
YANG Hua-feng, JIANG Wei-jun. A study on comprehensive evaluation index system of energy saving and emission reduction effect[J]. Industrial Technology & Economy, 2008, 27(10): 55-58.
[6] 张国翊, 胡铮. 改进BP神经网络模型及其稳定性分析[J]. 中南大学学报: 自然科学版, 2011, 42(1): 116-124.
ZHANG Guo-yu, HU Zheng. Improved BP neural network model and its stability analysis[J]. Journal of Central South University: Science and Technology, 2011, 42(1): 116-124.
[7] 聂宏展, 王毕元, 孙金宏, 等. 基于混沌人工鱼群算法的输电网规划方法[J]. 电网技术, 2010, 34(12): 109-113.
NIE Hong-zhan, WANG Bi-yuan, SUN Jin-hong, et al. Transmission network planning based on chaotic artificial fish swarm algorithm[J]. Power System Technology, 2010, 34(12): 109-113.
[8] 陈俊清, 朱文兴. 基于人工鱼群算法的分类规则发现[J]. 福州大学学报: 自然科学版, 2007, 35(1): 25-30.
CHEN Jun-qing, ZHU Wen-xing. Classification rule discovering with artificial fish-swarm algorithm[J]. Journal of Fuzhou University: Natural Science Edition, 2007, 35(1): 25-30.
[9] 宋云亭, 吴俊玲, 彭冬, 等. 基于BP神经网络的城网供电可靠性预测方法[J]. 电网技术, 2008, 32(20): 56-59.
SONG Yun-ting, WU Jun-ling, PENG Dong, et al. A BP neural network based method to predict power supply reliability of urban power network[J]. Power System Technology, 2008, 32(20): 56-59.
[10] 崔吉峰, 乞建勋, 杨尚东. 基于粒子群改进BP神经网络的组合预测模型及其应用[J]. 中南大学学报: 自然科学版, 2009, 40(1): 190-194.
CUI Ji-feng, QI Jian-xun, YANG Shang-dong. Combined forecasting model based on BP improved by PSO and its application[J]. Journal of Central South University: Science and Technology, 2009, 40(1): 190-194.
[11] 袁冬根, 刘晓东, 蔡磊, 等. 基于混沌蚁群算法的BP神经网络训练研究[J]. 微电子学与计算机, 2009, 26(4): 11-14.
YUAN Dong-gen, LIU Xiao-dong, CAI Lei, et al. The research of BP neural network training based on the chaos ant colony optimization[J]. Microelectronics & Computer, 2009, 26(4): 11-14.
[12] 李蒙, 郭鑫, 谭显东, 等. 基于改进BP神经网络和工业重构理论的用电增长预测方法[J]. 中南大学学报: 自然科学版, 2007, 38(1): 144-147.
LI Meng, GUO Xin, TAN Xian-dong, et al. Predictive method for power growth based on improved BP neural network and rebuilding of new industry structure[J]. Journal of Central South University: Science and Technology, 2007, 38(1): 144-147.
[13] 曹承志, 张坤, 郑海英, 等. 基于人工鱼群算法的BP神经网络速度辨识器[J]. 系统仿真学报, 2009, 21(4): 1047-1050.
CAO Cheng-zhi, ZHANG Kun, ZHENG Hai-ying, et al. BP neural network speed identifier based on artificial fish algorithm[J]. Journal of System Simulation, 2009, 21(4): 1047-1050.
[14] 郑华, 刘伟, 张粒子. 基于改进人工鱼群算法的电网可用传输能力计算[J]. 电网技术, 2008, 32(10): 84-87.
ZHENG Hua, LIU Wei, ZHANG Li-zi. Available transfer capability calculation based on modified artificial fish school algorithm[J]. Power System Technology, 2008, 32(10): 84-87.
[15] 张立军, 袁能文. 线性综合评价模型中指标标准化方法的比较与选择[J]. 统计与信息论坛, 2010, 25(8): 10-15.
ZHANG Li-jun, YUAN Neng-wen. Comparison and selection of index standardization method in linear comprehensive evaluation model[J]. Statistics & Information Forum, 2010, 25(8): 10-15.
[16] 郭亚军. 综合评价理论方法和应用[M]. 北京: 科学出版社, 2006: 56-72.
GUO Ya-jun. Theoretical methods and application of evaluation[M]. Beijing: Science Press, 2006: 56-72.
(编辑 陈灿华)
收稿日期:2011-06-08;修回日期:2011-08-27
基金项目:中央高校基本科研业务费专项资金资助项目(09MR39);教育部人文社会科学研究规划项目(11YJA790181)
通信作者:杨淑霞(1962-),女,黑龙江勃利人,博士,教授,从事电力企业市场营销等研究;电话:13681139160;E-mail:bjysx216@126.com