陳馨凝,劉 輝,劉雨薇,鄒琪驍,李侯君
(湖北工業(yè)大學(xué)電氣與電子工程學(xué)院,湖北 武漢 430068)
準(zhǔn)確的負(fù)荷預(yù)測(cè)對(duì)于電力系統(tǒng)的發(fā)電計(jì)劃以及經(jīng)濟(jì)運(yùn)行尤為重要[1-2]。電力系統(tǒng)的短期負(fù)荷預(yù)測(cè)成為電力系統(tǒng)發(fā)電計(jì)劃中的重要課題,國(guó)內(nèi)外學(xué)者也對(duì)此進(jìn)行了大量研究。文獻(xiàn)[3]利用核主成分分析法對(duì)初始輸入量進(jìn)行數(shù)據(jù)處理,消除冗余信息對(duì)ELM神經(jīng)網(wǎng)絡(luò)模型的影響,同時(shí)提高了模型的預(yù)測(cè)準(zhǔn)確度。文獻(xiàn)[4]將改進(jìn)遺傳算法和BP神經(jīng)網(wǎng)絡(luò)結(jié)合提出了一種預(yù)測(cè)新方法,研究表明該方法具有一定的有效性,但仍無(wú)法完全避免BP神經(jīng)網(wǎng)絡(luò)局部尋優(yōu)能力不足等缺陷。文獻(xiàn)[5]提出了一種基于PSO-WPESN的電力負(fù)荷預(yù)測(cè)模型,仿真證明其模型穩(wěn)定性和預(yù)測(cè)精度都明顯提高,但由于算法嵌套,模型存在預(yù)測(cè)時(shí)間較長(zhǎng)的缺點(diǎn)。為了更加有效且準(zhǔn)確地預(yù)測(cè)短期電力負(fù)荷,本文結(jié)合改進(jìn)磷蝦群算法和回聲狀態(tài)神經(jīng)網(wǎng)絡(luò),提出了一種新型電力負(fù)荷預(yù)測(cè)模型,該模型首先利用核主成分分析法對(duì)影響因素進(jìn)行降維,選取主要成分作為網(wǎng)絡(luò)的輸入量,然后利用改進(jìn)磷蝦群算法對(duì)ESN隱含層到輸出層之間連接權(quán)值進(jìn)行優(yōu)化,從而達(dá)到提高模型預(yù)測(cè)精度的目的。
磷蝦群算法(Krill herd,KH)是由美國(guó)學(xué)者GANDOMI等人根據(jù)南極海洋磷蝦覓食過(guò)程提出的一種新型仿生學(xué)算法[6],該算法是以磷蝦群中各磷蝦個(gè)體之間的相互作用為基礎(chǔ)的群智能算法,通過(guò)迭代尋求磷蝦的最優(yōu)位置解。單個(gè)磷蝦位置更新主要由以下三個(gè)運(yùn)動(dòng)控制[7-8]。
1)其他磷蝦個(gè)體誘發(fā)的運(yùn)動(dòng)
2)磷蝦本身的捕食運(yùn)動(dòng)
3)磷蝦本身的隨機(jī)擴(kuò)散
(1)
其中,Dmax表示隨機(jī)擴(kuò)散速度極限值,Imax表示算法的最大迭代次數(shù),δi表示隨機(jī)移動(dòng)的方向,取值為-1到1之間的任意數(shù)。
根據(jù)以上三種運(yùn)動(dòng),磷蝦的位置更新如下:
(2)
(3)
Δt是每個(gè)磷蝦在運(yùn)動(dòng)中的尋優(yōu)步長(zhǎng),且
(4)
其中,NV表示待求解問(wèn)題的維數(shù),Uj和Lj分別表示第j個(gè)磷蝦的尋優(yōu)邊界,其差值的絕對(duì)值為磷蝦的尋優(yōu)范圍,Cj表示搜索步長(zhǎng)因子,其值為介于0到2之間的常數(shù)。
因此,每個(gè)磷蝦個(gè)體的位置在上述三種移動(dòng)的綜合影響下,不停進(jìn)行迭代并更新,直到符合算法結(jié)束條件時(shí)停止,當(dāng)前位置對(duì)應(yīng)的解即為算法的最優(yōu)解。
隨著迭代次數(shù)達(dá)到一定數(shù)量,磷蝦群的個(gè)體特征將會(huì)被削弱,從而容易陷入局部最優(yōu)[9]。因此算法必須協(xié)調(diào)好兩者之間的關(guān)系,才能使得算法性能更好地發(fā)揮。
1.2.1 引入擾動(dòng)因子λ 為進(jìn)一步優(yōu)化磷蝦群算法,將下式所示的變異因子加入隨機(jī)擴(kuò)散運(yùn)動(dòng):
λμ·fitness
其中,μ表示變異系數(shù),其值隨著迭代次數(shù)的增加由1減小到0;fitness表示磷蝦個(gè)體的適應(yīng)度值,其值越小越好。
由于變異系數(shù)呈現(xiàn)遞減趨勢(shì),加入擾動(dòng)因子后的磷蝦群算法具有以下優(yōu)點(diǎn):
1)在算法迭代初期,變異系數(shù)會(huì)產(chǎn)生較大范圍的變異,此時(shí)算法將獲得較優(yōu)的全局遍歷能力;
2)在算法迭代中期,由于變異系數(shù)逐漸減小使得周邊搜索能力大大提高,此時(shí)算法將獲得良好的局部搜索性能和快速性;
3)在算法迭代后期,由于存在較大適應(yīng)度值的磷蝦,此時(shí)算法將獲得較大的尋優(yōu)范圍,以達(dá)到優(yōu)化標(biāo)準(zhǔn)磷蝦群算法,避免易陷入局部最優(yōu)的目的。
1.2.2 精英選擇和保留策略本文將精英選擇和保留策略加入標(biāo)準(zhǔn)磷蝦群算法的迭代中對(duì)其進(jìn)行優(yōu)化:首先計(jì)算每個(gè)個(gè)體初始位置所對(duì)應(yīng)的適應(yīng)度值,選取其中適應(yīng)度值最優(yōu)的個(gè)體作為群體中的精英蝦,并記錄為Fbest;在三種運(yùn)動(dòng)的共同影響下磷蝦位置不斷移動(dòng),每次更新計(jì)算當(dāng)前磷蝦的適應(yīng)度值并與精英蝦作比較,選擇更優(yōu)的磷蝦并記錄在Fbest中。直到算法停止時(shí),記錄的適應(yīng)度值即為全局最優(yōu)解。
改進(jìn)后的磷蝦群算法更全面多樣地考慮了迭代過(guò)程和單個(gè)磷蝦的具體狀況,提高了算法的收斂速度,增加了算法的穩(wěn)定性。
回聲狀態(tài)網(wǎng)絡(luò)(Echo State Networks)由Jaeger于2001年提出的一種新型神經(jīng)網(wǎng)絡(luò)[10-11],其結(jié)構(gòu)特點(diǎn)是具有非線性神經(jīng)元的高度互聯(lián)和遞歸拓?fù)?,?gòu)成了包含大量輸入和輸出模式歷史的信息的儲(chǔ)備池,大量?jī)?nèi)部神經(jīng)元被反饋到無(wú)記憶但自適應(yīng)的線性網(wǎng)絡(luò),產(chǎn)生網(wǎng)絡(luò)輸出。并且,ESN能夠?qū)NN訓(xùn)練的復(fù)雜性降低到簡(jiǎn)單的線性回歸,改善了RNN訓(xùn)練時(shí)間長(zhǎng)的缺點(diǎn),體現(xiàn)了回聲狀態(tài)網(wǎng)絡(luò)的優(yōu)越性。其網(wǎng)絡(luò)結(jié)構(gòu)見(jiàn)圖1,ESN同樣是由輸入層、隱藏層、輸出層組成。
圖1 ESN神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖
存儲(chǔ)池到輸出層為線性連接關(guān)系,即輸出方程滿足:
ESN網(wǎng)絡(luò)訓(xùn)練過(guò)程的實(shí)質(zhì)就是訓(xùn)練Wout的過(guò)程,并且通過(guò)簡(jiǎn)單的線性回歸即可完成。因此,相比其他神經(jīng)網(wǎng)絡(luò),ESN能夠快速準(zhǔn)確地運(yùn)行,且一定程度上避免了梯度下降的優(yōu)化算法中出現(xiàn)的局部極小情況。
為了更加精確地對(duì)電力負(fù)荷進(jìn)行評(píng)估,首先采用KPCA對(duì)原始數(shù)據(jù)進(jìn)行有效降維,然后運(yùn)用改進(jìn)磷蝦群算法對(duì)回聲狀態(tài)網(wǎng)絡(luò)的權(quán)值進(jìn)行優(yōu)化,構(gòu)造出短期電力負(fù)荷模型[12-13]?;贗KH-ESN模型建立的具體步驟如下:
步驟一:初始化改進(jìn)磷蝦群算法各參數(shù):設(shè)定其磷蝦群的個(gè)體數(shù)為Np、算法最大迭代次數(shù)Mi、誘發(fā)個(gè)體的最大速度Nmax、個(gè)體的捕食速度Vf和最大擴(kuò)散移動(dòng)速度Dmax等。
步驟二:初始化ESN神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu):輸入層節(jié)點(diǎn)數(shù)量、動(dòng)態(tài)儲(chǔ)備池DR數(shù)量、輸出層節(jié)點(diǎn)數(shù)量、譜半徑γ、隨機(jī)生成Win、W、Wback矩陣,確定目標(biāo)函數(shù)。
步驟三:計(jì)算適應(yīng)度值:根據(jù)下式計(jì)算各磷蝦的適應(yīng)度值,對(duì)比后選出適應(yīng)度最小的磷蝦個(gè)體為精英蝦,并記錄其位置信息為Fbest。
步驟四:綜合磷蝦個(gè)體的三種運(yùn)動(dòng)對(duì)磷蝦個(gè)體位置的影響,根據(jù)式(2)~(4)對(duì)磷蝦個(gè)體位置進(jìn)行更新,并計(jì)算出當(dāng)前位置下的適應(yīng)度值與Fbest對(duì)比,選出更優(yōu)磷蝦位置所對(duì)應(yīng)的適應(yīng)度值存儲(chǔ)在Fbest中。
步驟五:判斷適應(yīng)度值是否滿足算法結(jié)束條件,若不滿足則返回步驟三更新磷蝦位置并繼續(xù)重復(fù)迭代。
步驟六:若滿足則算法結(jié)束,此時(shí)全局歷史最優(yōu)位置即為ESN神經(jīng)網(wǎng)絡(luò)的輸出權(quán)值矩陣Wout,利用優(yōu)化的網(wǎng)絡(luò)參數(shù)進(jìn)行訓(xùn)練及負(fù)荷預(yù)測(cè)。
基于改進(jìn)磷蝦群算法的回聲狀態(tài)網(wǎng)絡(luò)流程見(jiàn)圖2。
圖2 IKH-ESN模型流程圖
為證明本文所提出的新模型在電力負(fù)荷預(yù)測(cè)方面具有優(yōu)越性,采用河南省某地區(qū)2018年6月的實(shí)際負(fù)荷數(shù)據(jù)進(jìn)行建模和測(cè)試,該負(fù)荷數(shù)據(jù)采樣間隔為15 min,即選取連續(xù)2880(96×30)組數(shù)據(jù)作為樣本。由于短期負(fù)荷數(shù)據(jù)受歷史負(fù)荷、溫度、日屬性等環(huán)境因素影響,因此選取預(yù)測(cè)點(diǎn)前6天同一時(shí)刻的歷史負(fù)荷數(shù)據(jù)X1-X6,預(yù)測(cè)點(diǎn)前4個(gè)時(shí)刻的歷史負(fù)荷數(shù)據(jù)X7-X10,以及預(yù)測(cè)點(diǎn)的日屬性X11、預(yù)測(cè)點(diǎn)的溫度X12共12個(gè)輸入變量。
由于初始輸入變量較多,本文首先運(yùn)用核主成分分析(KPCA)方法[14]對(duì)初始數(shù)據(jù)進(jìn)行處理。得到的結(jié)果見(jiàn)表 1。由表1可知,經(jīng)過(guò)核主成分分析,前 7個(gè)主成分的累加貢獻(xiàn)值已超過(guò)95%,可以認(rèn)為這7個(gè)核主成分可以很大程度上反映原本12個(gè)主成分的數(shù)據(jù)特征,因此選取前7個(gè)主成分作為IKH-ESN模型的輸入量。
表1 核主成分分析結(jié)果
本文選取6月1日到6月30日的負(fù)荷數(shù)據(jù)進(jìn)行預(yù)測(cè),采用每隔15 min測(cè)試的方式選取共2880組數(shù)據(jù),首先選取6月1日到6月29日的2784組樣本數(shù)據(jù)作為訓(xùn)練樣本,輸入預(yù)測(cè)模型中反復(fù)進(jìn)行訓(xùn)練。根據(jù)KPCA降維處理的結(jié)果,IKH-ESN模型采用輸入層節(jié)點(diǎn)a=7,輸出層節(jié)點(diǎn)b=1,儲(chǔ)備池節(jié)點(diǎn)數(shù)DR=1000,譜半徑γ=0.75,稀疏度SD=0.03,輸入單元尺度IS=0.35的7-1000-1的網(wǎng)絡(luò)結(jié)構(gòu)。其中設(shè)定改進(jìn)磷蝦群算法的初始參數(shù)為:Np=30,Mi=100,Nmax=0.03 m/s,Vf=0.01 m/s,Dmax=0.005 m/s。當(dāng)訓(xùn)練完成后,利用6月30日的96組負(fù)荷數(shù)據(jù)作為測(cè)試樣本,最終得到的模型輸出值與實(shí)際負(fù)荷值進(jìn)行對(duì)比分析。
為了進(jìn)一步體現(xiàn)本文構(gòu)建IKH-ESN模型的優(yōu)越性,同時(shí)構(gòu)建了標(biāo)準(zhǔn)BP、標(biāo)準(zhǔn)ESN以及PSO-BP模型三種模型方法作為對(duì)比,其中標(biāo)準(zhǔn)BP模型采用7-5-1的網(wǎng)絡(luò)結(jié)構(gòu)輸入層節(jié)點(diǎn),迭代次數(shù)為100;標(biāo)準(zhǔn)ESN模型網(wǎng)絡(luò)結(jié)構(gòu)與本文相同;PSO-BP模型初始參數(shù)設(shè)定為:速度更新參數(shù)均為1.5,迭代次數(shù)為100,種群數(shù)量為20。
經(jīng)仿真計(jì)算得到各模型的電力負(fù)荷預(yù)測(cè)曲線(圖3),大致上,各模型的預(yù)測(cè)效果都比較好。但是通過(guò)90-96點(diǎn)的放大圖可以看出:IKH-ESN的預(yù)測(cè)值與實(shí)際值曲線相錯(cuò)相交,十分接近,預(yù)測(cè)效果最好;PSO-BP的預(yù)測(cè)值與實(shí)際值曲線大致相同但存在一定差距,預(yù)測(cè)效果其次;而B(niǎo)P和ESN預(yù)測(cè)值出現(xiàn)大波度的波動(dòng),預(yù)測(cè)準(zhǔn)確度相對(duì)較低。
(a)各模型預(yù)測(cè)結(jié)果
(b)預(yù)測(cè)結(jié)果局部放大圖圖3 6月30日負(fù)荷預(yù)測(cè)曲線
各模型的預(yù)測(cè)誤差百分比(圖4)可以看出,BP模型誤差在-8.87%~7.43%之間,ESN模型誤差在-7.06%~6.08%之間,PSO-BP模型誤差在-3.95%~5.54%之間,而IKH-ESN模型誤差僅在-2.56%~2.38%之間。圖4b顯示的是誤差百分比絕對(duì)值,可以清晰看到,IKH-ESN的誤差百分比絕對(duì)值要遠(yuǎn)小于其他模型。圖5為各模型的迭代次數(shù),由圖5可看出,經(jīng)IKH算法的收斂速度最快,在第24代時(shí)就達(dá)到收斂。最終其適應(yīng)度值為0.001667。說(shuō)明通過(guò)改進(jìn)磷蝦群算法優(yōu)化ESN能夠有效克服傳統(tǒng)ESN的缺陷,達(dá)到精準(zhǔn)預(yù)測(cè)的目的。
(a)各模型預(yù)測(cè)誤差
(b)各模型誤差絕對(duì)值圖4 各模型預(yù)測(cè)誤差百分比
圖5 各模型迭代次數(shù)
為了更加直觀地比較IKH與其他智能算法的優(yōu)化效果,本文從MSE、RMSE、MAD、迭代次數(shù)、收斂時(shí)間對(duì)上述4個(gè)模型的精度進(jìn)行描述(表2)。由表2可以看出,IKH-ESN模型具有最佳預(yù)測(cè)精度,其RMSE、MAPE、ME分別為1.308,1.481、32.612,其預(yù)測(cè)精度和泛化能力相比其他算法得到明顯提高,其誤差精度較傳統(tǒng)BP提高3.892%,較ESN神經(jīng)網(wǎng)絡(luò)提高了2.962%,較PSO-BP模型提高了1.807%。由于IKH算法疊加優(yōu)化作用,模型預(yù)測(cè)耗時(shí)達(dá)到2675 s,但相比PSO-BP模型,收斂速度有所提高,同時(shí)避免傳統(tǒng)神經(jīng)網(wǎng)絡(luò)以及回聲狀態(tài)神經(jīng)網(wǎng)絡(luò)易陷入局部最小的缺陷。綜上所述,基于改進(jìn)磷蝦群算法優(yōu)化回聲狀態(tài)網(wǎng)絡(luò)模型的預(yù)測(cè)效果相比其他方法效果更優(yōu)。
表2 各模型的預(yù)測(cè)效果
本文提出了一種基于改進(jìn)磷蝦群算法優(yōu)化ESN的短期負(fù)荷預(yù)測(cè)方法。考慮電氣系統(tǒng)負(fù)荷的復(fù)雜性,將改進(jìn)磷蝦群算法和回聲狀態(tài)神經(jīng)網(wǎng)絡(luò)兩者組合優(yōu)化,首先采用核主成分分析法對(duì)初始輸入量進(jìn)行優(yōu)選,再使用IKH-ESN模型對(duì)優(yōu)選后的數(shù)據(jù)在MATLAB工具箱中進(jìn)行預(yù)測(cè)。同時(shí)與傳統(tǒng)BP、傳統(tǒng)ESN以及PSO-BP三種預(yù)測(cè)模型進(jìn)行對(duì)比,仿真結(jié)果表明本文所提出的新模型具有更高的預(yù)測(cè)精度和收斂速度。鑒于負(fù)荷的不確定性,未來(lái)可進(jìn)一步考慮其他因素對(duì)負(fù)荷預(yù)測(cè)的影響,提高該模型的普遍適應(yīng)度。