劉玢岑,季陳林,彭鈺祥,蔣萬(wàn)梟
(1. 四川大學(xué)電力工程學(xué)院,四川 成都 610041;2. 國(guó)網(wǎng)江蘇無(wú)錫供電公司,江蘇 無(wú)錫 214000;3. 國(guó)網(wǎng)浙江嘉興供電公司,浙江 嘉興 314033;4. 中船重工集團(tuán)公司第705研究所昆明分部,云南 昆明 650118)
光伏發(fā)電是一種可再生、清潔、靈活的分布式能源,可在滿(mǎn)足全球?qū)η鍧嵞茉慈找嬖鲩L(zhǎng)的需求方面發(fā)揮重要作用[1]。光伏發(fā)電在過(guò)去幾十年中受到越來(lái)越多的關(guān)注;光伏發(fā)電的集成帶來(lái)了顯著的經(jīng)濟(jì)和環(huán)境效益。然而,由于光伏發(fā)電的不確定性和間歇性特征,其高滲透率也給現(xiàn)有電網(wǎng)系統(tǒng)的運(yùn)行帶來(lái)了許多新的挑戰(zhàn)[2]。這些挑戰(zhàn)包括光伏電源對(duì)氣象條件的敏感性、高安裝成本和間歇性發(fā)電。光伏功率預(yù)測(cè)是克服這些挑戰(zhàn)的有效解決方案。
光伏發(fā)電量的準(zhǔn)確預(yù)測(cè)被認(rèn)為是大規(guī)模光伏滲透到主電網(wǎng)的先決條件。然而,光伏發(fā)電時(shí)間序列通常表現(xiàn)出非線(xiàn)性和不穩(wěn)定的特征。光伏發(fā)電依賴(lài)于不可預(yù)測(cè)的氣象條件,這使得準(zhǔn)確的光伏發(fā)電預(yù)測(cè)變得困難。
目前,有研究工作集中在光伏功率輸出預(yù)測(cè)。已經(jīng)提出了許多預(yù)測(cè)方法。根據(jù)預(yù)測(cè)范圍,這些方法可分為三種類(lèi)型:長(zhǎng)期、中期和短期光伏功率預(yù)測(cè)[3]。長(zhǎng)期預(yù)測(cè)著眼于一個(gè)月到一年。中期預(yù)測(cè)考慮一周到一個(gè)月的范圍,短期預(yù)測(cè)是指一周或更短的時(shí)間范圍。長(zhǎng)期光伏功率預(yù)測(cè)有助于光伏發(fā)電、輸電和配電的長(zhǎng)期規(guī)劃和決策,并確保電力系統(tǒng)的可靠運(yùn)行。中期光伏功率預(yù)測(cè)為電力系統(tǒng)中期調(diào)度提供決策支持。短期光伏功率預(yù)測(cè)可以支持電力系統(tǒng)運(yùn)行,從而提高電力系統(tǒng)的可靠性[4]。
光伏功率預(yù)測(cè)模型可進(jìn)一步分為物理方法、持續(xù)方法和統(tǒng)計(jì)方法[5]。物理方法利用數(shù)學(xué)方程來(lái)描述氣象條件的物理狀態(tài)和動(dòng)態(tài)運(yùn)動(dòng)。當(dāng)天氣條件穩(wěn)定時(shí),基于物理方法的預(yù)測(cè)模型表現(xiàn)最佳。持續(xù)性方法通常假設(shè)現(xiàn)在和未來(lái)的價(jià)值之間有很強(qiáng)的相關(guān)性。假設(shè)條件從時(shí)間t到時(shí)間+tδ保持不變,則計(jì)算時(shí)間序列的未來(lái)值?;诔掷m(xù)性方法的模型的預(yù)測(cè)精度主要取決于歷史平均值。相比之下,基于統(tǒng)計(jì)方法的模型旨在測(cè)量歷史光伏功率輸出和天氣參數(shù)之間的關(guān)系。統(tǒng)計(jì)方法通?;陬A(yù)測(cè)模型和歷史變量的學(xué)習(xí)過(guò)程。統(tǒng)計(jì)方法的性能對(duì)時(shí)間范圍和輸入數(shù)據(jù)的質(zhì)量高度敏感。光伏功率預(yù)測(cè)中常用的統(tǒng)計(jì)方法包括自回歸集成移動(dòng)平均(ARIMA)模型[6],自回歸和移動(dòng)平均(ARMA)模型[7],回歸方法[8],極限學(xué)習(xí)機(jī)[9],和支持向量機(jī)(SVM)[10]。統(tǒng)計(jì)模型通??梢援a(chǎn)生更準(zhǔn)確的短期光伏功率預(yù)測(cè)結(jié)果,因?yàn)榭紤]了歷史光伏發(fā)電值,并且模型參數(shù)不斷優(yōu)化。然而,仍然存在一些明顯的缺點(diǎn)。例如,ARMA模型中使用的時(shí)間序列數(shù)據(jù)必須是平穩(wěn)的[11];當(dāng)開(kāi)發(fā)基于回歸的預(yù)測(cè)模型時(shí),由于需要解釋變量,所以很難開(kāi)發(fā)數(shù)學(xué)模型。
隨著人工智能方法的快速發(fā)展,基于深度學(xué)習(xí)的模型已經(jīng)在許多領(lǐng)域得到了發(fā)展和應(yīng)用[12]。它是機(jī)器學(xué)習(xí)方法的一個(gè)新分支。一些基于深度學(xué)習(xí)的模型,如卷積神經(jīng)網(wǎng)絡(luò)[13]和遞歸神經(jīng)網(wǎng)絡(luò)[14]已經(jīng)在光伏發(fā)電預(yù)測(cè)中產(chǎn)生了有希望的結(jié)果。與傳統(tǒng)的物理、持續(xù)和統(tǒng)計(jì)方法相比,深度學(xué)習(xí)模型能夠從光伏功率序列中挖掘深層特征,并獲得更準(zhǔn)確的預(yù)測(cè)結(jié)果。
當(dāng)前雖已經(jīng)有上述諸多預(yù)測(cè)方法對(duì)光伏發(fā)電量數(shù)據(jù)序列實(shí)施建模,但其針對(duì)變化多端、包含多個(gè)變量的具備動(dòng)態(tài)演化行為的非線(xiàn)性時(shí)間序列,不能很好的表現(xiàn)非線(xiàn)性,序列中的很多數(shù)據(jù)沒(méi)有辦法被充分展示,而這也會(huì)直接影響最終的預(yù)測(cè)結(jié)果,極有可能出現(xiàn)預(yù)報(bào)誤差超限問(wèn)題。因此,論文利用蟻群算法優(yōu)化的GRU神經(jīng)網(wǎng)絡(luò)進(jìn)行光伏發(fā)電量數(shù)據(jù)序列非線(xiàn)性特征預(yù)測(cè),利用Kalman濾波進(jìn)行線(xiàn)性部分的預(yù)測(cè),利用誤差補(bǔ)償機(jī)制進(jìn)行預(yù)測(cè)誤差的二次提取,構(gòu)建了基于GRU神經(jīng)網(wǎng)絡(luò)((Gated Recurrent Unit,GRU)、kalman濾波(Kalman Filtering,KF)和誤差補(bǔ)償機(jī)制Error Compensation,EC)的光伏發(fā)電量組合預(yù)測(cè)模型(ACO-KF-GRU-EC)。本文將ACO-KF-GRU-EC模型與GRU、ACO-GRU模型的預(yù)測(cè)結(jié)果進(jìn)行了比較分析。仿真結(jié)果表明該方法具有較明顯的優(yōu)勢(shì),不僅降低了建模預(yù)報(bào)的難度,同時(shí)也提高了預(yù)報(bào)精度和效率。
蟻群優(yōu)化(ACO)算法本質(zhì)為仿生優(yōu)化[15],另外也可以被當(dāng)做概率性算法,于1990年被意大利研究學(xué)者馬可·多里戈提出,它比之其它的算法更具優(yōu)勢(shì),當(dāng)前已經(jīng)被多次用于優(yōu)化問(wèn)題的求解中,比如說(shuō):路徑規(guī)劃、路由分配、神經(jīng)網(wǎng)絡(luò)參數(shù)優(yōu)化等,并且經(jīng)過(guò)實(shí)驗(yàn)驗(yàn)證具有很好的效果。ACO由于其具有其它諸多算法不具備的正反饋機(jī)制的優(yōu)點(diǎn),因此具有比較獨(dú)特的優(yōu)勢(shì)。
GRU屬于LSTM神經(jīng)網(wǎng)絡(luò)的變種,由Chung等首次提出的[16]。它較之LSTM[17],升級(jí)了門(mén)控制結(jié)構(gòu),同時(shí)把LSTM里的輸入門(mén)、遺忘門(mén)整合成了zt門(mén)(Update Gate),此外,還用rt門(mén)將LSTM的輸出門(mén)進(jìn)行了替換。其中,zt主要作用是幫助模型進(jìn)行新輸入信息的過(guò)往數(shù)據(jù)歸納,而rt主要影響前一步驟中狀態(tài)信息輸入模型的概率。因?yàn)樯窠?jīng)網(wǎng)絡(luò)中門(mén)的數(shù)量從3個(gè)變成了2個(gè),具體參數(shù)被有效降低了,所以無(wú)形中節(jié)省了訓(xùn)練時(shí)間。
GRU神經(jīng)網(wǎng)絡(luò)的訓(xùn)練公式如下
(1)
(2)
zt=σsig(Wzst-1+UZxt+bz)
(3)
rt=σsig(Wrst-1+Urxt+br)
(4)
(5)
tanh(x)=2×sig(x)+1
(6)
從式(1)~(4)能夠獲知:如果rt恒等于1同時(shí)zt等于0的話(huà),GRU將直接演變成簡(jiǎn)潔的RNN模型[18]了。
GRU神經(jīng)網(wǎng)絡(luò)基于本身的特點(diǎn),能夠較好的適用于時(shí)間序列數(shù)據(jù)預(yù)測(cè),但是因?yàn)槠浔旧韺?duì)于權(quán)值、閾值等表現(xiàn)敏感,而易于出現(xiàn)預(yù)測(cè)結(jié)果誤差大、序列最大值對(duì)應(yīng)的預(yù)測(cè)結(jié)果準(zhǔn)確性低的問(wèn)題。本文利用蟻群算法(ACO)來(lái)進(jìn)行GRU神經(jīng)網(wǎng)絡(luò)初始參數(shù)尋優(yōu),然后把所獲取的權(quán)值、閾值重新帶入到GRU神經(jīng)網(wǎng)絡(luò)。下面以光伏發(fā)電量數(shù)據(jù)預(yù)測(cè)為例,對(duì)利用ACO優(yōu)化GRU神經(jīng)網(wǎng)絡(luò)的具體流程進(jìn)行說(shuō)明。具體步驟如下:
1)初始化處理所獲得的光伏發(fā)電量信息,主要的操作為異常信息的修正、降噪處理以及相空間重構(gòu)等,使其更加適用于進(jìn)行光伏發(fā)電量的預(yù)測(cè);
2)對(duì)于GRU神經(jīng)網(wǎng)絡(luò)的一系列參數(shù)實(shí)施前期處理;
3)借助于改進(jìn)之后的蟻群算法尋找GRU神經(jīng)網(wǎng)絡(luò)權(quán)值、閾值最優(yōu)值;
4)進(jìn)行訓(xùn)練樣本數(shù)據(jù)的訓(xùn)練,輸出對(duì)應(yīng)的預(yù)測(cè)值及誤差值;
5)調(diào)整GRU神經(jīng)網(wǎng)絡(luò)里的權(quán)值、閾值;
6)看預(yù)測(cè)結(jié)果是否滿(mǎn)足結(jié)束條件,若不滿(mǎn)足跳回到第4)步,不然繼續(xù)執(zhí)行步驟7);
7)保存當(dāng)前GRU神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值;
8)進(jìn)行測(cè)試數(shù)據(jù)樣本的預(yù)測(cè)。
卡爾曼濾波(Kalman Filtering,KF)[19]的本質(zhì)是一種遞推濾波方法,它的主要特點(diǎn)在于具有很強(qiáng)的抗隨機(jī)干擾性以及準(zhǔn)確檢測(cè)性等。使用這一方法可以通過(guò)前期狀態(tài)的預(yù)測(cè)數(shù)值與當(dāng)下?tīng)顟B(tài)的觀(guān)測(cè)數(shù)值來(lái)預(yù)測(cè)出當(dāng)下序列狀態(tài)。
1)狀態(tài)空間描述
狀態(tài)空間由序列里和以往狀態(tài)有關(guān)系的同時(shí)處于核心位置的部分?jǐn)?shù)據(jù)組成,通過(guò)這一部分?jǐn)?shù)據(jù)可以展現(xiàn)序列本身的連續(xù)性。如果某個(gè)時(shí)間序列既具有線(xiàn)性相關(guān)同時(shí)又是離散的,那么其就可以會(huì)使用觀(guān)測(cè)方程表示出來(lái)。
2)卡爾曼濾波線(xiàn)性連續(xù)模型
在這一模型中,可以通過(guò)某個(gè)時(shí)間段序列的觀(guān)測(cè)數(shù)值利用微分方程來(lái)求解序列狀態(tài)的連續(xù)值。具體的狀態(tài)函數(shù)如式7所示,觀(guān)測(cè)方程如式(8)所示
(t)=A(t)X(t)+F(t)W(t)
(7)
其中,X(t)為n維狀態(tài)向量;W(t)表示p維零均值白噪聲向量;A(t)為n×n維序列矩陣;F(t)為n×p維干擾輸入矩陣。
Z(t)=H(t)X(t)+V(t)
(8)
其中,Z(t)為m維狀態(tài)向量;V(t)表示m維零均值白噪聲向量;H(t)為m×n維觀(guān)測(cè)矩陣。
在以上兩個(gè)公式里,W(t)及V(t)兩者并沒(méi)有關(guān)聯(lián)性,具體的協(xié)方差陣如下:
(9)
式中,δ(t-τ)代表的是狄拉克δ函數(shù);Q(t)代表的是一個(gè)非負(fù)定對(duì)稱(chēng)陣;R(t)代表的是一個(gè)正定矩陣;E代表的是數(shù)學(xué)期望。
3)卡爾曼濾波線(xiàn)性離散模型
借助于此模型,利用序列里前期狀態(tài)的預(yù)測(cè)數(shù)及當(dāng)下?tīng)顟B(tài)的觀(guān)測(cè)數(shù),可以計(jì)算出目前序列的狀態(tài)。其離散方程如式(10)所示
Xk=φ(k|k-1)Xk-1+Γ(k|k-1)Wk-1
Zk=HkXk+Vk
(10)
其中,Xk為n維狀態(tài)向量;Zk為m維觀(guān)測(cè)值;Wk為p維序列過(guò)程噪聲值;Vk為m維觀(guān)測(cè)噪聲值;φ(k|k-1)為n×m維狀態(tài)轉(zhuǎn)移矩陣;Γ(k|k-1)為n×p維噪聲輸入矩陣;Hk為m×n維觀(guān)測(cè)矩陣。
上面的公式中,Wk及Vk的統(tǒng)計(jì)特征公式如下
(11)
序列狀態(tài)預(yù)測(cè)值的計(jì)算公式如下
(k|k-1)=φ(k|k-1)(k-1)
(12)
通過(guò)卡爾曼增益來(lái)修正序列狀態(tài)預(yù)測(cè)數(shù)值,具體的公式如下,而卡爾曼增益的公式見(jiàn)式(14)。
k=(k|k-1)+Kk[Zk-Hk(k|k-1)]
(13)
(14)
式子里,k-1時(shí)刻與k時(shí)刻預(yù)測(cè)誤差的協(xié)方差的計(jì)算公式見(jiàn)式(15)和(16)。
從以上式子來(lái)看,僅需確定初始值0及P0,再獲得對(duì)應(yīng)時(shí)間點(diǎn)的觀(guān)測(cè)值Zk,由此得到此刻的狀態(tài)預(yù)測(cè)值k(k=1,2,…)。
(15)
(16)
對(duì)于光伏發(fā)電量數(shù)據(jù)來(lái)說(shuō)既包含非線(xiàn)性相關(guān)部分,也包含線(xiàn)性相關(guān)部分,但如果只是針對(duì)非線(xiàn)性部分進(jìn)行預(yù)測(cè)的結(jié)果難免存在誤差。而為了進(jìn)一步提高預(yù)測(cè)精度,將整個(gè)光伏發(fā)電量數(shù)據(jù)分解為線(xiàn)性相關(guān)部分和非線(xiàn)性部分,并分別進(jìn)行預(yù)測(cè)。具體分解步驟如下:
1)將序列yt劃分成線(xiàn)性L(fǎng)t及非線(xiàn)性Nt,具體的公式如下
yt=Lt+Nt+εt
(17)
其中εt代表的是序列的隨機(jī)誤差。
2)利用GRU神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型預(yù)測(cè)Lt,獲取預(yù)測(cè)數(shù)值t,然后利用yt及t測(cè)算出殘差et,計(jì)算公式如下
yt=yt-t
(18)
{et}=f(e1,e2,…,et-n)+εet
(19)
其中εet表示隨機(jī)誤差。
(20)
通過(guò)上面的步驟實(shí)現(xiàn)了序列中線(xiàn)性及非線(xiàn)性部分的劃分。
從相關(guān)研究資料以及仿真結(jié)果來(lái)看,進(jìn)行光伏發(fā)電量預(yù)測(cè)的時(shí)候會(huì)存在一定程度的誤差,但這些誤差是有規(guī)律可循的,這就表示誤差數(shù)據(jù)里包含了一定的信息[20]。為了更好的進(jìn)行研究,論文特別采用了誤差補(bǔ)償方法(Error Compensation,EC),來(lái)實(shí)現(xiàn)對(duì)預(yù)測(cè)誤差的再次提取。該方法的本質(zhì)在于對(duì)模型的預(yù)測(cè)誤差進(jìn)行抽取,然后對(duì)其重新進(jìn)行訓(xùn)練和預(yù)測(cè),得到新的預(yù)測(cè)值,把其與原始的預(yù)測(cè)值相加后就可以得到最后的結(jié)果。對(duì)光伏發(fā)電量數(shù)據(jù)進(jìn)行預(yù)測(cè)誤差二次提取的具體操作步驟如下:
1)對(duì)原始光伏發(fā)電量數(shù)據(jù)進(jìn)行預(yù)處理,將數(shù)據(jù)分為訓(xùn)練數(shù)據(jù)集及測(cè)試數(shù)據(jù)集;
2)初始化模型參數(shù);
3)對(duì)訓(xùn)練數(shù)據(jù)集中的數(shù)據(jù)進(jìn)行訓(xùn)練,獲得對(duì)應(yīng)的輸出值,將其與原始數(shù)據(jù)進(jìn)行對(duì)比得到誤差;
4)對(duì)模型的權(quán)值和閾值參數(shù)進(jìn)行修整;
5)看預(yù)測(cè)結(jié)果是否滿(mǎn)足結(jié)束條件,若不滿(mǎn)足跳回到第3)步,不然繼續(xù)執(zhí)行步驟6);
6)模型訓(xùn)練終止,保存權(quán)值和閾值;
7)輸入測(cè)試樣本數(shù)據(jù),獲得預(yù)測(cè)序列X;
8)將所有數(shù)據(jù)輸入進(jìn)行預(yù)測(cè),獲取預(yù)測(cè)序列Y;
9)將序列Y與實(shí)際數(shù)據(jù)進(jìn)行比較,獲得誤差序列E;
10)對(duì)E進(jìn)行歸一化處理,同時(shí)將其劃分為兩個(gè)部分:訓(xùn)練部分和預(yù)測(cè)部分;
11)初始化模型參數(shù),對(duì)步驟10)中得到的訓(xùn)練部分?jǐn)?shù)據(jù)進(jìn)行訓(xùn)練;
12)循環(huán)執(zhí)行步驟4)到步驟7);
13)將E的預(yù)測(cè)樣本輸入模型,獲取全新的誤差預(yù)測(cè)序列E1;
14)將序列X和E1疊加得到預(yù)測(cè)結(jié)果序列Z。
以上就是針對(duì)于預(yù)測(cè)誤差所進(jìn)行的二次提取的過(guò)程,這可以很好的提升預(yù)測(cè)結(jié)果的精準(zhǔn)度。
上述內(nèi)容為利用蟻群算法(ACO)進(jìn)行GRU神經(jīng)網(wǎng)絡(luò)進(jìn)行權(quán)值、閾值尋優(yōu)的步驟,在此基礎(chǔ)上,融合前文提及的誤差二次提取機(jī)制、卡爾曼濾波模型,從而構(gòu)建了光伏發(fā)電量預(yù)測(cè)模型——ACO-KF-GRU-EC。圖1為模型的流程圖,模型的具體步驟如下。
圖1 ACO-KF-GRU-EC模型的預(yù)測(cè)流程
1)對(duì)光伏發(fā)電量數(shù)據(jù)預(yù)處理;
2)把1)中得到的光伏發(fā)電量數(shù)據(jù)分解為線(xiàn)性、非線(xiàn)性?xún)刹糠郑?/p>
3)其中非線(xiàn)性部分利用基于A(yíng)CO優(yōu)化的GRU神經(jīng)網(wǎng)絡(luò)模型進(jìn)行預(yù)測(cè),X和E1分別為對(duì)應(yīng)的預(yù)測(cè)結(jié)果序列及誤差序列;
4)對(duì)E1進(jìn)行二次提取,將提取結(jié)果E11與X進(jìn)行疊加,得到X1;
5)利用Kalman濾波模型預(yù)測(cè)進(jìn)行線(xiàn)性部分序列的預(yù)測(cè),得到序列Y及誤差E2;
6)對(duì)E2進(jìn)行二次提取,得到序列E22,然后疊加預(yù)測(cè)序列Y,獲取預(yù)測(cè)序列Y2;
7)繼續(xù)疊加X(jué)I、Y2,獲取光伏發(fā)電量數(shù)據(jù)的最后預(yù)測(cè)序列Z。
本文使用的光伏發(fā)電量數(shù)據(jù)來(lái)自澳大利亞布里斯班昆士蘭大學(xué)(UQ)安裝的1.22MW光伏系統(tǒng)。這是澳大利亞最大的平板屋頂光伏系統(tǒng),共有4座建筑的5000多塊太陽(yáng)能電池板。從2015年1月7日至2015年1月10日,以15分鐘的間隔收集并匯總了所有四座建筑物的太陽(yáng)能輸出數(shù)據(jù),每天獲得的數(shù)據(jù)總數(shù)為96個(gè)。為測(cè)試所使用的模型算法是否合理,擇取了前3天的288個(gè)數(shù)據(jù)來(lái)實(shí)施具體的訓(xùn)練,同時(shí)擇取第4天的96個(gè)數(shù)據(jù)來(lái)實(shí)施驗(yàn)證。
具體情況見(jiàn)圖2,光伏發(fā)電量信息一般呈現(xiàn)變化多變的狀態(tài),只有在不間斷的時(shí)間序列上才能呈現(xiàn)些許的規(guī)律。
圖2 光伏發(fā)電量數(shù)據(jù)變化曲線(xiàn)
在實(shí)驗(yàn)之前,需要對(duì)數(shù)據(jù)進(jìn)行歸一化處理,目的是為了將原始數(shù)據(jù)轉(zhuǎn)換為一種更方便模型處理數(shù)據(jù)的方法,其主要是將數(shù)據(jù)轉(zhuǎn)換成0-1之間對(duì)應(yīng)的數(shù)字。這種方法不單單能夠在一定程度上將算法模型的運(yùn)行時(shí)間大大縮減,還能夠使模型實(shí)現(xiàn)快速的收斂。計(jì)算公式如下所示
(21)
式(21)中的y代表歸一化處理后的值;x代表正常值。
對(duì)算法模型的性能進(jìn)行評(píng)估的過(guò)程中,需要篩選了幾個(gè)具體的性能指標(biāo)來(lái)反應(yīng)最終結(jié)果的正確與否。具體的評(píng)價(jià)指標(biāo)包括:平均絕對(duì)百分比誤差、平均絕對(duì)誤差、均方根誤差、均等系數(shù)、算法運(yùn)行時(shí)間。其中,平均絕對(duì)百分比誤差主要反映預(yù)測(cè)效果的好壞;均方根誤差反映了預(yù)測(cè)誤差值的大小;均等系數(shù)代表的是評(píng)估擬合度,相當(dāng)于準(zhǔn)確性;RT數(shù)值反映了預(yù)測(cè)所用的時(shí)間。全部性能評(píng)價(jià)指標(biāo)相關(guān)的公式如下。
平均絕對(duì)百分比誤差(MAPE):
(22)
均方根誤差(RMSE)
(23)
均等系數(shù)(EC):
(24)
公式里,Yp(t)代表t時(shí)刻評(píng)估模型的預(yù)測(cè)輸出值;Yr(t)代表t時(shí)刻的實(shí)際值,N則是預(yù)測(cè)樣本的數(shù)目。
從以上分析可以看出,MAPE與最終的評(píng)估效果成反比,前者越小則效果越好;而EC則與其成正比,數(shù)越大則其與現(xiàn)實(shí)數(shù)據(jù)的差距越小。
為充分驗(yàn)證ACO-KF-GRU-EC模型的預(yù)測(cè)效果,本文還引入了GRU、ACO-GRU模型進(jìn)行對(duì)比仿真。為增加預(yù)測(cè)效果的說(shuō)服力,預(yù)測(cè)結(jié)果評(píng)價(jià)指標(biāo)取四種模型30次實(shí)驗(yàn)的平均值。圖3展示的是三種模型的預(yù)測(cè)結(jié)果,表1給出了四種模型預(yù)測(cè)性能評(píng)價(jià)指標(biāo)的計(jì)算結(jié)果,圖4-圖7則展示的是三種模型的預(yù)測(cè)性能評(píng)價(jià)指標(biāo)的對(duì)比結(jié)果。
圖3 三種模型預(yù)測(cè)誤差對(duì)比圖
表1 評(píng)價(jià)指標(biāo)對(duì)比
從圖3-圖6及表1可以看出,比之其余三種方法,ACO-KF-GRU-EC模型的精準(zhǔn)性更佳,在具有線(xiàn)性特性和非線(xiàn)性特性的光伏發(fā)電量數(shù)據(jù)上是非常適用的。從不斷上升的EC數(shù)值來(lái)看,每個(gè)模型對(duì)應(yīng)的擬合度也是不斷提升的。從圖7可知,隨著預(yù)測(cè)模型的不斷改進(jìn),使得對(duì)應(yīng)的預(yù)測(cè)復(fù)雜度不斷增加,ACO-GRU、ACO-KF-GRU-EC兩種模型比GRU神經(jīng)網(wǎng)絡(luò)模型所花費(fèi)的實(shí)驗(yàn)時(shí)間有了一定的延遲,但增加的時(shí)間均在2秒的范圍內(nèi)。
圖4 MAPE數(shù)值對(duì)比圖5 RMSE數(shù)值對(duì)比
圖6 EC數(shù)值對(duì)比圖7 RT數(shù)值對(duì)比
本文針對(duì)光伏發(fā)電量數(shù)據(jù)具有的線(xiàn)性特征和非線(xiàn)性特征,構(gòu)建了基于A(yíng)CO-KF-GRU-EC的光伏發(fā)電量組合預(yù)測(cè)模型。該模型首先將光伏發(fā)電量數(shù)據(jù)分解為線(xiàn)性相關(guān)部分和非線(xiàn)性部分,利用蟻群算法優(yōu)化的GRU神經(jīng)網(wǎng)絡(luò)進(jìn)行光伏發(fā)電量數(shù)據(jù)序列非線(xiàn)性部分的預(yù)測(cè),使用Kalman濾波進(jìn)行線(xiàn)性部分的預(yù)測(cè);利用誤差補(bǔ)償機(jī)制來(lái)實(shí)現(xiàn)對(duì)于預(yù)測(cè)誤差的二次提取。在實(shí)驗(yàn)中,將該模型與GRU、ACO-GRU模型分別對(duì)光伏發(fā)電量數(shù)據(jù)進(jìn)行預(yù)測(cè)對(duì)比,結(jié)果表明:ACO-KF-GRU-EC模型不但有效改善了預(yù)測(cè)的精準(zhǔn)性,同時(shí)還極大地縮小了預(yù)測(cè)點(diǎn)和真實(shí)數(shù)據(jù)之間的差距,而這也為精準(zhǔn)度的提升奠定了基礎(chǔ)。而分析其主要原因是得益于對(duì)于復(fù)雜預(yù)測(cè)問(wèn)題的有效分解,借助于諸多的、有序可循的分量預(yù)測(cè)來(lái)進(jìn)行了簡(jiǎn)化,另外又借助于對(duì)預(yù)測(cè)結(jié)果的整合提升了最終數(shù)據(jù)的精準(zhǔn)性。
目前有關(guān)光伏發(fā)電量數(shù)據(jù)的預(yù)測(cè),借助于GRU等的相關(guān)模型不多,而在未來(lái)的實(shí)驗(yàn)里,一是要針對(duì)LSTM、GRU神經(jīng)網(wǎng)絡(luò)等深度學(xué)習(xí)模型在光伏發(fā)電量數(shù)據(jù)的預(yù)測(cè)實(shí)施中進(jìn)行更進(jìn)一步的分析,二是要關(guān)注GRU與PSO、GA等算法的結(jié)合,促進(jìn)深度學(xué)習(xí)模型更高效能的發(fā)揮。