武國良,祖光鑫,楊志軍,秦立志
(1.國網黑龍江省電力有限公司電力科學研究院,哈爾濱150030;2.國網黑龍江省電力有限公司黑河供電公司,黑龍江 黑河164300;3.國網黑龍江省電力有限公司哈爾濱供電公司,哈爾濱 150070)
準確的負荷預測對電力系統規劃和運行具有重要作用,例如制定機組發電計劃和維護計劃,以及確定適當的旋轉備用。隨著智能電網的發展以及分布式可再生能源和電力電子設備的集成,負荷行為越來越復雜,給負荷預測帶來了巨大的挑戰[1-2]。
負荷預測可分為長期、中期和短期預測。中長期負荷預測范圍從幾周到幾年不等,它們主要用于長期規劃和季節性需求分析。相比之下,短期負荷預測(short-term load forecasting,STLF)是電網日常運行的重要組成部分,其范圍從幾分鐘到一周不等。短期負荷具有周期性特征,其變化受到許多因素的影響,例如溫度變化和設備老化。這些因素帶來嚴重的不確定性和非周期效應,導致預測準確性下降,在單個負荷的情況下尤為嚴重。為了減輕STLF過程中的不確定性,國內外已經進行了許多研究工作。目前的研究方法主要可以分為兩類:一類為基于統計分析的方法,如多變量線性回歸(multivariable linear regression,MLR)、時間系列分析方法[3]、指數平滑[4];另一類為基于機器學習算法的方法,如神經網絡[5]和支持向量回歸(support vector regression,SVR)[6]。
在基于統計分析的方法中,MLR運算速度很快。但是,這些方法對存在很大不確定性的情況沒有良好的預測能力。相比之下,機器學習算法(如SVR)具有良好的信息概括能力,能夠快速獲得全局解,但SVR大型數據集的可擴展性有限。為了解決這個問題,學者提出了具有強大的多變量制圖能力的神經網絡算法。但由于時間系列的內部影響沒有得到適當的考慮,傳統的反傳播神經網絡(back-propagation neural network,BPNN)很容易陷入局部最佳解決方案。為了解決這個問題,文獻[7]、[8]引入了循環神經網絡(recurrent neural network,RNN),該網絡能夠通過隱藏層之間的自連接來考慮時間系列特征。但RNN的梯度爆炸問題限制了其適用性。受Greff等人的啟發[9],通過向RNN中添加一個特殊的單位結構,實現了長短期記憶人工(long short-term memory,LSTM)神經網絡,解決了此問題[10]。
盡管機器學習算法比基于統計分析的算法具有一些優點,并且被廣泛使用,但其難以建立適當的超參數,且大型數據集的計算速度很慢。相比之下,對于比較簡單的數據集,時間系列分析可以快速、準確計算。實際負荷的行為通常是非靜止的,具有強隨機分量[11]。因此,如果僅使用基于機器學習的算法進行負荷預測,計算量可能過大;而如果只使用基于統計分析的方法,則無法考慮比較復雜的負荷數據,從而降低預測精度。為了解決這個問題,提出了一種基于分解的混合預測方法,它結合了時間系列和機器學習算法的優點。時間系列數據最常見的分解方法是小波變換、經驗模態分解(empirical-mode decomposition,EMD)[12]。小波變換對非靜止序列的分解結果在很大程度上取決于基礎函數和順序的選擇,難以針對實際預測過程進行調整。STL適用于本身具有良好季節性周期的數據,但是實際負荷數據具有很強的隨機性,因此實際負荷數據難以滿足STL的要求。與小波變換和STL相比,EMD分解適應性更強,非常適合處理非線性和非靜止時間系列。因此,采用基于EMD的方法分解電負荷。
混合ELM方法的結構如圖1所示。其中,ELM 是 EMD-LSTM-MLR 的縮寫。它包括4個主要部分:通過 EMD 分解負荷、通過 MLR 預測低頻負荷、通過 LSTM 預測高頻負荷,以及通過疊加獲得最終的預測數據。

圖1 ELM結構框圖
以過零率是否大于0.01 區分高頻和低頻部分。選擇適當的過零率閾值以確保 MLR 算法的有效性。對于一些高頻部分,MLR 的迭代預測結果可能會發散,而LSTM神經網絡不會。由于中頻部分的劃分對總體預測結果影響不大。因此,根據多次經驗,選擇過零率為0.01,可以有效地劃分高、低頻部分。過零率ρz的計算:
(1)
式中:ρz為過零率;nz為零交叉數;N為信號長度。
電力負荷受多種復雜因素影響,因而具有不穩定的特性。因此,傳統方法難以預測電力負荷。為了解決這個問題,采用 EMD 方法[13-14]分解負荷數據。EMD 是典型的自適應數據處理工具之一,可根據自身的時間尺度特征分解信號。它將信號分解成不同的固有模態函數(intrinsic-mode functions,IMF),頻率從高到低不等。低頻部分表示負荷整體的周期趨勢,而高頻部分表示局部特征和噪聲的較強隨機性。每個IMF都包含不同時間尺度信號的局部特征。使用 EMD 將數據分解為多個 IMF,如式(2)所示。
(2)
式中:s(n)表示第n個采樣周期的電氣負荷;c(n)表示第i個不同的負荷部分;r(n) 表示剩余部分;M表示不同負荷部分的個數。
具體步驟如下:
1)使用三次樣條插值函數查找電氣負荷數據的所有極值點s(n)、上下包絡曲線emax(n)和emin(n),并計算均值m(n):
(3)
2)用s(n)減去m(n),差值記為d(n):
d(n)=s(n)-m(n)
(4)
3)通過d(n)計算標準偏差DS:
(5)
4)當DS值小于預定值σ(一般取0.2~0.3)時,獲得第i個IMF,即使ci(n)=d(n),其中i=1,2,3,…,M,M表示IMF的總數[18]。若DS不滿足條件,則以d(n)為輸入信號,返回到第 1 步繼續計算,直到DS在多輪后低于σ。
5)令s(n)=s(n)-ci(n)。如果得到的s(n)是單調函數,或者當s(n)或ci(n)小于等于給定值時,則令剩余部分r(n)=s(n),并停止迭代;否則,將s(n)作為輸入返回到第 1 步進行下一次迭代,以計算下一個ci+1(n)。通過計算,初始s(n)最終可以分解為以下IMF:c1(n),c2(n),…,cM(n),以及r(n)。
通過 EMD方法分解后,得到平滑且周期性的低頻分量。對于此類信號,可以通過MLR 完成負荷預測。MLR是一種傳統的統計分析方法,具有執行速度快的優點,對于比較簡單的數據集有良好的準確性[15]。與神經網絡和SVR相比,MLR的訓練過程速度具有明顯的優勢。它類似于使用線性函數作為激活功能的神經網絡,但它不需要繁瑣的迭代訓練過程和參數調整。因此,對于平滑的低頻負載組件,MLR比其他方法更合適。其數學模型可表示如下:
Y=X×β+μ
(6)
(7)
式中:yi表示負荷數據;xij表示影響負荷的因素;β0是常數;βi是回歸系數;μi表示隨機擾動;其中i= 1,2,…,n。
對于強隨機性的高頻負荷分量,通過 LSTM 神經網絡進行負荷預測。與傳統的神經網絡相比,LSTM不需要處理下一時刻的信息,只需要處理當前時刻的信息。BPNN的基本步驟包括每個神經元的輸出計算、向后一個神經元輸出的誤差評估,以及通過優化算法減少誤差。值得注意的是,對于時間序列負荷數據,如果忽略負荷的時間相關性,則預測的準確性會降低。因此,為了提高負荷預測準確性,該文采用考慮到時間序列時間相關性的 LSTM。
與傳統 RNN 相比,LSTM引入了細胞狀態c的概念,以考慮隱藏在長期狀態中的時間相關性,其結構以圖2所示。

圖2 LSTM結構示意圖
在時間為t時,LSTM的輸入包括當前時刻的網絡的xt、上一時刻的ht-1和細胞狀態ct-1。LSTM輸出包括當前時刻的輸出值ht和當前時刻的細胞狀態ct。LSTM 通過3個門來控制單元格狀態,分別為遺忘門、輸入門和輸出門,可由式(8)表示。
g(x)=σ(Wx+b)
(8)
式中:W為門的權重矩陣;x為輸入的負荷數據;b為偏移向量;σ為sigmoid函數。
在向后優化的過程中,LSTM 的權重通過自適應矩估計(adaptive moment estimation,Adam)優化算法進行更新[16]。適當的優化算法可以節省計算資源,加快向最優解的收斂。Adam是一種一階優化算法,可以代替傳統算法的梯度下降過程,具有較高的計算效率,在優化大型數據和參數時,所需要的內存更少。面對高噪音或稀疏的梯度時,它具有很高的魯棒性。經過多次迭代,LSTM逐漸接近培訓集的真實值,從而獲得有效的預測模型。
LSTM神經網絡迭代更新權值可以減小誤差,提取高頻時間序列的內在規律,提高模型的預測精度。它能逐步逼近隨機性強的高頻數據。LSTM神經網絡的預測結果與其超參數的設置密切相關,包括網絡的層數、每層的節點數、循環數和初始權值[19]。
由式(2)可知,系數為1的所有負荷分量處于同一時間坐標,而EMD是線性分解,因此只需將它們迭加即可重建完整的負荷曲線,如式(9)所示。
Pload=PIMF1+PIMF2+…+PIMFn
(9)
式中:Pload表示預測結果;PIMFi表示第i分量預測結果,其中i=1,2,…,n,n由負荷數據和EMD分解設置的閾值確定。此外,由于大數據集被劃分為可單獨處理的不同部分,因此使用分布式計算技術可以減輕計算負擔。
預測結果的迭加過程也是從整體趨勢到局部細節的重構過程。最后,將基于MLR的低頻經驗模態負荷預測結果與基于LSTM的高頻負荷預測結果相結合,實現對電力負荷的預測。
實驗采取2017年春季中21天的中國西部地區5 000個用戶的現場負荷數據。數據每15 min更新1次,即每個用戶每天有96個數據。與遷移學習一樣,首先從5 000個用戶的數據中得到1個預訓練模型。用戶負載的原始數據如圖3所示,其呈現無明顯周期性的特征。將歷史數據分為兩部分:前90%的歷史數據作為訓練集,后10%的歷史數據作為驗證集。測試誤差通過預測和實際之間差值進行計算。

圖3 用戶原始數據
在圖3中可以清楚地看到,1個用戶負荷的原始數據包含大量的高頻分量和噪聲等。為了處理這一問題,首先通過EMD對負載數據進行分解。根據數據的復雜程度和EMD的預閾值設置,將IMF按照頻率從高到低分為9組。通過式(1)計算各組過零率,結果如表1所示。

表1 IMF過零率
從表1可知,從IMF7開始,過零率開始小于0.01,可以利用MLR對低頻模式對應的負荷進行預測。相比之下,從IMF1到IMF4的模式具有非常高的頻率。因此,采用LSTM神經網絡進行負荷預測。
將EMD后得到的IMF和剩余部分輸入到相應的算法中,對下96個時間點的數據進行迭代預測。將得到的預測序列相加,得到完整的負荷預測。特別地,每個預測序列按從低頻到高頻的順序疊加,可以逐步得到完整的序列。
為了證明該方法的優點和性能,對照了其他幾種預測算法,包括SVR、BPNN、MLR和LSTM神經網絡,以及考慮溫度、風向、風速、星期的多輸入LSTM神經網絡(MLSTM)。預測曲線和誤差分別如圖4、圖5和表2所示。

圖4 ELM模型與常用預測方法的比較

圖5 ELM模型和神經網絡預測方法的比較
由圖4、圖5、表2可知,ELM模型不僅在平均絕對百分誤差和均方根誤差上比其他算法有絕對優勢,而且在擬合時間序列負荷曲線方面也取得了更好的性能。在10:00—18:00,其他方法都沒有達到良好的擬合效果,但ELM模型在一定程度上實現了準確的預測。

表2 各算法誤差
綜合MLR和LSTM算法的優點,提出了一種改進的STLF方法ELM。將ELM與SVR、BPNN和LSTM、MLSTM等基于神經網絡的預測方法進行了比較。結果表明EML的預測精度優于其他方法。
1)采用EMD算法,依據頻率從低到高將負荷分組。各組具有線性相關性,可以線性疊加。因此,LSTM 和 MLR 對不同組件的預測結果可以單獨處理。這極大提高了應用分布式計算技術進行大數據的計算效率。
2)MLR 方法和 LSTM 神經網絡算法分別用于預測低頻和高頻負荷。MLR 可以快速預測變化的總體趨勢,而 LSTM 則能夠預測復雜的非線性局部行為。通過這種方式可以有效地利用MLR和LTTM的優勢,從而產生顯著改善的結果。