白 鵬
(山西省信息產業技術研究院有限公司,山西 太原 030012)
“十四五”期間,我國經濟年均增速約為5.5%,預計到2025年全國電能消耗約在9萬億千瓦時~9.5萬億千瓦時,非石化能源占一次能源消費比重將達到19%~20%(55億噸~56億噸標準煤)[1]。可以說,可再生的清潔能源已經成為節能減排中至關重要的支撐性力量,未來新能源不再僅是補充和替代,而將成為能源供給側的主力。
風能作為清潔能源的代表,因其無污染、零排放的特點被人們廣泛地開發利用。風力發電的主要原理就是靠風力吹動風機葉片旋轉,從而帶動發電機工作。所以,風能質量的優劣直接決定了風力發電的電能質量。準確地預測預報風速是風電場運維調度人員充分利用風能的前提,同時也是避免瞬時極大風對發電機組造成震蕩與損害的有效預防手段。根據風電場的實際需求,對風速的預測可以分為長期預測和短期預測。長期預測一般是在風電場規劃建設之前,由勘測部門對風電場的氣象環境做一段較長時期的觀測,并結合氣象學、地理學的相關理論對風電場全年或者某季度的風速做出推演性的預測。而短期風速預測則是對未來十幾個小時甚至幾個小時的風速進行精準預報。由于短時風速的隨機性強且波動快,這就給風速預測帶來了困難。國內學者對風速機理進行了大量的研究,提出了神經網絡法、時間序列分析法、卡爾曼濾波法、遺傳算法、灰色算法、小波分析法等研究方法[2-4]。但是單一的預測方法對于風速序列這樣波動大、隨機性強的數據預測效果并不理想,為此,本文建立了一種基于小波分解與支持向量回歸機(Support Vactor Regression SVR)模型組合的風電場短期風速預測方法,該方法較單一預測手段有較高的預測精度。
風速特性的觀察記錄表明,風具有紊流特性,即風向和風速在不停地發生改變,甚至在極短的時間內會有相當大的變化。故風速序列是多個頻率序列的疊加,利用小波分解的方法可以將原始風速序列分解為多個特征序列,主要是利用Mallat金字塔算法[5]。
風速序列可由小波函數展開,分成低頻部分與高頻部分,可表述為:
(1)
其中:t為時間序號;f(t)為原始信號;k為分解的層數,j=0,1,2,…,k;H(·)、G(·)為時域中的小波分解濾波器;Aj為f(t)在第j層低頻部分的系數;Dj為f(t)在第j層高頻部分的系數。
小波的重構算法與分解相反,可表述為:
(2)
其中:h(·)、g(·)為時域中的小波重構濾波器。
小波基函數選取db家族小波基函數,因其具有緊支撐、大消失矩以及良好正則性等特點被廣泛用于時序序列的特征提取中。本文選擇db4小波基函數對原始風速序列進行分解,分解級數為三級。
將小波分解后的風速序列的分量作為輸入量輸入到支持向量回歸機中進行風速分量的預測。支持向量回歸機是人工智能發展的一大創新,因其泛化能力強,在工業上受到了廣泛的運用。將支持向量機應用于回歸問題求解,其根本就是要在整個空間內部找到一個最優的分類面,使得樣本離分類面的距離是最小的。分類面的函數表示如下[6]:
y=ωΦ(x)+b.
(3)
其中:ω為權重;b為函數閾值;Φ(x)為高維非線性函數。
支持向量機問題可抽象為一個凸優化問題,即:
(4)
約束條件為:

(5)

使用拉格朗日乘子法可以將式(4)和式(5)的凸優化問題轉化為等價的對偶問題。設空間的樣本集合為T={(xi,yi)|i=1,2,…,N},則有:

(6)
其中:i=1,2,…,N,m=1,2,…,N,i≠m;αi、αi′、αm、αm′為拉格朗日算子;K(xi,x)為核函數,此處選取Sigmoid 核函數。
利用支持向量回歸機可以將風速的回歸方程表示為:
(7)
將小波分解后的原始風速序列分量信號輸入各回歸向量機預測模型進行預測,然后將預測的數值進行小波尺度下的重構得到最終的預測數值。具體計算步驟如下:
(1) 首先對原始風速進行小波3層分解,得到分解后的分量。
(2) 將各分量輸入支持向量回歸機中,輸出各分量的預測值。
(3) 對各分量進行小波尺度的重構。
(4) 得到最終的預測風速序列。
算法流程如圖1所示。

圖1 算法流程
本文使用山西某風電場4月份某一天中的一段風速數據進行預測,采樣間隔為1 min,共采樣600個風速數據。利用db4小波基進行3層小波分解,分解波形如圖2所示。
圖2中,s為原始的風速序列,a3為分解后的低頻分量,d1、d2、d3為分解得到的高頻分量。由圖2可以看出,通過小波分解手段,將原始序列的不同頻域的分量投影到時域上,有利于風速序列的分析,分解后的低頻序列波動較緩,而高頻分量波動劇烈。

圖2 原始風速序列的3層小波分解
將分解的風速分量輸入支持向量機進行預測,采樣頻率為1 min,即每分鐘采集一次風速數據。前550個數據作為風速的訓練數據,后50個數據作為風速的預測數據,低頻分量和高頻分量的后50個數值的預測仿真曲線如圖3~圖6所示。
由圖3~圖6可以看出,SVR對風速序列做回歸預測的效果還是比較準確的。因為SVR是基于風險最小原則建立的,就是要同時考慮經驗風險與結構風險的最小化,在小樣本情況下,能夠取得比較好的回歸效果。 SVR在保證分類精度的同時降低學習的VC維(Vapnik-Chervonenkis Dimension),可以使學習在整個樣本集上的期望風險得到控制,當核函數已知時,可以簡化高維空間問題的求解難度。同時SVR是基于小樣本統計理論基礎,這符合機器學習的目的,具有較好的泛化推廣能力。

圖3 低頻分量a3的后50個點的預測效果圖4 高頻分量d3的后50個點的預測效果圖5 高頻分量d2的后50個點的預測效果

圖6 高頻分量d1的后50個點的預測效果
下一步是利用小波的重構屬性將預測得到的高頻、低頻數值進行db4小波基函數尺度上的重構,將重構的數值與SVR直接預測得到的數值和真實值做比較,結果如圖7所示。不同預測模型的誤差比較見表1。
從圖7中可看出,經過小波分解預測的結果要比直接用SVR預測準確,這是因為小波將風速序列進行了多尺度的分解,更能顯示出風速序列的內在規律。用SVR分別進行預測是對每一種尺度下的風速序列的特點的預報,SVR回歸機高度的泛化能力可以學習每一個尺度下的風速的特征,再經過重構后的總體預測結果比單獨的SVR回歸機更加準確。從表1不同預測模型的絕對百分比誤差(MAPE)、均方誤差(MSE)、均方百分比誤差(MSPE)三個指標上也說明了這個問題。

圖7 重構后的預測比較

表1 不同預測模型的誤差比較
由此可以看出,經小波分解的SVR組合預測模型在3個誤差指標上均優于單獨的SVR模型,有較高的預測精度。
本文建立了經小波分解的SVR組合預測模型,通過將原始風速序列進行小波3層分解,得到每一種尺度下的風速,然后再用支持向量回歸機(SVR)對每一個尺度的風速進行學習,最后將泛化好的SVR模型用于預測,并將預測分量進行小波重構得到最終的預測結果。經過仿真驗證可得出,經小波分解的SVR組合預測模型預測誤差比單獨的SVR模型更低,預測的結果更加精準。