陈学君,李仲龙
(1.甘肃省气象服务中心,甘肃 兰州 730020;2. 甘肃省气象信息与技术装备保障中心,甘肃 兰州 730020)
由于传统化石能源的短缺和造成环境污染,绿色能源成为各国政府的发展方向。风能是洁净的可再生能源,分布广泛。近年来在国家可再生能源法、节能减排的政策引导下,风力发电发展迅猛。按世界风能协会统计[1],2016年全球风电新增装机容量达到54.6 GW,全球风电总装机容量为487 GW。截止2016年中国风电总装机容量为23.3 GW,约占全球风电市场份额的42.7%,是世界上风电装机容量最多、发展最迅速的国家。
风电在快速发展的同时也面临突出问题。由于风速受观测地的温度、气压、海拔、地形、纬度等诸多因素影响,具有随机性、间歇性、波动性特点,成为最难预测的气象要素之一,但它也是风功率预测中最关键的要素[2,3]。风速预报从时间尺度上[4]分为超短期、短期、中期、长期预报(表1)。超短期风速预报是指未来0~4 h风速预报,时间分辨率在1 h以内。在开放电力市场环境下,超短期风速预报是风电竞价交易的前提条件,其预报的准确性对实时电力系统调度、风电场的利用效率具有重要的现实意义。
准确预报风速需要科学的预测理论和模型,为此国内外学者进行了广泛的探索并提出多种预测方法[5-7]。按照不同的建模机理,超短期风速预报可分为物理模型[8]、统计与机器学习模型[9]、组合模型[10]等。
表1 基于时间尺度的风速预报分类
风速预报的物理方法包括一系列的微观气象学模型[11],这些模型利用温度分层、等高线、粗糙度、地形模型[12,13]模拟局地效应,将 NWP(Numerical Weather Prediction)预测的风速、风向、温度、气压、湿度等气象数据转换成风电场的风速。
物理方法的关键为NWP。NWP根据大气流体特点,设定边界和初值,利用高性能计算机获得大气的热力学、流体力学方程组的数值解,预报未来时段的风速和其他气象要素。文献[14]中对常用的NWP模型进行说明。全球尺度的NWP相对于风电场来说太大了,一般采用中尺度模式。
由于混沌效应,NWP对初值非常敏感,一般利用2种NWP集合模型处理。一是使用多类NWP模型预报再使用加权平均得到预报结果,二是微调初始条件得到一组预报结果,再通过加权产生集合NWP预报。Zhao等[15]采用3种不同空间分辨率、4种不同边界条件的WRF(Weather Research and Forecasting Mode)模式,认为相对单个NWP模型,集合模型精度提高35%左右。
物理模型主要采用类似计算流体动力学CDF(Computational Fluid Dynamics)的微观气象学模型模拟大气,虽然存在许多CDF模式,但它们均采用相同的物理学原理,其主要区别为格点的结构、尺度和数值解法。冯双磊等[16]利用地层、粗糙度、尾流模型将NWP数据转化为风机轮毂风速。马文通等[17]采用中尺度数值预报模式输出结果驱动CDF模式运算动力降尺度的方法,得到精细化的复杂地形风电场风速预报和风电功率预报,业务试验表明基本满足电网预测误差和时效性要求。
物理方法利用大气动力、热力方程组可以精确描述风的规律,但忽略了历史数据中有用的信息,同时由于模式包含的不同参数化方案,使得其在风速预报中仍然存在一些困难。另外,针对特定风电场所建立的物理预报模型存在局限性,只能用于单个风电场或者理论研究,应用到其他风电场还需要重新进行建模。
统计与机器学习模型主要利用风电场和周围风电场历史数据、NWP数据学习风速特征、构建预报模型对未来风速进行预测,主要方法有持续法、时间序列预报法、人工神经网络、支持向量机和卡尔曼滤波等。
1.2.1 持续法
持续法将当前时刻的风速作为下一时刻的最优预报值。它假定当前时刻的值为下一时刻的最好预报值,在预报间隔不超过15 min的情况下,其预报精度可能超出原理复杂的机器学习方法,但对于时间超过半小时的预报效果非常差,仅作为一种基准方法验证其他方法的预报性能。
1.2.2 时间序列预报法
时间序列法利用历史风速序列建模,经过模型识别、参数估计、模型检验确定数学模型,主要有自回归、滑动平均、自回归滑动平均等模型[18]。
时间序列建模的核心在于模型阶数和系数确定。常用的模型选择准则有赤池信息法AIC(Akaike information criterion)和施瓦兹贝叶斯法SBC(Schwartz Bayesian criterion)。在选择模型时,AIC与SBC越小越好。
Nfaoui等[19]利用历史小时风速进行时间序列建模,通过模型阶数比较认为模型表现高度依赖于模型参数。在经典时间序列预测的基础上,Liu等、Qin等[20,21]利用小波分解的 ARIMA(Autoregressive Integrated Moving Average Model)模型预测后重新聚合获得结果,与经典时间序列、人工神经网络模型相比预测效果更佳。Peng等[22]将ARIMA和残差的自回归条件异方差模型 ARCH(Autoregressive Conditional Heteroscedastic)结合使用小波分解的风速子时间序列展开预报,结果显示该方法减小误差5%左右。为了应对风速的非正态,Zhang等[23]先将风速数据变换为标准化的高斯分布,其次用AR模型预报,模型应用到香港某风电场证明有效。Erdem等[24]采用四种方法将ARMA模型用于风速和风向预报。第一种方法将风速分解为纬向、经向,分别用ARMA模型预报,结果合成为风速、风向;第二种方法用两个非独立ARMA模型预报,其中传统ARMA模型预报风速,链接ARMA模型预报风向;第三种方法用向量自回归模型VAR(Vector Autoregression)预报风速、风向;第四种方法用门限向量自回归模型预报风速、风向,对比结果显示在风向预报中第一种方法优于第二种方法,而风速预报则正好相反;向量自回归模型的风向预报好于单变量模型,而风速预报则不明显;向量自回归模型与门限向量自回归模型预报效果差别不大。Kavasseri等[25]利用分数差分自回归求和移动平均模型对风速建模,在48 h预报尺度上的准确率与持续法相比有显著提高。
1.2.3 人工神经网络
人工神经网络ANN(Artificial Neural network)具有很强识别非线性特征[26]的能力,很早用于风速预报。人工神经网络分为静态、动态神经网络两类。静态神经网络是指没有反馈、延迟的网络,输出由输入通过隐藏层处理后产生,反向传播BP[27,28](Backpropagation Algorithm)、径向基RBF[29](Radial Basis Function)、极限学习机 ELM(Extreme Learning Machine)等网络均属此类。而动态神经网络的输出不仅依靠当前输入,而且依赖以前的输入、输出或者网络的状态,时间序列神经网络则是此类的典型。目前在风电预报领域的ANN将遗传算法、粒子群算法、模糊逻辑、小波分析与人工神经网络结合而形成的混合智能系统 HIS(hybrid intelligent systems)[30],由于其优良的预报效果而大受欢迎。Ata[31]比较不同结构ANN模型在风速预报中的应用,认为没有一种ANN模型能够适用各种情况下的风速预报,应当针对具体特征选择合适的模型。Li等[32]采用自适应线性神经网络、前馈反向传播网络、径向基函数神经网络3种ANN对美国两个风电场建模,发现同一数据用于不同类型的神经网络对预报结果的影响非常大,差距最大可达20%。Peri等[33]用小波技术、相似日方法、情感神经网络集合预报短期风速与功率。Senkal等[34]对风速预报中比较BP神经网络、小波神经网络性能显示小波神经网络误差小。Jyothi等[35]采用自适应小波神经网络、自适应神经模糊推理系统、时间序列神经网络3类不同ANN对风速进行预报对比显示混合自适应小波神经网络性能最优。在风速预报模型中除了考虑风要素外,Filik等[36]认为还应将气压、温度等相关气象要素纳入模型。
1.2.4 支持向量机
在统计学习的VC维(Vapnik-Chervonenkis Dimension)理论、结构风险最小原则的基础上发展起来的 SVM(Support Vector Machine)由 Vapnik[37]提出,具有良好的非线性建模能力。此方法避免了传统统计模型容易陷入局部最优,具有全局优化、训练时间短和泛化能力强等优点,在风速预报[38]中得到广泛应用。Mohandes等[39]比较SVM、多层感知器神经网络两类模型用于沙特阿拉伯麦地那风速预报,显示SVM明显优于多层感知器。Hu等[40]建议用贝叶斯理论对传统SVM损失函数进行修改提高SVM预测性能。Kong等[41]先用主成分分析进行变量选择,其次用粒子群算法对简化支持向量机参数优化,实验表明方法有效。
1.2.5 卡尔曼滤波
卡尔曼滤波(Kalman Filter)算法利用状态方程、量测方程组成线性随机系统的状态空间模型来描述滤波器,对状态变量作出最佳估计。该算法可以将两种预测机理相差较大的方法融合,有效补偿同类预报方法所引起的类似误差累积从而改善预报性能。目前,卡尔曼滤波方法在风速预报研究中倾向于与其他方法相结合。潘迪夫等[42]将经典时间序列和卡尔曼滤波结合用于风速预报,实例表明算法有效提高了预测精度。Shukur等[43]以马来西亚和伊朗风速数据为例用时间序列模型确定卡尔曼滤波-人工神经网络模型输入结构,案例显示与单独的卡尔曼滤波、人工神经网络相比误差降低10%以上。修春波等[44]建立了迟滞神经网络,将卡尔曼滤波与ARMA模型融合实现风速的混合预报,仿真结果说明迟滞神经网络的预报性能优于传统神经网络,而组合预报性能优于单一预测。Chen等[45]将无迹卡尔曼滤波、支持向量机结合用于风速预报,实验表明该方法优于单独人工神经网络、支持向量机、时间序列AR模型、卡尔曼滤波AR模型。
为了进一步提高预报准确率,利用单一预报模型各自优点,组合模型[5]被提出。由于相对于单个模型,组合预报模型精度明显提高因而大受欢迎。一般说来,组合方法需要许多基础预报模型经过组合后得到预报结果。Ye等[5]将组合预报分为协作型组合、竞争型组合两类。(图1)。
图1 风速预报组合方法框架
1.3.1 协作型组合
协作型组合将一个预报问题分解成多个子问题,对于每个子问题分别预报,综合所有子问题的预报结果获得最终预报,各子问题间的关系为协作,具体通过预处理、后处理两种方式实现。
基于预处理的协作型组合将输入数据分解成一系列子数据集分别建模、预报,子预报模型输出代数和为最终预报。在风速预报中,一般用小波分解WA(Wavelet Decomposition)[46]、经验模态分解 EMD(Empirical Mode Decomposition)[47]等算法实现信息去噪与数据集分解。步骤如下:
假设为输入数据集,分解算法分解为xd1,xd2,…,xdN,分别为N个分量建立预报模型,标记为:
Chen 等[48]用 EEMD(Ensemble Empirical Mode Decomposition)对数据去噪,使用非线性自回归神经网络进行风速预报,实验显示模型误差降低约10%。作为数据预处理的另外一种方式,Chen等[49]利用小波、汉明滤波对风速剔除异常值和去噪,用布谷鸟优化算法对SVC参数优化,案例验证模型有效。而Kitajima等[50]提出将风速信息当做复数处理,利用复值神经网络预报,用日本气象部门风速资料进行验证,认为复值神经网络模型优于实值神经网络。另外,为了增加数据源,Jiang等[51]用灰色关联分析将相邻测风塔数据作为训练数据进行风速预报。
基于后处理的协作型组合将预报数据分解为线性、非线性两部分,其中线性部分常使用ARMA模型,非线性部分则采用GARCH、ANN、SVM等。假设输入数据集x,建立线性模型f(.),预报值标记为
则 e(t)=x(t)-l^(t)是线性预报的非线性残差,对其建立非线性模型
其中g(.)是非线性模型,则组合预报表示为:
即线性、非线性部分代数和。
Shi等[52]提出 ARIMA-ANN、ARIMA-SVM 两种组合模型,其中风速线性部分用ARIMA预报,非线性部分别用ANN、SVM预报,最终预报结果为两部分相加。与单个ARIMA、ANN、SVM模型相比,组合模型的均方根误差和平均绝对误差减小5.5%以上。而Lojowska等[53]先将风速序列差分、威布尔拟合转换为平稳、正态序列,接着构建ARIMA-GARCH组合模型进行预报。Ji等[54]采用两类支持向量机组合预报模型实现风速预报,其中回归支持向量机预报风速,分类支持向量机分类训练预报误差,预报结果用估计的误差实现修正,案例验证相对于常规支持向量机可获得更小的均方根误差。
1.3.2 竞争型组合
与协作型组合相反,竞争型组合通过数据多样性、参数多样性、模型多样性建立多个基础预报模型体现竞争,趋向于选取性能好的成员。也称该方法为多模型组合预报。
参数多样性组合利用不同的参数向量生成多个类似基础模型,其中每个模型有相同输入。如在天气、气候预测中利用扰动理论的集合预报[55,56]。设输入数据为x,对于同类模型建立不同的参数向量θ1,θ2,…,θN,组成模型组,最终预报值F^为:
式中t为当前时刻,h为预报步长,f为预报模型。
模型多样性组合对相同的输入数据集x,选择不同的预报模型f1(.),f2(.),fN(.)。最终预报值F^表示为
式中t为当前时刻,h为预报步长,ω为权值。ω范围为[-2,2]之间,权值和等于 1[57]。即
其中基本模型f1(.),f2(.),…,fN(.)类型众多,一般有时间序列、ANN、SVM 等[58]。
数据多样性组合有多个输入数据集x1,x2,…,xN。最终预报值F^为
或
式中t为当前时刻,h为预报步长,ω为权值。两个公式分别表示两类多输入集合预报方法,f1(.),f2(.),…,fN(.)分别表示不同类型的模型,f(.)表示同一模型。
统计学中的Bagging和Boosting[59,60]均实现了数据的多样性。Wu等[59]将Adaboost提升算法引入前馈神经网络(BP)完成风速预测。
在风速预报研究中无论是物理方法、统计与机器学习方法还是不同的组合预报方法都存在一定的局限性,其优缺点如表2所示。Treiber等[61]采用集合NWP方法、统计方法对德国气象站数据进行风速预测,认为大多数情况下的统计与机器学习方法能在超短期、长期预测中提供一个较好的结果,而在短期、中期的预测水平中,大气动力学的影响变得非常重要,在这些情况下,使用物理方法是必不可少的。
近年来一些风速预报模型已经被研发出来,并在特定的站点表现出不错的精度。然而,由于风速预报的不确定性很难得出哪个模型是最好的,因为每个模型在使用中都具有优缺点和显著的站点依赖性。因此,预报模型在一个站点的表现并不能保证该模型将在另一个站点也能很好的应用。
表2 不同风速预报方法优缺点
不确定分析使用多种可能情况反映风险和预测错误,通常可以用损失函数来描述。一般采用概率方式、风险指数和情景产生[62]三种方法实现模型的不确定分析[63]。
在概率方式中用分位数、区间预测、概率密度函数、概率累计分布函数等概率估计表征未来的不确定。而参数化、非参数化的概率区间预报可以实现上述目标。利用预先定义的误差分布(如高斯分布[64]),参数化方法可以轻易获得区间预报。此种方法特点为:计算量小,但实际应用中设定的误差分布可能不合理。与参数化方法相比,非参数化方法不需要点预报的先验信息和误差分布假定,能够真实反应预报的不确定性。主要有中位数回归QR(Quartile Regression)[65]、核密度估计 KDE (Kernel Density Estimation)[66]等方法实现区间预报。沈堉等[67]用RBF构建预报区间,按照残差估计预报区间的上下界,用覆盖概率、区间宽度综合准则为目标函数更新权值。
风险指数与预报方法无关,通常用气象风险指数MRI(Meteo-Risk Index)、归一化的预测风险指数 NPRI(Normalized Prediction Risk Index)提供期望误差的先验信息。对于风电场而言,风险指数提供最简单和最直观的不确定信息,它用一个实数确定预测风险。气象风险指数定义为反应大气系统的稳定程度、描述MRI与预测误差的线性关系。指数代表多个NWP结果的偏离程度,大的偏离意味着不稳定的天气状况条件。同时,MRI也可以作为在线的天气风险预警工具。
情景模拟方法意味着每个时刻产生一系列电网调度的情况,称之为不同的情景。实际上,确定性预报假定产生最可能的情景,情景产生意味着产生一系列预测情景刻画风险和预测误差,它能有效地描述随着时间的流逝预报不确定性的发展,能够帮助风能调度者持续和不间断的决策。大量的情景代表实际的情况可能性更大,然而很自然的产生模型的冗余进而影响计算和决策的效率,因此如何选择最具有代表性的情景、减少情景维度是未来研究的方向。
为了度量预报模型的优劣,预报误差被提出,其定义为预报值和实际值间的差异。目前行业标准在模型的评价中主要有平均绝对误差MAE(Mean Absolute Error)、均方根误差 RMSE(Root Mean Square Error)、平均偏差、平均方差、误差频率分布直方图、相关系数、平均绝对百分比误差、判决系数、标准误差偏差、归一化的平均绝对误差、归一化的均方根误差等指标,上述误差指标均不依赖测试集大小。在同一测试集的情况下,由于技巧评分可以对于模型间的误差指标(如RMSE、MAE等)进行量化比较,故而是多组模型整体比较的常用指标。
风速误差分为纵向、横向误差。纵向误差是指某一时段预测结果在垂直方向与实测结果的差别程度,用偏大或偏小概括;而横向误差描述预测结果在水平时间轴上与实际观测的差别,即预测序列峰值的超前或滞后,其单位为时间,但在实际应用中RMSE、MRE等横向误差常算至纵向误差中。
由于上述误差指标存在各自优缺点,在一定程度上刻画了风速误差的不同特征。但当各指标的结论不一致时会增加应用的困难,可以考虑构建综合评估指标。
(1)风速预报指数,综合考虑预报和实测的误差和趋势,主要包括平均准确率ACI和相关系数R。
式中 k1、k2为权重系数,k1+k2=1。
(2)区域风速预报指数,综合评价特定区域风速的预报精度。
其中Cj为第j个风电场装机容量,n为评价区域内风电场个数。
(3)由于不同风速段输出功率不同,将观测风速分为“小风速段”(小于切入风速)、“变化风速段”(切入风速至额定风速)、“额定风速段”(额定风速至切出风速)、“风险风速段”(大于等于切出风速)4段,分别计算误差指标,最终优化整体误差获得预报模型的评估。
综合分析各种文献,在未来研究中应当注意:
(1)单一的预报模型难以满足对精度要求,组合预报模型可以有效提高预报精度,组合的方式可以是并联、串联或切换。
(2)数值预报描述气象演变过程,可以有效降低误差。从不同NWP模型构建的集合NWP、增加NWP的时间和空间分辨率、考虑风向、大气压强、空气密度、大气湿度等因素,都有助于提高预报精度。
(3)为预测结果建立物理意义明确的评价指标,寻找预报误差蕴含的有用信息,将有助于预报系统的改进;同时,由于风速具有很强的局地性,研究模型自适应的参数估计非常有必要。
(4)区域风速预报对于风电场非常有用,参考站点和不同地点的组合选择在区域预报中应当考虑;另外,目前预报主要集中在风速点值(均值)预报,在实际应用中风速区间预报、极端事件爬坡预报、极值预测对于保护电网和电力调度部门而言非常重要。