近年來,不可再生能源日益匱乏.除了積極提高能源效率外,從自然界中直接獲得的可再生能源引起了許多學者的關注.風能、太陽能和潮汐能等均已被用于電力轉(zhuǎn)換[1],因此可再生發(fā)電的部署是低碳經(jīng)濟的關鍵推動力[2].由于對風力發(fā)電的需求不斷增長,加上社會、環(huán)境以及經(jīng)濟因素的制約,使得目前風力渦輪和風電場規(guī)模增加[3].風向變化是影響風力渦輪機運行最重要的環(huán)境因素之一,風向預測可用于設計最佳偏航控制的風力渦輪機.受臺風、復雜地形以及上游風力發(fā)電機產(chǎn)生尾流等因素的影響,風力發(fā)電的來風方向總是在變化,導致每個風力渦輪機的進入風向也不同.針對風向變化,大型風力渦輪機對偏航控制系統(tǒng)采用不同的控制策略[4].動態(tài)偏航過程是由連續(xù)的靜態(tài)偏航過程形成的,因此對靜態(tài)偏航的研究是動態(tài)偏航的基礎.國內(nèi)外學者對靜態(tài)偏航風力發(fā)電機的空氣動力學性質(zhì)進行了許多研究,通過對風向角度的研究可知:當風速不變時,短時間內(nèi)的風向變化導致迎面風速降低,風力渦輪機轉(zhuǎn)子速度也隨之降低.
目前,國內(nèi)外學者針對短期風向的預測做了大量的研究并提出了很多方法.在風向預測方面,建立混合模型來尋找最優(yōu)預測方法是比較常見的研究策略,例如:唐振浩等[5]提出一種基于數(shù)據(jù)解析的混合風向預測算法;Sari等[6]基于3DCNN和深度卷積LSTM提出短期風速和風向預測方法;Chitsazan等[7]基于非線性函數(shù)的回波狀態(tài)網(wǎng)絡來預測風向.
風向數(shù)據(jù)具有隨機性、不確定性等特點[8].為提高風向測量的準確性,本文提出了一種基于EEMD-CNN-GRU的混合預測模型.此模型先運用集合經(jīng)驗模態(tài)分解(Ensemble Empirical Mode Decomposition,EEMD)算法對原始風向序列進行分解,得到更能反映風向序列變化特性的多個分量,以降低不平穩(wěn)性和間歇性;其次使用卷積神經(jīng)網(wǎng)絡(Convolutional Neural Network,CNN)提取潛在特征,使得各分量簡單化;最后利用門控循環(huán)單元網(wǎng)絡(Gated Recurrent Unit,GRU)擬合輸入數(shù)據(jù),輸出各分量的預測值,通過疊加得到最終的風向預測值.
EEMD本質(zhì)上是疊加高斯白噪聲的多重經(jīng)驗模態(tài)分解(EMD)[9].
它先利用頻率分布均勻的高斯白噪聲的統(tǒng)計特性,通過每次添加的白噪聲來改變信號的極值點特征,然后對多個EMD得到的對應的基本模態(tài)分量(IMF)進行整體平均,以抵消加入的白噪聲,從而有效抑制模態(tài)混疊的產(chǎn)生.記加入噪聲的總次數(shù)為N,EEMD的步驟如下:
1) 對原始信號x(t)加一個標準正態(tài)分布的白噪聲ni(t):
xi(t)=x(t)+ni(t),
(1)
其中,ni(t)表示第i次加入的白噪聲序列,xi(t)表示第i次實驗的附加噪聲信號.
2) 對新的信號序列xi(t)執(zhí)行EMD,得到J個模態(tài)分量和1個殘差分量:
(2)
其中,IMF′j和ei(t)分別為xi(t)由EMD產(chǎn)生的第j個模態(tài)分量以及殘差分量,ei(t)代表信號的平均趨勢.
3) 將步驟1)和2)重復N次,得到IMF的集合為
{c1,j(t),c2,j(t),…,cN,j(t)},j=1,2,…,J.
(3)
4) 根據(jù)不相關序列的統(tǒng)計平均值為零這一原則,將上述對應的IMF進行集合平均運算,得到EEMD的最終分量,即:
(4)
其中,cj(t)是EEMD的第j個IMF.
作為一類包含卷積計算的前饋神經(jīng)網(wǎng)絡,CNN是深度學習的代表性算法之一[10].人工神經(jīng)元可以響應周圍單元,進行大型數(shù)據(jù)處理,它通過數(shù)據(jù)的轉(zhuǎn)換以及降維將原始輸入映射為新的特征.與標準的全連接網(wǎng)絡不同的是,CNN具有特殊的網(wǎng)絡結構,它包括卷積層和池化層組成的特征提取器,利用局部連接和權值共享來提取原始數(shù)據(jù)的特征,使得網(wǎng)絡模型變得簡單,從而加快訓練速度、提高泛化性能.在CNN網(wǎng)絡中卷積層之后會跟上一個池化層,其作用是提取局部均值或最大值,一般常見的多為最大值池化層[11].
本文選用一維卷積神經(jīng)網(wǎng)絡,將風向建模為一系列時間序列數(shù)據(jù).CNN通過減少權值輸入提取時序序列特征,挖掘數(shù)據(jù)之間的聯(lián)系,再將處理后的特征傳入GRU網(wǎng)絡中.
一維卷積經(jīng)常用在信號處理中,以計算信號的延遲累計.假設在每個時刻t都會產(chǎn)生一個信號pt,其衰減系數(shù)為wk,即在k-1個時間延遲后為原來的wk倍.在時刻t收到的信號qt為當前信息和以往信息產(chǎn)生的累加和,計算公式如下:
qt=w1pt+w2pt-1+…+wkpt-k+1.
(5)
一般把w1,w2,w3,…稱為濾波器或者卷積核.假設濾波器的長度為K,它與一個信號序列p1,p2,p3,… 的卷積和為
(6)
GRU是LSTM網(wǎng)絡的一種變體[12],其結構更加簡單,而且效果也很好.因此,GRU是目前非常流行的一種網(wǎng)絡,可以解決循環(huán)神經(jīng)網(wǎng)絡(RNN)中的長依賴問題,廣泛應用于時間序列的預測.
GRU與LSTM具有相似的數(shù)據(jù)流[13],但GRU缺少單獨的存儲單元,使其在訓練過程中效率更高.LSTM引入了輸入門、遺忘門和輸出門三個門函數(shù),分別控制輸入值、記憶值和輸出值.而在GRU模型中只有兩個門:更新門和重置門,其具體結構如圖1所示.在圖1中,zt和rt分別表示更新門和重置門.GRU的輸入為前一時刻隱藏層的輸出和當前的輸入,輸出為下一時刻隱藏層的信息.重置門計算候選隱藏層的輸出,其作用是控制保留前一時刻的隱藏層的數(shù)量.更新門是控制加入特定數(shù)量候選隱藏層的輸出信息,從而得到當前隱藏層的輸出.
圖1 GRU網(wǎng)絡基本單元Fig.1 Basic unit of GRU network
Sigmoid函數(shù)將數(shù)據(jù)映射到0~1,用來描述應該傳遞信息的數(shù)量,tanh函數(shù)將值置于-1和1之間.GRU單元的計算公式如下:
rt=σ(Wr·[ht-1,xt]),
(7)
zt=σ(Wz·[ht-1,xt]),
(8)
(9)
(10)
yt=σ(Wσ·ht),
(11)
其中,[]表示兩個向量相連,*表示矩陣的Hadamard積,σ為Sigmoid函數(shù).
考慮到預測效率和準確率等要求,提出一種基于EEMD-CNN-GRU的混合短期風向預測模型.采用集合經(jīng)驗模態(tài)分解(EEMD)將數(shù)據(jù)分解為有限個基本模態(tài)分量和1個殘差分量.卷積神經(jīng)網(wǎng)絡(CNN)具有特征提取能力,挖掘特征向量,從而提升預測性能.門控循環(huán)單元網(wǎng)絡(GRU)可以學習序列相關性,通過CNN和GRU的結合得到風向的預測值.
所建立的混合預測模型的流程如下:首先將具有時序特征的數(shù)據(jù)集作為混合模型的輸入;然后對原始風向數(shù)據(jù)進行歸一化處理,并劃分出訓練集和測試集;最后采用所提出的混合模型進行預測,如圖2所示.混合模型的網(wǎng)絡結構主要分為3層:第1層為EEMD,它對原始數(shù)據(jù)進行分解,提高輸入序列的平滑性和可信度;第2層為CNN,通過構造一維卷積層和池化層來提取特征;第3層是GRU,發(fā)揮其結構簡單、參數(shù)較少的優(yōu)勢[14],提高訓練速度、縮短訓練時間以及預測時間,從而保證混合模型預測的快速性以及準確性.因此,本文提出的EEMD-CNN-GRU混合模型采用EEMD對數(shù)據(jù)集進行分解優(yōu)化,并結合CNN預測時間短與GRU預測準確性高的特點,優(yōu)化改進風向的預測.
圖2 基于EEMD-CNN-GRU的短期風向預測流程Fig.2 Flow chart of short-term wind direction prediction via EEMD-CNN-GRU
選用土耳其2018年4月的風電場數(shù)據(jù)進行短期風向預測,采樣間隔為10 min,共4 305條數(shù)據(jù),得到的風向時間序列如圖3所示.其中,前2/3的數(shù)據(jù)作為訓練集,后1/3的數(shù)據(jù)作為測試集,用前1 h風向數(shù)據(jù)來預測下一時刻的風向,實現(xiàn)風向的滾動預測.為了便于模型訓練,在CNN-GRU前對數(shù)據(jù)進行歸一化處理,計算方式如下所示:
圖3 風向時間序列Fig.3 Time series of wind direction
(12)
其中,u為原始的數(shù)據(jù),umin為最小值,umax為最大值.
由圖3可以看出,風向數(shù)據(jù)具有隨機性、不連續(xù)性和非平穩(wěn)性,并發(fā)現(xiàn)該風向數(shù)據(jù)不僅周期性差,而且含有大量的高頻分量等,因此需要對所選風向序列進行數(shù)據(jù)預處理.
預測結果的誤差評價采用均方根誤差(Root Mean Squared Error,RMSE)、絕對平均誤差(Mean Absolute Error,MAE)和決定系數(shù)(R-square,R2),公式如下:
(13)
(14)
(15)
對風向數(shù)據(jù)集進行EEMD,分解成12個IMF和1個殘差(Res),結果如圖4所示.IMF反映風向數(shù)據(jù)在不同影響因素下的分布,數(shù)據(jù)逐漸趨于平穩(wěn),Res能夠反映風向序列的變化規(guī)律,并且整體的變化趨勢比較一致[15].
圖4 EEMD的結果Fig.4 Results of EEMD
EEMD將風向數(shù)據(jù)進行平穩(wěn)化處理,各個IMF分量包含了原始序列的不同時間尺度的局部特征信號,使用GRU模型對各分量特征進行單獨預測,從而降低預測難度.
將EEMD分解后的數(shù)據(jù)分別輸入CNN-GRU模型進行訓練,設置循環(huán)步長為6,即用前6個時刻的數(shù)據(jù)預測當前數(shù)據(jù).CNN的卷積層個數(shù)為32,各層都有卷積核,使用BN層對每個神經(jīng)元做歸一化處理,池化窗口的大小為1,激活函數(shù)為ReLU.GRU的神經(jīng)元個數(shù)分別為128和32,選用ReLU作為激活函數(shù),Adam作為優(yōu)化器,迭代輪數(shù)為100.
分別使用BP神經(jīng)網(wǎng)絡、LSTM、GRU、CNN-GRU、EMD-GRU、EEMD-GRU、VMD-CNN-GRU、EMD-CNN-GRU、EEMD-CNN-LSTM、EEMD-CNN-GRU進行仿真實驗,其中VMD是變分模態(tài)分解[16].對各網(wǎng)絡模型進行參數(shù)調(diào)優(yōu),使用相同的訓練集進行訓練,并選取同樣的測試集來預測風向,計算其RMSE、MAE以及R2,結果如表1所示.通過觀察表1,可以得到如下結論:選用模型的R2都大于0.77,表明這10種模型都是有效的,且EEMD-CNN-GRU的RMSE、MAE和R2表現(xiàn)優(yōu)異.
表1 不同模型預測結果對比
為了更好地對比預測結果與原始數(shù)據(jù)的擬合程度,對EEMD-GRU、VMD-CNN-GRU、EMD-CNN-GRU、EEMD-CNN-LSTM、EEMD-CNN-GRU在同一數(shù)據(jù)集繪制風向預測曲線,結果如圖5所示.為了更直觀地對比預測結果,將局部曲線進行了放大處理.從圖5可以明顯地看出:EEMD-GRU在峰值區(qū)域出現(xiàn)大幅偏差,而其他4種模型則能夠較好地接近真實曲線.此外,EEMD-CNN-GRU模型的預測結果不僅在峰值區(qū)域與真實值更吻合,在其他區(qū)域與實際變化曲線也比較貼近.其主要原因是風向序列的非平穩(wěn)性導致GRU對原始序列的變化趨勢不能很好地預測,而加入EEMD進行分解重構,并用CNN進行轉(zhuǎn)換及降維,就可以大大緩解此問題,使得模型的預測精度更高.
圖5 不同模型的風向預測曲線Fig.5 Wind direction curves predicted by different models
在表1中,EEMD-CNN-LSTM與EEMD-CNN-GRU的預測性能接近,且顯著優(yōu)于其他模型.下面比較這兩種模型在預測階段的運行時間,結果如表2所示.從表2可以看出,所提出混合模型的預測時間大約是EEMD-CNN-LSTM的68%,即EEMD-CNN-GRU具有較短的計算時間.
為了更好地預測短期風向,本文提出了一種基于EEMD-CNN-GRU的混合風向預測模型.經(jīng)實驗驗證,得到以下結論.
1) 對風向序列使用EEMD,得到更能反映風向序列變化特性的多個模態(tài)分量和殘差分量,從而降低風向的不平穩(wěn)性、間歇性和非線性對預測結果的不利影響.
2) 引進CNN-GRU混合預測模型,先使用CNN提取潛在特征,使數(shù)據(jù)簡單化,再利用GRU時序依賴的特性,對輸入數(shù)據(jù)進行擬合,直接輸出各分量的預測值,最終通過疊加得到風向預測值.相比于其他的分解預測方法,所提模型降低了預測難度;與EEMD-CNN-LSTM相比,EEMD-CNN-GRU縮短了預測時間.
3) 所提混合模型結合了EEMD、CNN和GRU各自的特點.實驗結果表明,相比于其他預測模型,EEMD-CNN-GRU的風向短期預測精度較高,驗證了模型的可行性以及一定的優(yōu)越性,為后續(xù)風力發(fā)電中風向的預測問題提供了一種新的方法.