蒲 維,楊毅強(qiáng)*,宋 弘,吳 浩,費(fèi) 劍
(1.四川輕化工大學(xué) 自動(dòng)化與信息工程學(xué)院,四川 宜賓 644000;2.人工智能四川省重點(diǎn)實(shí)驗(yàn)室, 四川,宜賓 644000;3.阿壩師范學(xué)院,四川 阿壩 623002)
作為一種二次能源的電能,是各行各業(yè)穩(wěn)定發(fā)展的前提,是國(guó)家健康發(fā)展的基石,是推動(dòng)整個(gè)社會(huì)的前進(jìn)的重要保障。國(guó)務(wù)院于2015年發(fā)布的《關(guān)于積極推進(jìn)“互聯(lián)網(wǎng)+”行動(dòng)的指導(dǎo)意見(jiàn)》中明確指出了未來(lái)“互聯(lián)網(wǎng)+”智慧能源的發(fā)展方向[1]。但發(fā)展的過(guò)程中,伴隨著分布式電源、電動(dòng)汽車(chē)以及儲(chǔ)能裝置大規(guī)模并入電網(wǎng),導(dǎo)致電力負(fù)荷預(yù)測(cè)的難度加大[2]。只有明確不同地域和區(qū)間的電力負(fù)荷,才能根據(jù)已有負(fù)荷數(shù)據(jù)進(jìn)行合理的供電規(guī)劃,做到電力供需的平衡,充分保障每一位終端用戶(hù)的實(shí)際用電需求,以此為電力能源需求的規(guī)劃打下理論基礎(chǔ)。
在以往的電力負(fù)荷預(yù)測(cè)研究中,國(guó)內(nèi)外的研究人員利用了各式各樣的方法來(lái)進(jìn)一步提高負(fù)荷預(yù)測(cè)的精度,已有的方法總的可以歸為傳統(tǒng)預(yù)測(cè)法和人工智能預(yù)測(cè)法兩大類(lèi)。其中,傳統(tǒng)預(yù)測(cè)法包括回歸分析法、時(shí)間序列法以及灰色預(yù)測(cè)法等[3-5];人工智能算法包括神經(jīng)網(wǎng)絡(luò)算法和組合預(yù)測(cè)法[6]。梁毅[7]使用了BP神經(jīng)網(wǎng)絡(luò)模型對(duì)電力負(fù)荷進(jìn)行預(yù)測(cè),但BP神經(jīng)網(wǎng)絡(luò)存在泛化能力弱,同時(shí)極易陷入局部最優(yōu)的問(wèn)題[8]。楊宇晴等[9]使用了VMD-LSTM預(yù)測(cè)模型進(jìn)行風(fēng)功率預(yù)測(cè),但單一的LSTM模型預(yù)測(cè)不能充分地提取特征,導(dǎo)致預(yù)測(cè)精度不夠高。張睿等[10]人采用了EMD-ELM的預(yù)測(cè)模型,但學(xué)者在研究過(guò)程中發(fā)現(xiàn)EMD分解會(huì)出現(xiàn)端點(diǎn)效應(yīng)與模態(tài)混疊的情況[11]。
基于已有的研究?jī)?nèi)容,本文提出了一種新型的預(yù)測(cè)模型——基于優(yōu)化的VMD-LSTNet組合預(yù)測(cè)模型,并進(jìn)行了可行性的驗(yàn)證。
1.1.1 變分模態(tài)分解
Zosso等[12]在2014年提出了一種新型信號(hào)處理手段并將其命名為變分模態(tài)分解(Variational Mode Decomposition, VMD)。在針對(duì)非平穩(wěn)信號(hào)的處理方面,VMD分解是一種很好的自適應(yīng)分解手段[13]。VMD分解是通過(guò)特定的手段將原始信號(hào)分解成數(shù)個(gè)帶寬以及中心頻率各不相同的本征模態(tài)函數(shù)(Intrinsic Mode Function, IMF)。與經(jīng)驗(yàn)?zāi)B(tài)分解與集合經(jīng)驗(yàn)?zāi)B(tài)分解相比較,VMD分解的計(jì)算量較小并且可以有效地克服端點(diǎn)效應(yīng)以及分解過(guò)程出現(xiàn)模態(tài)混疊的情況,同時(shí)原始信號(hào)分解成IMF分量的個(gè)數(shù)還可以通過(guò)人為設(shè)置,因此VMD分解的自適應(yīng)性明顯更強(qiáng)[14]。
VMD分解在將原始信號(hào)f分解成k個(gè)不同帶寬和中心頻率的IMF分量uk的同時(shí)需要滿足所有IMF分量的帶寬之和取得的值為最小值。
(1)
式(1)中,f為原始信號(hào);uk為原始信號(hào)分解后的第k個(gè)IMF分量;ωk為原始信號(hào)分解后的第k個(gè)IMF分量的中心頻率;?t為對(duì)式子進(jìn)行求偏導(dǎo)運(yùn)算;*為卷積運(yùn)算;δ(t)為狄拉克分布。
式(1)中的約束變分問(wèn)題在經(jīng)過(guò)引入的拉格朗日乘數(shù)λ和二次懲罰因子α相結(jié)合的方法處理后約束變分問(wèn)題就得以解決的。引入的增廣拉格朗日函數(shù)如下:
(2)
最后采用交替方向乘子算法迭代更新,同時(shí)求取拉格朗日方程的“鞍點(diǎn)”。
(3)
1.1.2 鯨魚(yú)優(yōu)化算法
2016年,Mirjalili等[15]提出了鯨魚(yú)優(yōu)化算法(Whale Optimization Algorithm, WOA),WOA優(yōu)化算法的靈感源自于座頭鯨特殊的捕獵方式——泡泡網(wǎng)覓食法,由此可見(jiàn),WOA優(yōu)化算法是一種模擬座頭鯨捕獵的群體智能優(yōu)化算法。研究人員將座頭鯨的捕獵行為抽象為以下3個(gè)階段。
(1)包圍獵物。
目標(biāo)獵物在搜索空間范圍內(nèi)的位置是不確定的,所以WOA算法是把當(dāng)前的最優(yōu)候選解看作為目標(biāo)獵物或者靠近目標(biāo)獵物的位置,并且把當(dāng)前最優(yōu)候選解的位置作為依據(jù)來(lái)更新目標(biāo)獵物的搜索位置。式子如下:
(4)
式(4)中,A=2ar-a,C=2r皆表示向量,a為收斂因子,r為[0,1]范圍內(nèi)的隨機(jī)數(shù);X*為當(dāng)前獲得的最優(yōu)解的位置向量。
(2)氣泡網(wǎng)攻擊方法。
在氣泡網(wǎng)攻擊方法中包括兩種。第一:可以通過(guò)減小a值的方式來(lái)實(shí)現(xiàn)收縮包圍機(jī)制,由于A的值域?yàn)閇-a,a],且a的值會(huì)從2遞減至0,則A的值域會(huì)逐漸縮小至空集。第二:先計(jì)算位于(X,Y)個(gè)體位置與位于(X*,Y*)獵物之間的距離,在個(gè)體位置和目標(biāo)獵物之間建立一個(gè)螺旋方程式,再模仿座頭鯨螺旋上升運(yùn)動(dòng)狀態(tài)。螺旋方程式如下:
X(t+1)=D′eblcos(2πl(wèi))+X*(t)
(5)
式(5)中,D’為個(gè)體位置到目標(biāo)獵物的距離;b為對(duì)數(shù)螺旋形狀常數(shù);l為[-1,1]內(nèi)的隨機(jī)數(shù)。
(3)搜尋獵物。
當(dāng)∣A∣>1時(shí),表明目標(biāo)獵物在座頭鯨攻擊范圍之外,此時(shí)WOA算法執(zhí)行隨機(jī)搜索策略;當(dāng)∣A∣≤1時(shí),表明目標(biāo)獵物在座頭鯨攻擊范圍之內(nèi),種群轉(zhuǎn)而執(zhí)行攻擊策略,集中收縮攻擊目標(biāo)獵物。
(6)
式(6)中,Xrand為當(dāng)前種群中選擇的隨機(jī)位置向量。
1.1.3 基于WOA算法優(yōu)化的VMD分解
采用VMD分解對(duì)信號(hào)進(jìn)行分解的過(guò)程中,需要人為地設(shè)置IMF分解個(gè)數(shù)、懲罰因子、保真系數(shù)以及收斂條件等參數(shù)[16]。學(xué)者在以往的研究過(guò)程中發(fā)現(xiàn),k以及α兩個(gè)參數(shù)在VMD分解的精度中起著決定性作用[17]。k值設(shè)置偏小,會(huì)導(dǎo)致原始信號(hào)欠分解,造成信息獲取不完整;k值設(shè)置偏大,會(huì)導(dǎo)致分解過(guò)度。α?xí)?duì)IMF分量的帶寬大小產(chǎn)生直接的影響進(jìn)而間接影響對(duì)原始信息的提取。人為設(shè)置k和α工作量大并且很難找到最優(yōu)的數(shù)值,極有可能造成對(duì)原始信號(hào)的欠分解或過(guò)分解的局面。目前大多數(shù)研究學(xué)者一般采用中心頻率觀測(cè)法對(duì)VMD參數(shù)進(jìn)行優(yōu)化,但該方法工作量大、過(guò)程煩瑣并且只能對(duì)k進(jìn)行尋優(yōu)[16]。為此,本文提出采用WOA算法優(yōu)化VMD分解的k和α。
原始信號(hào)的稀疏特性可由包絡(luò)熵來(lái)表示,因此本文的適應(yīng)度函數(shù)選取為包絡(luò)熵局部極小值,使用WOA算法對(duì)VMD分解的k和α進(jìn)行尋優(yōu)。當(dāng)IMF分量噪聲較少,特征信息較多,則包絡(luò)熵值較大,反之,則包絡(luò)熵值較小。式子如下:
(7)
式(7)中,N為采樣點(diǎn)數(shù)個(gè)數(shù);Ep為包絡(luò)熵;a(i)為k個(gè)IMF分量經(jīng)過(guò)Hilbert解調(diào)后的包絡(luò)信號(hào)。
優(yōu)化的VMD分解最佳參數(shù)[k,α]組合的求解步驟如下:
(1)設(shè)置WOA算法的初始種群以及[k,α]組合的取值范圍等基本參數(shù),同時(shí)選取包絡(luò)熵局部最小值作為WOA算法適應(yīng)度函數(shù);
(2)利用VMD對(duì)原始信號(hào)進(jìn)行分解,并通過(guò)式(7)可得到不同參數(shù)組合[k,α]的適應(yīng)度值;
(3)利用WOA算法的優(yōu)化機(jī)制,不斷更新出個(gè)體的位置,同時(shí)對(duì)各個(gè)個(gè)體位置對(duì)應(yīng)的Ep進(jìn)行比較,不斷更新出最小適應(yīng)度的值;
(4)循環(huán)迭代(2)—(4)的步驟,當(dāng)確定了全局最小適應(yīng)度或者達(dá)到了初始設(shè)置的最大迭代次數(shù),就直接輸出得到最佳參數(shù)組合[k,α];
(5)將得到的最優(yōu)參數(shù)組合[k,α]對(duì)VMD分解進(jìn)行參數(shù)設(shè)置,并對(duì)原始信號(hào)進(jìn)行VMD分解。
采用WOA算法對(duì)VMD分解最佳參數(shù)[k,α]尋優(yōu)的環(huán)節(jié)中,設(shè)置種群大小20,迭代次數(shù)為20,k和α的尋優(yōu)范圍分別為[2,30]和[0,2000]。在WOA算法對(duì)VMD分解尋優(yōu)后,最終確定出最優(yōu)參數(shù)組合[k,α]的值為[9,5],最小局部包絡(luò)熵為7.141。最佳適應(yīng)度值曲線如圖1所示。
圖1 最佳適應(yīng)度值曲線
IMF分量的個(gè)數(shù)波動(dòng)范圍較大,最終穩(wěn)定在k=9,K值優(yōu)化曲線如圖2所示。α大體呈現(xiàn)下降趨勢(shì),隨著迭代的進(jìn)行最終在α=5上下微小波動(dòng),懲罰因子α的優(yōu)化曲線如圖3所示。
圖2 IMF分量個(gè)數(shù)優(yōu)化曲線
圖3 懲罰因子的優(yōu)化曲線
LSTNet網(wǎng)絡(luò)主要是由線性和非線性?xún)蓚€(gè)部分共同構(gòu)成,其中非線性部分主要包括卷積層、循環(huán)層以及循環(huán)跳躍層3個(gè)階段[18]。LSTNet網(wǎng)絡(luò)的結(jié)構(gòu)如圖4所示。
圖4 LSTNet網(wǎng)絡(luò)結(jié)構(gòu)
1.2.1 卷積層
LSTNet的第一層是一個(gè)卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks, CNN),但該CNN網(wǎng)絡(luò)不包含池化層,LSTNet網(wǎng)絡(luò)使用由CNN組成的卷積層來(lái)捕獲負(fù)載的短期特征和變量的短期依賴(lài)性,能夠很好地捕獲到電力負(fù)荷數(shù)據(jù)中的時(shí)序信息。
hk=RELU(Wk*X+bk)
(8)
式(8)中,*表示卷積運(yùn)算,輸出hk為向量,RELU函數(shù)為RELU(X)=max(0,X)。筆者通過(guò)輸入矩陣X的左側(cè)填充零來(lái)生成長(zhǎng)度為T(mén)的每個(gè)向量hk。卷積層的輸出矩陣的大小為dc×T,其中dc表示濾波器的個(gè)數(shù)。
1.2.2 循環(huán)層
循環(huán)層和循環(huán)跳躍層的輸入就是卷積層的輸出。循環(huán)部分是帶有門(mén)控循環(huán)神經(jīng)網(wǎng)絡(luò)的循環(huán)層,并使用RELU函數(shù)作為隱藏的更新激活函數(shù)。式子如下:
rt=σ(Wxrxt+Whrht-1+br)
ut=σ(Wxuxt+Whuht-1+bu)
ct=RELU(Wxcxt+rt·(Whcht-1)+bc)
ht=ht-1·(1-ut)+ut·ct
(9)
式(9)中,σ為sigmoid函數(shù),xt為該層在時(shí)間t的輸入,W為相應(yīng)的權(quán)重矩陣,h為相應(yīng)時(shí)刻的輸入。這個(gè)層的輸出是每個(gè)時(shí)間戳的隱藏狀態(tài)。盡管研究人員習(xí)慣于使用隱藏的更新激活函數(shù),RELU具有更可靠的性能,通過(guò)這種方式,梯度更容易反向傳播。
1.2.3 循環(huán)跳躍層
帶有GRU和LSTM單元的循環(huán)層經(jīng)過(guò)精心設(shè)計(jì),用于記憶歷史信息,因此記憶到相對(duì)長(zhǎng)期的依賴(lài)關(guān)系。然而,由于梯度消失,GRU和LSTM在實(shí)際應(yīng)用中通常不能捕獲很長(zhǎng)時(shí)間的相關(guān)性,循環(huán)跳躍層能夠很好地緩解這個(gè)問(wèn)題。
rt=σ(Wxrxt+Whrht-p+br)
ut=σ(Wxuxt+Whuht-p+bu)
ct=RELU(Wxcxt+rt·(Whcht-p)+bc)
ht=ht-1·(1-up)+ut·ct
(10)
式(10)中,p為跳過(guò)的隱藏單元個(gè)數(shù)。
1.2.4 AR層
由于卷積層和循環(huán)層的非線性性質(zhì)造成對(duì)輸入的規(guī)模不敏感,自適應(yīng)回歸部分組成的自回歸模型解決了神經(jīng)網(wǎng)絡(luò)模型的尺度不敏感問(wèn)題,同時(shí)還提高了模型的魯棒性。
(11)
最終的預(yù)測(cè)結(jié)果由線性和非線性?xún)蓚€(gè)部分加權(quán)共同構(gòu)成。結(jié)果如下式所示:
(12)
經(jīng)過(guò)WOA算法優(yōu)化的VMD-LSTNet的電力負(fù)荷預(yù)測(cè)模型步驟分為以下4步,模型預(yù)測(cè)流程如圖5所示。
圖5 模型預(yù)測(cè)流程
(1)結(jié)合原始數(shù)據(jù),采用WOA算法對(duì)VMD分解的k以及α尋優(yōu),尋找出最優(yōu)的IMF分量k值以及α。
(2)將在WOA算法中確定的最優(yōu)參數(shù)組合k值和α值代到VMD分解。
(3)對(duì)分解得到IMF分量分別構(gòu)建LSTNet模型,初始化LSTNet模型參數(shù),采用Adam優(yōu)化策略,對(duì)該模型進(jìn)行優(yōu)化以提高對(duì)各IMF分量預(yù)測(cè)的精度。
(4)運(yùn)用訓(xùn)練好的模型對(duì)各IMF分量單獨(dú)進(jìn)行負(fù)荷預(yù)測(cè),得到各IMF分量的預(yù)測(cè)值,最后對(duì)各IMF預(yù)測(cè)值疊加重構(gòu)得到最終對(duì)的預(yù)測(cè)值。
本文選用了均值絕對(duì)誤差(MAE)、平均絕對(duì)百分比誤差(MAPE)及均方根誤差(RMSE)作為評(píng)價(jià)實(shí)驗(yàn)預(yù)測(cè)結(jié)果的指標(biāo)[19]。這些性能評(píng)價(jià)指標(biāo)的數(shù)值越低,表明該模型的預(yù)測(cè)精度越精準(zhǔn)。性能評(píng)價(jià)指標(biāo)的公式如下:
(13)
式(13)中,hp,hi分別表示在時(shí)間t=i的預(yù)測(cè)值和實(shí)際值。
本文選取某地公開(kāi)數(shù)據(jù)集2006—2010年電力負(fù)荷預(yù)測(cè)數(shù)據(jù),每隔30 min提取一次負(fù)荷數(shù)據(jù)信息,共計(jì)87 648組數(shù)據(jù),如圖6所示。選取原始數(shù)據(jù)的前87 311組數(shù)據(jù)作為訓(xùn)練集,選取原始數(shù)據(jù)的后337組數(shù)據(jù)作為測(cè)試集。
圖6 電力負(fù)荷原始數(shù)據(jù)時(shí)序
在對(duì)使用VMD分解對(duì)原始數(shù)據(jù)進(jìn)行分解時(shí),采用經(jīng)過(guò)WOA算法尋優(yōu)確定出的最優(yōu)參數(shù)組合[k,α]設(shè)置VMD分解參數(shù),IMF分量k=9,懲罰因子α=5,其余的參數(shù)均設(shè)置為默認(rèn)值。具體分解效果如圖7所示,由圖可知,IMF1在這些分量中占比最大。
圖7 VMD分解結(jié)果
3.3.1 實(shí)驗(yàn)結(jié)果分析
在LSTNet網(wǎng)絡(luò)中將Adam作為優(yōu)化器、MSE作為損失函數(shù)進(jìn)行仿真預(yù)測(cè),并且設(shè)置lstm-batch-size=64,epochs=30。在確定優(yōu)化后的VMD-LSTNet預(yù)測(cè)模型的各個(gè)參數(shù)之后,首先使用該預(yù)測(cè)模型對(duì)VMD分解得到的各個(gè)IMF分量進(jìn)行單獨(dú)預(yù)測(cè),就可以得到每個(gè)IMF分量的預(yù)測(cè)值,然后將各個(gè)IMF分量的預(yù)測(cè)值疊加作為該預(yù)測(cè)模型的最終預(yù)測(cè)結(jié)果。
本文將每個(gè)IMF分量單獨(dú)預(yù)測(cè)得到的預(yù)測(cè)值進(jìn)行疊加重構(gòu)獲得最終的預(yù)測(cè)值,然后將預(yù)測(cè)值與原始數(shù)據(jù)通過(guò)性能評(píng)價(jià)指標(biāo)公式得出性能指標(biāo)的大小。顯而易見(jiàn),經(jīng)過(guò)優(yōu)化的VMD-LSTNet預(yù)測(cè)模型的預(yù)測(cè)精度有很大的提高,能夠更為準(zhǔn)確地進(jìn)行負(fù)荷預(yù)測(cè),是進(jìn)行電力負(fù)荷預(yù)測(cè)的一個(gè)不錯(cuò)的模型選擇。重構(gòu)后的預(yù)測(cè)值與原始數(shù)據(jù)對(duì)比曲線如圖8所示。
圖8 優(yōu)化的VMD-LSTNet模型預(yù)測(cè)
3.3.2 對(duì)比實(shí)驗(yàn)
為了驗(yàn)證本文選用的方法可行性,將本文經(jīng)過(guò)WOA算法優(yōu)化的VMD-LSTNet方法與基于LSTNet以及VMD-LSTM,VMD-CNN-LSTM多種模型進(jìn)行對(duì)比實(shí)驗(yàn)。選用RMSE,MAE和MAPE對(duì)這些模型進(jìn)行評(píng)價(jià),各個(gè)預(yù)測(cè)模型預(yù)測(cè)結(jié)果對(duì)比如圖9所示。
圖9 各模型預(yù)測(cè)結(jié)果
相較于VMD-LSTM和VMD-CNN-LSTM兩種模型,經(jīng)過(guò)WOA算法優(yōu)化的VMD-LSTNet預(yù)測(cè)模型在MAE,MAPE和RMSE3個(gè)性能指標(biāo)上都有很大程度上的降低;相較于LSTNet模型,經(jīng)過(guò)WOA算法優(yōu)化的VMD-LSTNet模型在MAE降低了30.788 3,MAPE降低了0.457 6%,RMSE降低了45.969 1。性能評(píng)價(jià)指標(biāo)如表1所示。
表1 不同模型性能評(píng)價(jià)標(biāo)準(zhǔn)對(duì)比
為了解決電力負(fù)荷預(yù)測(cè)精度低的問(wèn)題,本文提出了使用WOA來(lái)優(yōu)化VMD的分解模態(tài)數(shù)及懲罰因子兩個(gè)參數(shù),采用LSTNet神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型對(duì)電力負(fù)荷數(shù)據(jù)進(jìn)行預(yù)測(cè),同時(shí)將本文所提模型與其他模型進(jìn)行了對(duì)比實(shí)驗(yàn)。得出如下結(jié)論。
(1)通過(guò)WOA來(lái)優(yōu)化VMD的參數(shù),相對(duì)于人為設(shè)置參數(shù),可以更好地得到高度相關(guān)的時(shí)序子序列,提高了負(fù)荷數(shù)據(jù)的質(zhì)量,在一定程度上避免了由數(shù)據(jù)問(wèn)題導(dǎo)致的預(yù)測(cè)精度低的問(wèn)題。
(2)本文所提出的預(yù)測(cè)模型由線性、非線性?xún)刹糠止餐瑯?gòu)成,能夠有效地捕獲電力負(fù)荷數(shù)據(jù)短、中期的信息,以此保證了電力負(fù)荷預(yù)測(cè)的精準(zhǔn)度,預(yù)測(cè)結(jié)果顯示該模型的MAE為18.013 4,MAPE為0.243 1%,RMSE為21.524 3。
(3)本文所提出的預(yù)測(cè)模型為電廠等的日常工作安排及中、長(zhǎng)期規(guī)劃提供了科學(xué)理論依據(jù),符合國(guó)家可持續(xù)發(fā)展戰(zhàn)略,具有深遠(yuǎn)的意義。
但本文所提方法未考慮到多特征變量輸入,可將這些因素負(fù)荷的影響考慮到未來(lái)的電力負(fù)荷預(yù)測(cè)模型研究中,進(jìn)一步提高電力負(fù)荷預(yù)測(cè)的準(zhǔn)確率。