紀嚴杰, 樊重俊
(上海理工大學管理學院, 上海 200093)
從供給側角度來看, 能夠提前知道未來一段時間內(nèi)的電力供給情況, 能夠幫助企業(yè)制定更合理的生產(chǎn)計劃, 減少不必要的損失。 目前,短期電力負荷預測模型大體上可以分為3 類。 其中, 統(tǒng)計分析模型, 如多元回歸和自回歸移動平均模型(ARIMA)等。 Amber 等學者[1]利用多元回歸(MR)模型預測了倫敦某大學的日用電量。 李晨熙[2]采用基于ARIMA 模型對短期電力負荷數(shù)據(jù)進行預測,但是ARIMA 模型一般只能處理線性關系, 對于非線性關系來說則運行效果欠佳。 Amaral 等學者[3]使用平穩(wěn)過渡周期自回歸(STPAR)模型來對短期負荷進行預測,其本質(zhì)上涉及到與非周期自回歸模型相同的過程。 Mbamalu 等學者(1993)[4]提出了在負荷預測中考慮季節(jié)性因素的乘法自回歸模型。淺機器學習, 如灰色預測方法、支持向量機回歸(SVR)、隨機森林、集成學習等。 Zhou 等學者[5]將傳統(tǒng)灰色GM(1,1) 模型與三角殘差修正技術相結合, 提出了一種電力需求預測的三角灰色預測方法。 該方法提高了GM(1,1) 的預測精度, 獲得了合理的灰色預測區(qū)間。 王鑫[6]將支持向量機多個核函數(shù)進行加權處理, 得到一個新的核函數(shù), 使其能夠具有不同核函數(shù)的特性, 并將其用于短期電力負荷預測中。 游文霞等學者[7]提出了基于AdaBoost的集成學習算法, 該模型考慮了時間、溫度和歷史負荷等特征并選擇CART 決策樹作為模型的基學習器; 然后,通過AdaBoost 算法訓練各CART 決策樹基學習器并計算各個基學習器的權重。 深度學習模型, 如反向傳播神經(jīng)網(wǎng)絡(BPNN)、遞歸神經(jīng)網(wǎng)絡(RNN)、長短期記憶(LSTM)網(wǎng)絡等。 易丹等學者[8]基于BP 神經(jīng)網(wǎng)絡搭建了一個3 層的神經(jīng)網(wǎng)絡模型,來進行電力負荷的預測, 由于BP 算法中的初始權值和閾值等是手動輸入的, 選取不當可能會導致預測精度差和出現(xiàn)不收斂的情況。 進一步地,Li等學者[9]采用果蠅優(yōu)化算法優(yōu)化BP 神經(jīng)網(wǎng)絡的權值和閾值進行預測, 來提高預測的精度。 Zheng 等學者[10]提出了一種基于測量的遞歸神經(jīng)網(wǎng)絡(RNN)方法來構建主動配電系統(tǒng)的精確當量, 然而RNN 在處理長時間序列時候,難免會出現(xiàn)梯度爆炸并消失。 LSTM 可以通過門控單元來避免梯度爆炸, Muzaffar 等學者[11]將LSTM 用于短期電力負荷預測, 但LSTM 中隱藏層神經(jīng)元個數(shù)、學習率等需要通過手動輸入, 這在一定程度上會影響網(wǎng)絡的預測精度。 基于此,本文提出了一種改進的樽海鞘群算法優(yōu)化LSTM 參數(shù), 使其能夠更好地進行電力負荷預測。
小波分析能夠分析信號在頻域上的差異,這是傅里葉變換迄今為止仍無法解決的問題,但是小波分析對于非平穩(wěn)信號不是很有效。 小波分析的重要應用之一就是信號降噪[12], 其中的小波變換可以利用時域和頻域的信號與噪聲差異來區(qū)分信息和噪聲。 小波變換既保留了Gabor 變換的局部化思想,又具有窗口形狀可滑動的特點。 因此, 小波分析可以更好地處理時變非平穩(wěn)信號。 小波降噪(Wavelet Domain Denoising)流程具體如下:
(1) 信號的小波分解。 選擇合適的正交小波基并確定分解層數(shù),隨后進行小波變換。
(2) 閾值選擇。 對分解后所得到的高頻小波系數(shù)進行閾值處理, 同時選擇合適的閾值,選擇滿足信號規(guī)律的小波系數(shù),同時刪除不符合要求的小波系數(shù)。
(3) 小波重建。 根據(jù)小波分解后的最后一層的低頻系數(shù)和經(jīng)過閾值處理后的每一層高頻系數(shù)來對信號進行小波重構。
(4) 評價效果。一般選擇信噪比(SNR) 和均方根誤差(RMSE),盡量選擇SNR大、且RMSE小的小波變換函數(shù)。
樽海鞘群算法(Salp Swarm Algorithm, SSA)是Mirjalili 等學者[13]于2017 年受海洋中微生物—樽海鞘聚集成鏈的生活習性而提出的算法。 算法將群體分為領導者和跟隨者, 領導者以全局最優(yōu)為中心進行搜索, 為算法提供了全局搜索能力, 保證種群收斂, 跟隨者跟隨自己的前一個個體, 為算法提供局部搜索能力, 來保證算法的精度。 樽海鞘算法的模型簡單, 更新過程清晰, 同時尋優(yōu)也有不錯的效果, 但是算法后期欠缺跳出局部最優(yōu)的情況。
在該算法中, 每個樽海鞘個體的位置表示成一個d維的向量,則N個樽海鞘就形成了樽海鞘鏈。這個鏈就是一個種群,因此該樽海鞘種群就可以用N×d的矩陣進行描述:
第i個樽海鞘個體的位置表示如下:
在SSA 中, 種群在捕食或者向食物源移動時,領導者的位置更新策略如下:
其中,為第1 個樽海鞘群領導者在第j維空間中位置;Fj為食物源在第j維空間的位置;uj和lj分別為第j維空間的上界和下界; 參數(shù)c2和c3都為區(qū)間[0,1] 范圍內(nèi)的隨機數(shù), 參數(shù)c2決定的是領導者移動的長度, 參數(shù)c3決定的是領導者移動的方向; 參數(shù)c1是一個重要參數(shù),主要控制著整個樽海鞘群體的探索和開發(fā)能力。 該參數(shù)受當前樽海鞘種群的迭代次數(shù)的影響, 其表達式如下:
其中,t為當前樽海鞘種群的迭代次數(shù);Tmax為樽海鞘種群的最大迭代次數(shù)。 追隨者的位置更新公式如下:
其中,(t) 為經(jīng)過第t次迭代時, 第i個樽海鞘追隨者在第j維空間的位置。 算法流程如下:
(1) 初始化種群。 根據(jù)上界與下界, 利用式(1)初始化一個N×d的樽海鞘種群。
(2)計算初始適應度。 計算N個樽海鞘的適應度值。
(3)選定食物。 將樽海鞘群根據(jù)適應度值的大小排序, 放在首位的位置設定為當前食物源的位置。
(4)選定領導者與追隨者。 選定食物位置后,群體中剩余N -1 個樽海鞘, 將排在前一半的樽海鞘視為領導者, 后一半為追隨者。
(5) 位置更新。 根據(jù)領導者及跟隨者的位置公式更新位置。
(6) 計算適應度。 計算更新后的群體的適應度。將更新后的每個樽海鞘個體的適應度值與當前食物的適應度值進行比較,以重新決定食物源的位置。
(7) 重復步驟(4)~(6), 直至達到一定迭代次數(shù)或適應度值達到要求后, 輸出當前的食物位置作為目標的估計位置。
1.3.1 混沌初始化種群
偽隨機數(shù)生成器是目前大部分群體智能算法生成初始種群的方法, 能夠覆蓋到搜索空間中有希望的區(qū)域。 混沌數(shù)生成器是基于混沌技術的隨機數(shù)生成器,混沌映射[14]可以用于替代偽隨機數(shù)生成器,生成[0,1]之間的混沌數(shù)。 利用混沌序列進行種群初始化會影響算法的整個過程, 初始種群的全局覆蓋能力更強, 搜索能力更好,并且能夠取得比偽隨機數(shù)初始化更好的效果。 本文采用最常見的混沌映射方法, Cubic 混沌映射來初始化種群, 其數(shù)學表達式如下:
其中,ρ為控制參數(shù), 且當ρ=2.595 時生成的混沌變量具有更好的遍歷性。
1.3.2 Levy 飛行策略
Levy 飛行[15]使用的是高頻短距離的局部搜索結合低頻長距的全局搜索的非高斯隨機過程, 因此能夠增強局部搜索的能力,而低頻長距的跳躍式搜索則有利于擴大種群的搜索范圍, 使算法很容易跳出局部最優(yōu)的狀況。 Levy 飛行策略的公式如下:
其中,μ=0.01;ω為0 到1 之間的隨機數(shù)(rand);σ的計算公式如下:
其中,Γ(x)=(x- 1)!,β取1.5。
1.3.3 引入Levy 飛行策略的樽海鞘群優(yōu)化算法LSSA
將Levy 飛行策略加入到樽海鞘群優(yōu)化算法的領導者及跟隨者的位置更新策略中, 改進后的領導者位置更新公式為:
跟隨者的位置更新公式為:
其中,(t -1) 表示第t -1 次位置更新過程中的適應度值最好的位置維度j。 這樣能夠讓追隨者更快地向最優(yōu)食物源的位置靠近, 不會只依賴前一個位置進行更新, 從而使算法更快地收斂。 同時,也彌補了原來算法中容易陷入局部最優(yōu)的不足,避免了這一情況的出現(xiàn)。
1.3.4 CLSSA 算法性能測試
為了測試改進后的樽海鞘群優(yōu)化算法(CLSSA)、 本文對比分析了樽海鞘群算法(SSA)、粒子群算法(PSO)、螢火蟲算法(FA)、CLSSA 的局部與全局搜索能力以及算法的迭代速度,分別選取了3 個單峰函數(shù)及3 個多峰函數(shù)。 算法的種群規(guī)模為50, 迭代次數(shù)為200, 維度為20, 分別獨立運行30 次記錄并以適應度值最優(yōu)為選取標準(無限接近理論值)。 測試基準函數(shù)見表1, 不同算法在基準函數(shù)中測試結果對比如圖1 所示。
圖1 不同算法在基準函數(shù)中測試結果對比Fig. 1 Different algorithms test results comparison in the benchmark function
表1 基準函數(shù)Tab. 1 Benchmark functions
圖1 中,(a)~(f)分別對應了6 個基準函數(shù),從圖1(a)~圖1(c)可知,在單峰函數(shù)f1(x) 和f2(x)中,CLSSA 雖然沒有部分算法收斂速度快,但是尋優(yōu)的精度卻比其他算法更好, 更能接近適應度函數(shù)的理論值。 其中, 無論是迭代速度、還是尋優(yōu)精度,CLSSA 相較于其他算法表現(xiàn)都是很好的, 能夠很快地跳出局部最優(yōu)的情況。 從圖1(d)~圖1(f)中可知, 在多峰函數(shù)中, CLSSA 在保證搜索精度的情況下, 適應度值都小于其他算法, 收斂速度都有很不錯的表現(xiàn)。 綜上所述, CLSSA 相對于其他算法來說,CLSSA 不僅能夠更好地跳出局部最優(yōu)解的情況, 同時全局搜索的能力也不錯, 適應度值最小, 表明了CLSSA 的穩(wěn)定性和魯棒性要明顯優(yōu)于其他算法。
1.3.5 LSTM 模型
LSTM(Long Short Term Memory)是具有長短期記憶的神經(jīng)網(wǎng)絡。 LSTM 的提出旨在解決RNN 在訓練過程中存在的長期依賴問題, 避免出現(xiàn)梯度消失和梯度爆炸。 這是因為LSTM 引入了門控機制來控制特征的流通和損失。 LSTM 的細胞單元結構如圖2 所示。
圖2 LSTM 細胞段元結構Fig. 2 LSTM cell segment element structure
由圖2 可看到,LSTM 細胞單元結構中各參數(shù)的求解方法依次見下式:
其中,σ為激活函數(shù);W和b為參數(shù)矩陣;xt表示當前t時刻的輸入;ft表示遺忘門, 決定了前一時刻的單元狀態(tài)ct-1可以有多少信息能夠保留到當前時刻;it表示輸入門, 決定了當前時刻網(wǎng)絡的輸入xt保存到單元狀態(tài)ct; ~ct用于描述當前輸入的單元狀態(tài), 來記憶單元的臨時狀態(tài);ct表示當前時刻的單元狀態(tài); 輸出門控制單元狀態(tài)ct有多少輸出到當前的輸出值ht。LSTM共有2 個輸出, 分別是當前狀態(tài)的輸出ot,以及下一時刻的隱層狀態(tài)ht。
1.3.6 WDD-CLSSA-LSTM 預測模型
研究給出的模型流程如圖3 所示。
圖3 WNR-CLSSA-LSTM 流程圖Fig. 3 WNR-CLSSA-LSTM flowchart
選取了巴拿馬電力數(shù)據(jù)集來進行電力負荷預測, 該數(shù)據(jù)集由2015 年1 月到2020 年6 月每隔1 h 采集記錄的數(shù)據(jù)構成。 數(shù)據(jù)集的列名描述見表2。
表2 數(shù)據(jù)集描述Tab. 2 Data set description
選取2019 年前11 個月的數(shù)據(jù)作為訓練集, 預測12 月的用電負荷。 其中,用電負荷Demand為研究所需要預測的目標值, 其余的為特征向量。
基于上面介紹的小波降噪的流程, 小波基采用sym10、coif5 和db8, 層數(shù)為3, 閾值選用啟發(fā)式閾值和固定閾值來進行軟、硬閾值函數(shù)的對比。 對比結果見表3。
表3 不同閾值函數(shù)及小波基結果對比Tab. 3 Different threshold functions and wavelet bases results comparison
由于啟發(fā)式閾值硬閾值函數(shù)的SNR和RMSE最優(yōu), 本文采取coif5 小波基、 啟發(fā)式閾值及硬閾值函數(shù)來對數(shù)據(jù)進行降噪處理。
歸一化處理, 將所有數(shù)據(jù)映射到0 到1 之間,其公式為:
本文選取3 種評價指標, 分別闡釋如下。
(1) 平均絕對誤差。 值越接近0, 得到的模型越準確。 可由如下公式計算得到:
2) 均方根誤差(Root Mean Square Error,RMSE)。 數(shù)值越低, 表示模型越穩(wěn)定。 可由如下公式計算得到:
3)R2。 用來衡量回歸模型的擬合程度。 可由如下公式計算得到:
將所提出的CLSSA_LSTM 模型與不同算法優(yōu)化的 LSTM、 SSA _ LSTM、 GA _ LSTM[16]、 PSO _LSTM[17]以及單一的LSTM 做對比, 選取RMSE,MAPE以及R2評價模型的預測性能。
其中,LSTM 的參數(shù)設置如下, 隱藏層包括2 個LSTM 層、2 個Dense 層,最后則為輸出層, 神經(jīng)元數(shù)量為1,droupout比率為0.1,batchsize為256, 時間步長為48, 記錄2 天的數(shù)據(jù), 單一LSTM 模型的學習率為0.01。 利用算法尋優(yōu)迭代次數(shù)、 LSTM 層與Dense 層的神經(jīng)元數(shù)量以及學習率四個參數(shù)。
各參數(shù)的尋優(yōu)范圍見表4。
表4 參數(shù)尋優(yōu)范圍Tab. 4 Parameters optimization range
算法的種群規(guī)模都為20, 迭代次數(shù)為50 次,PSO 的慣性因子w為0.5, 學習因子c1=2,c2=2,GA 的交叉概率為0.8, 變異概率為0.1, 優(yōu)化后的預測模型的評價指標見表5。
表5 不同算法優(yōu)化LSTM 的結果Tab. 5 The results of LSTM optimized by different algorithms
為了更直觀顯示預測結果的誤差, 繪制出了各模型評價指標的垂直直方圖、水平直方圖和雷達圖,如圖4~圖6 所示。
圖4 不同算法優(yōu)化LSTM 的R2 對比Fig. 4 R2 comparison of LSTM optimized by different algorithms
圖5 不同算法優(yōu)化LSTM 的MAPE 對比Fig. 5 MAPG comparison of LSTM optimized by different algorithms
圖6 不同算法優(yōu)化LSTM 的RMSE 對比Fig. 6 RMSE comparison of LSTM optimized by different algorithms
從圖4~圖6 的結果可知, LSTM 的訓練擬合度R2為0. 866 3,MAPE為55. 224 3,RMSE為67.427 7,訓練的精度為對比模型中最差的, 其次是SSA-LSTM、GA-LSTM 和PSO-LSTM, 這3 個模型的擬合度在訓練時, 擬合度R2的均值都在0.93 左右, 模型預測的效果相差不大; CLSSA-LSTM 模型的結果為最優(yōu), 其擬合度最高并且訓練集上的誤差最小、為33.066 7,擬合度值R2達到了0.967 9, 是對比模型中表現(xiàn)最好的。 CLSSA-LSTM 模型的預測效果比單一LSTM 模型提高了12.71%,比其他3 個對比模型高出4.07%左右, 這也說明了相比于其他算法, CLSSA 能有效地選擇最佳的參數(shù)。 各模型的預測對比如圖7 所示。
圖7 不同模型的預測對比圖Fig. 7 Prediction comparison chart of different models
截取圖7 中第550~650 條數(shù)據(jù)進行分析,分析結果如圖8 所示。
圖8 不同算法優(yōu)化LSTM 預測結果在550~650 條數(shù)據(jù)對比圖Fig. 8 Prediction results comparison chart from 550 to 650 data optimized by different algorithms
由圖8 中可以看到, 紅色線條的CLSSA-LSTM擬合的曲線與真實值曲線最為接近, 特別是在一些端點處, CLSSA-LSTM 模型的擬合值比其他模型更貼近真實值, 這樣就能為電力負荷預測出最好的結果,同時在某些特定情況下也能滿足正常的電力需求,對電力公司運行和管理的供需平衡發(fā)揮重要作用。
接著,分別將CLSSA-LSTM 預測模型和不同的預測模型PSO-SVR[18]、GA-BP[19]做對比, 其中SVR 的參數(shù)采用rbf 核函數(shù), 利用粒子群優(yōu)化算法PSO 優(yōu)化gamma值以及懲罰項系數(shù)C, BP 采用3層結構, 輸入層節(jié)點數(shù)為10, 輸出層為1, 中間隱藏層的節(jié)點數(shù)根據(jù)經(jīng)驗公式計算得到5, 利用遺傳算法GA 優(yōu)化初始的權值和閾值。 同樣地,截取第550~650 條數(shù)據(jù)進行對比分析, 對比結果見表6,不同預測模型在550~650 條數(shù)據(jù)對比如圖9 所示。
圖9 不同預測模型在550~650 條數(shù)據(jù)對比圖Fig. 9 Comparison chart from 550 to 650 data of different prediction models
表6 不同預測模型的結果對比Tab. 6 Comparison of results of different prediction models
從圖9 中可以看出, PSO-SVR 的擬合效果最差,R2值為0.881 2,RMSE 為63.557 8;其次是GABP,R2值為0.926 8,RMSE為50.343 7, CLSSALSTM 的預測精度比PSO-SVR 提高了9.830 8%,比GA-BP 提高了4.429 3%,有著不錯的預測效果,這也驗證了該模型的預測準確性。
為了更有效地預測短期電力負荷, 本文提出了一種基于小波降噪和CLSSA-LSTM 的混合深度學習方法。 研究過程中, 使用小波降噪來為數(shù)據(jù)進行降噪處理, 并利用混沌初始化策略和引入Levy 飛行策略以及引入新的跟著隨者的更新公式改進了標準樽海鞘群算法(SSA)。 隨后將其用于LSTM 的參數(shù)優(yōu)化, 從6 而得到具有最佳參數(shù)的LSTM 負荷預測模型。 采用6 個基準函數(shù)來對比PSO、FA、SSA、CLSSA 的模型效果, 用于驗證算法的尋優(yōu)速度和精度, 構建了不同算法優(yōu)化LSTM、PSO-LSTM、GALSTM、SSA-LSTM 和CLSSA-LSTM 以及與單一LSTM 五個比較模型, 驗證了WNR-CLSSA-LSTM模型的負荷預測效果。 同時,也對比了不同預測模型GA-BP、PSO-SVR 的預測效果。 結果表明:
(1)CLSSA 算法對比其他算法有著較好的尋優(yōu)速度和尋優(yōu)精度。
(2)CLSSA 優(yōu)化的LSTM 對比其他算法優(yōu)化的LSTM 擁有更好的擬合度R2以及最小的RMSE和MAPE。
(3)CLSSA-LSTM 模型對比不同的預測模型表現(xiàn)出更好的預測效果, 該模型具有較強的預測能力, 因此能夠?qū)﹄娏ω摵蓴?shù)據(jù)進行有效預測。