内蒙古电力技术  2019, Vol. 37 Issue (04): 26-30   PDF    
基于蚁群优化神经网络模型的风电功率预测
张岩1,2, 李洋博1,3, 柳姗1,4, 王月1,2, 孙克磊2     
1. 华北理工大学数学建模创新实验室, 河北 唐山 063000;
2. 华北理工大学 化学工程学院, 河北 唐山 063210;
3. 华北理工大学 电气工程学院, 河北 唐山 063210;
4. 华北理工大学 经济学院, 河北 唐山 063210
摘要:首先采用LM神经网络模型对风电功率进行预测,为确定神经网络最佳权值和阈值、避免出现局部最优,采用蚁群算法进行优化;之后通过风速的预测值确定了预测精度低的时间点,并利用风电功率特性曲线进一步预测这些时间点的风电功率;最后采用均方误差、准确率、合格率指标对预测结果进行了定量分析,结果表明基于蚁群优化神经网络模型的预测准确度提高了16.272百分点,合格率提高了18.735百分点,均方误差降低了3.117。
关键词LM神经网络     蚁群算法     风机特性曲线     训练数据     风速    
Prediction of Wind Power Based on Ant Colony Optimization Neural Network Model
ZHANG Yan1,2, LI Yangbo1,3, LIU Shan1,4, WANG Yue1,2, SUN Kelei2     
1. Mathematical Modeling Innovation Lab, North China University of Science and Technology, Tangshan 063000, China;
2. North China University of Science and Technology College of Chemical Engineering, Tangshan 063210, China;
3. North China University of Science and Technology College of Electrical Engineering, Tangshan 063210, China;
4. North China University of Science and Technology College of Economics, Tangshan 063210, China
Abstract: Firstly LM neural network model was used to predict the wind power. In order to determine the optimal weights and thresholds of the neural network and avoid local optimum, ant colony algorithm was used to optimize it. Then, the time points with low prediction accuracy were determined by the predicted values of wind speed, and these time points were further predicted by the curve of wind power characteristics. The results showed that the prediction accuracy based on ant colony optimization neural network model was improved by 16.272 percentage points, the qualified rate was increased by 18.735 percentage points, and the mean square error was reduced by 3.117.
Key words: LM neural network     ant colony algorithm     fan characteristic curve     training data     wind speed    
0 引言

风电是可再生能源利用的1个重要领域,近年来,风电生产能力呈指数增长[1],通过精准预测风电功率来优化电力系统调度方案也成为近期的研究热点。人工神经网络已被证明非常适用于解决多输入非线性变量问题,已成功应用于预测风电场的风速和功率[2],本文则基于蚁群优化神经网络模型对风电功率进行预测。研究数据来源于M风电场实测数据,为每日00:00—24:00每15 min共96个时间节点的风速及风电功率的实测值。以1月前29日的数据作为训练数据,通过基于蚁群算法优化神经网络的双重预测模型来预测第30日的相关数据并与目标数据进行比较分析,检验模型准确率,通过多次改进,最终得出准确率较高的预测结果。

1 蚁群优化下的LM神经网络模型对风电功率的预测 1.1 LM神经网络模型的建立

LM算法由Levenber K于1944年提出,并由Marquardt D W于1963年补充完善。1994年Hagan等人[3]提出用LM算法来改进BP(Back Propagation,反向传播)算法,并通过实验证明了LM算法具有更快的收敛速度。本文采用利用LM算法改进的BP神经网络作为风电功率预测模型,以克服传统BP算法的缺点。

1.1.1 BP神经网络模型

根据神经网络原理[4]可得以下方程:

对于输出层有:

(1)

对于输出层有:

(2)

训练误差

(3)

泛化误差

(4)

其中,

X =(x1, x2, …, xi, …, xn)T为输入变量向量组;

Y=(y1, y2, …, xm)T为隐藏层输出变量向量组;

H=(h1, h2, …, hi)T为输出层向量组(预测值);

D=(d1, d2, …, di)T为期望输出向量组;

V=(v1, v2, …, vi)T为隐藏层到输出层之间的权值矩阵;

W=(w1, w2, …, wm)T为输入层到隐藏层之间的权值矩阵;qx, y)为概率密度函数。

1.1.2 LM算法介绍 1.1.2.1 原理

LM算法原理如下[5]

设每个样本共有p个数据,定义输出误差为,

(5)

Xk为第k次迭代的网络权值向量,维数为L,根据牛顿法算得:

(6)
(7)

2E (X)为Hession矩阵,因此∇2E =AT(X)e(X) SX),其中AT为雅可比矩阵,当靠近误差指标函数的最小值时,矩阵的S元素变得很小,可忽略不计;利用Gauss-Newton法[6]可计算出LM算法表达式为:

(8)

其中,I为单位矩阵;μ为阻尼系数。

1.1.2.2 步骤

LM算法具体步骤如下:

(1)初始化参数,设置训练误差允许值Emin、阻尼系数、初始向量等;

(2)计算网络的输出及误差向量EX)和Xk+1

(3)计算EX)对网络权值的梯度值并形成矩阵AT

(4)若EX)<Emin,则XK为最优控制量,结束;否则,令XK=XK+1,转到步骤(2)。

1.2 蚁群优化算法的建立

神经网络收敛时间较长,并且容易陷入局部最优。为得到全局最优、确定最佳权值和阈值,采用蚁群算法进行优化。蚁群算法由Kennedy和Eberhart于1995年提出[7],通过模拟研究鸟群的捕食过程利用蚁群的群体合作和迭代来实现权值和阈值的不断更新优化。从全局出发、以当前蚂蚁为中心,容易陷入局部极值,影响速度和时间,为此Kennedy提出了Ring型拓扑结构,Mendes等提出了Four Cluster、Pyramid和Square型拓扑结构[8],但又出现了种群多样性降低的情况,目前建立动态拓扑结构可增强种群跳出局部最优的能力且尽可能少地减少种群数量[9]。算法适应度函数见式(9)。

(9)

其中k代表时间点,Xk为第k个时间点的实测值,qk为第k个时间点的预测值。

具体过程如下:

(1)初始化参数,将m个蚂蚁置于n个位置;

(2)对每个蚂蚁按转移概率转移到下一个顶点,生成n个解;

(3)计算每个解的适应度函数Z,记录当前最好的解;

(4)通过蚂蚁的路径及相应的解修改轨迹强度,更新蚂蚁的转移概率;

(5)达到迭代次数或得到满意解,则结束优化;否则转至(2)。

1.3 蚁群优化下的LM神经网络模型求解过程

(1)对数据进行标准化处理,本文采用规范化处理;

(2)初始化网格,样本模拟计数器P记为1,训练次数Q记为1,误差E记为0,学习率R记为0.1,精度T取0.01;

(3)计算隐藏层和输出层输出向量,并计算输出总误差;

(4)调用蚁群算法优化神经网络的权值和阈值;

(5)检查是否对所有样本完成一轮培训,若是,进行下一步;否则,返回(2);

(6)若神经网络总误差Z < T,则训练结束;否则E置为0,P置为1,返回(2)。

1.4 风电功率预测 1.4.1 预测过程

调用传统LM神经网络模型和蚁群优化的LM神经网络模型,选用11月1日—11月29日风电功率实测数据进行训练,预测11月30日风电功率,输出预测结果并与真实值作对比。图 1为M风电场11月30日风电功率预测值和历史数据的比较,图 2为该风电场11月30日风电功率预测误差曲线。

图 1 发电机发电功率预测曲线

图 2 发电机发电功率误差曲线
1.4.2 算法评价

采用均方误差、准确率、合格率对算法进行定量评价,过程如下:

(10)
(11)
(12)

其中,k代表时间点,共计96个时间点,T1k为第k个时间点的预测值,T0k为第k个时间点的实测值,T0p为96个实测值的平均值。

表 1为在两种算法下均方误差Z、准确率r、合格率W的比较:

表 1 两种算法指标对比表
1.5 结果分析

图 1图 2的预测结果可知,经过蚁群算法优化的LM神经网络与历史数据更为接近,预测更为准确;比较表 1中两种算法的均方误差、准确率、合格率的数据,可见利用蚁群算法优化的LM神经网络模型的均方误差只有2.940,比LM神经网络算法降低了1.383;准确率达到84.709%,提高了11.458个百分点;合格率达到92.708%,提高了7.189个百分点,充分表明蚁群优化算法的LM神经网络模型优于传统的LM神经网络算法。

分析图 2可知,时间点在60~80时预测误差很大,准确率仅有48%。经分析发现,一旦风机实际功率接近0,预测误差就会变得很大,因此需要确定风机实际功率接近0的时间点,并按照以下方法来重新预测这些时间点的风电功率。

2 基于风速预测数据的风电功率预测

如上所述,由于风电功率接近0时间段的实测值在时间上没有规律可言,很难直接准确预测风电功率,也很难直接找到预测精度低的时间点。经研究决定利用风速预测结果及风机特性曲线来重新预测此阶段的风电功率。

2.1 风机特性曲线拟合

风电功率特性曲线描述了功率与风速之间的关系,本质上反映了风机的性能[10]。为真实反映功率与风速之间的关系,通过对M风电场1 a的风速和功率的实测数据进行拟合,发现风速v和功率W之间存在以下关系:

(13)

通过对风电场不同时间风电功率进行大量预测发现,当风机实际功率接近0时,风速v≤2.7 m/s或v>25 m/s,此阶段风电功率预测精度过低。

2.2 风速预测

调用蚁群优化下的LM神经网络模型预测风速,本次利用M风电场11月1日到30日实测数据预测11月30日风速,图 3是M风电场11月29日预测风速和历史数据的比较,图 4是M风电场11月30日风速预测误差曲线。经计算可得预测值的均方误差为0.2477,合格率达95.958%,准确率达93.831%,预测结果比较合理。

图 3 M风电场风速预测和历史数据比较图

图 4 M风电场风速预测误差曲线

经过对风速预测值进行筛选,发现时间点59~ 76的风速小于2.7 m/s,时间点在77~83的风速介于2.7~3.3 m/s,未发现风速大于25 m/s的时点。

2.3 风电功率预测

时间点59~76的风速小于2.7 m/s,将此阶段的风电功率记为0;时间点77~80的风速小于3 m/s,将此阶段的风电功率记为2 MW,其余时点调用蚁群优化下的LM神经网络模型预测风电功率,图 5为M风电场11月30日风电预测功率和历史数据的比较,图 6为M风电场11月30日风电功率预测误差曲线。

图 5 M风电场风电功率预测和历史数据比较曲线

图 6 M风电场风电功率预测误差曲线

表 2为蚁群优化下的LM神经网络模型预测风电功率和基于风速预测数据的风电功率预测结果的均方误差、准确率、合格率比较。可以明显看出,在风速预测数据优化后,均方误差、准确率、合格率均有明显的改进。

表 2 蚁群优化下两种算法指标比较表
3 预测精度的影响因素

(1)数据缺失、采样频率不一致、数据冗余等异常点对风电功率及风速预测有很大影响,只有能够识别错误数据并对其进行正确处理,才能进一步提高预测精度。

(2)特性曲线的拟合对风电功率预测精度有一定影响,其中切入风速、切出风速、额定风速的确定尤为重要。

(3)蚁群算法和神经网络算法的迭代次数对风电功率及风速预测精度也有一定影响,适当的迭代次数能进一步增加预测精度。

(4)训练数据的数量对预测精度也有影响,一般来说,训练数据越多,精度越高。

(5)其他如风机表现、气象条件、模型自身条件等因素也会对预测精度产生影响。

4 结论

(1)本文提出的基于蚁群算法优化的LM神经网络双重预测模型,避免了风速快速升降对风电功率预测的影响,确定了预测精度低的时间点,通过预测风速及拟合风机特性曲线对这些时间点进行重新预测,最终将预测准确度提高了16.272百分点,合格率提高了18.735百分点,均方误差降低了3.117。

(2)根据本文提出的模型,在风电场实际运行中可以通过历史数据的训练来预测未来时间点的风电功率及风速,对风电场制订相应的优化调度方案有指导意义。

参考文献
[1]
Global Wind Energy Council. Global Wind Energy Out look 2014[Z]. Brussels: GWEC, 2014. https://www.gwec.net/wp-content/uploads/2014/10/GWEO2014_WEB.pdf
[2]
Giuseppe Grassi, Pietro Vecchio. Wind energy prediction using a two-hidden layer neural network[J]. Commun Nonlinear Sci Numer Simulat, 2010, 15(9): 2262-2266. DOI:10.1016/j.cnsns.2009.10.005
[3]
朱晓伟, 刘三明, 李莹, 等. 均值-方差模型在风电并网系统无功优化中的应用[J]. 广东电力, 2016, 29(2): 76-79. DOI:10.3969/j.issn.1007-290X.2016.02.015
[4]
Chihiro Watanabe, Kaoru Hiramatsu, Kunio Kashino. Modular representation of layered neural networks[J]. Neural Networks, 2018(97): 62-73.
[5]
韩敏, 穆大芸. 回声状态网络LM算法及混沌时间序列预测[J]. 控制与决策, 2011, 26(10): 1469-1478.
[6]
Mirzaee H. Long-term prediction of chaotic time series with multi-step prediction horizons by a neural network with Levenberg-Marquardt learning algorithm[J]. Chaos, Solitons & Fractals, 2009, 41(4): 1975-1979.
[7]
杨海威, 杨祥红, 张菁, 等. 数据提取方法对风电功率波动特性的影响分析[J]. 电力大数据, 2017, 20(9): 65-70.
[8]
Kennedy J. Particle swarm optimization[M]//Encyclope dia of machine learning. Springer, 2011: 760-766.
[9]
Mendes R, Kennedy J, Neves J. The fully informed particle swarm:simpler, maybe better[J]. IEEE Transactions on Evolutionary Computation, 2004, 8(3): 204-210. DOI:10.1109/TEVC.2004.826074
[10]
董超黄, 筱曌. 采用地理时间信息模型的短期风速预测方法[J]. 云南电力技术, 2017, 45(1): 86-93.