張晉華 ,2,黃遠為 *,馮 源
(1.華北水利水電大學(xué)電力學(xué)院,河南 鄭州 450045;2.新能源電力系統(tǒng)國家重點實驗室(華北電力大學(xué)),可再生能源學(xué)院,華北電力大學(xué),北京 102206)
近年來,全球范圍大力發(fā)展太陽能、風(fēng)能等清潔能源。截至2020年底我國光伏發(fā)電累計裝機達2.53億千瓦,如何最大程度保證光伏發(fā)電能夠安全、高效地消納成為一大難題[1-3]。光伏發(fā)電具有隨機性、不確定性的特點,精準(zhǔn)的功率預(yù)測能夠指導(dǎo)電網(wǎng)調(diào)度部門合理安排,減少光伏電站接入對電網(wǎng)的沖擊和棄光現(xiàn)象的發(fā)生[4-5]。光伏功率預(yù)測按時間尺度可分為超短期預(yù)測,短期預(yù)測以及中長期預(yù)測[6]。當(dāng)前我國新能源功率預(yù)測3 d的時間尺度不能與火電的啟停5-7 d的周期相匹配,調(diào)度部門不能將新能源納入開機計劃進行有效指導(dǎo)[7]。因此,對光伏功率進行周期為7 d的中期預(yù)測具有現(xiàn)實積極意義。
傳統(tǒng)的光伏功率預(yù)測方法有物理方法和統(tǒng)計方法[8]。物理方法是參照光伏電池的發(fā)電原理,利用數(shù)值天氣預(yù)報(Numerical Weather Prediction,NWP),衛(wèi)星、地面場站實時數(shù)據(jù),結(jié)合光伏電池安裝角度、光伏陣列轉(zhuǎn)換效率等參數(shù),建立物理模型直接計算得到光伏功率數(shù)據(jù)[9]。物理方法對數(shù)據(jù)精度要求高,且模型參數(shù)多,構(gòu)建難度大。統(tǒng)計學(xué)方法是輸入太陽輻照度、光伏功率等歷史數(shù)據(jù),通過曲線擬合、參數(shù)估計等方法,建立輸入與輸出的映射模型從而實現(xiàn)預(yù)測。相比物理方法,統(tǒng)計方法因其模型搭建簡單,所需數(shù)據(jù)容易獲取而被廣泛應(yīng)用于光伏功率預(yù)測中。常用的統(tǒng)計學(xué)方法有:灰色模型[10-11]、人工神經(jīng)網(wǎng)絡(luò)[12-13]、支持向量機[14-15]等。然而傳統(tǒng)算法面臨著泛化能力不足和易陷入局部最優(yōu)問題,預(yù)測精度難以提高[16]。
LSTM神經(jīng)網(wǎng)絡(luò)作為一種深度學(xué)習(xí)算法,能夠準(zhǔn)確描述此類復(fù)雜非線性映射關(guān)系,近來不少學(xué)者將其應(yīng)用于光伏[17-18]、風(fēng)電[19-20]及負荷預(yù)測[21]等領(lǐng)域。文獻[22]基于多維氣象因素間的加權(quán)互信息熵從歷史日中篩選出預(yù)測日的相似日樣本,利用LSTM預(yù)測模型建立起氣象因素與光伏輸出功率之間的映射關(guān)系,在多種氣象條件下進行了預(yù)測分析,得到了良好的預(yù)測精度。文獻[23]在選取周邊電站考慮其空間相關(guān)性的基礎(chǔ)上,利用相關(guān)性強的參考光伏序列同目標(biāo)電站歷史光伏數(shù)據(jù)一起構(gòu)建LSTM預(yù)測日模型,相較于未考慮空間相似性分析的預(yù)測模型,精度得到了提升。選擇文獻[24]引入了Davies-Bouldin指數(shù)得到自適應(yīng)Kmeans算法,利用該算法分別對晴天、多云以及雨天這三類氣象條件下的總輻照度、濕度、溫度以及光伏功率進行聚類分析,最后將每一類的訓(xùn)練集代入LSTM預(yù)測模型,得到預(yù)測結(jié)果。以上LSTM神經(jīng)網(wǎng)絡(luò)在光伏功率預(yù)測中的研究集中在短期預(yù)測,尚未應(yīng)用于時間尺度更長的中期預(yù)測中。
基于以上分析,本文提出了一種基于云模型-LSTM的光伏功率中期預(yù)測方法。方法首先以輻照度為樣本建立每日輻照度云模型,通過云變換得到云的數(shù)字特征,將數(shù)字特征代入云模型的相似度計算模型,選取相似日。最后將相似日數(shù)據(jù)作為訓(xùn)練集代入LSTM預(yù)測模型進行預(yù)測,得到光伏功率。
云模型是由李德毅院士在上世紀90年代中期提出的用來描述定性概念與其定量表示之間的不確定性轉(zhuǎn)換模型[25],設(shè)U是一個定量的論域,U上對應(yīng)的定性概念為C,對于該論域的任意元素x,都由一個具備固定傾向的隨機數(shù)y=μC(x),該隨機數(shù)稱作x對概念C的確定度,x在該論域上的分布稱為云模型。云模型用期望、熵、超熵三個數(shù)值特征來描述一個概念[26]。
1)期望Ex
Ex是云滴在空間分布中的數(shù)學(xué)期望,即最能夠代表定性概念的點。在輻照度云模型中,期望值代表當(dāng)日所選時段平均輻照度的大小。
2)熵En
熵值是定性概念的不確定性度量,由概念的隨機性、模糊性一同決定。熵值描述了輻照度的隨機概率分布情況,熵越大,說明當(dāng)天輻照度波動越不具備規(guī)律性。
3)超熵He
超熵是熵的熵,是熵的不確定性度量。
云模型由正向云變換和逆向云變換實現(xiàn)定性概念與其定量表示之間的不確定性相互轉(zhuǎn)換,它把模糊性與隨機性集成到一起,構(gòu)成定性與定量之間的映射[27]。根據(jù)文獻[26]提出的方法構(gòu)建輻照度云模型。
1.1.1 正向云變換
輸入:當(dāng)天輻照度的三個數(shù)字特征Ex,En,He;輻照度云滴數(shù)n;
輸出:n個輻照度云滴xi以及每個云滴的確定度yi,i=1,2…,n。
步驟1:生成以En為期望,He2為方差的一個隨機輻照度Eni;
步驟2:生成以Ex為期望,Eni為方差的一個輻照度云滴xi;
步驟3:計算yi=exp(-(xi-Ex)2/(Eni)2),為輻照度xi出現(xiàn)的概率;
步驟4:重復(fù)步驟1到3,直至產(chǎn)生n個輻照度云滴為止。
1.1.2 逆向云變換
輸入:輻照度x1,x2,…,xn,xi為單點時刻輻照度值,n為輻照度點數(shù)量。
輸出:輻照度的數(shù)字特征(Ex,En,He)。
步驟1:計算當(dāng)日輻照度的均值,得到期望Ex的估值;
步驟2:將每日輻照度樣本x1,x2,…,xn進行隨機可重復(fù)抽樣,共抽取m組樣本,每組r個樣本點。計算每組樣本方差:
步驟3:從樣本y12,y22,…ym2中計算En2,He2的估值。
圖1、圖2分別為正向云發(fā)生器和逆向云發(fā)生器的示意圖。
圖1 正向云發(fā)生器Fig.1 Positive cloud generator
圖2 逆向云發(fā)生器Fig.2 Reverse cloud generator
模型的3En規(guī)則即在[Ex-3En,Ex+3En]區(qū)間內(nèi)分布著99.74%的云滴,由于區(qū)間外的云滴數(shù)不影響整體特性,故可忽略區(qū)間外定量值對定性概念的貢獻[28]。
由文獻[27]指出的方法計算云C1(Ex1,En1,He1)和云C2(Ex2,En2,He2)的交點f1和f2。
根據(jù)交點f1和f2位置關(guān)系的不同,在計算輻照度云模型相似度時,可分為以下3類情形。
情形1:交點f1和f2全位于3En區(qū)間外。這類情況下的云模型相似度為:
情形2:交點f1和f2有一個位于3En區(qū)間內(nèi)。先求出此時C1與C2的重疊度ol[27],這種情況下云模型的相似度為:
式(3)中,μ為兩條期望曲線交點對應(yīng)的縱坐標(biāo),即確定度值。
情形3:交點f1和f2均位于3En區(qū)間內(nèi)。此時云模型的相似度為:
式(4)中,μmax為交點f1和f2對應(yīng)的兩個確定度中,數(shù)值更大的一個。
云模型相似性度量具體算法如下:
輸入:兩個云C1(Ex1,En1,He1)、C2(Ex2,En2,He2)。
輸出:云模型相似度值Sim(C1,C2)。
步驟1:先求出兩個云的交點f1和f2;
步驟2:計算輻照度云模型的相似度Sim(C1,C2);
步驟3:重復(fù)步驟1、2直至計算完所有天數(shù)同預(yù)測日輻照度云模型的相似度;
步驟4:對相似度進行排列選取相似度最高的3天作為預(yù)測模型的訓(xùn)練樣本。
LSTM神經(jīng)網(wǎng)絡(luò)由Hochreiter與Schmidhuber在1997年提出,旨在改進RNN的缺陷[29]。LSTM神經(jīng)網(wǎng)絡(luò)在RNN的基礎(chǔ)上引入了細胞狀態(tài),并使用輸入門、遺忘門、輸出門3種門來保持和控制信息,可對較長時序信息選擇性地通過和剔除。LSTM改善了傳統(tǒng)RNN網(wǎng)絡(luò)在長時間序列學(xué)習(xí)過程中易出現(xiàn)的梯度消失和梯度爆炸現(xiàn)象[30]。圖3為LSTM神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)圖。
圖3 LSTM神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.3 Structure of LSTM neural network
LSTM模塊當(dāng)前輸入時刻為t,存儲單元由以下構(gòu)成。
輸入門:記憶一部分遺忘門輸出的信息和當(dāng)前的信息;
遺忘門:讀取上一層輸出ht-1以及當(dāng)前輸出xt,輸出ft并將其賦值到當(dāng)前的細胞狀態(tài)Ct-1中;
更新門:將過去的細胞狀態(tài)Ct-1和當(dāng)前的細胞狀態(tài)C?合并,輸出得到當(dāng)前的信息Ct;
輸出門:選擇部分細胞狀態(tài)C?,輸出。
將每天原始輻照度樣本進行隨機可重復(fù)抽樣,抽取m組樣本,且每組抽r個樣本點,抽樣結(jié)果代表當(dāng)天輻照度的情況。將這m組輻照度樣本代入逆向云模型進行計算,得到m組(Ex,En,He)數(shù)字特征,最后對m組數(shù)字特征取平均值作為當(dāng)日輻照度逆向云計算結(jié)果。經(jīng)多次驗證,m和r分別設(shè)置為20和25進行隨機抽樣較為合理。
3.2.1 輸入層與輸出層節(jié)點數(shù)目
選取輻照度、溫度和濕度數(shù)據(jù)作為LSTM預(yù)測模型的輸入,光伏功率作為神經(jīng)網(wǎng)絡(luò)的輸出。在構(gòu)建LSTM光伏功率預(yù)測模型時,將歷史日的以上氣象因素與光伏輸出功率一一對應(yīng),作為訓(xùn)練集。將預(yù)測日的輻照度、溫度、濕度作為測試集輸入,得到預(yù)測日的光伏輸出功率。由此確定光伏功率中期預(yù)測模型的輸入層和輸出層節(jié)點個數(shù)分別為693和231。
3.2.2 隱含層節(jié)點選擇
隱含層單元數(shù)目為用于記憶和儲存過去狀態(tài)的節(jié)點個數(shù)。若設(shè)定數(shù)目過少,則LSTM網(wǎng)絡(luò)無法全面學(xué)習(xí),誤差較大。若隱含層單元數(shù)目過多,則LSTM網(wǎng)絡(luò)學(xué)習(xí)速度慢,且易發(fā)生過擬合現(xiàn)象。根據(jù)經(jīng)驗公式取得估值,反復(fù)多次實驗,確定LSTM隱含層節(jié)點j。經(jīng)驗公式如下:
式(11)中:j為隱含層個數(shù);k為輸入層個數(shù);l為輸出層個數(shù);a為1到10中任一常數(shù)。
由表1可以看出,當(dāng)隱含層數(shù)目為30時模型的均方根誤差最小,由此將模型的隱含層節(jié)點數(shù)設(shè)置為30。
表1 隱含層節(jié)點個數(shù)確定Table 1 Determination of number of hidden layer nodes
3.2.3 數(shù)據(jù)標(biāo)準(zhǔn)化與標(biāo)準(zhǔn)化還原
由于激活函數(shù)的特性,使得神經(jīng)網(wǎng)絡(luò)對區(qū)間[-1,1]內(nèi)的數(shù)據(jù)敏感。若輸入數(shù)據(jù)在此區(qū)間,則會大大提升訓(xùn)練速度,獲得較好的擬合曲線,避免訓(xùn)練發(fā)散。因此,首先將訓(xùn)練數(shù)據(jù)標(biāo)準(zhǔn)化,使其具有零均值和單位方差。最后將輸出的數(shù)據(jù)進行標(biāo)準(zhǔn)化還原,得到預(yù)測的光伏輸出功率。
本文衡量預(yù)測效果的指標(biāo)采用平均絕對誤差百分數(shù)(MAPE)以及均方根誤差(RMSE)。計算公式如下:
式(12)、式(13)中,Pi為第i個預(yù)測功率數(shù)據(jù)的真實值;Pi'預(yù)測值;Pcap為該光伏電站的裝機容量;n是樣本個數(shù)。
采用國內(nèi)某光伏電站現(xiàn)場實測數(shù)據(jù)進行預(yù)測。該電站裝機容量為50 MW,實測數(shù)據(jù)包含輻照度、濕度、溫度、風(fēng)速、風(fēng)向及光伏發(fā)電功率。為了驗證所提預(yù)測方法的有效性,考慮季節(jié)差異,選取每日時段為9:00到17:00,采樣間隔15 min,一天采樣33個點。本文考慮了電站春夏秋冬4個季節(jié),在實驗中引入長短期記憶網(wǎng)絡(luò)(LSTM)、灰色模型(GM)、支持向量機(SVM)等預(yù)測模型進行光伏功率預(yù)測,最后與本文提出的云模型-LSTM模型預(yù)測結(jié)果對比,如圖4所示。
由圖4(a)可以看出,除了前兩日的功率曲線有些許波動外,七日內(nèi)整體功率曲線的隨機波動頻率較低,且波動幅度較小。各模型的預(yù)測曲線與真實值擬合程度都比較高。相比于圖4(a)冬季,圖4的(b)、(c)、(d)春夏秋3個季節(jié)的功率曲線波動頻率更高,波動幅度也相對更大。預(yù)測效果不及冬季7日預(yù)測,原因是電站所處地區(qū)冬季空氣中水汽含量低,云層少。云層作為主要的天氣突變因素,直接影響地表輻照度水平。當(dāng)光伏功率曲線波動頻率高,波動幅度大時各模型的預(yù)測精度也隨之下降。但對比其他模型的預(yù)測曲線可以看出,本文所提云模型-LSTM的預(yù)測曲線更接近真實值,反映了云模型-LSTM具有較強的學(xué)習(xí)能力。
圖4 預(yù)測結(jié)果Fig.4 Forecast
表2為在春夏秋冬四個季節(jié)的不同預(yù)測模型進行光伏功率預(yù)測的誤差對比。由表2可以看出,在冬季時各模型的預(yù)測效果均比其他季節(jié)的要好,且本文提出的云模型-LSTM預(yù)測光伏功率中期模型預(yù)測誤差更小。上述結(jié)果表明,云模型-LSTM具有更好的預(yù)測精度,在不同季節(jié)均可以更好地對光伏功率進行預(yù)測。相比于LSTM預(yù)測模型,云模型-LSTM在冬春夏秋四個季節(jié)下的MAPE分別降低了40.10%、8.40%、5.75%和19.56%,RMSE分別降低了46.43%、2.20%、2.24%以及3.42%。這表明結(jié)合了云模型的LSTM模型在預(yù)測精度上有進一步的提升。特別地,冬季光伏功率預(yù)誤差明顯降低,這反應(yīng)在冬季季節(jié)氣候時云模型能夠篩選出與待預(yù)測日高度一致的歷史日,而對于其他季節(jié),在天氣相對復(fù)雜時,云模型的這一表現(xiàn)有所降低;LSTM預(yù)測模型相較于SVM和GM,在冬季MAPE分別降低了10.66%、9.74%,RMSE分別降低了9.98%、9.37%;在春季MAPE分別降低了10.08%、11.50%,RMSE分別降低了3.93%、4.50%;在夏季MAPE分別降低了3.74%、4.16%,RMSE分別降低了1.73%、16.33%、;在秋季MAPE分別降低了7.13%、18.89%,RMSE分別降低了5.25%、2.54%。這也表明了相對于傳統(tǒng)統(tǒng)計學(xué)算法,LSTM具備泛化能力強,預(yù)測精度高的特點。
表2 預(yù)測誤差統(tǒng)計表Table 2 Statistical table of forecast error
本文提出了一種基于輻照度云模型與LSTM的光伏功率中期預(yù)測方法,首先提取每日輻照度形成訓(xùn)練集,然后利用云模型的相似性度量計算選取相似日,最后利用LSTM神經(jīng)網(wǎng)絡(luò)對光伏功率進行預(yù)測。為了驗證預(yù)測的性能,本文以國內(nèi)某光伏電站實測數(shù)據(jù)為研究對象與傳統(tǒng)LSTM、SVM以及GM模型進行對比實驗,結(jié)果表明,本模型在不同季節(jié)、不同氣象條件下均能夠提升光伏功率中期預(yù)測的精度,具有一定的研究價值和應(yīng)用前景。
本模型的主要不足之處在于對復(fù)雜氣象條件下的預(yù)測精度未有明顯提升。此外,當(dāng)前建立的云模型在進行相似日選取時僅考慮了輻照度,在未來的研究中可以考慮納入更多諸如溫度、濕度等其它影響因素,篩選出與待預(yù)測日氣象條件更加相近的歷史日。