改进的人工智能神经网络预测模型及其应用
李彦斌,李存斌,宋晓华
(华北电力大学 工商管理学院,北京,102206)
摘 要:针对传统人工智能预测算法在对预测问题峰值变化处理问题上的不足,引入峰值识别理论改进BP神经网络预测模型(SIBP)。在此基础上,利用引入多向全局搜索机制的改进粒子群算法,对SIBP神经网络预测方法进行改进,提出一种具有峰值识别能力、全局学习能力更强的人工智能预测模型,以有效解决基于BP学习方法易于陷入局部极值的问题。将改进后的预测方法应用于“尖峰突变”比较突出的出清电价预测问题,以美国PJM电力市场2005-02-01至2005-05-16的实际数据为样本,对所提出的改进预测方法进行实证分析。研究结果表明:所提出的算法较改进前的BP算法对发生电价突变的短期电价预测精度提高10.16%,运算时间仅增加6.2 s,预测结果证明本文所提出的算法在处理峰值预测问题方面的有效性。
关键词:峰值识别;粒子群算法;出清电价;预测模型
中图分类号:TP301.6 文献标识码:A 文章编号:1672-7207(2008)05-1054-05
Prediction model of improved artificial neural network and its application
LI Yan-bin, LI Cun-bin, SONG Xiao-hua
(School of Business Administration, North China Electric Power University, Beijing 102206, China)
Abstract: By adopting the spike identification mechanism to improve the traditional BP algorithm on the ability of spike prediction, a BP algorithm with spike identification (SIBP) was proposed. The multi-orientation searching-mechanism was introduced into the particle swarm optimization (PSO) for enhancing the global optimizing-ability, and the improved PSO was combined with the SIBP to avoid the problem of local extreme. A new forecasting method was proposed with stronger learning ability and spike identification. The improved predicting model was applied in the forecasting of market cleaning price(MCP) which fluctuated acutely. Based on the actual date of American PJM power market from 2005-02-01 to 2005-05-16, the new artificial neural network was inspected by comparison with the other different methods. The results indicate that, compared with BP, using the MCP spike prediction model, the forecast accuracy improves by 10.16%, and the time cost of the new method is only increased by 6.2 s and the MCP spike prediction model is effective to solve the prediction problems of peak values.
Key words: spike identification; particle swarm optimization; market clearing price; predication model
随着计算机科学的进展,神经网络和支持向量机等方法被越来越多的研究者应用于各类预测问题的研究[1-2]。由于计算机计算能力提高很快,人工智能预测方法用于预测问题的研究优势更加明显[3-4]。与传统的预测方法如时间序列预测、灰色预测、季节趋势预测等方法相比,人工智能预测方法在建模方面更简捷,同时,对于预测问题中各个影响因素之间复杂、非线性关系的拟合能力更强,其预测精度和效率提高[4-5]。这些方法的网络训练大都是基于全局误差修改网络权重这一原则,很难控制波动性较强的预测问题训练精度。训练后的网络权重所贮存的信息更多地反映了样本数量较大的平段数据变化规律,而对样本数据较小的峰值数据问题规律难以得到有效反映。因此,对峰值变化频率高、峰谷差异大的预测问题,难以进行有效处理[6-7]。对此,本文作者提出一种引入峰值识别理论的改进人工智能预测模型。通过改进人工神经网络训练过程中权值的修改方法,实现对峰值的有效识别。在此基础上,利用引入多向全局搜索机制的改进粒子群算法,对SIBP神经网络预测方法进行改进,提出一种具有峰值识别能力、全局学习能力更强的人工智能预测模型,从而有效解决基于BP学习方法易于陷入局部极值的问题。将改进后的峰值识别人工神经网络预测方法应用于出清电价预测问题研究,并结合美国PJM电力市场实际数据,进行实证研究。
1 引入峰值识别的人工神经网络预测模型(SIBP)
1.1 峰值识别的基本思想
经典BP算法的训练过程由信号的正向传播与误差的逆向传播2个过程组成。其中,误差的逆向传播是基于网络全局误差并按“误差梯度下降”的原则对网络权重进行修改。若对原来基于“全局误差”的权重修改原则进行合理调整,则使权重的修改倾向于减小输出值较大的样本网络映射误差,这是峰值识别原理的基本思想,其实质是在误差逆向传播的网络权重修改过程中,遵循侧重于“峰值样本误差”的权重修改原则。
1.2 峰值识别的算法
峰值识别理论的实现方法,是在引入动量项和采用学习率自适应调整的改进BP算法[8]的基础上,对峰值样本的网络误差引入合理的修正系数,使网络的权重向着使峰值训练误差减小的方向修改。具体算法见文献[9-10]。
2 引入多向全局搜索机制的改进粒子群算法(MPSO)
2.1 PSO算法
PSO算法是一种基于群体的优化方法,算法中种群称作粒子群,个体称为粒子。它的基本概念源于对鸟群或鱼群捕食方式的模拟。一群鸟随机地搜寻食物,它们不知道食物在哪里,但知道当前离食物最近的位置,从而选择搜寻目前离食物最近的鸟的周围区域,以尽快地找到食物[11-12]。PSO算法采用“速度—位置”搜索模型。算法中的每个粒子代表问题的一个可行解,具有位置和速度2个属性,分别表示当前粒子在解空间中的位置和移动速度,以移动速度改变粒子位置,以粒子位置对应的适应度函数值来确定粒子的“优劣”程度。PSO算法首先通过随机初始化,设定一定数量的粒子构成初期形态的粒子群,然后,粒子群追随当前的最优粒子,通过记忆与反馈机制实现高效的寻优搜索,直到达到规定的迭代次数或满足规定的误差标准为止。与传统优化算法相比,PSO算法抛弃了确定的寻优方向,计算寻优步长,然后,迭代求解。该方法不需要导数信息,只要所解的问题便能求出适应值。与遗传算法相比,PSO的优势在于简单,容易实现,同时,高度智能化[13]。
PSO算法中的粒子寻优基本公式如下:
2.2 MPSO算法
PSO算法中每个粒子仅根据自身的个体极值和全局极值这2个信息量来更新自己的速度和位置,并没有考虑其他粒子的信息,粒子群在解空间的搜索是单向的,因而精度不高。把粒子群的搜索方向从单向变为多向是提高搜索精度的一种有效方法。为此,本文提出一种MPSO算法,其基本公式如下:
与PSO算法相比,本文提出的MPSO算法中的粒子根据最优的m个个体极值、全局极值和其他粒子的信息来修正每个粒子下一次迭代的行动策略更新自己的速度和位置,从而考虑了更多粒子在迭代寻优过程中包含的信息,整个粒子群在解空间的搜索是多方向的,搜索速度更均匀,能有效提高算法的精度和全局收敛能力。对于MPSO算法收敛性分析见文献[14-15]。
3 多向搜索粒子群改进峰值识别BP预测模型(MPSO-SIBP)
传统人工神经网络BP模型的学习算法是基于梯度方法,其偏重于局部搜索,缺乏全局搜索能力,通常容易陷入局部极值。这样,在训练后得到的往往是局部极值,而不是全局极值,而且网络训练的效果和网络的初始设置关系紧密。多向搜索粒子群算法通过改进粒子群算法的寻优策略,有效地提高了粒子群算法的全局搜索能力。为此,提出利用多向搜索粒子群算法改进BP算法。具体来说,全局参数通过向搜索粒子群算法来获得,局部的则通过BP算法来实现。这样,将搜索粒子群算法被当作模糊神经系统的离线训练控制器,BP算法则被当作在线训练控制器。通过整合这2种方法提出的新算法在学习能力和算法的稳定性方面都较其他算法有明显改进。本文作者所提出的改进神经网络算法结构如图1所示。
图1 MPSO-SIBP预测模型算法结构图
Fig.1 Structure of MPSO-SIBP forecasting model
4 实证分析
4.1 环境设定
以美国PJM市场2005-02-01至2005-05-16实际电价数据为样本数据,利用2005-02-01至2005-05-14的数据进行网络训练,利用2005-05-15至2005-05-16的数据进行数据测验。计算机CPU型号为Intel(R) Core(TM)2 T5600,1.8 GHz,内存为1 G,DDR2,实现软件平台为Windows XP 2,实现工具为Matlab 7.0。
4.2 实证结果分析
设定预测算法结束条件为误差达到0.001或者训练次数为2 000次,在同样的数据环境以及计算机环境中,将本文提出的算法预测结果与PSO-SIBP,SIBP以及BP算法进行对比,结果见图2和图3。
1—MPSO-SIBP算法;2—PSO—SIBP算法
图2 MPSO与PSO适应度函数曲线
Fig.2 Fitness value curves of PSO and MPSO
1—MPSO-SIBP算法;2—PSO—SIBP算法;3—SIBP算法;4—BP算法
图3 不同算法训练曲线对比
Fig.3 Training curves comparison of different methods
由图2可以看出,引入模拟全局多向搜索机制后,MPSO算法与PSO算法相比,全局优化能力得到增强。由图3可以看出,改进后的MPSO-SIBP算法有效地提高了BP算法的学习能力。
PJM市场的电价预测结果与真实电价对比见图4和图5。由图4和图5可以看出,采用本文提出的预测模型预测曲线更接近于真实的电价曲线,说明本文提出的预测模型能够更好地适应电力市场环境下短期电价预测的需要。2005-05-15的电价波动相对平稳,此时改进后的MPSO-SIBP预测的结果与其他方法相比更接近真实电价;而2005-05-16的电价波动比较剧烈,出现价格尖峰。本文所提出的引入峰值识别机制能够对电价尖峰进行有效模拟。然而,原有的BP算法对于价格突变的时点缺乏很强的识别能力。通过对比,可以看出本文算法处理峰值预测问题的有效性。
1—真实电价;2—MPSO-SIBP;3—PSO—SIBP;4—SIBP;5—BP
图4 2005-05-15 PJM市场的电价预测结果与真实电价对比
Fig.4 Comparison of forecasting results by different methods and real power price on May 15, 2005
1—真实电价;2—MPSO-SIBP;3—PSO—SIBP;4—SIBP;5—BP
图5 2005-05-16 PJM市场的电价预测结果与真实电价曲线对比
Fig.5 Comparison of forecasting results by different methods and real power price on May 16, 2005
不同模型预测PJM市场2005-05-15和2005-05-16 MCP对比结果分别见表1和表2。从表1和表2可以看出,对不存在电价突变的2005-05-15 PJM出清电价进行预测时,采用本文提出的模型其预测精度和预测效率较高。而在对出现电价突变的2005-05-16 PJM出清电价进行预测时,采用本文提出的模型对于价格尖峰预测获得了较好的效果,而采用BP算法所获得的精度较低,仅为86.79%。
表1 不同模型预测PJM市场2005-05-15 MCP结果对比
Table 1 MCP forecasting effects comparison using different methods on May 15, 2005
表2 不同模型预测PJM市场2005-05-16 MCP结果对比
Table 2 MCP forecasting effects comparison using different methods on May 16, 2005
5 结 论
a. 在PSO算法的基础上,MPSO算法综合考虑了更多粒子在寻优过程中的位置信息以更新各个粒子的位置,能有效提高算法的精度。实证分析结果表明,采用MPSO算法能较好地收敛到最优值。
b. 将MPSO算法应用于基于BP学习方法的人工神经网络预测模型,能够提高网络学习能力,有效地解决了BP算法易于陷入局部极值的缺陷。
c. 在引入峰值识别和改进网络学习方法基础上提出的改进预测方法,能够在进一步提高整体预测精度的基础上,对尖峰数据的预测效果明显提高。
d. 本文所提出的算法具有通用性,能够用于研究对峰值识别需求明显的预测问题。
参考文献:
[1] Ho K L, Hsu Y Y, Yang C C. Short-term load forecasting using a multilayer neural network with an adaptive learning algorithm[J]. IEEE Trans on Power Systems, 1992, 7(1): 141-148.
[2] 邓乃扬, 田英杰. 数据挖掘中的新方法—支持向量机[M]. 北京: 科学出版社, 2004: 77-162.
DENG Nai-yang, TIAN Yin-jie. Support vector machine: A new method in data mining[M]. Beijing: Science Press, 2004: 77-162.
[3] 张学工. 关于统计学习理论与支持向量机[J]. 自动化学报, 2000, 26(1): 32-43.
ZHANG Xue-gong. Introduction to statistical learning theory and support vector machines[J]. Acta Automatica Sinica, 2000, 26(1): 32-43.
[4] Conejo A J, Plazas M A, Espinola R, et al. Day-ahead electricity price forecasting using the wavelet transform and ARIMA modes l[J]. IEEE Trans Power System, 2005, 20(2): 1035-1042.
[5] Park D C, El-Sharkawi M A, Marks R J, et al. Electric load forecasting using an artificial neural network[J]. IEEE Trans on Power Systems, 1991, 6(2): 442-449.
[6] 阎平凡, 张长水. 人工神经网络与模拟进化计算[M]. 北京: 清华大学出版社, 2006: 127-143.
YAN Ping-fan, ZHANG Chang-shui. Artificial neural networks and evolutionary computing[M]. Beijing: Tsinghua University Press, 2006: 127-143.
[7] 刘 玲, 严登俊, 龚灯才, 等. 基于粒子群模糊神经网络的短期电力负荷预测[J]. 电力系统及其自动化学报, 2006, 18(3): 47-50.
LIU Ling, YAN Deng-jun, GONG Deng-cai, et al. New method for short term load forecasting based on particle swarm optimization and fuzzy neural network[J]. Proceedings of the CSU-EPSA, 2006, 18(3): 47-50.
[8] 张乃尧, 阎平凡. 神经网络与模糊控制[M]. 北京: 清华出版社, 1998: 35-46.
ZHANG Nai-yao, YAN Ping-fan. Neural networks and fuzzy control[M]. Beijing: Tsinghua University Press, 1998: 35-46.
[9] Lee K Y, Cha Y T, Park J H. Short term load forecasting using an artificial neural network[J]. IEEE Trans on Power Systems, 1992, 7(1): 124-132.
[10] 李鸿雁, 刘寒冰, 苑希民, 等. 人工神经网络峰值识别理论及其在洪水预报中的应用[J]. 水利学报, 2002, 2(6): 15-20.
LI Hong-yan, LIU Han-bing, YUAN Xi-min, et al. Peak value recognition method based on artificial neural network and the application in flood forecasting[J]. Journal of Hydraulic Engineering, 2002, 2(6): 15-20.
[11] Van Den Bergh F, Engelbrecht A P. A cooperative approach to particle swarm optimization evolutionary computation[J]. IEEE Transactions on Evolutionary Computation, 2004, 8(3): 225-239.
[12] Gen M, Yun Y S. Soft computing approach for reliability optimization: State-of-the-art survey[J]. Reliability Engineering & System Safety, 2006, 91(9): 1008-1026.
[13] HE Qie, WANG Ling. An effective co-evolutionary particle swarm optimization for constrained engineering design problems[J]. Engineering Applications of Artificial Intelligence, 2007, 20(1): 89-99.
[14] CLERC M, KENNEDY J. The particle swarm-explosion, stability, and convergence in a multidimensional complex space[J]. IEEE Transactions on Evolutionary Computation, 2002, 6(1): 58-73.
[15] Ha C H, Kuo W. Reliability redundancy allocation: An improved realization for nonconvex nonlinear programming problems[J]. European Journal of Operational Research, 2006, 171(1): 24-38.
收稿日期:2008-03-23;修回日期:2008-05-15
基金项目:国家自然科学基金资助项目(50077007)
通信作者:李彦斌(1967-),男,山西离石人,副教授,硕士生导师,从事电力企业管理理论、经济技术评价与决策优化研究等;电话:010-80798623;E-mail: liyanbinbj@126.com