基于蛙跳算法的改进支持向量机预测方法及应用
2011-08-04宋晓华杨尚东刘达
宋晓华,杨尚东,刘达
(1. 华北电力大学 经济与管理学院,北京,102206;2. 国网能源研究院 科研发展部,北京,100052)
中长期能源需求总量预测是谋划能源工业科学发展的重要基础性工作。能源需求总量的变化受到多种复杂因素的影响,如何提升其预测的准确性一直吸引着众多学者关注和研究。传统研究方法多基于统计学的多元线性回归或时间序列方法,这些方法对于趋势性因素的模拟比较精确,但是,难以模拟复杂因素对于中长期负荷变化的影响[1]。自20世纪90年代以来,人工神经网络方法逐步被应用到中长期能源需求预测中[2]。最近,有研究者利用群智能算法来改进支持向量机的学习机制,以进一步提升算法学习能力和预测模型的精度。支持向量机预测的效果在很大程度上受到其核函数中关键参数选择的影响[3],为此,本文作者提出应用蛙跳算法,以解决支持向量机关键参数盲目选择问题,提高算法的预测效果。通过对 2001—2009年中国能源需求总量进行预测,并将本文提出算法(SFLA-SVM)与用PSO改进的支持向量机以及普通支持向量机回归预测模型(SVM)进行比较,以验证蛙跳算法引入后,对解决支持向量机核函数关键参数的选择所产生的改进效果。
1 蛙跳算法
2003年,Eusuff等[4]在粒子群算法的基础上,结合混合竞争进化(Shuffled complex evolution, SCE)提出了蛙跳算法(Shuffled frog leaping algorithm, SFLA)。这是一种受自然生物模仿启示而产生的基于群体的协同搜索方法[4]。该算法模拟青蛙群体寻找食物时按族群分类进行信息传递的过程,在同一族群内进行局部深度搜索,离食物源最远的青蛙将主要依据族群内距离食物源最近的青蛙提供的信息调整自己的位置,向食物源靠近。……