王小娟, 劉俊霞, 胡 兵, 鄭連清
(1.新疆工程學院 公共基礎學院,烏魯木齊 830011; 2.新疆工程學院 控制工程學院,烏魯木齊 830011)
風能憑借儲量豐富、分布廣泛和清潔無污染越來越引起人們的關注。近年來,隨著我國風電裝機容量的逐步增長,風力發電規模逐漸增大,風力發電占電網總發電量的比例逐步加大。然而因風能有波動性、間歇性、低能量密度等特征,導致風電功率具有同樣的特征,當大量風電并網,會對電力系統的安全穩定運行產生嚴重影響,為此需要采用適當的方法準確預測短期風電功率,從而根據預測的風電功率對風力發電進行合理調度,以避免風電大量并網所帶來的影響。
為了準確預測風電功率,國內外學者開展了大量研究,對于短期風電功率的預測研究主要有物理模型法、統計模型法、智能算法模型和組合模型法[1-2]。物理模型法需要根據風電場實際氣象數據及地理物理信息預測未來的氣象,建立氣象數據與風電功率的映射關系[2-3],具有魯棒性強、計算時間短、不需要歷史數據的支持的優點,但是建模過程復雜,要求對數據采集精度高。統計模型法根據風電場歷史風速或者風機輸出功率數據,采用系統辨識、曲線擬合等方法預測短期風電功率,常用的統計模型有時間序列法、灰色關聯度法、聚類分析法等[4-5]。統計模型法具有建模簡單的優點,但是該預測方法僅僅考慮歷史風電功率數據或風速數據,不考慮其他氣象數據和風機運行狀態數據,預測精度受影響。智能算法模型根據某種學習算法,通過訓練、測試歷史氣象數據和風電數據建立輸入數據與輸出數據的映射關系預測短期風電功率,常用神經網絡法、支持向量機法等[6-8]。這種預測方法不需要具體的數學表達式,建模簡單,精確度高,但是容易出現過學習和陷入局部最優的缺點。組合模型法綜合上述方法,采用兩種以上預測方法進行等權組合或非等權組合來提高預測精度[9-10],具有預測精度高的優點,但是該方法存在參數多、預測運行時間長的缺點。
上述方法分別從不同角度,不同方面預測風電功率,各種方法各有優缺點,由于風電功率數據為波動性和隨機性很強的非線性數據,智能算法模型中的支持向量回歸機具有良好的非線性映射能力,魯棒性強,本文選取支持向量回歸機預測短期風電功率,針對支持向量回歸機預測過程中會出現參數尋優難和容易陷入局部最優的缺點,選取具有全局搜索能力和局部搜索能力強的布谷鳥算法優化模型參數,并通過算例對比分析,驗證本文所提算法預測精度較高。
支持向量機回歸機是一種基于統計學習理論的監督學習算法,該算法由Vapnic[11]自2002年提出以來得到廣泛的應用,算法假定訓練集數據為D={(xi,yi)},每個xi∈Rm代表輸入空間的一個樣本,yi∈R是該樣本對應的輸出值,其中i=1,2,L,N,m為訓練數據的維數,SVR試圖找到一種遵循與訓練樣本點相同概率分布的函數f(x),它能夠對給定訓練樣本之外的輸入,得到近似輸出值,其數學表達如下:
f(x)=〈w,x〉+b
(1)
其中:w∈Rm為權值;b∈R為閾值;
實際應用過程通常為非線性,需要一個非線性的公式,SVR方法應用一個非線性映射函數將輸入值轉換為具有更高維度的特性空間,其數學表達如下:
f(x)=〈w,φ(x)〉+b
(2)
其中:φ(x)為非線性映射函數。
SVR模型的訓練需要最小化權值w和b閾值,可以通過最小化歐幾里得范數來實現。從而問題轉化為一個凸優化問題,即:
s.t.yi-〈w,φ(x)〉-b≤ωi=1,L,n
〈w,φ(x)〉+b-yi≤ωi=1,L,n
(3)
凸優化的約束假設問題是可行的。然而實際應用過程中因為有通信、誤差等因素的影響會出現錯誤和不可行的約束,為此需要引入了兩個松弛變量來擴大回歸的容忍度。因此,最小化問題轉換為以下二次規劃[12]。
s.t.yi-〈w,φ(x)〉-b≤ω+ξii=1,L,n
(4)

引入拉格朗日函數,經對偶轉換得到的回歸函數的表達式為:
(5)
用核函數k(xi,x)代替上述等式中映射函數的點積,重新定義SVR函數為:
(6)
系統選用RBF核函數為:
(7)
式中,g為核函數參數。
從上述介紹中可以看出,誤差懲罰系數C和核函數參數g關系到SVR的預測性能,選擇合適的參數可以很好的提高SVR的泛化能力和預測精度。本文采用布谷鳥算法優化SVR參數。
布谷鳥搜索算法是一種自然啟發的元啟發式搜索算法,該算法由Yang和Deb[13]于2009年提出,算法基于布谷鳥的巢寄生繁殖策略和Levy飛行策略發展而來[14]。Levy飛行是指自然界中的動物或昆蟲在尋找食物過程中表現出的方向隨機、步長符合Levy分布的飛行行為,具有頻繁的短距離的局部搜索能力和少數的長距離的全局搜索能力[15]。
布谷鳥搜索算法假定鳥巢中的卵為解,布谷鳥卵為新解,尋優過程為用更好的新解代替不好的解的過程,算法對全局最優問題非常有效,因為它維持了局部漫步與全局漫步的平衡,這個平衡由參數p(a)來控制,其局部漫步定義如公式(8)。
(8)

(9)
L(s,λ)是Levy分布,用于定義隨機漫步的步長,表達式如公式(10).
(10)

本文采用布谷鳥算法具有良好的局部尋優能力和全局尋優能力對SVR的誤差懲罰系數、核函數參數進行優化,算法流程圖如圖1所示。

圖1 CS算法尋優流程圖
尋優步驟如下:
1)風電功率數據預處理。對采集的風電樣本數據進行異常數據剔除,并保存處理好的樣本數據。
2)參數初始化。設置迭代次數T、鳥巢數量n、被宿主發現的概率P(a)、設置C、g的取值范圍。

4)找最優鳥巢位置。以均方誤差作為適應度函數,計算適應度值,即:
(11)

5)更新鳥巢位置。用Levy飛行更新N鳥巢的位置,判斷新鳥巢適應度值與上一代適應度值,如果新鳥巢適應度值更優,就更新鳥巢位置,否則保持上次位置。
6)用[0,1]隨機數r與p(a)比較,不改變r≤p(a)的鳥巢位置,以隨機步長改變其他鳥巢位置,判斷新鳥巢與原鳥巢的適應度值,如果新鳥巢值更優,則替換原鳥巢位置,否則保留原鳥巢位置,這樣產生了最新的鳥巢位置。
7)找出6)中最優鳥巢位置,比較是否到達設置迭代次數,到達設置迭代次數則該位置為最優位置,否則要求從4)重新執行。最后得到的最優鳥巢位置為SVR中參數和參數的最優值。
實驗數據采集來源于新疆某風電場三期工程,該工程中共有33臺1.5 MW的永磁直驅風力發電機,實驗數據為其中1號風力發電機每隔10 min采集一次的數據,共采集10天1 440個數據。數據集詳細記錄了風力發電機平均功率(kW)、最大功率(kW)、平均風速(m/s)、最大風速(m/s)、電機轉速(rpm)、最高機艙溫度(℃)、最高環境溫度(℃)、最大槳葉角度(℃)、平均槳葉角度(℃)、風機狀態、風速(m/s)、功率(kW)、發電量(kWh)、發電時間(h)等共計50個物理因素的數據,實驗選取其中平均功率(kW)、最大功率(kW)、平均風速(m/s)、最大風速(m/s)、電機轉速(rpm)、風機狀態、風速(m/s)七個物理因素與風電功率(kW)建立基于CS-SVR的數學模型,并對模型的性能進行評價。
由于上述實驗數據中存在異常數據,采用上截斷點和下截斷點判斷異常數據的方法對異常數據進行剔除[16]。其數學表達式如下:
Dup=Q1+1.5R1
Ddown=Q1-1.5R1
(12)
式中,Dup、Ddown分別為上截斷點和下截斷點,Q1為下四分位數,R1為四分位極差,即上四分位數與下四分位數只差。
將實驗數據分別與截斷點進行比較,大于上截斷點或小于下截斷點的數據均為異常數據,需要剔除異常數據。經過異常數據剔除,最終實驗樣本數據為1 433個,隨機選取1 333個數據作為訓練集,100作為測試集,并對訓練集和測試進行歸一化處理。
經過數據預處理后,分別采用SVR、PSO-SVR和CS-SVR神經網絡對樣本數據進行訓練和測試,并對預測結果進行對比分析,驗證所提算法具有優越性。實驗過程中,設置布谷鳥優化的迭代次數、鳥巢數量、被宿主發現的概率、尋優參數、取值范圍均為[0.01,1 000]。設置粒子群優化迭代次數為,種群規模,學習因子,,尋優參數、取值范圍均為[0.01,1 000],最終尋優得出的最佳參數如表1所示。

表1 最佳尋優參數
在最佳參數下各模型對測試集的預測結果及對比分析如圖2~圖5所示。

圖2 SVR模型預測結果

圖3 PSO-SVR模型預測結果

圖4 CS-SVR模型預測結果
圖5 SVR、PSO-SVR和CS-SVR模型的性能對比
通過對比圖2~5可以看出,SVR、PSO-SVR和CS-SVR模型對測試集的風電功率預測結果均很準確,這說明SVR算法可以很好的用于短期風電功率的預測,預測模型在功率為200 kW以下的預測誤差較大,這與實際風機運行的狀態緊密相關,風機在待機或者啟停過程中功率波動的變化對風電功率預測的影響較大。從圖5的模型性能對比中可以看出,CS-SVR模型的預測效果要優于SVR、PSO-SVR模型,說明CS算法具有良好的局部尋優和全局尋優能力。
為了更加直觀的分析模型的預測精度,實驗過程中分別計算了均方根誤差(RMSE)、平均絕對誤差(MAE)、平均絕對百分比誤差(MAPE),三者數學表達式如下:
(13)
(14)

(15)
式中,xi和êi分別為樣本數據的實際值和預測值,3種預測模型誤差的評價結果見表2所示。

表2 預測模型的預測誤差比較
從表2中可以看出,PSO-SVR模型的RMSE、MAE、MAPE三種誤差的數據分別為3.97%、3.10%和2.33%,CS-SVR模型的RMSE、MAE、MAPE三種誤差的數據分別為3.62%、2.84%和3.14%,其預測誤差均小于SVR的預測誤差,說明參數優化具有明顯提高算法精度的效果。對比CS-SVR和PSO-SVR模型的預測誤差,CS-SVR預測模型的均方根誤差(RMSE)比PSO-SVR模型的均方根誤差(RMSE)減少8.8%。CS-SVR預測模型的平均絕對誤差(MAE)比PSO-SVR模型的平均絕對誤差(MAE)減少8.3%。說明CS-SVR預測性能優于PSO-SVR模型,因此本文所提預測模型具有較高的預測精度。
1)通過SVR、PSO-SVR和CS-SVR模型對測試集的短期風電功率進行預測,實驗驗證結果表明SVR算法可以很好的用于風電功率預測,采用其它啟發式算法對SVR參數進行優化可以明顯提高預測的精度。
2)通過對比PSO-SVR和CS-SVR模型對測試集的短期風電功率的預測結果,驗證了CS算法的尋優能力優于PSO算法,驗證了本文所提預測模型具有較高的預測精度。
3)在對輸入樣本數據進行預處理時引入了上截斷點和下截斷點的異常數據判別方法,有效剔除了無效的樣本數據,為了進一步提高預測精度,可以加強對輸入樣本數據預處理方面的研究。