李森文,張 偉,李純宇,郝思鵬
(南京工程學(xué)院電力工程學(xué)院,江蘇 南京 211167)
近年來,我國風(fēng)電裝機容量增長迅速,目前風(fēng)電裝機規(guī)模居世界首位。隨著“碳達峰、碳中和”目標提出,未來新能源裝機量將迎來爆發(fā)式增長。
風(fēng)電預(yù)測方法可分為物理方法、時間序列方法和人工智能方法。物理方法是以數(shù)字天氣預(yù)報為基礎(chǔ)的預(yù)測方法。時序方法通過統(tǒng)計學(xué)方法處理,常用時序模型有自回歸滑動平均模型[1]、差分自回歸滑動平均模型[2]和自回歸條件異方差模型[3]。常見的人工智能預(yù)測方法有人工神經(jīng)網(wǎng)絡(luò)等[4],一般多用于超短期和短期預(yù)測。本文采用長短期記憶(long-short term memory,LSTM)神經(jīng)網(wǎng)絡(luò),充分利用風(fēng)電場功率的時序相關(guān)性進行預(yù)測,并通過麻雀搜索算法(sparrow search algorithm,SSA)對網(wǎng)絡(luò)參數(shù)進行優(yōu)化。
LSTM是一種帶有記憶與遺忘模式的特殊遞歸神經(jīng)網(wǎng)絡(luò),解決了傳統(tǒng)遞歸神經(jīng)網(wǎng)絡(luò)在反向誤差傳播算法訓(xùn)練中出現(xiàn)的梯度消失與爆炸問題[5]。在時序處理上,LSTM可對原始序列時間相關(guān)性充分利用,比其他機器學(xué)習(xí)方法更顯優(yōu)勢[6-9]。如圖1所示為LSTM單元結(jié)構(gòu)。
圖1 LSTM單元結(jié)構(gòu)
xt、ht為t時刻單元的輸入和輸出,t=1,2,…。ht計算表達式為:
it=σ(Wixxt+Wihht-1+Wicct-1+bi)
(1)
ft=σ(Wfxxt+Wfhht-1+Wfcct-1+bf)
(2)
ot=σ(Woxxt+Wohht-1+Wocct-1+bo)
(3)
ct=ftct-1+itφ(Wcxxt+Wchht-1+bc)
(4)
ht=otφ(ct)
(5)
it、ft、ot和ct為輸入門、遺忘門、記憶細胞和輸出門的輸出;W為權(quán)重矩陣;b為偏置向量;σ為激活函數(shù)。
麻雀搜索算法模擬麻雀覓食和反捕食行為,具有尋優(yōu)能力強、收斂速度快和穩(wěn)定性好等特點[10]。麻雀種群分發(fā)現(xiàn)者和加入者,負責(zé)搜索食物并為其他群體提供食物位置的為發(fā)現(xiàn)者,通過跟蹤發(fā)現(xiàn)者來覓食的為加入者。在種群中選取一定比例的麻雀,令其具有感知危險的行為并記為警戒者,警戒者發(fā)現(xiàn)危險則種群放棄食物。在t+1次迭代中,發(fā)現(xiàn)者位置更新為
(6)
t為迭代數(shù);T為最大迭代次數(shù);Xi,j為麻雀i在第j維的位置;a為0~1的隨機數(shù);R2為預(yù)警值;S為安全值,取值范圍分別為0~1和0.5~1;Q為正態(tài)分布隨機數(shù);L為元素為1的1×d矩陣。
當R2
(7)
Xp為當前發(fā)現(xiàn)者最優(yōu)位置;Xworst為最劣位置;A為元素隨機為1或-1的1×d矩陣,A+=AT(AAT)-1。
當i>n/2時,表明適應(yīng)度值較低的處于饑餓狀態(tài)的第i個加入者無法覓食。為提高種群捕食率,需到其他地方獲取食物。當危險被警戒者感知時,反捕食行為產(chǎn)生,表達式為
(8)
Xbest為全局最優(yōu)位置;k、β為步長控制參數(shù),β是服從均值為0方差為1的正態(tài)分布隨機數(shù),k∈[-1,1]是一個隨機數(shù);fg和fw為種群中最優(yōu)和最劣適應(yīng)度值;ε為常數(shù),避免分母為0;fi為i的適應(yīng)度值,當fi>fg時,表示i處在種群邊緣,易受到危害,fi=fg時,表示i感知了危險,發(fā)現(xiàn)者隨即進行下一輪搜索。
海上風(fēng)電出力作為一種時序功率序列,受到自然風(fēng)的影響,具有強隨機性、波動性。為準確預(yù)測海上風(fēng)電出力,本文以在時序處理中表現(xiàn)出色的LSTM模型為基礎(chǔ),將收斂速度快、魯棒性強和穩(wěn)定性好的麻雀搜索算法與LSTM模型相結(jié)合,構(gòu)建了SSA-LSTM模型。此模型保留了LSTM網(wǎng)絡(luò)善于處理時序數(shù)據(jù)的優(yōu)點,同時采用SSA來優(yōu)化超參數(shù),確保該模型能夠快速穩(wěn)定收斂于全局最優(yōu)。
在LSTM網(wǎng)絡(luò)中,學(xué)習(xí)率、訓(xùn)練次數(shù)和神經(jīng)元個數(shù)等是影響預(yù)測精度的關(guān)鍵參數(shù)。這些參數(shù)直接決定LSTM模型網(wǎng)絡(luò)結(jié)構(gòu),不同參數(shù)訓(xùn)練出的模型預(yù)測能力相差較大。因此,提出SSA-LSTM模型,通過SSA對LSTM隱含層神經(jīng)元個數(shù)、學(xué)習(xí)率和訓(xùn)練次數(shù)進行尋優(yōu)。SSA優(yōu)化LSTM步驟如下:
a.根據(jù)LSTM網(wǎng)絡(luò)學(xué)習(xí)率、訓(xùn)練次數(shù)、神經(jīng)元個數(shù)等超參數(shù)取值范圍隨機初始化麻雀位置。
b.以MSE計算每只麻雀適應(yīng)度值并排序。
c.取前20%為發(fā)現(xiàn)者,其余為加入者,隨機選取20%的麻雀并使其具有感知危險的行為機制。
d.根據(jù)式(6)~式(8)在迭代中更新發(fā)現(xiàn)者、加入者、警戒者位置并計算適應(yīng)度值。
e.迭代結(jié)束輸出全局最優(yōu)麻雀位置即得到LSTM網(wǎng)絡(luò)的最優(yōu)參數(shù)。
SSA-LSTM模型流程如圖2所示。
圖2 SSA-LSTM流程
本算例選用江蘇鹽城400 MW華能豐海風(fēng)電場的出力數(shù)據(jù)作為原始數(shù)據(jù),該風(fēng)電場位于江蘇省鹽城市大豐區(qū)毛竹沙海域。每5 min采樣1次,該風(fēng)電場2020年12月出力數(shù)據(jù)如圖3所示。
本文算例中,LSTM模型的隱含層設(shè)置為2層,需要優(yōu)化的超參數(shù)為隱含層第1、第2層神經(jīng)元個數(shù)、訓(xùn)練次數(shù)和學(xué)習(xí)率,故麻雀搜索算法的尋優(yōu)維度為4,尋優(yōu)范圍分別設(shè)為[1,100]、[1,100]、[1,50]、[0.001,0.01]。SSA剩余參數(shù)設(shè)置:麻雀種群數(shù)量為5、發(fā)現(xiàn)者占比20%、警戒者占比20%、最大迭代次數(shù)為30、適應(yīng)度函數(shù)為均方誤差MSE。用于對比的LSTM參數(shù)設(shè)置:隱含層第1層神經(jīng)元個數(shù)為200、第2層神經(jīng)元個數(shù)為200、訓(xùn)練次數(shù)20次、學(xué)習(xí)率0.005 0。
本算例采用平均絕對誤差(mean absolute error,MAE)和均方根誤差(root mean square error,RMSE)作為性能指標,計算式為:
(9)
(10)
pi和pi′為功率實際值和預(yù)測值;n為測試集數(shù)據(jù)數(shù)。
在獲取風(fēng)電場出力數(shù)據(jù)后,將數(shù)據(jù)集前70%用于訓(xùn)練,后30%用于測試,分別使用LSTM、SSA-LSTM網(wǎng)絡(luò)模型進行仿真對比。
首先通過SSA對LSTM網(wǎng)絡(luò)參數(shù)進行尋優(yōu),包括隱含層第1、第2層神經(jīng)元個數(shù)、訓(xùn)練次數(shù)和學(xué)習(xí)率。在SSA尋優(yōu)過程中以MSE為適應(yīng)度函數(shù),目的是找到1組超參數(shù)使LSTM網(wǎng)絡(luò)的MSE最低。
LSTM網(wǎng)絡(luò)參數(shù)按照本文4.2節(jié)設(shè)置,將其與經(jīng)過麻雀搜索算法20輪尋優(yōu)后的SSA-LSTM網(wǎng)絡(luò)參數(shù)進行對比,如表1所示。
表1 網(wǎng)絡(luò)參數(shù)對比
采用LSTM模型的預(yù)測結(jié)果、SSA-LSTM模型的預(yù)測結(jié)果與實際值進行對比,性能指標如表2所示。
表2 性能指標對比
由表2可知,SSA-LSTM模型的EMAE、ERMSE數(shù)值相比LSTM模型均大幅下降,說明SSA-LSTM神經(jīng)網(wǎng)絡(luò)模型的預(yù)測精度優(yōu)于LSTM模型。通過SSA優(yōu)化LSTM網(wǎng)絡(luò),加強了模型的全局尋優(yōu)能力,使得SSA-LSTM模型的預(yù)測結(jié)果可靠性更高。
以上模型均通過前10個時刻的風(fēng)電出力數(shù)據(jù)預(yù)測下一時刻,即條件變量為10。為了更好地驗證本文所提的SSA-LSTM模型的預(yù)測精度優(yōu)于LSTM模型,研究不同時間長度的風(fēng)電出力作為條件變量對風(fēng)電功率預(yù)測準確性的影響,對比SSA-LSTM、LSTM模型在條件變量為5、10、15、20時的預(yù)測結(jié)果。
分別采用5個、10個、15個、20個條件變量預(yù)測下一時刻的風(fēng)電出力,部分預(yù)測結(jié)果如圖4所示。
圖4 不同條件變量預(yù)測結(jié)果對比
在圖4中,SSA-LSTM模型的預(yù)測曲線與實際功率曲線具有相近的峰值、谷值。而在圖4a中,LSTM模型在5個條件變量時,預(yù)測峰值低于實際峰值,預(yù)測谷值高于實際谷值;如圖4b所示,LSTM模型在10個條件變量時,預(yù)測峰值與實際峰值相近,預(yù)測谷值高于實際谷值;如圖4c所示,LSTM模型在15個條件變量時,預(yù)測峰值高于實際峰值,預(yù)測谷值高于實際谷值;如圖4d所示,LSTM模型在20個條件變量時,預(yù)測峰值低于實際峰值,預(yù)測谷值高于實際谷值。對比觀察可知,在不同條件變量下,SSA-LSTM模型的預(yù)測精度均優(yōu)于LSTM模型,同時更具預(yù)測穩(wěn)定性。
SSA-LSTM和LSTM模型采用不同條件變量時的性能指標如表3所示。由表3可知,SSA-LSTM相比于LSTM,在5個、10個、15個、20個條件變量預(yù)測中EMAE分別降低了12.479、3.649、9.145、10.810,ERMSE分別降低了10.928、6.582、9.847、10.959。
表3 不同條件變量性能指標對比
由以上算例分析可知,在一定的預(yù)測時間尺度內(nèi),基于SSA-LSTM的海上電功率預(yù)測模型相比于LSTM模型具有更高的預(yù)測精度,同時能夠保持較好的預(yù)測穩(wěn)定性。
本文提出SSA-LSTM模型對海上風(fēng)電功率進行短期預(yù)測。利用SSA對LSTM網(wǎng)絡(luò)的超參數(shù)進行尋優(yōu),得到SSA-LSTM模型。通過SSA-LSTM模型對海上風(fēng)電功率進行預(yù)測,并在不同條件變量下與LSTM模型的預(yù)測結(jié)果比較。仿真結(jié)果表明,SSA-LSTM模型具有更高的預(yù)測精度、更好的預(yù)測穩(wěn)定性。