柳玉,郭虎全
(1華北電力大學(xué),控制與計算機工程學(xué)院,北京 102206;2新能源電力系統(tǒng)國家重點實驗室,北京 102206)
近年來,風(fēng)力發(fā)電機組單機容量和大型并網(wǎng)風(fēng)電場的發(fā)電總量迅速增長[1-2],影響了電力系統(tǒng)的安全平穩(wěn)運行[3]。因此,進行風(fēng)速預(yù)測很有意義。
短時期的預(yù)測需要基于對過去和現(xiàn)在的數(shù)據(jù)進行推廣的統(tǒng)計技術(shù)。最簡單的統(tǒng)計預(yù)測方法是持續(xù)預(yù)測法[4],這種方法一般是將最后一步的測量數(shù)據(jù)作為下一步預(yù)測數(shù)據(jù)的輸入部分,由于只考慮上一步測量值,模型的預(yù)測誤差較大,預(yù)測結(jié)果不穩(wěn)定;時間序列法[5-6]利用歷史測量值建立線性模型,但是其低階模型預(yù)測精度低,高階模型參數(shù)整定難度大;卡爾曼濾波法[7-8]是在假定已知噪聲統(tǒng)計特性的情況下得出預(yù)測值,事實上噪聲的統(tǒng)計特性難以估計;空間相關(guān)性法[9]則是利用風(fēng)場和鄰近點的風(fēng)速數(shù)據(jù)做預(yù)測,其預(yù)測效果較好,但原始數(shù)據(jù)收集量較大。
由于風(fēng)速序列的高度非線性,如ARMA的線性模型不能進行很好地預(yù)測。神經(jīng)網(wǎng)絡(luò)[10-11]則能夠很好地逼近非線性函數(shù)。其處理非線性問題所表現(xiàn)出很強的優(yōu)越性。然而神經(jīng)網(wǎng)絡(luò)也存在明顯的不足,一些研究表明,對網(wǎng)絡(luò)的配置和訓(xùn)練是NP問題,其自身缺乏嚴(yán)格的理論指導(dǎo)。如何最優(yōu)地構(gòu)造和訓(xùn)練一個神經(jīng)網(wǎng)絡(luò),保證神經(jīng)網(wǎng)絡(luò)的泛化能力,更多的取決于使用者的經(jīng)驗和不斷的試湊。1990年,Hansen和Salamon[12]證明:通過訓(xùn)練多個神經(jīng)網(wǎng)絡(luò)并將其集成輸出,會顯著地提高神經(jīng)網(wǎng)絡(luò)的泛化能力。
本文用AdaBoost算法的思想集成多個神經(jīng)網(wǎng)絡(luò)的輸出。即把BP神經(jīng)網(wǎng)絡(luò)作為弱預(yù)測器,通過反復(fù)的訓(xùn)練BP神經(jīng)網(wǎng)絡(luò)預(yù)測輸出,最終得到由多個BP神經(jīng)網(wǎng)絡(luò)組成的強預(yù)測器。
BP神經(jīng)網(wǎng)絡(luò)即采用誤差反向傳播算法的多層前向神經(jīng)網(wǎng)絡(luò)。其重要特點是信號前向傳遞,誤差反向傳播。前向傳遞中,輸入信號從輸入層經(jīng)隱含層逐層處理,直至輸出層。相鄰兩層神經(jīng)元完全互連,不相鄰層無連接。每一層的神經(jīng)元狀態(tài)只影響下一層神經(jīng)元狀態(tài),如果輸出層得不到期望輸出,則轉(zhuǎn)入反向傳播,根據(jù)預(yù)測誤差調(diào)整網(wǎng)絡(luò)權(quán)值和閥值,使BP神經(jīng)網(wǎng)絡(luò)預(yù)測輸出不斷逼近預(yù)測輸出。其網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。
圖1 BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 Structure of BPNN
AdaBoost(Adaptive Boost)是Boosting算法的一種[13],其主要思想是獲取各學(xué)習(xí)樣本的權(quán)重分布,最初所有權(quán)重被賦予相等的數(shù)值,但在訓(xùn)練過程中,這些樣本權(quán)重被不斷調(diào)整:預(yù)測精度低的樣本權(quán)重得到加強,預(yù)測精度高的樣本權(quán)重則被減弱。最終,弱預(yù)測器加強了對難以預(yù)測的樣本的學(xué)習(xí)。這種思想源于Valiant提出的PAC(Probably Approximately Correct,可能近似正確)學(xué)習(xí)模型[14]。這樣,達到一定預(yù)測精度的弱預(yù)測器,經(jīng)組合后形成的強預(yù)測器就具有很高的預(yù)測精度。由于AdaBoost算法不要求事先知道弱學(xué)習(xí)算法預(yù)測精度的下限而非常適用于實際問題中。
AdaBoost算法可描述為:給定學(xué)習(xí)樣本
給定樣本初始權(quán)重
1)利用樣本權(quán)重Dt訓(xùn)練弱學(xué)習(xí)器;
2)獲取弱學(xué)習(xí)器的預(yù)測函數(shù)ht:X→Y,并用εt=Pri~Dt[ht(xi)≠yi]表示對應(yīng)的預(yù)測誤差;
4)更新樣本權(quán)重:
輸出最終的預(yù)測函數(shù)為
根據(jù)GB/T18710-2002標(biāo)準(zhǔn)規(guī)定:風(fēng)電場測風(fēng)數(shù)據(jù)檢驗的內(nèi)容包括數(shù)據(jù)的完整性檢驗和合理性檢驗,合理性檢驗包括合理性范圍的檢驗、趨勢性檢驗等。
根據(jù)GB/T18710-2002標(biāo)準(zhǔn)規(guī)定,合理性檢驗內(nèi)容主要有:
1)合理性檢驗范圍:按標(biāo)準(zhǔn)規(guī)定,小時平均風(fēng)速和風(fēng)向的合理范圍在0~40 m/s,0~360°,認為是合理的。超出范圍的,認為是不合理的。
2)趨勢性的合理范圍:按標(biāo)準(zhǔn)規(guī)定,1 h平均風(fēng)速差的合理范圍應(yīng)小于6 m/s。
風(fēng)速數(shù)據(jù)歸一化
本文從某風(fēng)電場小時級平均風(fēng)速選取1 300組數(shù)據(jù)樣本。由于不需要事先知道弱學(xué)習(xí)算法正確率的下限,對弱預(yù)測器,即BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)可設(shè)置為6-6-1,過去6 h的風(fēng)速數(shù)據(jù)作為輸入,隱層結(jié)點數(shù)為6個,預(yù)測輸出為下一小時的風(fēng)速值。網(wǎng)絡(luò)函數(shù)參考文獻[15],即網(wǎng)絡(luò)隱層神經(jīng)元傳遞函數(shù)采用tansig函數(shù),輸出層采用purelin函數(shù)。訓(xùn)練步數(shù)定為50步。為了增加泛化能力,每個弱預(yù)測器的訓(xùn)練樣本是從前700組風(fēng)速數(shù)據(jù)中隨機選擇500組進行訓(xùn)練。取εt=1,共訓(xùn)練生成不同權(quán)重下的10個BP神經(jīng)網(wǎng)絡(luò)弱預(yù)測器,最后由10個弱預(yù)測器組成一個強預(yù)測器對風(fēng)速進行預(yù)測。測試樣本則是按照時間序列對第701組樣本后的50組樣本進行測試,圖2所示為AdaBoost-BP預(yù)測模型示意圖,圖3所示為原始風(fēng)速序列。
由圖4可知,用AdaBoost結(jié)合BP神經(jīng)網(wǎng)絡(luò)的預(yù)測誤差整體低于用弱預(yù)測器的BP神經(jīng)網(wǎng)絡(luò)的平均絕對誤差。
圖2 AdaBoost-BP預(yù)測模型示意圖Fig.2 Model of AdaBoost-BP
圖3 原始風(fēng)速序列Fig.3 Wind speed series
圖5 、圖6分別為權(quán)重最大和權(quán)重最小的BP神經(jīng)網(wǎng)絡(luò)與AdaBoost-BP的比較,從圖上可以直觀的看到,AdaBoost-BP預(yù)測結(jié)果還是優(yōu)于單獨的BP神經(jīng)網(wǎng)絡(luò),尤其在峰值處AdaBoost-BP明顯優(yōu)于BP神經(jīng)網(wǎng)絡(luò)。
圖7為AdaBoost-BP預(yù)測結(jié)果的相對誤差,除個別點相對誤差較大外,80%的測點的相對誤差在20%以內(nèi)。
圖4 AdaBoost-BP與BP絕對誤差對比Fig.4 AdaBoost-BP and BP absolute error comparison
圖5 最大權(quán)重預(yù)測結(jié)果圖Fig.5 Prediction with maximum weight
圖6 最小權(quán)重預(yù)測結(jié)果圖Fig.6 Prediction with minimum weight
圖7 相對誤差Fig.7 Relative error
本文對701組以后的50組樣本做了測試,平均相對誤差和平均相對方差A(yù)daBoost-BP優(yōu)于BP神經(jīng)網(wǎng)絡(luò)的平均值。按照時間順序往后順推100組,即100 h,并對預(yù)測誤差做了對比,101-150組數(shù)據(jù)波動較小,預(yù)測精度較高;201-250組數(shù)據(jù)的波動性較大,預(yù)測結(jié)果相對不理想,整體上隨著時間往后推移,預(yù)測精度在降低,但是AdaBoost-BP優(yōu)于BP神經(jīng)網(wǎng)絡(luò)。從表1結(jié)果可以看到AdaBoost-BP在橫向統(tǒng)一數(shù)據(jù)預(yù)測結(jié)果對比上優(yōu)于BP神經(jīng)網(wǎng)絡(luò),縱向時間推移結(jié)果上也優(yōu)于BP神經(jīng)網(wǎng)絡(luò),有更好的泛化能力。
表1 預(yù)測誤差結(jié)果對比Tab.1 Error comparison
本文用AdaBoost-BP模型預(yù)測風(fēng)電場的風(fēng)速,對AdaBoost-BP模型與BP神經(jīng)網(wǎng)絡(luò)模型做了對比分析。
1)AdaBoost-BP的短期預(yù)測結(jié)果優(yōu)于單個BP神經(jīng)網(wǎng)絡(luò)模型,尤其在風(fēng)速變化幅度較大時,預(yù)測結(jié)果明顯優(yōu)于單個BP神經(jīng)網(wǎng)絡(luò);同時,采用AdaBoost-BP模型的預(yù)測結(jié)果優(yōu)于多個弱預(yù)測器的簡單均值結(jié)果,驗證了AdaBoost的有效性。
2)相對于BP神經(jīng)網(wǎng)絡(luò)而言,AdaBoost-BP提升了泛化能力。隨著時間的推移,AdaBoost-BP模型的預(yù)測結(jié)果的優(yōu)越性體現(xiàn)的更為明顯,除個別組風(fēng)速數(shù)據(jù)的波動性較大,使預(yù)測結(jié)果相對不理想。
在本文的基礎(chǔ)上,可采用多個不同結(jié)構(gòu)的弱預(yù)測器有利于風(fēng)電場的安全運行。
[1] 2009年世界風(fēng)能報告[EB/OL].http://www.wwindea.org/home/images/stories/worldwindenergyreport2009_cn.pdf.
[2] 2009年中國風(fēng)電裝機容量統(tǒng)計[EB/OL].http://cwea.org.cn/upload/201006102.pdf.
[3] 傅旭,李海偉,李冰寒.大規(guī)模風(fēng)電場并網(wǎng)對電網(wǎng)的影響及對策綜述[J].陜西電力,2010(1):53-57.FU Xu,LI Hai-wei,LI Bing-han.Review on influences of large-scale wind farms power systems and countermeasures[J].ShaanxiElectricPower,2010(1):53-57(inChinese).
[4] Alexiadis M,Dokopoulos P,Sahsamanoglou H,et al.Shorttermforecastingofwindspeedandrelatedelectricalpower[J].Solar Energy,1998,63(1):61-68.
[5] BROWN B G,KATZ R W,MURPHY A H.Time serial models to simulate and forecast wind speed and wind power[J].Journal of Climate and Applied Meteorology,1984,23(8):1184-1195.
[6] 周培毅,張新燕.基于時間序列與支持向量機的風(fēng)電場風(fēng)速預(yù)測研究[J].陜西電力,2009(12):1-4.ZHOU Pei-yi,ZHANG Xin-yan.Study on wind speed forecasting of wind farm based on time series and support vector machine[J].Shaanxi Electric Power,2009,(12):1-4(in Chinese).
[7] BOSSANYIEA.Short-termwindpredictionusingKalman[J].Wind Engineering,1985,9(1):1-8.
[8] 王耀南,孫春順,李欣然.用實測風(fēng)速校正的短期風(fēng)速仿真研究[J].中國電機工程學(xué)報,2008,28(11):94-100.WANG Yao-nan,SUN Chun-shun,LI Xin-ran.Short-term wind speed simulation corrected with field measured wind speed[J].Proceedings of the CSEE,2008,28(11):94-100(in Chinese).
[9]ALEXIADISMC,DOKOPOULOSP S,SAHSAMANOGLOU H S.Wind speed and power forecasting based on spatial correlation models[J].IEEE Transactions on Energy Conversion,1999,14(3):836-842.
[10]KARINIOTAKISGN,STAVRAKAKISG S,NOGARET E F.Wind power forecasting using advanced neural networks models[J].IEEE Transactions on Energy Conversion,1996,11(4):762-767.
[11]LI Shu-hui,WUNSCH D C,GIESSELMANN M G,et al.Using neural networks to estimate wind turbine power generation [J].IEEE Transactions on Energy Conversion,2001,16(3):276-282.
[12]HANSEN L K,SALAMON P.Neural network ensembles[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,1990,12(10):993-1001.
[13]FREUNDY,SchapireRE.Ashortintroductiontoboosting[J].Journal of Japanese Society for Artificial Intelligence,1999,14(5):771-780.
[14]VALIANT L G.A Theory of learnable[J].Communications of the ACM,1984,27:1134-1142.
[15]陶玉飛,李偉宏,楊喜峰.風(fēng)電場風(fēng)速預(yù)測模型研究[J].電網(wǎng)與清潔能源,2009,25(3):53-56.TAO Yu-fei,LI Wei-hong,YANG Xi-feng.Wind speed forecast model for wind farms[J].Power System and Clean Energy,2009,25(3):53-56(in Chinese).