魏 超
(國能東北新能源發(fā)展有限公司,遼寧 沈陽 110000)
風電功率的變化給電網(wǎng)安全經(jīng)濟運行以及電能的可靠性帶來了很大的挑戰(zhàn)。因此,從經(jīng)濟和安全方面考慮,準確的風電功率預測對風電場至關重要,也是后續(xù)各種智能化應用工作的基礎。
廣泛應用于風電功率組合預測中的主要有神經(jīng)網(wǎng)絡和支持向量機。神經(jīng)網(wǎng)絡能對非線性的系統(tǒng)進行無限逼近,并且有處理各種復雜問題的能力,但初始參數(shù)不容易選取,且常會受閥值影響,導致有時預測性能會隨著參數(shù)的變化而改變。SVM 的結(jié)構(gòu)比較簡單,泛化能力強,易于訓練,在解決非線性、大維數(shù)的問題中取得了比神經(jīng)網(wǎng)絡更好的預測效果。綜合考慮經(jīng)濟型、準確性等方面,該文選定SVM 為主要的建模方法[1]。
該文從建??蚣堋⑺惴ㄔ?、處理過程、實例驗證方面出發(fā),詳細介紹了基于SVM 的短期風電功率預測方法,在風電功率預測的思想、方法、流程步驟上為后續(xù)研究人員提供了指導及借鑒。
基于SVM 短期風電功率預測是個迭代計算的過程,為了得到良好的預測效果,需要選取風電廠的實際運行數(shù)據(jù),并對數(shù)據(jù)進行平穩(wěn)化處理,選取合適的建模算法,得到最終風電功率的預測值。其建模步驟如下:1)隨機選取實際的風電功率數(shù)據(jù),預處理原始風電功率時間序列。2)采用基于互補自適應噪聲集成經(jīng)驗模特分解(EEMDCAN)算法對第1 步處理后的初始風電功率進行處理,得到平穩(wěn)化的風電功率序列。3)對各個IMF 分量建立相應的SVM 預測模型。4)將每個分量的預測值組成樣本集。5)重復第3~4 步,得到每個分量的最終預測值。6)把每個分量預測值進行合成,得到最終的風電功率預測數(shù)值。7)對建立的模型進行誤差判斷,根據(jù)誤差值判斷該模型是否可以有效預測出風電功率數(shù)據(jù),具體的建模框架如圖1 所示。
圖1 建模框架
通過多次建模測試,風電機組系統(tǒng)初始采集的數(shù)據(jù)波動性比較強,不利于模型的建立,因此對風電功率數(shù)據(jù)進行歸一化處理是必不可少的一步。
風電機組數(shù)據(jù)的原始數(shù)據(jù)波動性過強,對數(shù)據(jù)進行歸一化處理的目的是防止大范圍的波動數(shù)據(jù)對小范圍變化的數(shù)據(jù)產(chǎn)生影響。算法的處理流程可以簡述為輸入原始功率數(shù)據(jù)、線性縮放處理和得到初始試驗樣本。
此外,對發(fā)現(xiàn)的異常數(shù)據(jù),可以用采樣周期的上一個或下一個時刻代替,對功率小于0 的數(shù)據(jù)需要以0 代替,大于最大功率以最大功率代替。
采用公式(1)進行數(shù)據(jù)預處理后,得到風電功率初始數(shù)據(jù)。
式中:xmax和xmin分別為樣本中歷史風電功率的最大值和最小值。
EEMDCAN 分解[2]在經(jīng)驗模態(tài)分解法(EEMD)算法的基礎上進行了部分優(yōu)化,具體為在EEMD 分解階段添加正負噪聲對。該優(yōu)化可以降低程序篩選的次數(shù),在誤差方面也有很明顯的減少,在一定程度上提高了分解效率,克服了由于集合平均次數(shù)限制下重構(gòu)誤差較大的問題。將原始風電功率數(shù)據(jù)進行歸一化處理后,讀入模型程序,對序列進行分解處理,可以得到分解后的不同序列風電功率數(shù)值。
該算法的處理流程簡述如下:1)對信號添加標準的白噪聲和正負噪聲對。2)通過EMD 分解獲取第一個模態(tài)分量。3)對第k 個剩余分量加正負噪聲對并進行分解,直至不能分解,處理結(jié)束,最終可以得到分解后的序列值。
支持向量機可以解決非線性回歸分類問題,能夠取得很好的效果。其算法的原理圖如圖2 所示[3-4]。
圖2 支持向量算法原理圖
支持向量機算法的處理流程可以簡述如下:1)加載樣本數(shù)據(jù)。2)對訓練樣本的標簽向量進行編碼。3)設置參數(shù)。4)訓練與測試。5)樣本標簽向量反向編碼。6)計算錯誤率,最終可以得到訓練后的SVM 模型,并得到預測的風電功率。
式中:ω為權(quán)值;b為偏差;φ(x)為非線性映射。
SVM 優(yōu)化目標如公式(3)所示。
式中:C為懲罰因子;ξ,ξ*分別為松弛變量;ε為不敏感損失參數(shù)。
建立好模型之后,需要對模型準確性進行驗證,根據(jù)誤差值的多少判斷模型建立的準確性。該文選取平均絕對百分誤差(Mean Absolute Percent Error,MAPE)、相對誤差(Relative Error,RE)和均方誤差(Mean Square Error,MSE)作為模型的評價指標,使用軟件分別編程進行計算[5-6]。
相對誤差如公式(4)所示。
平均絕對百分誤差如公式(5)所示。
均方誤差如公式(6)所示。
式中:Yi為風電功率的實際值;為預測值;n為預測點個數(shù)。
將該文提出的建模算法用于實際運行中的風電機組進行驗證。試驗數(shù)據(jù)源于國內(nèi)某風電場2019 年2 月到5 月的風電功率數(shù)據(jù)。從數(shù)據(jù)采集程序中得到的風電機組實際運行數(shù)據(jù)中選取任意一臺風機連續(xù)工作20天的風電功率數(shù)據(jù),采樣間隔為15min,去掉異常數(shù)值后,對初始數(shù)據(jù)進行歸一化處理,以前19 天的數(shù)據(jù)為訓練集,預測第20 天的風電輸出功率。最終結(jié)果如圖3 所示。其中,original 為初始序列,imf1~9 為分解的序列,res 為序列分解殘差。
從圖3 可以看出,經(jīng)過分解后的序列的最終誤差接近于0,不能再進一步分解序列了。該方法能完整表示出原始序列的信息,對每個分解后的序列進行SVM 預測,將各個分量預測結(jié)果相加得到最終模型的預測結(jié)果,如圖4 所示。
圖3 EEMDCAN 分解結(jié)果
從圖4 可以看出,訓練模型基本能預測未來一天的風電功率輸出,曲線重合度高,平均絕對百分誤差只有1.2622%。由此可以看出,數(shù)據(jù)處理后的SVM 模型可以較好地給出短期風電功率預測數(shù)據(jù),并且建模簡單,可擴展性強,程序占內(nèi)存小,適于編成程序?qū)︼L電功率進行實時預測。
圖4 EEMDCAN-SVM 預測結(jié)果
BP 算法因原理簡單、計算快速、對計算機硬件要求低而深受關注,模型算法的處理流程可以簡述如下:1)寫入訓練輸入輸出數(shù)據(jù)。2)BP 神經(jīng)網(wǎng)絡創(chuàng)建訓練。3)得到訓練次數(shù),誤差小于0.1,結(jié)束循環(huán)。4)對樣本進行測試。5)將判斷出來的測試樣本的標簽向量進行反向編碼。6)得到錯誤率,最終可以得到訓練后的BP,并得到預測的風電功率。
該文的對比模型采用傳統(tǒng)神經(jīng)網(wǎng)絡BP 算法對風電功率進行預測,訓練選用的數(shù)據(jù)仍與SVM 模型數(shù)據(jù)一致。最終對比的結(jié)果見表1。BP 算法原理如圖5 所示,其中X 為輸入數(shù)據(jù),Y 為權(quán)重因子,O 為輸出數(shù)據(jù)。
圖5 BP 模型原理圖
表1 對比結(jié)果
從表1 可發(fā)現(xiàn),使用不同的模型評價算法均可以得出和BP 算法相比,SVM 算法預測精度有較大的提高。
對風電功率原始數(shù)據(jù)進行歸一化處理,并利用EEMDCAN方法將風電功率時間序列分解為若干個分量,然后運用SVM模型對每個分量單獨進行預測,并將每個序列預測結(jié)果相加。將該預測方法應用在某風電場實測風電功率數(shù)據(jù)中,結(jié)果表明:基于SVM 的預測模型有效地預測出了功率數(shù)據(jù),是一種簡單、便捷的預測模型。
此外,使用驗模態(tài)分解方法能有效處理風電功率時間序列的非平穩(wěn)性特性,然后采用SVM 進行預測,也在一定程度上提高了風電功率預測的準確性。該文在此模型基礎上隨機選取了其他數(shù)據(jù)進行測試驗證,結(jié)果表明該模型可以有效預測短期的風電功率,均取得良好效果。也可以從功率的變化趨勢中看出風電機組實際的運行狀態(tài)。但過長時間的風電功率預測精度并不能達到滿意的程度,在此對驗證過程不再贅述。
該文建立了風電功率預測模型,通過仿真計算可以取得良好的風電功率預測效果。與神經(jīng)網(wǎng)絡對比,該文提出的模型有更好的精度。該文為短期風電功率預測研究提供了一種簡單、快速、準確的建模方法,也為后續(xù)根據(jù)功率預測的數(shù)據(jù)進行風電機組的故障診斷工作打好了理論基礎,在一定程度上提升了風電機組運行的安全性和經(jīng)濟性。此外,可以考慮根據(jù)預測模型建立風電功率預測以及故障預警一體化平臺,該平臺對風電機組運維將會起到一個良好的支撐作用。將該文的整體建模過程作為理論基礎與風電功率預測以及故障預警一體化平臺相結(jié)合是下一步研究的重點內(nèi)容。