基于CS-SVR模型的短期风电功率预测

2020-02-27 12:47王小娟刘俊霞郑连清
计算机测量与控制 2020年1期
关键词:电功率布谷鸟鸟巢

王小娟, 刘俊霞, 胡 兵, 郑连清

(1.新疆工程学院 公共基础学院,乌鲁木齐 830011; 2.新疆工程学院 控制工程学院,乌鲁木齐 830011)

0 引言

风能凭借储量丰富、分布广泛和清洁无污染越来越引起人们的关注。近年来,随着我国风电装机容量的逐步增长,风力发电规模逐渐增大,风力发电占电网总发电量的比例逐步加大。然而因风能有波动性、间歇性、低能量密度等特征,导致风电功率具有同样的特征,当大量风电并网,会对电力系统的安全稳定运行产生严重影响,为此需要采用适当的方法准确预测短期风电功率,从而根据预测的风电功率对风力发电进行合理调度,以避免风电大量并网所带来的影响。

为了准确预测风电功率,国内外学者开展了大量研究,对于短期风电功率的预测研究主要有物理模型法、统计模型法、智能算法模型和组合模型法[1-2]。物理模型法需要根据风电场实际气象数据及地理物理信息预测未来的气象,建立气象数据与风电功率的映射关系[2-3],具有鲁棒性强、计算时间短、不需要历史数据的支持的优点,但是建模过程复杂,要求对数据采集精度高。统计模型法根据风电场历史风速或者风机输出功率数据,采用系统辨识、曲线拟合等方法预测短期风电功率,常用的统计模型有时间序列法、灰色关联度法、聚类分析法等[4-5]。统计模型法具有建模简单的优点,但是该预测方法仅仅考虑历史风电功率数据或风速数据,不考虑其他气象数据和风机运行状态数据,预测精度受影响。智能算法模型根据某种学习算法,通过训练、测试历史气象数据和风电数据建立输入数据与输出数据的映射关系预测短期风电功率,常用神经网络法、支持向量机法等[6-8]。这种预测方法不需要具体的数学表达式,建模简单,精确度高,但是容易出现过学习和陷入局部最优的缺点。组合模型法综合上述方法,采用两种以上预测方法进行等权组合或非等权组合来提高预测精度[9-10],具有预测精度高的优点,但是该方法存在参数多、预测运行时间长的缺点。

上述方法分别从不同角度,不同方面预测风电功率,各种方法各有优缺点,由于风电功率数据为波动性和随机性很强的非线性数据,智能算法模型中的支持向量回归机具有良好的非线性映射能力,鲁棒性强,本文选取支持向量回归机预测短期风电功率,针对支持向量回归机预测过程中会出现参数寻优难和容易陷入局部最优的缺点,选取具有全局搜索能力和局部搜索能力强的布谷鸟算法优化模型参数,并通过算例对比分析,验证本文所提算法预测精度较高。

1 支持向量回归机

支持向量机回归机是一种基于统计学习理论的监督学习算法,该算法由Vapnic[11]自2002年提出以来得到广泛的应用,算法假定训练集数据为D={(xi,yi)},每个xi∈Rm代表输入空间的一个样本,yi∈R是该样本对应的输出值,其中i=1,2,L,N,m为训练数据的维数,SVR试图找到一种遵循与训练样本点相同概率分布的函数f(x),它能够对给定训练样本之外的输入,得到近似输出值,其数学表达如下:

f(x)=〈w,x〉+b

(1)

其中:w∈Rm为权值;b∈R为阈值;

实际应用过程通常为非线性,需要一个非线性的公式,SVR方法应用一个非线性映射函数将输入值转换为具有更高维度的特性空间,其数学表达如下:

f(x)=〈w,φ(x)〉+b

(2)

其中:φ(x)为非线性映射函数。

SVR模型的训练需要最小化权值w和b阈值,可以通过最小化欧几里得范数来实现。从而问题转化为一个凸优化问题,即:

s.t.yi-〈w,φ(x)〉-b≤ωi=1,L,n

〈w,φ(x)〉+b-yi≤ωi=1,L,n

(3)

凸优化的约束假设问题是可行的。然而实际应用过程中因为有通信、误差等因素的影响会出现错误和不可行的约束,为此需要引入了两个松弛变量来扩大回归的容忍度。因此,最小化问题转换为以下二次规划[12]。

s.t.yi-〈w,φ(x)〉-b≤ω+ξii=1,L,n

(4)

引入拉格朗日函数,经对偶转换得到的回归函数的表达式为:

(5)

用核函数k(xi,x)代替上述等式中映射函数的点积,重新定义SVR函数为:

(6)

系统选用RBF核函数为:

(7)

式中,g为核函数参数。

从上述介绍中可以看出,误差惩罚系数C和核函数参数g关系到SVR的预测性能,选择合适的参数可以很好的提高SVR的泛化能力和预测精度。本文采用布谷鸟算法优化SVR参数。

2 布谷鸟算法

布谷鸟搜索算法是一种自然启发的元启发式搜索算法,该算法由Yang和Deb[13]于2009年提出,算法基于布谷鸟的巢寄生繁殖策略和Levy飞行策略发展而来[14]。Levy飞行是指自然界中的动物或昆虫在寻找食物过程中表现出的方向随机、步长符合Levy分布的飞行行为,具有频繁的短距离的局部搜索能力和少数的长距离的全局搜索能力[15]。

布谷鸟搜索算法假定鸟巢中的卵为解,布谷鸟卵为新解,寻优过程为用更好的新解代替不好的解的过程,算法对全局最优问题非常有效,因为它维持了局部漫步与全局漫步的平衡,这个平衡由参数p(a)来控制,其局部漫步定义如公式(8)。

(8)

(9)

L(s,λ)是Levy分布,用于定义随机漫步的步长,表达式如公式(10).

(10)

3 布谷鸟算法优化SVR

本文采用布谷鸟算法具有良好的局部寻优能力和全局寻优能力对SVR的误差惩罚系数、核函数参数进行优化,算法流程图如图1所示。

图1 CS算法寻优流程图

寻优步骤如下:

1)风电功率数据预处理。对采集的风电样本数据进行异常数据剔除,并保存处理好的样本数据。

2)参数初始化。设置迭代次数T、鸟巢数量n、被宿主发现的概率P(a)、设置C、g的取值范围。

4)找最优鸟巢位置。以均方误差作为适应度函数,计算适应度值,即:

(11)

5)更新鸟巢位置。用Levy飞行更新N鸟巢的位置,判断新鸟巢适应度值与上一代适应度值,如果新鸟巢适应度值更优,就更新鸟巢位置,否则保持上次位置。

6)用[0,1]随机数r与p(a)比较,不改变r≤p(a)的鸟巢位置,以随机步长改变其他鸟巢位置,判断新鸟巢与原鸟巢的适应度值,如果新鸟巢值更优,则替换原鸟巢位置,否则保留原鸟巢位置,这样产生了最新的鸟巢位置。

7)找出6)中最优鸟巢位置,比较是否到达设置迭代次数,到达设置迭代次数则该位置为最优位置,否则要求从4)重新执行。最后得到的最优鸟巢位置为SVR中参数和参数的最优值。

4 试验验证

4.1 数据采集

实验数据采集来源于新疆某风电场三期工程,该工程中共有33台1.5 MW的永磁直驱风力发电机,实验数据为其中1号风力发电机每隔10 min采集一次的数据,共采集10天1 440个数据。数据集详细记录了风力发电机平均功率(kW)、最大功率(kW)、平均风速(m/s)、最大风速(m/s)、电机转速(rpm)、最高机舱温度(℃)、最高环境温度(℃)、最大桨叶角度(℃)、平均桨叶角度(℃)、风机状态、风速(m/s)、功率(kW)、发电量(kWh)、发电时间(h)等共计50个物理因素的数据,实验选取其中平均功率(kW)、最大功率(kW)、平均风速(m/s)、最大风速(m/s)、电机转速(rpm)、风机状态、风速(m/s)七个物理因素与风电功率(kW)建立基于CS-SVR的数学模型,并对模型的性能进行评价。

4.2 数据预处理

由于上述实验数据中存在异常数据,采用上截断点和下截断点判断异常数据的方法对异常数据进行剔除[16]。其数学表达式如下:

Dup=Q1+1.5R1

Ddown=Q1-1.5R1

(12)

式中,Dup、Ddown分别为上截断点和下截断点,Q1为下四分位数,R1为四分位极差,即上四分位数与下四分位数只差。

将实验数据分别与截断点进行比较,大于上截断点或小于下截断点的数据均为异常数据,需要剔除异常数据。经过异常数据剔除,最终实验样本数据为1 433个,随机选取1 333个数据作为训练集,100作为测试集,并对训练集和测试进行归一化处理。

4.3 实验结果分析

经过数据预处理后,分别采用SVR、PSO-SVR和CS-SVR神经网络对样本数据进行训练和测试,并对预测结果进行对比分析,验证所提算法具有优越性。实验过程中,设置布谷鸟优化的迭代次数、鸟巢数量、被宿主发现的概率、寻优参数、取值范围均为[0.01,1 000]。设置粒子群优化迭代次数为,种群规模,学习因子,,寻优参数、取值范围均为[0.01,1 000],最终寻优得出的最佳参数如表1所示。

表1 最佳寻优参数

在最佳参数下各模型对测试集的预测结果及对比分析如图2~图5所示。

图2 SVR模型预测结果

图3 PSO-SVR模型预测结果

图4 CS-SVR模型预测结果

图5 SVR、PSO-SVR和CS-SVR模型的性能对比

通过对比图2~5可以看出,SVR、PSO-SVR和CS-SVR模型对测试集的风电功率预测结果均很准确,这说明SVR算法可以很好的用于短期风电功率的预测,预测模型在功率为200 kW以下的预测误差较大,这与实际风机运行的状态紧密相关,风机在待机或者启停过程中功率波动的变化对风电功率预测的影响较大。从图5的模型性能对比中可以看出,CS-SVR模型的预测效果要优于SVR、PSO-SVR模型,说明CS算法具有良好的局部寻优和全局寻优能力。

为了更加直观的分析模型的预测精度,实验过程中分别计算了均方根误差(RMSE)、平均绝对误差(MAE)、平均绝对百分比误差(MAPE),三者数学表达式如下:

(13)

(14)

(15)

式中,xi和êi分别为样本数据的实际值和预测值,3种预测模型误差的评价结果见表2所示。

表2 预测模型的预测误差比较

从表2中可以看出,PSO-SVR模型的RMSE、MAE、MAPE三种误差的数据分别为3.97%、3.10%和2.33%,CS-SVR模型的RMSE、MAE、MAPE三种误差的数据分别为3.62%、2.84%和3.14%,其预测误差均小于SVR的预测误差,说明参数优化具有明显提高算法精度的效果。对比CS-SVR和PSO-SVR模型的预测误差,CS-SVR预测模型的均方根误差(RMSE)比PSO-SVR模型的均方根误差(RMSE)减少8.8%。CS-SVR预测模型的平均绝对误差(MAE)比PSO-SVR模型的平均绝对误差(MAE)减少8.3%。说明CS-SVR预测性能优于PSO-SVR模型,因此本文所提预测模型具有较高的预测精度。

5 结论

1)通过SVR、PSO-SVR和CS-SVR模型对测试集的短期风电功率进行预测,实验验证结果表明SVR算法可以很好的用于风电功率预测,采用其它启发式算法对SVR参数进行优化可以明显提高预测的精度。

2)通过对比PSO-SVR和CS-SVR模型对测试集的短期风电功率的预测结果,验证了CS算法的寻优能力优于PSO算法,验证了本文所提预测模型具有较高的预测精度。

3)在对输入样本数据进行预处理时引入了上截断点和下截断点的异常数据判别方法,有效剔除了无效的样本数据,为了进一步提高预测精度,可以加强对输入样本数据预处理方面的研究。

猜你喜欢
电功率布谷鸟鸟巢
基于PCC-CNN-GRU的短期风电功率预测
布谷鸟读信
18.2电功率(教学设计)
鸟巢
去鸟巢、水立方看电影
鸟巢大作战
第11讲 电能与电功率专题复习
布谷鸟叫醒的清晨
打联赛 去鸟巢 看中网
谈谈电功率