黄国栋
摘要:风电场发电机组的输出功率预测对保证电力系统的安全稳定运行有重大意义。支持向量机法在风电预测问题中应用广泛,最小二乘支持向量机为传统支持向量机的改进方法,结合上述两种方法以及粒子群算法分别建立风电功率预测模型,选取某一实际风电场数据进行风电功率预测研究,并对结果进行误差分析,仿真结果表明了最小二乘支持向量机方法的适用性和优异性。
关键词:最小二乘支持向量机;粒子群算法;风电功率预测;支持向量机
中图分类号:TM315 文献标识码:A 文章编号:1007-0079(2014)33-0182-03
随着风电技术的迅速发展和风电场规模的持续扩大,风电对现代电力系统的意义愈发明显,因此,必须对风电进行有效的规划和调度以保证电力系统的安全稳定运行。然而,风电的间歇性和随机性特点使得电网调度的难度大大增加。而对风电功率进行预测既可以为调度提供可靠的依据,也可以通过确定系统的旋转备用容量,从而大大降低风电系统的运行成本,因此对风电系统的发电量进行准确预测具有重大意义。[1]
风电功率预测是基于风力发电历史数据来推测未来的风电出力情况。目前风电功率预测的常用方法主要有支持向量法、持续法、时间序列法、卡尔曼滤波法、人工神经网络法、空间相关法、模糊逻辑法、物理预测法等。[1-9]每种方法都有其特点和缺陷。支持向量机法通过对大量数据的学习和训练得到预测模型,结合结构风险最小化原则对风速数据进行预测,此方法有较强的适应能力,该方法已在风电预测问题得到广泛应用。最小二乘支持向量机是支持向量机的改进方法,该方法通过非线性映射将变量转换到高维特征空间中,避免了传统支持向量机的二次规划的方法,提高了方法的效率和准确性。[10]
针对风速的随机性,本文分别建立了传统支持向量机和最小二乘支持向量机的风电功率预测模型,并选取实际样本数据进行风电预测的仿真验证。
一、支持向量机
1.传统支持向量机
传统支持向量机方法以结构风险最小化为原则,根据事先获得的序列样本信息,在预测模型的复杂性和学习能力之间寻求一个最佳折衷解,使求得的解具有较好的泛化能力。[11]
機器学习的观测样本在一组函数中求一个最优的函数对依赖关系进行估计,使期望风险最小,的计算关系如下:
(1)
式中,为预测函数集合;w是预测函数的广义参数;是用预测函数对输出变量y进行预测而造成的损失,不同的学习问题其损失函数的形式不同。
支持向量机(SVM)在应用于风电功率预测时,主要目的在于寻找一个函数,使期望风险函数值最小。风电功率预测问题的损失函数一般为:
(2)
式中,p为根据具体预测问题确定的一个正整数。根据结构风险最小化原则,有:
(3)
其中,为经验风险,为复杂度的一种度量,确定了的上限。
在运用支持向量机预测风电功率时,首先给定以为概率的风速序列观测样本集,设定回归函数为:
(4)
并引入结构风险函数:
(5)
式中:为描述函数;为模型复杂度;C为常数,结构风险的作用在于使学习和预测在经验风险和模型复杂度之间取一个折中。由此可知,式(5)所代表的回归问题就可以等价于结构风险最小:
(6)
同时,满足约束条件:
(7)
式中,ε是估计精度,ζi、ζi*为模型中引进的松弛变量,旨在处理函数f在ε精度下无法估计的样本数据,使得该回归函数有解。
由于风速随机性的特点,观测到的风速样本序列也是随时间空间非线性变化的序列,单纯使用一个线性回归函数来模拟风速过程是不合理的,因此,需要通过一个非线性的映射A将风速输入量x映射到高维特征空间中,该过程可通过构造核函数实现,核函数的作用是实现低维非线性空间转化高维线性空间,可表示为:
(8)
这样,风电功率预测模型便成了一个二次规划模型,求解这个二次规划模型得到α的值,同时得到w的值,最终求得回归函数,如式(9)所示。
(9)
式中,为不为零时所对应的风速样本数据,是该预测模型的支持向量。采用KKT(Karush-Kuhn-Tucker)条件来计算常值偏差b,根据预测结果进行误差分析。
2.最小二乘支持向量机
传统的支持向量机应用于风电功率预测时,需要经过核函数的转换,将求解过程转换成一个二次规划过程,这种方法降低了效率,而且收敛精度不高,而最小二乘支持向量机(LSSVM)的方法利用最小二乘线性系统作为损失函数,避免了二次规划的过程,同时,利用核函数将预测问题转化为方程组的求解,将不等式约束转化为等式约束,增加预测的准确度和速度。[10]
对于事先获得的训练样本集,利用一个非线性映射φ将样本空间映射到特征空间,并在高维空间中构造最优决策函数:
(10)
这样,原本的非线性估计函数便转化成为了高维的线性估计函数,同样利用结构风险最小化原则,构造损失函数为:
(11)
约束条件为:
(12)
运用拉格朗日法求解式(12),可以得到:
(13)
式中,为拉格朗日乘子,由KKT(Krush-Kuhn-Tucker)条件件可知:
(14)
最后,只须通过核函数,将上述的优化过程转化为线性方程,再进行求解即可,核函数为,一般效果较好的是径向基核函数,转化后的线性方程组为:
(15)
用最小二乘法求解上式,得到回归系数αi和偏差b,便能得到非线性预测模型:
(16)
通过上述可知,基于最小二乘支持向量机的预测模型避免了二次规划的问题,而且将预测问题转化为求解线性方程组的过程,其求解过程大大简化,方法中主要通过对预测模型中的几个重要参数进行优化,其优化过程更有利于提高优化算法在计算时的精度。
二、粒子群算法
粒子群算法中将每个个体称为一个粒子,这些粒子在搜索空间中以一定的规则飞行,并根据粒子本身以及个体与个体之间的飞行经验对自身的飞行速度进行调整。每个粒子本身达到过的最优位置称为个体最优值,所有粒子达到过的最优位置称为全局最优值。粒子在每次迭代中通过个体最优值和全局最优值更新自身的飞行速度,以期达到最优位置。[11]粒子的更新公式如下所示:
(17)
(18)
式中,是第i个粒子在第k次迭代中的速度,pik、pgk分别是个体最优值和种群最优值,c1和c2是学习因子,通常取0.2;ω是惯性常数,通常取0.4。
粒子群算法的过程为:首先对算法中粒子的速度和位置进行初始化,初始化个体最优位置并在其中选择全局最优位置;在迭代中更新每个粒子的速度,以个体的速度更新粒子的位置,将结果进行比较并更新最优位置。整个算法的计算流程如图1所示。
三、风电功率预测模型
1.训练数据选择和处理
由于风速具有随机性,选择良好的训练样本数据显得尤为重要,同时,影响风电场输出功率的因素不仅只有风速,风电场的风向、温度、湿度等对输出功率都存在影响,若训练采用的样本数据过多,增加了计算的成本,若采用的样本数据过少,预测结果的准确度将大大降低。本文选用某一风电场进行研究,该风电场风向常年的主导风向为西南风。本文在综合考虑多种因素的基础上选择风速采集样本作为输入数据,预测该风电场的实测输出功率。
在选定训练样本数据的基础上,对数据进行归一化处理,以此减少不健康数据对模型准确度的影响,加快模型的优化的收敛速度,归一法方法采用如下式的方法:
(19)
式中,是训练样本T中的某个数据归一化后的结果;xmax和xmin分别是训练样本T中该组变量数据的最大值和最小值。
2.风电功率预测模型
采用PSO分别结合SVM和LSSVM建立风电功率预测模型,SVM预测模型采用经典预测模型,本文主要介绍LSSVM的预测模型,选定SVM和LSSVM的核函数均为高斯核函数,高斯核函数是使用较多的径向核函数[12,13],其函数式如下所示:
(20)
式中,σ称为核宽度,反映了边界封包的半径。该核函数是以个径向基核函数。结合上文所述,在LSSVM模型中,惩罚参数C和核宽度σ是影响该模型性能最大的两个参数,本文采用粒子群算法对这两个参数进行优化,并最终得到预测结果,基于LSSVM的风电功率流程所示,具体预测步骤如下:
(1)选取合适的训练样本数据,并对样本数据进行归一化处理。
(2)初始化最小二乘支持向量机(LSSVM)和粒子群算法(PSO)的各参数。
(3)以回归误差平方和最小为目标函数,采用粒子群算法(PSO)对最小二乘支持向量机(LSSVM)的参数进行优化。
(4)将优化的结果代回最小二乘向量机(LSSVM)的模型中,进行重新训练。
(5)根据得到的风速、风向等数据,使用训练好的回归模型对风电场的输出功率进行预测。
四、仿真研究
1.仿真研究结果
实测得到各发电机的数据受实测时的情况影响,为保证预测的准确性,选取其中数据较完全的一组数据作为训练样本数据进行预测。采集到的该机组数据共600组风速,作为输入数据以及600组发电机输出功率数据作为输出数据。
图2为基于LSSVM的风电预测结果图,其中时间间隔为12分钟,即图中每个点的间隔为12分钟。从图中可知,预测值曲线的走势与实测值基本一致。
图3为基于SVM的风电预测结果,同LSSVM的预测结果,预测曲线走势基本与实测值保持一致,具体结果的优劣性还需进行进一步分析。
2.仿真结果分析
为评价预测模型的准确度,以及预测结果是否合理,本文对预测的结果进行误差分析。图4为预测结果的绝对误差分布图,由于观测点过多,从图中不易看出两种预测模型结果的优劣程度。
对两种模型的结果进行误差指标的计算,计算结果如表1所示。
表1 两种模型的结果误差分析
误差指标 SVM LSSVM
误差平方和 22552 19833
均方误差 1.2514 1.1736
平均绝对百分比误差 0.0180 0.0160
均方百分比误差 0.0015 0.0009
在表1中可知,基于LSSVM的风电预测结果在各方面都优于基于SVM的风电预测结果,验证了其优异性。
五、结论
本文在传统支持向量机的基础上,引入了最小二乘支持向量机(LSSVM),并針对风电预测问题分别建立了风电功率预测模型,并采用具有全局搜索能力的智能优化算法粒子群算法(PSO)分别对模型中的参数进行优化,选取实际风电场数据对该两个模型进行风电预测的对比分析,结果表明:LSSVM预测模型取得的预测结果精度较高,并在预测模型结果的对比中,其误差和精度均优于传统的支持向量机(SVM)预测模型的预测结果,验证该模型的适用性和优异性。
参考文献:
[1]李丽,叶林.基于改进持续法的短期风电功率预测[J].农业工程学报,2010,26(12):182-187.
[2]杨秀媛,肖洋,陈树勇,等.风电场风速和发电功率预测研究[J].中国电机工程学报,2005,25(11):1-5.
[3]时庆华.基于卡尔曼滤波和神经网络的短期风电功率预测[D].南京:东南大学,2010.
[4]周松林,茆美琴,苏建徽,等.基于主成分分析与人工神经网络的风电功率预测[J].电网技术,2011,35(9):128-132.
[5]吴栋梁,王扬,郭创新,等.基于改进GMDH网络的风电场短期风速预测[J].电力系统保护与控制,2011,39(2):88-93,111.
[6]叶林,刘鹏.基于经验模态分解和支持向量机的短期风电功率组合预测模型[J].中国电机工程学报,2011,31(31):102-108.
[7]李文良,卫志农,孙国强,等.基于改进空间相关法和径向基神经网络的风电场短期风速分时预测模型[J].电力自动化设备,2009,
29(6):89-92.
[8]冯双磊,王伟胜,刘纯,等.基于物理原理的风电场短期风速预测研究[J].太阳能学报,2011,32(5):611-616.
[9]张学工.关于统计学习理论与支持向量机[J].自动化学报,2000,
26(1):32-42.
[10]张浩然,汪晓东.回归最小二乘支持向量机的增量和在线式学习算法[J].计算机学报,2006,29(3):400-406.
[11]张利彪,周春光,马铭,等.基于粒子群算法求解多目标优化问题[J].计算机研究与发展,2004,41(7):1286-1291.
[12]阎威武,邵惠鹤.支持向量机和最小二乘支持向量机的比较及应用研究[J].控制与决策,2003,18(3):358-360.
[13]谢宏,魏江平,刘鹤立,等.短期负荷预测中支持向量机模型的参数选取和优化方法[J].中国电机工程学报,2006,26(22):17-22.
(责任编辑:王祝萍)