摘要: 传统灰色预测模型gm(1,1)在预测增长较快的电力负荷时预测效果会变差,为克服这一缺陷,首先对原始数据进行开次方处理使数据增长变平稳,再将差异演化算法与gm(1,1)模型相结合,利用差异演化算法求解gm(1,1)模型中的参数。电力负荷预测实例结果表明该模型具有较高的预测精度和较广的应用范围。
abstract: when predicting the fast-growing electric load, the prediction result of gray prediction model gm (1,1) is bad. in order to overcome this shortcoming, it first needs to extract the original data so that the data growth becomes stable, then combine differential evolution algorithm with gm (1,1) model, and solve the parameters of gm (1,1) model by differential evolution algorithm. instances of power load prediction results show that the model has higher prediction accuracy and a wide range of applications.
关键词: 电力负荷预测;灰色模型;背景值;差异演化算法
key words: electric load forecasting;gray model;background value;differential evolution algorithm
中图分类号:tm73 文献标识码:a 文章编号:1006-4311(2013)20-0058-02
0 引言
本文首先通过对原始数据进行开次方处理来降低其增长率,使数据的增长变的较为平稳,其次,为避免因背景值取值不当而造成误差,将差异演化算法[1]与gm(1,1)模型相结合,用差异演化算法优化gm(1,1)模型中的参数,提出基于差异演化算法优化灰色模型的负荷预测。仿真实验表明该模型提高了预测精度,优于gm(1,1)模型和文献[2]提出模型的预测效果,拓展了灰色预测模型的使用范围,为工程应用提供了重要参考。
1 gm(1,1)的原理
gm(1,1)模型是电力负荷预测常用的一种灰色模型。原理如下:设有n个原始负荷样本数据x(0)=(x(0)(1),x(0)(2),…,x(0)(n)),作一阶累加生成序列x(1)=(x(1)(1),x(1)(2),…,x(1)(n)),序列x(0)和x(1)中对应数据之间的关系为x(1)(k)=■x(0)(i)(k=1,2,…,n)。
构造一阶线性灰色微分方程,后,可得该方程的白化微分方程■+ax(1)=u,其对应的差分方程组为
x(0)(2)+■a[x(1)(2)+x(1)(1)]=ux(0)(3)+■a[x(1)(3)+x(1)(2)]=ux(0)(n)+■a[x(1)(n)+x(1)(n-1)]=u(1)
利用最小二乘法求得参数au=(btb)-1bty(2)
其中b=■[x(1)(1)+x(1)(2)] 1■[x(1)(2)+x(1)(3)] 1 ■ ■■[x(1)(n-1)+x(1)(n)] 1,y=x(0)(2)x(0)(3)■x(0)(n)。
由(2)式求得a和u后,得原始数据预测公式:
■(0)(k+1)=(1-ea)[x(0)(1)-■]e-ak,k=1,2,…。(3)
2 差异演化算法
差异演化算法是基于实数编码的进化演化算法。下面通过求解非线性函数f(x1,x2,…,xn)的最小值问题,xj满足x■■?燮xj?燮x■■,j=1,2,…,n来介绍差异演化算法的操作过程:
令xi(t)是第t代的第i个染色体则xi(t)=(xi1(t),xi2(t),…,xin(t)),i=1,2,…,m;t=1,2,…,tmax。
2.1 生成初始种群 在n维空间里随机产生满足约束条件的m个染色体,实施如下措施:
xij(0)=randij(0,1)(x■■-x■■)+x■■
i=1,2,…,m j=1,2,…,n(4)
其中,x■■,x■■分别是第j个变量上界和下界,randij(0,1)是[0,1]之间的随机小数。
2.2 变异操作 从群体中随机选择3个染色体xp1,xp2,xp3且(i≠p1≠p2≠p3,f(p1)
2.3 交叉操作 交叉操作是为了增加群体的多样性,具体操作如下:
vij(t+1)=hij(t+1) randij(0,1)?燮pc或j=rand(i)xij(t) randij(0,1)>pc且j≠rand(i)(6)
randij(0,1)是在[0,1]之间的随机小数,pc为交叉概率,pc∈[0,1],rand(i)为在[1,n]之间的随机整数,这种交叉策略可确保xi(t+1)至少有一分量由hi(t+1)的相应分量贡
献。
2.4 选择操作 为了决定xi(t)是否成为下一代的成员,向量vi(t+1)和目标向量xi(t)对评价函数进行比较: xi(t+1)=
vi(t+1), f(vi1(t+1),…,vin(t+1)) (7)
反复执行2.1至2.4操作,直至达到最大的进化代数tmax。
3 差异演化算法优化灰色模型
gm(1,1)模型在预测增长较快的负荷时,预测精度会变差,文献[3]证明gm(1,1)引入背景值x(1)(k)=■[x(1)(k)+x(1)(k+1)]是导致模型在预测增长较快的负荷时预测精度变差的原因。为使数据的增长较为平稳,可通过对原始数据序列的每个数据开次方来降低其增长率,从而获得一个增长较为平稳的新数据序列。同时为了避免因背景值的选取不当而造成误差,利用差异演化算法来求解gm(1,1)模型中的参数a和u,得到基于差异演化算法优化的灰色预测模型,其操作步骤如下:
①对原始数据开次方:x′ (0)(k)=■,k=1,2,…,n,m,为大于1的正整数;②在2维空间里随机产生m个个体。xi(t)=(ai(t),ui(t)),i=1,2,…,m;t=1,2,…,tmax。其中,m为群体规模,tmax为最大进化代数;③计算每个个体的适应值。f(xi)=■[x′(0)(k)-■′(0)(k)]2,其中x′(0)(k)和■′(0)(k)分别为负荷做开次方处理后的第k个实际值和预测值;④利用公式(5)、(6)和(7)来更新个体;⑤如果迭代次数大于最大迭代次数或目标函数达到设置的理想值,结束迭代输出a和u;否则返回步骤2;⑥把a和u代入公式(4)得到开次方处理后的预测值■′(0)(k);⑦对预测值■′(0)(k)进行还原■(0)(k)=(■′(0)(k))m,k=1,2,…,n。
4 仿真实验
为了验证本文提出模型的有效性,采用文献[2]中的三组数据进行仿真实验,并将实验结果与gm(1,1)模型和文献[2]提出的psogm模型所得的结果进行对比。实验中m=500,tmax=500,?姿=0.5,pc=0.9,m=3,m、mtax与psogm模型中的设置一致。表2给出了用gm(1,1)模型和psogm模型以及本文模型的建模结果。
本文提出的模型又要好于psogm模型,表明本文模型在预测增长较快的负荷时拥有较高的预测精度。
5 结论
针对gm(1,1)模型的应用局限性,通过对原始数据开方处理和利用差异演化算法优化gm(1,1)模型参数,提出一种基于差异演化算法优化灰色模型的负荷预测,实例分析表明,该模型可以显著提高预测精度,同时,模型简单、易行,比较符合负荷的实际变化趋势,具有一定的理论意义和应用价值。
参考文献:
[1]王鹏,陈根友,岳志强.基于组合模型的中长期电力负荷预测研究[j].价值工程,2012(09).
[2]李益民,闫泊,卓元志,李康,张辉.组合负荷预测方法综述[j]. 价值工程,2012(36).
[3]岳志强,王鹏.火电企业的项目工程造价管理研究[j].价值工程,2011(36).