95853部隊 趙 斌 宋建麗
風電場機組一直受無規律的變向、變負荷的風力作用,這會使發電機的發電量波動很大,對電網造成較大的威脅,因此對風電場風速預測的理論和實際的研究具有重要意義。支持向量機(SVM)在國外已經應用在話者識別[1]、生物醫學[2]、噪音處理[3]等方面,在國內雖然也在模式識別、機械故障診斷、電力預測方面有應用,但是在風電場風速預測上應用較少[4]。風速受氣壓、溫度、緯度、海拔等的影響,風速的隨機性很強,本文利用SVM預測風速,百分比誤差精度在5%以內,可以為風電場風速預測提供較好的參考。
1963年,Vapnik提出一種非常有潛力的分類方法支持向量機(Support Vector Machine,SVM),它是一種基于統計學習理論的模式識別方法[5]。SVM以訓練誤差作為優化問題的約束條件,以置信范圍值最小化作為優化目標,成功的解決了小樣本、非線性及高維模式識別問題,并能夠推廣應用到函數擬合等其他機器學習問題中。

表1 風速實際值與預測值之間的比較
支持向量機回歸的主要思想是通過一個非線性映射Φ,將數據x映射到高位特征空間F,并在這個空間進行線性回歸[6]。
已知一個訓練集

以及假設函數集

其中權值nw∈R ,而b∈R為閾值。
回歸支持向量機一般可以表示為下面的規劃問題:

其中,iξ和為松弛變量,c()ξ是損失函數,C為懲罰項常數。

圖2 某風電場天平均風速

圖3 風速實際值與預測值
常用的核函數如下[9]。
1)多項式核:K( x, xi)=(x, xi+1)d,d為階數;
3)感知器核:K( x, xi)=tanh(βxi+b)。
本文在風速預測中采用的核函數K( x, xi)為徑向基RBF核函數(高斯核函數)。
由于選擇的是RBF核函數,所以在核函數參數的選擇上有懲罰項常數C和RBF的參數g。目前參數尋優方法有網格尋優,GA尋優,PSO尋優等,其中最簡單最有效的方法是網格尋優。但是上述幾種方法都是基于知道測試集標簽的情況下進行參數優化的,本文是在假定不知道測試集標簽的情況下,運用交叉驗證(Cross Validation)的方法找到最佳的C和g。
C和g的值是在以2為底的[-8,8]上取值,即C和g的值是在[2-8,28]取值,取最終測試集數據和預測集數據誤差最小的C和g。
本文選取我國某風電廠的風速數據,風速數據為一天中風速的平均值。本文選取某年當中連續300天的風速數據作為樣本,前290個作為訓練集,后10個作為預測集。實驗程序是在MATLAB 7.11(R2010b)平臺上完成,通過對比實測值和預測值來判斷預測的精度。本文風速預測的步驟如圖1所示。

圖4 風速實際值與預測值之間誤差
對實驗數據預處理,即用MATLAB自帶的mapmaxmin歸一化到[-1,1],構成訓練集,然后參數尋優選擇合理的核函數,建立預測模型,最后進行真實數據和預測數據的誤差分析。支持向量機預測模型效果一般用誤差百分比(APE)、平均百分比誤差(MAPE)和平均絕對誤差(MAE)來評價[7-8],APE、MAPE和MAE的表達式如下:

式中Rt代表時間t實際測量值real data,Pt代表時間t預測值predict data,n代表時間點的個數。根據取得的數據,圖2給出風電場天平均風速。
由圖2可以看出風速在300天中隨機性很大,從1.460m/s~29.580m/s,平均風速為11.362m/s。本文選擇RBF為核函數,其參數數目較少,而且容易建立模型,并確定參數:懲罰因子C=2,gamma函數g=1.1,e-SVR中損失函數p=0.01。
風速預測值與實際值的對比如圖3。實線代表實際風速,虛線代表預測風速。由圖可以看出預測效果還是不錯的。圖4為風速實際值與預測值之間的誤差圖。
根據實際風速和預測風速值得到表1。
由表1可見,風速實際值與預測值的比較,平均百分比誤差(MAPE)為1.705%,平均絕對誤差(MAE)為0.1705,誤差百分比誤差最大的不超過5%,預測效果可以達到預測精度,驗證了SVM理論在風速預測中的可行性。
5.結語
本文結合風場部分風速資料,利用SVM建立風速預測模型,核函數取RBF核函數是為了建模方便,懲罰因子C,gamma因子g,e-SVR中損失函數p的選取是利用libsvm工具箱中SVMcgForRegress求得,模型中數據的平均百分比誤差(MAPE)為1.705%,平均絕對誤差(MAE)為0.1705,較為理想,可以為風電場的風速預測提供較有價值的參考。
[1]Campbell,W.M.A SVM/HMM system for speaker recognition[J].IEEE international Conference on Acoustics,Speech and Signal Processing-Proceedings,2003:209-212.
[2]Rémi Cuingnet,Charlotte Rosso,Marie Chupin,Stéphane Lehéricy,etc.Spatial regularization of SVM for the detection of diffusion alterations associated with stroke outcome[J].Medical Image Analysis,2004,5(15):729-737.
[3]R Kumar,A Kulkarni,V.K Jayaraman,B.D Kulkarni.Symbolization assisted SVM classifier for noisy data[J].Pattern Recognition Letters,2004,4(25):495-504.
[4]杜穎,盧繼平,李青,鄧穎玲.基于最小二乘支持向量機的風電場短期風速預測[J].電網技術,2008,32(15):62-66.
[5]Corinna Cortes,V.VAPNIK.Support-Vector Network[J].Machine Learning,1995,20(3).
[6]韓立群.人工神經網絡理論、設計及應用(第二版)[M].北京:化學工業出版社,2007.
[7]張華,曾杰.基于支持向量機的風速預測模型研究[J].太陽能學報,2010,31(7):928-932.
[8]彭懷午,楊曉峰,劉方銳.基于SVM方法的風電場短期風速預測[J].電網與清潔能源,2009,25(7):48-52.
[9]Johan A.K.Suykens,Tony Van Gestel,Jos De Brabanter,Bart De Moor,Joos Vandewalle.Least Squares Support Vector Machines[M].Singapore:World Scientific Publishing Co.Pte.Ltd,2002.51-54.