曹天行,劉三明,王致杰,劉劍,孫元存
(上海電機學(xué)院 電氣學(xué)院, 上海 200240)
風(fēng)能作為一種新能源具有清潔環(huán)保的特點,因此世界各國的裝機容量逐年增加,使得風(fēng)電滲透率增加,但是隨著風(fēng)速的變化風(fēng)電出力并不穩(wěn)定,這使得電力系統(tǒng)的運行面臨不小的挑戰(zhàn)[1-2]。因此風(fēng)功率的準(zhǔn)確預(yù)測是保證電力系統(tǒng)的可靠運行以及增加風(fēng)電上網(wǎng)的競爭性的必要前提。
風(fēng)電功率短期預(yù)測方法主要包括基于數(shù)值天氣預(yù)報(NWP)的預(yù)測方法和時間序列分析法(ARMA)[3-4]?;贜WP的預(yù)測方法包括支持向量機(SVM)[5-6]、人工神經(jīng)網(wǎng)絡(luò)(ANN)[7]等;時間序列法包括卡爾曼濾波法(KF)[8]、持續(xù)預(yù)測法[9]等。然而這些常見方法都有各自的缺點,例如持續(xù)法的預(yù)測結(jié)果不穩(wěn)定,且預(yù)測誤差大; 人工神經(jīng)網(wǎng)絡(luò)容易陷入局部極值,對高頻的序列學(xué)習(xí)效果不好; 支持向量機難以訓(xùn)練大規(guī)模的樣本。深度學(xué)習(xí)網(wǎng)絡(luò)是指多類機器學(xué)習(xí)結(jié)合各層次結(jié)構(gòu)的網(wǎng)絡(luò),使用多層非線性信息處理方法,進(jìn)行識別特征、分類數(shù)據(jù)和生成數(shù)據(jù)。文中采用集合經(jīng)驗?zāi)B(tài)分解[10-11](EEMD)將風(fēng)電功率變成一組平穩(wěn)性序列,再結(jié)合稀疏自編碼器(SAE)及BP神經(jīng)網(wǎng)絡(luò)進(jìn)行預(yù)測可提高預(yù)測精度。
集合經(jīng)驗?zāi)B(tài)分解是傳統(tǒng)的經(jīng)驗?zāi)B(tài)分解方法的改進(jìn),文獻(xiàn)[12]介紹了經(jīng)驗?zāi)B(tài)分解,經(jīng)驗?zāi)B(tài)分解是一種依據(jù)數(shù)據(jù)固有的時間尺度特征來分解信號的方法,可逐級篩選出原信號中不同時間尺度的局部特征信號,得到具有相同特征的固有模態(tài)分量(Intrinsic Mode Function, IMF)。IMF應(yīng)滿足以下兩個條件:(1)信號的局部極大值與極小值構(gòu)成的包絡(luò)線均值為零;(2)極點數(shù)和零點數(shù)相差不大于1。對于某序列{x(t)}經(jīng)驗?zāi)B(tài)分解步驟如下:
(1)求出序列{x(t)}中所有極值點(極大值和極小值),然后用三次樣條函數(shù)插值擬合上包絡(luò)線xmax(t)以及下包絡(luò)線xmin(t);
(2)求出兩包絡(luò)線的均值m(t),進(jìn)而求出x(t)和m(t)的差值h(t),其中:
h(t)=x(t)-m(t)
(2)
(3)判斷h(t)是否滿足IMF的條件,若滿足,則h(t)為第一個IMF,記c1(t)=h(t),并求出原信號與該IMF的差值r1(t);若不滿足,則令h(t)為原始序列,重復(fù)前兩步直到滿足條件;
(4)將r(t)作為待分解信號,重復(fù)步驟(1)~步驟(3),直到剩余信號rn(t)為單調(diào)函數(shù)時,停止分解。則原序列可表示為:
雖然傳統(tǒng)EMD減少了人為因素的影響,但是會出現(xiàn)模態(tài)混疊的現(xiàn)象。EEMD通過在原始序列中加入白噪聲序列這一方法有效地解決了此問題。集合經(jīng)驗?zāi)B(tài)分解步驟如下:
(2)對{X(t)}進(jìn)行EMD分解,得到若干IMF;
(3)重復(fù)前兩步N次,每次加入不同的白噪聲序列;
(4)將N次分解所得的各分量的均值作為{x(t)}的最終IMF。
稀疏自編碼器是深度學(xué)習(xí)網(wǎng)絡(luò)的一種常用方法,深度學(xué)習(xí)網(wǎng)絡(luò)是指一大類的機器學(xué)習(xí)和各種層次結(jié)構(gòu)結(jié)合的網(wǎng)絡(luò),其特性是使用多層非線性信息處理方法。
此時代價函數(shù)為:
式中β表示稀疏懲罰項的權(quán)重。
圖1是自動編碼器的結(jié)構(gòu),AE的訓(xùn)練過程是:首先自動編碼器將x∈[0,1]d作為輸入向量,利用定性映射函數(shù)y=fθ(x)=s(Wx+b)將其映射到隱層y∈[0,1]d′,其中網(wǎng)絡(luò)參數(shù)θ={W,b},W是大小為d′×d的權(quán)值矩陣,b是維數(shù)為d′的偏置向量,s(x)=1/(1+e-x);其次將之前得到的y再次利用映射函數(shù)z=gθ′(y)=s(W′y+b′)將其映射重構(gòu)得到向量z∈[0,1]d,其中網(wǎng)絡(luò)參數(shù)為θ′={W′,b′},通過限定W′=WT,可以取得最優(yōu)的反向映射的權(quán)值矩陣W′;這樣,每個輸入x(i)映射得到對應(yīng)的y(i),再重構(gòu)得到對應(yīng)的z(i),通過最小化平均重構(gòu)誤差我們可以得到模型的最優(yōu)參數(shù),即:
式中L為損失函數(shù)。
傳統(tǒng)的平方差函數(shù)就是損失函數(shù)的一種形式,即:
或者若把向量x和z的每個分量看作滿足伯努利分布,使用交叉熵來度量x和z之間的距離,即:
(8)
同時,利用前向反饋神經(jīng)網(wǎng)絡(luò)(FFNN)算法實現(xiàn)網(wǎng)絡(luò)的微調(diào),從網(wǎng)絡(luò)最后一層的代價函數(shù)Jsparse(W,b),利用梯度下降法對整個網(wǎng)絡(luò)進(jìn)行微調(diào)。
圖1 自動編碼機結(jié)構(gòu)Fig.1 Structure of the auto-encoders
BP神經(jīng)網(wǎng)絡(luò)是基于誤差反向傳播算法的多層前向神經(jīng)網(wǎng)絡(luò),是淺層學(xué)習(xí)網(wǎng)絡(luò)的一種,用的是有監(jiān)督的訓(xùn)練方式。BP可以學(xué)習(xí)并自適應(yīng)未知信息,具有分布式信息存儲與處理結(jié)構(gòu),具有一定的容錯性,因此構(gòu)造出來的系統(tǒng)具有較好的魯棒性,適合處理復(fù)雜問題。使用BP神經(jīng)網(wǎng)絡(luò)的步驟如下:
(1)初始化網(wǎng)絡(luò)的結(jié)構(gòu)和權(quán)值;
(2)前向計算:按照置好的樣本,計算BP網(wǎng)絡(luò)每層神經(jīng)元的輸入和輸出信號;
(3)根據(jù)實際輸出計算反向誤差,以修正權(quán)值;
(4)判斷誤差,如果誤差值小于給定值或者迭代次數(shù)超過設(shè)定值則結(jié)束學(xué)習(xí)。否則返回步驟(3)。
雖然BP神經(jīng)網(wǎng)絡(luò)在解決一些不太復(fù)雜的或者有限制的問題中表現(xiàn)出了良好的效果,但是其表征和建模能力有限,容易陷入局部極值,在應(yīng)對較為復(fù)雜的實際的問題的時候,如不具有明顯周期性變化的高頻分量時,BP神經(jīng)網(wǎng)絡(luò)就達(dá)不到良好的效果。深度的學(xué)習(xí)網(wǎng)絡(luò)比BP神經(jīng)網(wǎng)絡(luò)有更優(yōu)秀的表達(dá)能力。跟BP網(wǎng)絡(luò)最大的不同是,深度學(xué)習(xí)網(wǎng)絡(luò)能用更為簡單的方法來表示更大的函數(shù)集合,而多層的優(yōu)點是只要很少的參數(shù)就可以表示更加復(fù)雜的函數(shù)關(guān)系。因此對于高頻信號的學(xué)習(xí)能力,SAE明顯優(yōu)于BP神經(jīng)網(wǎng)絡(luò)。
所提出的EEMD-SAE-BP模型,就是將EEMD分解結(jié)果中的高頻分量用SAE進(jìn)行預(yù)測,而具有明顯周期性的其他分量以及余量用BP進(jìn)行預(yù)測,這樣既保證了預(yù)測精度,又能縮短預(yù)測時間。
首先使用EEMD分解風(fēng)電功率序列,以降低其非平穩(wěn)性,得到若干子序列;再用SAE對IMF中前j個高頻分量分別進(jìn)行建模預(yù)測,其余分量以及rn(t)則用BP分別進(jìn)行建模預(yù)測,最后將各個預(yù)測結(jié)果疊加并進(jìn)行誤差分析。EEMD-SAE-BP預(yù)測模型建模流程如圖2所示。
圖2 基于EEMD-SAE-BP的風(fēng)功率預(yù)測模型流程圖Fig.2 Power forecasting flow chart based on EEMD-SAE-BP
(1)用EEMD分解風(fēng)電功率序列,得到各IMF以及rn(t)。其中白噪聲參數(shù)p取0.2,ε取100;
(2)分別對IMF中j個高頻分量建立SAE網(wǎng)絡(luò)預(yù)測模型;
(3)分別對其余IMF分量以及rn(t)建立BP網(wǎng)絡(luò)預(yù)測模型;
(4)將各分量預(yù)測值疊加求和,得到最終的預(yù)測結(jié)果;
(5)對模型進(jìn)行評價。
以上海某風(fēng)電場2013年2月份的一號風(fēng)機實測數(shù)據(jù)為例進(jìn)行建模分析,數(shù)據(jù)采樣時間間隔為15 min。
由圖3可知2月份最高發(fā)電功率為2 058 MW,最低為0 MW,平均值為511.23 MW,功率波動較大。一共2 688個數(shù)據(jù),取每96個數(shù)據(jù)為一組作為訓(xùn)練輸入,后16個點作為訓(xùn)練輸出,來訓(xùn)練網(wǎng)絡(luò),最后一組96個數(shù)據(jù)為測試數(shù)據(jù),預(yù)測未來4小時的風(fēng)功率變化情況。
圖3 某風(fēng)電場2月的實測功率Fig.3 The actual power of a wind farm in February
EEMD的分解過程如圖4所示。分解結(jié)果顯示分解后的子序列頻率是逐步平緩的,并得到各個頻率下振幅的變化情況。其中IMF1~I(xiàn)MF3分量是不具有明顯周期性變化的高頻分量,因此用深度學(xué)習(xí)網(wǎng)絡(luò)(文中使用SAE)有更好的預(yù)測效果,即建立SAE預(yù)測模型;IMF4~I(xiàn)MF8分量周期特性較明顯,則使用BP建立預(yù)測模型;IMF9~I(xiàn)MF10和rest序列的趨勢變化十分明顯,使用BP網(wǎng)絡(luò)建立預(yù)測模型。
圖4 EEMD分解結(jié)果Fig.4 Component diagram after EEMD decomposition
分別采用EEMD-BP、EEMD-SAE、EEMD-SAE-BP、SAE、BP五種模型進(jìn)行風(fēng)功率預(yù)測,并對預(yù)測結(jié)果進(jìn)行誤差評價。
圖5為5種模型對原始數(shù)據(jù)進(jìn)行學(xué)習(xí)后,對未來四小時風(fēng)功率進(jìn)行預(yù)測的結(jié)果,表1為不同預(yù)測模型對風(fēng)功率預(yù)測的評價結(jié)果。
圖5 未來四小時的各模型預(yù)測結(jié)果Fig.5 Time span of 4 hours of the model forecast results
從幾種預(yù)測模型的評價結(jié)果中可以看出:
(1)使用EEMD先對原始功率序列分解后再進(jìn)行機器學(xué)習(xí),有效的提高了預(yù)測精度,如EEMD-SAE預(yù)測模型與SAE預(yù)測模型的對比;
(2)由SAE以及BP的評價結(jié)果中可以看出,由于BP存在容易陷入局部極值的問題,使用深度網(wǎng)絡(luò)進(jìn)行學(xué)習(xí)原始序列效果更佳;
(3)使用提出的EEMD-SAE-BP預(yù)測模型,在預(yù)測精度上明顯優(yōu)于其他預(yù)測模型,與前文的論證相符。
表1 不同風(fēng)電功率預(yù)測方法的誤差對比Tab.1 Compared errors of wind power prediction under RMSE and MAPE
提出一種基于集合經(jīng)驗?zāi)B(tài)和深淺層學(xué)習(xí)結(jié)合的風(fēng)電場功率短期預(yù)測方法。經(jīng)反復(fù)實驗和深入對比,所提EEMD-SAE-BP模型在短期風(fēng)功率預(yù)測中相較EEMD-BP、EEMD-SAE、SAE、BP四種模型預(yù)測,擁有較小的誤差,能夠更好滿足系統(tǒng)對并網(wǎng)風(fēng)電預(yù)測精度的要求,進(jìn)一步增強風(fēng)電上網(wǎng)競爭力。然而,純粹基于歷史數(shù)據(jù)的風(fēng)功率預(yù)測模型在預(yù)測步長增加時,預(yù)測效果將可能變差。下一步的研究工作是考慮更多影響風(fēng)功率的因素,并運用所提方法進(jìn)行預(yù)測,使得EEMD-SAE-BP的風(fēng)功率預(yù)測具有更好的實用價值。