关键词:卡尔曼滤波;电力负荷预测;预测模型
Power system short-term load forecast by Kalman filter
Li Ming-gan, Sun Jian-li, Liu Pei
(Huazhong University of Science & Technology, Wuhan 430074, China)
Abstract: Kalman filter algorithm is introduced in this paper firstly, and a set of formula is presented. Then Kalman filter model is used in short-term load forecast. And the model is revised by a approach aims at the specialty of load forecast. ApplicaTIon of these algorithms gains preferably results.
Key words: Kalman filter; power load forecast; forecast model
0 前言
短期负荷预测是电力系统运行调度中一项非常重要的内容,它是电网安全经济运行的前提,也是调度安排开停机计划的基础,对电网调度自动控制非常重要,其预测精度直接影响电力系统的经济效益。随着电力改革的深化,电力市场的进一步开放,高质量的短期负荷预测愈显得重要和迫切。
负荷预测的方法较多,传统的方法有回归分析法[1]和最小二乘法[2]等,这些方法算法比较简单,技术成熟,但因其模型过于简单,难以将电力系统运行过程中负荷变化的新的信息反映到模型中去,因而预测精度不尽如人意。近年来人们不断致力于将新的理论与方法应用于负荷预测,并取得了很大进展,提出了混沌模型方法[3]、神经网络(RBF)[4]、模糊神经网络方法[5]、专家系统方法[6]等。这些方法取得了比传统方法更好的预测结果。
卡尔曼滤波(KF)是Kalman于1960年提出的,是采用状态方程和观测方程组成的线性随机系统的状态空间模型来描述滤波器,并利用状态方程的递推性,按线性无偏最小均方差估计准则,采用递推算法对滤波器的状态变量做最佳估计,从而求得虑掉噪声的有用信号的最佳估计。卡尔曼滤波理论不仅有滤波器模型,它还有预报器模型[7],通过对模型参数的估计,实现对观测序列的预报,因此卡尔曼滤波适合于短期负荷预测。
将卡尔曼滤波用于短期负荷预测在国外已有研究,M.Huelsemann, M.D. Seiser等人1998就对用卡尔曼滤波和自相关进行负荷预测进行了探讨[8],提出了用卡尔曼滤波进行负荷预测的思路,取得了理论上的突破。随后,Ngan, H.W. 等人也对此方法进行了探讨[9],并取得了一定的进展。国内,虽有将卡尔曼滤波其他方面的预测,但用于负荷预测研究的尚属初探。笔者利用卡尔曼滤波理论建立了电力系统短期负荷预测模型,利用历史数据中的负荷数据和气象数据等相关数据,进行了短期负荷的预测。
1 卡尔曼滤波模型简介
考虑线性离散时间系统:
式中:x是n维状态变量,Φ(t+1,t)是n×n的状态转移矩阵,B(t)是n×r的输入噪声转移矩阵,w(t)是p维的输入噪声;y(t)是m维的测量向量,H(t)是m×n维测量矩阵,v(t)是m维的测量噪声。
式中:E表示数学期望,p×p阶的输入噪声协方差阵Q(t)是对称正定的;m×m阶的测量噪声协方差阵R(g)是对称正定的。
又设初始状态x(0)独立于w(t)和v(t),且已知其统计特性为:
详细推导过程见[7]。
2 卡尔曼滤波负荷预测模型
以连续若干天的同一时刻作为一组时间序列,来预测该时刻的下一个负荷值。通常,负荷值可以分为几个部分:
刻的基本负荷,Lpk(t)为前一天同时刻的的负荷值,LTk(t)为该时刻的气温,Vk(t)为误差,HNk(t)、HPk(t)、HTk(t)均为参数矩阵。由于预测的是某个时刻的值,所以式中的各个量都是一维的。
为方便应用卡尔曼滤波理论进行状态预测,特作如下变换:
式中:yk(t)是观测值,Hk(t)为观测矩阵,Φk(t)为状态转移矩阵,Wk(t)为状态误差。由于在本文中状态变量是连续若干天的同一时刻的温度,它在短期的负荷预测中可以看成是缓变状态,因此可令Φk(t)=I,I为单位阵。
2.1改进模型
在实际预测过程中,一般可以提供预测时刻的气温预报值,或者通过几个点的预报值通过插值获得其他点的气温值。本文提出了预测值修正方法,即在此预测值的基础上加上温度修正值的负荷预测方法。
设待预测的第(t+1)天时刻负荷的卡尔曼滤波预测值为yk(t+1|t),该时刻的状态估计值为LTK(t+1|t),,而该预测时刻的气温预报值为Tk。状态估计值是卡尔曼滤波器通过历史负荷得到的对系统下一个时刻的状态的最佳估计,而预报获得的系统的新的状态值则反映了系统的未来状态,因此他们的组合能够让预测模型获得更多的信息,从而得到更加准确的预测值。为利用此信息,可以对预测得到的值进行修正,即在[Tk-LTK(t+1|t)]前乘以一个修正系数,即:
式中:bk为修正系数,可以通过试验获得,yk(t+1)为该时刻修正后的负荷预测值。
3 短期负荷的预测实例
用卡尔曼滤波以及改进后的模型对武汉地区电力负荷进行预测实例计算。在实践中初始状态xk(0|0),Pk(0|0)很难准确掌握。但由于卡尔曼滤波在递推过程中不断用新的信息对状态进行修正,所以当滤波时间充分长时,状态初值xk(0|0)对xk(t+1|t)的影响将衰减至近于零,初始协方差阵Pk(0|0)对滤波估计协方差阵Pk(t+1|t)的影响也将衰减至于零。因此,滤波的初始条件可以近似确定。
每一次递推运算中,要先求出预测值xk(t+1|t),然后根据预测值计算出预测误差的方差Pk(t+1|t),由最佳滤波规则计算卡尔曼增益Kk(t+1),经过卡尔曼增益的误差补偿后获得最佳滤波值xk(t+1),再由预测方程计算负荷预测值。
其中温度参数在待预测天以前由历史数据获得,并对其进行滤波估计,而待预测天的温度则由当天的温度预报获得。
引入误差指标:
相对误差:
应用卡尔曼滤波模型以及改进后的模型对武汉地区的电力负荷进行实际预测,随意抽取某一天的预测结果及误差见下图(1)、(2)、(3)、(4)。
图1是该天24小时的卡尔曼滤波预测值与实际值的比较,图2是24点的卡尔曼滤波的预测误差,其平均绝对相对误差为3.43%,图3是用改进的算法计算该天24小时的负荷值与实际值的比较,图4为改进后的算法的24点的相对误差,其平均绝对相对误差为2.94%,由此可见,改进算法是有效的。
4 小结
本文运用卡尔曼滤波理论建立了短期负荷预测模型,并进行短期负荷预测,通过算例证实了卡尔曼滤波模型预测的可行性。同时针对负荷预测的特点,通过对卡尔曼滤波算法的改进,提高了预测的精度。
由于卡尔曼滤波器在递推过程中不断用新息对状态估计进行修正,所以卡尔曼滤波是渐进稳定的,当时间序列足够长时,初始状态的状态值、协方差阵对估计的影响都将衰减为零。所以卡尔曼滤波模型能够不断更新状态信息,获得比较准确的估计值。此方法不仅可以用于短期预测,同样可以用于超短期负荷预测。