基于ARIMA与SVR的短期风速混合预测模型

2019-01-23 08:18
福建质量管理 2018年23期
关键词:预测值残差线性

(华北电力大学控制与计算机工程学院 北京 102206)

一、引言

近年来风力发电目前已逐渐成为各个国家重点发展的可再生能源发电技术之一[1]。但由于风速自身的随机性特点导致在风电并网后对电力系统的稳定运行造成了较大的影响[2]。针对这一问题目前主要有两种解决方案:一是增加风电装机总容量,即在不稳定时通过备用机组进行互补从而减小对电网运行带来的冲击;二是利用较好的模型算法对风速做出准确的预测,从而及时对电网运行进行调度。第一种方法增加装机容量提供额外的备用机组需要投入较大的成本,第二种通过模型预测可以降低成本提升风力发电的经济性。

针对短期风速预测[4]国内外学者进行了广泛的研究,其中包括自回归滑动平均(ARMA)模型、自回归求和滑动平均(ARIMA)模型[5,6]等线性预测模型以及包括支持向量机(SVM)[7]等非线性预测模型。基于自回归的ARMA、ARIMA等模型适合线性时间序列的预测,SVM、神经网络等模型适合非线性预测。但由于各种模型自身存在局限性,单一的预测模型预测误差较大,不能很好的满足预测的需求。因此本文提出了一种ARIMA模型与SVR相结合的组合风速预测模型[8~10],通过ARIMA模型预测风速的线性序列,将实际风速与ARIMA预测的风速做差值得到非线性残差序列,然后利用SVR模型预测非线性残差进序列,最后将ARIMA预测的线性序列与SVR预测的非线性残差序列相加得到最终的预测风速序列,从而达到提高预测精度的目的。

二、ARIMA模型

ARIMA模型通过对非平稳序列进行若干次差分处理,将非平稳序列变换为平稳序列然后进行处理,可以理解为是一种ARMA针对非平稳数据的推广,即针对不平稳数据差分d次转化为稳定序列,然后使用以p、q为参数的ARMA模型对该平稳序列建模,最后通过反变换的方式得到原序列,则以p、d、q为参数的ARIMA模型预测方程可表示为:

yt=θ0+φ1yt-1+φ2yt-2+…+φpyt-p+εt

-θ1εt-1-θ2εt-2-…-θqεt-q

(1)

式中,yt为时间序列的样本值,θi,φi为模型的参数,εt为独立正态分布的白噪声。

(一)模型定阶

通过差分处理平稳化时间序列后,计算原始序列的自相关函数ACF,偏相关函数PAC,对于时间序列yt,自协方差可表示为:

(2)

自相关函数为:

(3)

偏相关函数为:

(4)

实际使用中可以通过ρk、αk值对模型进行初步的定阶。

三、SVR模型

支持向量机(Support Vector Machine,SVM)是一种监督学习的机器学习方法,能够处理样本数据较少情况下的规律学习。SVM在处理非线性、小样本、高维等问题时具有良好的泛化能力和表现。将SVM方法应用到求解回归问题时称为支持向量回(Support Vector Regressive,SVR)。

对样本(x,y),传统回归模型直接基于模型输出f(x)与真实值y之间的差别来计算损失,当且仅当f(x)与y完全同时,损失才为零。与此不同,SVR则是通过f(x)=wtx+b去拟合所有的样本点,使得所有的样本点离最优超平面的总方差最小,即假设我们能容忍f(x)与y之间最多有ε的偏差,即仅当f(x)与y之间的绝对值大于ε时才计算损失。

则SVR问题可形式化为:

(5)

式中C为正则化常数,eε是ε不敏感损失函数。

(6)

(7)

三、短期风速混合预测模型

本文短期风速混合预测模型主要步骤如下:

(一)计算短期风速预测值序列

设短期风速实际值序列为{s(t),s(t-1),…,s(t-m)},将该序列作为通过历史数据训练好的ARIMA模型的输入,经ARIMA模型处理后的得到风速预测值序列{p′(t+1),p′(t+1),…,p′(t+h)}。

(二)计算t时刻之前的短期风速残差序列

根据短期风速实际值序列{s(t),s(t-1),…,s(t-m)}及对应的ARIMA模型预测序列

{s′(t),s′(t-1),…,s′(t-m)}计算短期风速的残差序列{E(t),E(t-1),…,E(t-m)}。

(三)预测t时刻之后的短期风速残差序列:

利用训练集数据得到的残差序列训练SVR模型,使用滚动残差方式逐步预测t+1~t+h的残差序列{e′(t+1),e′(t+2),…,e′(t+h)}。本文滚动预测残差时的滚动步长为3。

(四)计算预测的风速序列:

将步骤(1)中得到的风速预测序列{p′(t+1),p′(t+2),…,p′(t+h)}于步骤(3)中得到的风速残差序列{e′(t+1),e′(t+2),…,e′(t+h)}求和得到最终的风速预测序列{p(t+1),p(t+2),…,p(t+h)}。

四、实例分析

实验选取某风电场1月份风速数据,采集间隔时间为1h,经处理之后选取225条数据,其中前200条构建训练集用于模型训练、剩余25条数据作为测试集验证模型。

(一)模型参数确定

对原始风速按照ARIMA模型步骤进行建模,建立后的模型为:ARIMA(3,1,2)。

在SVR模型中影响模型的主要参数有ε、C、σ,参数的选择很大程度上决定了算法的学习能力和预测的准确度。

不敏感损失函数参数ε,影响支持向量机的拟合情况,同时也影响支持向量的个数从而影响算法的泛化能力。ε过大,会导致支持向量的数目减少,模型学习精度不够,建立的模型相对简单。ε过小,则会导致回归精度过高建立的模型相对复杂。

惩罚系数C,也称为正则化参数,反映了算法对分类错误的样本数据的惩罚度。惩罚系数C过小,表明对数据惩罚越小,数据训练误差变大;惩罚系数C过大,则有可能出现过学习的问题。

核函数σ,核函数的不同会导致输入空间构建的非线性决策函数不同。目前常用的核函数线性核函数、多项式核函数、径向基核函数等,本文实验中选择径向基核函数作为算法的核函数。

(二)预测结果仿真

预测模型参数确定后,利用测试集25组数据对模型进行验证,ARIMA预测值和基于SVR的混合预测值如图1所示。

图1 ARIMA预测值与混合预测模型预测值

为进一步说明本文预测方法预测精度的提高,表1给出了与常见的几种预测方法对比预测结果的均方根误差(RMSE)与平均绝对误差(MAE)的结果。

表1 几种预测模型预测指标对比

由图1预测结果及表1几种预测模型的预测指标可知,本文提出的基于SVR的混合预测模型在预测效果和准确度方面优于其它预测方法。

五、结束语

针对短期风速预测,本文结合不同预测模型的优缺点提出了一种基于线性预测模型ARIMA与非线性预测模型SVR相结合的混合预测模型。通过ARIMA模型预测风速的线性部分,使用SVR模型预测非线性残差序列,最后将ARIMA预测值与SVR预测值求和得到优化的结果。仿真实验及模型算法对比表表明,本文提出的混合预测模型具有较好的预测效果。

猜你喜欢
预测值残差线性
渐近线性Klein-Gordon-Maxwell系统正解的存在性
基于双向GRU与残差拟合的车辆跟驰建模
加拿大农业部下调2021/22年度油菜籽和小麦产量预测值
±800kV直流输电工程合成电场夏季实测值与预测值比对分析
线性回归方程的求解与应用
基于残差学习的自适应无人机目标跟踪算法
法电再次修订2020年核发电量预测值
基于递归残差网络的图像超分辨率重建
二阶线性微分方程的解法
平稳自相关过程的残差累积和控制图