基于神经网络的风速预测模型研究
2023-11-15祁卓平
祁卓平
(临洮县气象局,定西 730500)
风力发电由于其技术发展迅速、成本低廉、易于操作和维护,在现代混合能源中扮演着愈发重要的角色[1]。风力发电项目的部署还有利于减少对化石燃料的依赖,从而减少了排放到大气中的温室气体。据统计,2021 年全球累计风电装机容量达到743 GW,新增9300 GW,至少可以减少全球超过11亿吨二氧化碳的排放[2]。
风速是一个在时间和空间上都具有高度波动性的气象要素[3],这种波动性往往会导致持续供电的不稳定性。为了提高风力发电系统的经济、安全、可靠运行,迫切需要准确的风速预测方法。
根据预测周期的不同,可以将风速预测分为5 类:极短期预测(几秒~30 min);短期预测(30 min~6 h);中期预测(6 h~24 h);长期预测(24 h~一周);极长期预测(一周或更长时间)[4]。实现风速预测主要包括4种方法:物理方法或基于天气的方法[5];基于统计或时间序列的方法[6];基于人工智能的方法[7];混合方法[8-9]。其中,混合风速预测是一种数据驱动的方法,通过对2 种或2 种以上的预测方法进行融合,或采用滤波增强的技术来提高预测的准确性[10]。滤波器增强技术通常是指在基本方法的基础上增加一个特殊的滤波器来提高预测性能,例如卡尔曼滤波和小波变换等[11]。
目前混合风速预测方法已经受到了诸多专家学者的广泛研究,但其在实际中的应用还处于起步阶段[12]。同时,在大多数风速预报工作中,没有考虑和比较单一和多种气象因素。针对上述问题本文提出了多种混合神经网络方法:改进的克隆选择算法训练的小波神经网络;粒子群算法训练的小波神经网络;基于极限学习机与多层感知机的神经网络,并通过实验验证了算法的有效性。
1 基于神经网络风速预测模型
以极限学习机、多层感知机神经网络,以及小波神经网络为基础,利用改进的克隆选择算法和粒子群算法,实现混合风速预测,简要介绍了混合风速预测的基本理论与方法。
在风速预测中,通常采用小波变换将风速时间序列分解为一组子序列,并使用统计或基于机器学习的方法对这些子序列的未来值进行预测;然后用小波逆变换构造原始风速时间序列。本文将Morlet小波函数作为神经网络隐藏神经元的激活函数[13]。利用小波形成小波神经网络。多维Morlet 小波函数可以表示为
式中:xi为输入数据;ai和bi分别为尺度和平移量参数;φ(x)为Morlet 小波函数;m 为小波神经网络的隐藏神经元个数。
最终得到小波神经网络预测器的输出如下:
式中:wi表示第i 个神经元与输出之间的权值;第j个输入与输出分别由vj连接。小波神经网络的参数由改进克隆选择算法作为训练方法来指定,即:
极限学习机是一种用于单个隐层前馈神经网络(FFNN)的训练策略。在极限学习机中,输入权重和偏差是随机选择的,只有输出权重是用一个简单的矩阵从数学上确定的。对于不同的样本(xi,ti),其中xi=[xi1,xi2,…,xin]T∈Rn、ti=[ti1,ti2,…,tin]T∈Rm,具有L 个隐藏神经元和激活函数q 的极限学习机可以无误差地估计n 个样本,公式为
式中:βi为隐藏神经元与输出节点之间的权值。如果激活函数为S 型函数,且隐藏层节点是可加的,则激活函数可表示为
式中:ai和bi是隐含层节点的学习参数。在这种情况下,式(5)可表示为
多层感知机神经网络也是一种FFNN 模型,是监督神经网络的一种特殊形式。它能够在输入数据集和相关输出数据之间创建一个映射函数。多层感知机结构由多个堆叠的节点层组成,即神经网络中的神经元。每一层通过神经元以单向的方式连接到下一层。
多层感知机神经网络由3 层组成:①输入层,向网络提供输入变量;②输出层,产生最终输出;③隐藏层,即输入层和输出层之间堆叠的神经元层。网络的一般过程是通过神经元来完成的,神经元是网络的激活函数。在多层感知机结构中可以使用各种激活函数,如线性、对数s 型函数、双曲正切s 型函数。通过训练过程确定的多层感知机参数包括:连接输入层和隐藏层的权值;将一个隐藏层的输出连接到下一个隐藏层或输出层的权值。每一层在数学上可以表示为
式中:l 表示网络非输入层中考虑的L 层;nl表示第l 层神经元的数量;表示第l 层神经元i 的输出;表示第l 层神经元i 与第l-1 层神经元连接的权值;表示l 层神经元i 的偏差;第一层l=0 是网络的输入层,其输出长度是n0;最后一层l=L 是网络的输出层,其长度为nL;Φ(·)为激活函数。
2 基于混合方法的风速预测
风速预测分为4 个阶段,即数据预处理、模型选择、训练方法、以及测试和结果分析。对每个阶段的详细解释如下:
数据预处理用于处理/准备风速数据作为训练和测试数据集,它包括以下3 个步骤:
(1)将风速数据输入预报系统;
(2)将气象数据分为训练数据集和测试数据集。在本文中,用1440 个样本(约占全数据的98.4%)进行训练,用24 个样本(约占全数据的1.6%)进行测试。
(3)该步骤使用自相关函数选择最相关的输入集进行训练。大量的输入对预测器的预测过程输入/输出映射函数的提取造成了影响,从而降低了预测性能。
在模型选择阶段,从第一节介绍的模型中选择一个模型用于风速预测。对于不同的模型,必须使用合适的算法对预测系统进行训练。由于本文涉及到不同的模型,因此需要不同的算法对其进行训练。其中小波神经网络和多层感知机神经网络模型的设计算法相似,其主要分为以下几个步骤:
(1)初始化小波神经网络和多层感知机神经网络模型的参数;
(2)选择每个模型的训练方法。采用改进克隆选择算法和粒子群算法2 种方法对小波神经网络模型进行训练,即将改进克隆选择算法作为它们的默认训练方法;
(3)根据预测系统进行训练的结果,对模型参数进行更新;
(4)如果不满足所设定的条件,算法将按照步骤(2),重新训练系统,并再次更新参数,直到满足终止所要求的条件,如果满足所需条件,算法将继续执行下一步;
(5)在达到终止准则后,将得到的参数作为模型参数的最终结果,用于形成预测模型。
在基于极限学习机神经网络的模型中,该模型使用单层FFNN,利用极限学习机训练技术对神经网络进行训练并确定其参数,其主要步骤如下:
(1)采用极限学习机方法对神经网络进行训练;
(2)将步骤(1)中得到的参数作为极限学习机模型的最终参数,形成预测模型。
在测试和结果段是对预测系统进行测试,并选择最佳的风速预报方法,主要包括以下4 个步骤:
(1)将测试集输入预测系统中;
(2)根据输入数据预测风速。为此,将测试集中的每一个风速样本作为一个目标,利用其之前最相关的数据来预测风速。这里使用自相关函数来为所考虑的目标选择最相关的样本;
(3)将实际风速(目标样本)与采用该方法的预报值进行比较,计算出整个过程的预报误差和计算时间;
(4)根据计算出的预测误差和计算时间,并结合实际应用情况选择最佳的模型/方法。
3 仿真实验分析
对所提出的方法进行验证与分析,采用2 个误差评价指标对所提出的风速预报方法进行性能评价,使用提出的方法预测每小时风速。
本文考虑1.8 MW 风力发电机组的额定功率,切入风速为15 km/h,额定风速为50 km/h,切出风速为75 km/h。以预测日前60 天的风速作为训练数据集,有1440 h 的训练数据(60 天24 h)。选择2022年3 月2 日、2021 年12 月1 日、2021 年9 月1 日和2021 年6 月1 日为测试日。此外,利用自相关函数确定最有效的候选输入预测器。此外,本文采用400 h 滞后的风速值作为候选输入数据,通过自相关函数处理,以识别最具信息量特征的最小子集,并将其纳入所提出的模型。
每一种方法都应该根据所考虑的方法的性质来评估其性能和有效性。对于性能评估,主要包含数据的大小以及其统计标准2 个因素,所需的数据大小取决于所采用的方法。由于风速预报方法是数值方法,其性能评估大多是基于数值误差的评估方法,本文主要采用归一化均方根误差(nRMSE)和归一化平均绝对误差(nMAE),其对应的公式分别如下:
式中:WSact(n)和WSfor(n)表示测量和预测t时刻的风速;WSmax表示每个测试日的最大风速。其相应的结果如表1 所示。
表1 不同方法的统计结果Tab.1 Statistical results of different methods
从表1 可以看出,基于改进克隆选择算法训练的小波神经网络在预测误差上优于多层感知机、极限学习机和粒子群算法训练的小波神经网络。相比之下,前者使nRMSE 均值分别提高了52.58%、19.19%、65.21%,nMAE 均值提高了51.36%、18.65%、63.83%。另一方面,极限学习机是一种具有高速时间序列预测能力的预测方法。因此,其预测风速的时间为4.85 s,而改进克隆选择算法和粒子群算法训练的小波神经网络的操作时间分别为3142 s、5897 s。这主要是因为它们是基于迭代的优化方法,至少在100 次迭代后才能获得最优解,属于及时的训练策略。相反,极限学习机训练方法则是基于简单的矩阵计算。此外,由于改进克隆选择算法训练的小波神经网络具有更好的预测精度,可以用于规划目的,而基于极限学习机的预测方法可以用于运行阶段。
图1 和图2 为4 种方法对2021 年6 月1 日测试的风速和风力发电功率的预测结果。结果表明,4种方法均能较好地跟踪实际测得的风速和功率的变化趋势。从图2 可以看出,在高于切出风速的情况下,风电机组不产生功率。
图1 不同方法的风速预测与真实量测对比Fig.1 Comparison between wind speed prediction and real measurement by different methods
图2 不同方法的风力发电功率预测与真实量测对比Fig.2 Comparison between different methods of wind power prediction and real measurements
从以上实验结果可以看出,4 种风速预测方法都能较为精确地预测出实际的风速,并且适用短期和长期风速时间序列的预测。
4 结语
风力的间歇性特性是风力发电的主要挑战之一。本文提出了4 种风速预测方法:①改进克隆选择算法训练的小波神经网络;②粒子群算法训练的小波神经网络;③基于极限学习机的神经网络;④基于多层感知机的神经网络。结果表明,第一种方法在精度和时间方面优于其他方法;基于极限学习机的神经网络方法是4 种方法中速度最快的方法,只需较少的预测时间,且具有较好的预测精度。本文研究有助于提高风力发电厂运行的经济性、安全性和可靠性。