王耀慶,孫建平,李 冰,曹 弘
(華北電力大學(保定)自動化系,河北 保定 071003)
隨著環(huán)境污染的日益加劇和化石燃料的消耗,風能作為一種可再生能源,具有低碳排放、節(jié)約燃料成本、不污染環(huán)境等優(yōu)點,受到了世界各國的高度重視,成為了發(fā)展最快的新能源[1]。隨著風電向電網的不斷滲透,風力發(fā)電的比重持續(xù)上升,風電對電力安全、穩(wěn)定和經濟的影響日益明顯。風速預測在電力系統(tǒng)、風電場和電力市場中發(fā)揮著越來越重要的作用[2]。
風速預測主要有兩種方法:物理方法和統(tǒng)計方法[3]。統(tǒng)計方法以歷史數據為基礎,可以獲得可靠的短期風速預測結果[4]。風速預測在統(tǒng)計方法方上主要有三種方法:線性預測法、非線性預測法和混合預測法[5]。線性預測法主要采用自回歸(AR)模型、自回歸滑動平均(ARMA)模型和自回歸積分滑動平均(ARIMA)模型,這類模型具有性能水平高、魯棒性和可靠性好等優(yōu)點[6]。非線性預測方法方面,提出了人工神經網絡(ANNs)、支持向量機(SVMs)和卡爾曼濾波(KFs)等方法來處理非線性風速預測問題,并取得了很好的效果。在風速變化的過程中,隨機性因素增加了準確風速預測的復雜性和難度[7]。單一的預測方法難以滿足風速預測的精度要求,而混合預測方法是一種很好的選擇,它可以捕捉風速序列的不同特征,提高預測精度,增加預測可靠性。
由于受溫度、濕度、氣壓、空氣密度等因素的影響,風速預測比較困難。為了實現準確的風速預測,預測模型必須能夠捕捉風速序列的各種特征。小波變換可以將原始風速序列分解為一組子序列,利用分解序列進行風速預測可以比用原始序列直接預測更準確[8]。同時,單一模型不能夠完全反映小波分解后各個子序列的信息,如果用單一模型直接預測子序列,預測精度可能不高。然而,混合模型可以利用各個模型的相應特征,從分解的風速序列中提取特征信息,具有較好的預測性能。在混合模型中,各子序列預測模型的選擇尤為重要。LSTM網絡的優(yōu)點是可以消除輸入之間的長時間滯后,克服RNN中的梯度消失問題,適用于非線性預測[9]。ARMA模型具有良好的性能和魯棒性,在平穩(wěn)時間序列的預測上有很好的效果[7]。因此,提出了一種將小波變換、LSTM網絡和ARMA模型相結合的新型混合模型來進行短期風速預測。利用該混合模型,可以直接提取隱藏在風速序列中的不同特征。
提出的短期風速預測混合模型可解釋如下:
1)利用小波變換將原始風速序列分解為低頻子序列和高頻子序列;
2)采用LSTM網絡預測低頻子序列,采用ARMA模型預測高頻子序列;
3)所有子序列預測完成后,將各子序列的預測結果匯總得到最終的風速預測結果。
小波變換能有效地提取信號的特征信息,并解決傅里葉變換無法解決的許多難題,有利于提高風速預測的精度[10]。本文采用多分辨率小波算法對風速序列進行分解和重構,預測經過分解和重構后的序列可以降低預測誤差。
基于Mallat算法,將原始風速序列S分解為低頻近似序列AJ和不同頻率的高頻細節(jié)序列D1,D2,…,DJ,J為最大分解層數,原理如下
(1)
其中aj和dj分別表示原始信號在分辨率為2-j處的低頻信息和高頻信息。H是低通數字濾波器,G是高通數字濾波器,j是分解層數。
由于分解過程基于二進制采樣,與分解前的數據相比,每個子序列的信號減少了一半。因此,重構過程需使用插值算法來恢復信號長度。重構序列定義如下
(2)
其中H*和G*分別是H和G的對偶算子[11]。
對aJ、d1,d2,…,dJ進行重構,得到近似序列AJ和細節(jié)序列D1,D2,…,DJ,S序列如下:
S=D1+D2+…+DJ+AJ
(3)
母小波和分解層數對預測性能有顯著影響[12]。在本研究中,Daubechies3被認為是最合適的母小波,同時本研究采用3層分解,即J=3。
傳統(tǒng)的神經網絡在使用隨時間反向傳播(BPTT)的訓練算法更新權值時存在梯度消失的問題,為了解決這一問題,提出了LSTM網絡[13]。LSTM網絡采用記憶單元代替RNN中的隱含層神經元,來獲得過去的記憶信息,解決了長期依賴問題[14]。圖1為LSTM網絡記憶單元的結構,一個記憶單元主要由四部分組成:輸入門i、遺忘門f、輸出門o和自連接記憶細胞C。記憶單元用于保存t時刻的狀態(tài)信息,利用矩陣乘法控制記憶單元的輸入、輸出和遺忘狀態(tài)[15]。
圖1 LSTM網絡記憶單元的結構
在LSTM網絡中,xt是LSTM在t時刻的輸入,ht是記憶單元的輸出,計算過程不再詳述。
圖2為LSTM網絡的展開結構,預測輸出如下
(4)
其中Wyh為ht的降維矩陣。
圖2 LSTM網絡的展開結構
本研究采用均方誤差(MSE)損失函數和有效自適應矩估計(ADAM)優(yōu)化算法對LSTM網絡進行訓練。為了訓練網絡,輸入特征向量xt在t時刻輸入到網絡中。LSTM單元接收前一時刻(t-1)的反饋ht-1,以捕獲當前狀態(tài)下的時間依賴關系。網絡訓練的目標是最小化均方誤差目標函數f:
(5)
在訓練過程中,將一批訓練數據輸入網絡,使用ADAM優(yōu)化算法對網絡權值和偏差進行迭代更新,完成一個訓練周期。一旦LSTM網絡適用于訓練數據集,就可以使用LSTM進行預測。
ARMA是一種功能強大的預測方法,可以捕捉風速序列的趨勢并預測未來值[16]。ARMA(p, q)模型由AR(p)和MA(q)兩部分組成,模型如下
(6)
其中yt為時間序列;φ1,φ2,…,φp為自回歸系數,θ1,θ2,…,θq為滑動平均系數,ut為誤差。
一般采用Akaike Information Criterion(AIC)來確定模型的最優(yōu)順序[17],AIC的定義如下
(7)
對于不同的p和q,得到AIC的值,AIC值最低的模型被認為是最好的模型。確定了模型的最優(yōu)順序后,利用反函數估計各參數的值。
ARMA的分析過程如圖3所示。
圖3 ARMA的分析過程
由于風速是時變的,新的輸入-輸出數據在風速預測模型中會不斷得到[18]。在風速預測過程中,為了使模型能實時準確地預測當前時刻的風速值,需要用到最新的風速數據來描述模型,而與當前時刻相關性較小的舊數據在建模中所占的比重應降低或忽略。因此,對所提出的預測模型采用滑動窗口的訓練方法,即訓練序列持續(xù)滾動以獲得最新的風速特性。圖4為多步風速預測模型的窗口滑動過程。
圖4 滑動窗口預測
實驗采用600個風速數據值,前500個作為訓練集,后100個作為驗證集。由圖4可知:本文的預測模型采用3步預測,在驗證數據之前,訓練集總是包含500個數據值。
從河北省某風電廠采集了一組風速序列,圖5為原始風速序列和其經過WT之后的結果。
圖5 原始風速序列和WT之后的結果
由圖5可知,A3為保持原始風速實際趨勢的低頻近似分量,D3-D1為反映隨機擾動影響的高頻細節(jié)分量。經過Augmented Dickey-Fuller檢驗可知,A3是非平穩(wěn)的,而D3-D1是平穩(wěn)的。
為了驗證WT-LSTM-ARMA模型的預測性能,采用其它預測模型對風電廠采集的原始風速數據預測并對預測結果進行了對比實驗。比較模型如下:ARIMA模型、BP模型、Elman模型、LSTM模型、WT-ARIMA-ARMA模型、WT-BP-ARMA模型和WT-Elman-ARMA模型。對于單一模型,利用原始風速序列直接訓練并預測。對于混合模型,三個高頻細節(jié)分量D3-D1使用獨立的ARMA模型,并由AIC確定ARMA模型的最優(yōu)順序。低頻近似分量A3分別使用ARIMA模型、BP模型、Elman模型和LSTM模型。
為了建立模型,必須知道輸入數量、隱含層數量和隱含層神經元的數量等參數。輸入數量由模型階次決定,使用偏自相關函數(PACF)來確定模型階次。隱含層神經元的數量是調節(jié)和控制網絡表征能力的重要參數[19],本研究采用基于網格搜索的交叉驗證法對神經元數量進行優(yōu)化,圖6為LSTM網絡的網格搜索結果。表1給出了不同模型的結構和通過實驗確定的初始參數。
圖6 網格搜索的LSTM神經元的最佳數目
表1 不同模型的結構和初始參數
ARIMA的參數經PACF確定初步范圍,再經AIC、AICC和BIC準則最終確定為(1,1,1)。BP網絡、Elman網絡和LSTM網絡的隱含層數為1,隱含層神經元數分別為4個、6個和8個。
為了評價所提出的預測模型的性能,在預測實驗中使用了以下評價指標:MAE(平均絕對誤差)、RMSE(均方根誤差)和R2(決定系數)[20]。
(8)
(9)
(10)
圖7-9為風速序列采用不同預測模型的1步、2步和3步預測結果。表2根據結果給出了相應的誤差評估。
圖7 風速序列的1步預測結果
圖8 風速序列的2步預測結果
圖9 風速序列的3步預測結果
由圖7-9和表2可知:在1-3步預測中,所提出的WT-LSTM-ARMA模型在8種預測模型中,誤差評價指標最小,決定系數最大且接近1,預測精度最高,預測性能最好。
表2 風速序列預測結果的誤差評估
為了提高風速預測精度,本文提出了一種新型混合預測模型,該模型融合了WT、LSTM網絡和ARMA技術。為了驗證所提出的預測模型的性能,將其應用于河北省某風電廠的風速預測,并與單一預測模型和混合預測模型進行了比較。實驗結果表明,該預測模型是一種有效可行的短期風速預測模型。
所提出的預測模型具有較好的預測性能,其原因主要有以下三個方面。首先,利用小波變換將原始風速序列分解為低頻近似子序列和高頻細節(jié)子序列。對各個子序列分別進行預測,消除了各分量之間的干擾。其次,采用LSTM網絡對低頻子序列進行預測。與RNN網絡相比,LSTM網絡具有較強的長序列理解能力,克服了梯度消失問題。因此,LSTM網絡具有較強的非線性處理能力,非常適合風速預測。最后,采用高性能、魯棒性好的ARMA模型對高頻子序列進行預測,同時利用AIC確定了ARMA模型的最優(yōu)順序。