譚 嘉, 李知藝, 楊 歡, 趙榮祥, 鞠 平, 2
(1. 浙江大學 電氣工程學院,杭州 310007;2. 河海大學 能源與電氣學院,南京 211100)
為加快推進我國“碳達峰、碳中和”的目標進程,構建以新能源為主體的新型電力系統(tǒng)是必由之路.隨著新能源裝機容量跨越式增長[1],分布式新能源、儲能、電動汽車等新元素在配電網層面涌現,豐富了負荷內涵,改變了負荷特性[2].相比傳統(tǒng)負荷,集成了這些新元素的配電網負荷具有更大的波動性和隨機性,這將為配電網功率實時平衡帶來巨大的挑戰(zhàn).
用電負荷預測(不包含網損)是保障電網安全和經濟運行的基本前提之一[3].智能電表、傳感器等設備的廣泛使用使得配電網積累了海量的、來源多樣的歷史負荷數據,為數據驅動的負荷預測技術奠定了必要的數據基礎[4].目前,負荷預測的方法主要有數學統(tǒng)計方法和機器學習方法[5].數學統(tǒng)計方法主要包括回歸分析法[6]、卡爾曼濾波法[7]、時間序列分析法[8]等.這類方法主要采用線性分析的思路,因此在處理負荷與其他因素(比如天氣)非線性關系時具有一定的局限性,預測效果一般.從20世紀80年代起,支持向量機[9]、人工神經網絡[10]等機器學習方法取得了長足發(fā)展,但這些方法在數據樣本較多時普遍存在無法收斂的問題[11].近年來,以長短期記憶(Long Short-Term Memory, LSTM)神經網絡為代表的深度學習算法解決了時間序列的長期依賴問題,在負荷預測應用上取得了不錯的效果.除了研究傳統(tǒng)的單一對象負荷預測以外,部分學者同樣致力于研究如何提高包含多個對象的負荷預測準確度[12-16].尤其在不同電壓層級的待預測對象具有層級化結構的情形下.例如,220 kV高壓輸電變電站采集負荷與110 kV次級輸電變電站采集負荷.針對層級化負荷結構,通常需要在不同層級分別進行負荷預測,從而形成完整的多層負荷預測結果.然而,該研究面臨的主要挑戰(zhàn)是如何保證產生的預測結果既在數學上滿足單負荷預測準確度,又在物理上符合不同層級負荷之間的關聯規(guī)律.具體來說,呈現層級化結構的上層負荷與下層負荷具有聚合一致性,即下層所有相關節(jié)點的負荷預測值之和應等于上層節(jié)點的負荷預測值,這樣才能保證電力調控、負荷控制等決策的實現效果.而由于各層負荷功率在峰值大小、測量精度等方面存在差異,現階段各層獨立預測的結果難以達到聚合一致性.傳統(tǒng)的方法(如自下而上和自上而下方法)由于忽略了負荷預測偏差隨層級結構的疊加性,難以協同提升各層級負荷的預測準確度.文獻[17]將跨層級負荷預測建模為最優(yōu)廣義最小二乘法回歸問題,然后通過梯度下降法求解,以改善底層負荷的預測結果,進而自下而上按層級結構累加匯總得到上層的負荷預測.文獻[18]采用機器學習中的極端梯度提升機(XGBoost)和隨機森林算法先對所有層級負荷分別進行預測,然后建立新的機器學習模型,將先前得到的底層和上層預測結果作為輸入,并把修正后的底層負荷預測結果作為輸出.
理論上,多層負荷協同預測可以看作一個以各層負荷預測總誤差最小為目標,以聚合一致性為約束條件的分布式優(yōu)化問題.以機器學習問題為例,分布式優(yōu)化算法主要有分布式梯度下降算法、二階優(yōu)化算法、鄰近梯度算法、坐標下降算法和交替方向乘子算法(Alternating Direction Method of Multipliers,ADMM)等,每種算法各有優(yōu)劣[19].其中,交替方向乘子法[20]因融合對偶分解和拉格朗日乘子法優(yōu)點,在解決分布式優(yōu)化問題時收斂性好,魯棒性強,受到研究學者的關注.因此,本文選用ADMM算法作為求解多層負荷協同預測問題的算法框架.另外,由于底層負荷數據來源多,同步性差,難以在不同供電區(qū)域之間實時共享,即負荷量測和預測數據以孤島的形式呈現,亟需一種新的框架來打破數據孤島.聯邦學習因為能解決數據孤島問題而受到研究學者的廣泛關注[21],其于2016年由谷歌首次提出,并實現了數萬臺移動設備在終端數據不共享的情況下通過本地更新模型來完成學習任務[22].由于聯邦學習解決的問題與本文面臨的供電區(qū)域數據孤島問題相似,故考慮采用聯邦學習的架構實現多層負荷協同預測模型的分布式訓練.
鑒于上述分析,本文提出一種基于分布式優(yōu)化思想的配電網負荷多層協同預測算法,旨在通過多個深度學習模型的分布式聯邦訓練,提升所有層級負荷的整體預測準確度.算例結果表明,與傳統(tǒng)方法相比,本文方法在整體預測準確度上有明顯的提升.
配電網多層級負荷預測以2級和3級負荷為主[23].例如,“220 kV高壓輸電變電站-110 kV次級輸電變電站-10 kV中壓配變”屬于3級負荷預測問題,“220 kV高壓輸電變電站采集負荷-110 kV次級輸電變電站采集負荷”等問題屬于2級負荷預測問題.由于3級負荷層級結構具有現實普遍性且兼具理論研究難度,故本文以3級負荷層級結構為例,介紹基于ADMM算法的多層負荷協同預測模型.


圖1 3級負荷層級結構Fig.1 Three-level load hierarchical structure
基于上述分析,搭建n個負荷預測模型,分別對應n個底層供電區(qū)域.首先考慮底層區(qū)域的預測準確度,則整體的負荷預測目標函數定義為
(1)

將底層供電區(qū)域的負荷預測結果逐級聚合,得到除L1以外的全部節(jié)點預測值.需注意的是,要使得所有上層節(jié)點負荷預測誤差最小,僅考慮L2各節(jié)點負荷預測約束條件是不夠的.例如,當得到的L2節(jié)點預測值均偏小,在聚合計算頂層負荷預測結果時,誤差的疊加會導致頂層負荷預測誤差更大.因此,同時考慮頂層節(jié)點的預測約束條件也很有必要.綜上,結合負荷實際值,構造h+1個等式約束:
(2)

經過分析,本文把一個3級負荷預測問題描述成具有h+1個等式約束的n分塊優(yōu)化問題,然后采用ADMM算法求解.
ADMM是一種求解分布式優(yōu)化問題的算法,其通過分解協調過程,將大的全局問題分解為多個較小的局部子問題,并通過協調子問題的解來得到全局問題的解.在處理復雜的優(yōu)化問題時,ADMM算法具有較快的收斂速度,能得到更高質量的解,且在解決具有加和約束的優(yōu)化問題上具有獨特優(yōu)勢,適用于求解本文的約束優(yōu)化問題[25].因此,對于本文1.1節(jié)所構建的具有等式約束的n分塊優(yōu)化問題,采用ADMM算法求解.
具體地,對于如式(1)、(2)所示的優(yōu)化問題,采用ADMM算法引入對偶變量,根據拉格朗日乘子法,得到增廣拉格朗日函數:

(3)
式中:[θ1θ2…θn]是n個模型的待優(yōu)化參數;λ為拉格朗日乘子;ψ為求取向量所有元素均值的函數;ρ為懲罰因子.對每個等式約束,都引入一個拉格朗日乘子λj,因此式(3)中λ共含有h+1項.
由于ADMM算法在更新單個模型參數時需固定其余模型,故對于正在更新的模型來說,Lρ(θ,λ)損失函數中其余模型預測的均方誤差項可視為常數項.為簡化求解過程,當更新某個模型參數時,刪去損失函數中與該模型不存在耦合關系的“常數項”,均方誤差項只含該模型預測的單個供電區(qū)域誤差.同理,聚合負荷的誤差項也只包含與該模型耦合的上層節(jié)點誤差.
基于上述分析,得到求解式(3)的ADMM迭代過程如下,按順序交替執(zhí)行每個步驟:

考慮到底層負荷的數據孤島問題,采用聯邦學習的架構進行模型的交替訓練和通信.
聯邦學習目標是在保證數據隱私和不共享數據的情況下完成用戶客戶端的聯合建模.聯邦學習根據是否需要第三方服務器分為兩種,分別是客戶端-服務器架構[26]和對等網絡架構[27].前者是讓多個客戶端利用本地數據訓練本地模型,通過中央服務器聚合各個客戶端的模型參數并更新全局模型,然后將全局模型參數下發(fā)給各個客戶端,繼續(xù)用本地數據更新模型,直到全局模型收斂為止.后者在訓練過程中,不需要第三方服務器,客戶端之間可以直接通信.為了降低通信開銷,選擇對等網絡架構來對n個底層供電區(qū)域進行聯邦訓練.
多層負荷協同預測模型的聯邦學習架構如圖2所示.在第k+1次迭代過程中,對n個模型按順序依次進行更新.當更新第i個模型時,前i-1個模型已完成第k+1次更新,因此輸出值固定為第k+1次迭代的值;第i+1~n個模型由于還未進行第k+1次更新,輸出值固定為第k次迭代的值.圖2中的①、②、③表示更新第i個模型的一系列執(zhí)行步驟,其中步驟①表示各模型根據輸入特征得到輸出值,步驟②表示模型i同步接收這n-1個模型的輸出值并構造損失函數,步驟③則指采用梯度下降法更新本地模型參數.緊接著采用同樣方法更新第i+1,i+2, …,n個模型的參數,完成后進入第k+2次迭代,繼續(xù)聯邦訓練,直到迭代次數達到設定值,算法迭代結束.

圖2 多層負荷協同預測模型的聯邦學習架構Fig.2 Federated learning structure of multi-level load collaborative forecasting model
多層負荷預測模型的性能不僅與整體模型架構有關,還與單個供電區(qū)域負荷模型的預測性能息息相關.目前,應用于負荷預測研究且取得不錯效果的深度學習算法有門控循環(huán)網絡(GRU)、深度殘差網絡(ResNet)、卷積神經網絡(CNN)、LSTM以及幾種算法的組合模型,這些模型都可應用于本文提出的基于ADMM算法的多層負荷協同預測方法中.而且在具體的研究過程中,n個供電區(qū)域負荷模型可選取相同模型,也可以是異構模型.為使本文所提方法極具說服力,采用最具代表性的LSTM神經網絡作為供電區(qū)域負荷預測的基礎模型.
LSTM網絡是在循環(huán)神經網絡基礎上,通過引入遺忘門、輸入門和輸出門,并通過遺忘機制和保存機制剔除某些不重要信息,保留有用信息并存入神經元信息中[28].LSTM結構如圖3所示,其特殊結構使得它有利于解決長時間序列對歷史數據長期依賴的問題,并且可以顯著改善訓練過程中梯度消失及梯度爆炸問題[29].LSTM內部計算過程如下:

圖3 LSTM結構Fig.3 Structure of LSTM
遺忘門:
ft=σ(Whfht-1+Wxfxt+bf)
(4)
輸入門:
it=σ(Whiht-1+Wxixt+bi)
(5)
(6)
(7)
輸出門:
ot=σ(Whoht-1+Wxoxt+bo)
(8)
ht=ot⊙tanhct
(9)

確定LSTM網絡的輸入和輸出特征是使模型獲得優(yōu)異性能的關鍵.其中輸入特征通常是影響負荷變化的屬性信息,例如氣象因素、季節(jié)信息、日期信息(星期)等[30].同時考慮到負荷數據具有周期性,待預測日當天的負荷與前一周的負荷以及14日前同一時刻的負荷有很大相關性.因此本文LSTM網絡的輸入特征包括歷史負荷、溫度、月份和星期,且所有的輸入特征串聯成向量作為模型的單個特征,輸出特征即為待預測日當天的實際負荷數據.另外,LSTM網絡采用典型結構,即1個輸入層、多個隱藏層和1個輸出層的結構[31].前一層的輸出作為后一層的輸入,最后通過全連接層輸出得到負荷預測值.
基于分布式優(yōu)化思想的多層負荷協同預測算法訓練步驟如下.
步驟1搭建n個LSTM模型,各模型在本地獨立預訓練L次.
步驟2將1.2節(jié)構造的增廣拉格朗日函數作為模型損失函數,采用梯度下降法并結合聯邦學習架構,按照ADMM迭代順序交替訓練各模型,并更新拉格朗日乘子.
步驟3通過不斷迭代訓練各模型參數,最終模型學習到相應供電區(qū)域的負荷變化規(guī)律以及上下級負荷的聚合一致性.訓練結束,保存各模型參數.
步驟4將測試集樣本中底層區(qū)域的輸入特征分別輸入訓練好的模型中,輸出得到L1各區(qū)域的負荷預測結果:
L1:f1(θ1;x1),f2(θ2;x2), …,fn(θn;xn)
步驟5將L1負荷預測結果逐級聚合,得到L2與L3全部節(jié)點預測結果:

其中第1個訓練步驟,各LSTM模型在本地獨立預訓練L次,是為了使各模型達到預測準確度較高的初始狀態(tài),在此基礎上進行聯邦訓練可以減少迭代次數.不僅如此,在準確的初始狀態(tài)下,基于ADMM算法優(yōu)化調整各模型能進一步提高整個層級結構的負荷預測準確度.
本文所用數據來源于2017年全球能源預測競賽[32],由獨立系統(tǒng)運營商新英格蘭(ISONE)發(fā)布,該數據集包含3層負荷,底層包含8個區(qū)域.選擇馬薩諸塞州(MASS)的東南部(Southeastern MASS, SEMA)、中西部(Western and Central MASS, WCMA)、東北部(Northeastern MASS, NEMA)和佛蒙特州(VT)這4個底層區(qū)域的負荷數據等比縮小,構造配電網3級負荷層級結構.其中L2的MASS負荷數據是SEMA、WCMA、NEMA 3個區(qū)域負荷數據的總和,L2的VT負荷數據與L1對應的VT區(qū)域負荷數據相同,構造的3級負荷層級結構如圖4所示.使用數據包括從2013年1月1日至2016年12月31日的負荷數據、干球溫度、露點溫度和對應的月份與星期,數據分辨率都為1 h.在構造數據集時,對于底層區(qū)域,選取待預測日前1,2,3,4,5,6,7,14日的負荷數據以及當天干球溫度、露點溫度、當天對應的月份、星期作為輸入特征(共242個數據),待預測日當天的實際負荷數據作為模型輸出特征.對于L2和L3的區(qū)域,將待預測日當天的實際負荷數據作為標簽.數據預處理時,輸入特征、輸出特征和標簽數據按照區(qū)域的不同,分別進行歸一化.以上構造的全部輸入、輸出特征和標簽數據共同構成聯邦預測模型的數據樣本,按照8∶2的比例劃分訓練集和測試集.本文的模型構建及訓練均在Python編程環(huán)境下的PyTorch深度學習框架下進行,使用硬件平臺為Intel Core i5 CPU和 NVDIA GTX 1660 GPU.

圖4 ISONE負荷數據層級結構Fig.4 Hierarchical structure of ISONE load data
為實現多客戶端的聯邦訓練,共搭建4個LSTM模型,每個模型結構和超參數的選擇都相同.經過多次試驗,最終確定LSTM模型由1個輸入層、4個隱藏層和1個輸出層構成,其中隱藏層神經元個數都為100.輸出層是一個線性的全連接層,將輸出數據特征限制為24,即待預測日當天24個時刻的負荷值.
此外,采用Adam優(yōu)化算法更新模型參數,并將學習率設置為10-3.多次試驗表明,模型預訓練迭代次數為200時,底層負荷的預測誤差已小于3%,達到了較準確的初始狀態(tài),因此確定預訓練迭代次數為200,聯邦訓練迭代次數設為500,批處理數為128,拉格朗日乘子λ初始值設為0.1,懲罰因子ρ設為0.1.
選取平均絕對百分比誤差(Mean Absolute Percentage Error, MAPE)、均方根誤差(Root Mean Square Error, RMSE)和平均精度[33](Mean Accuracy, MA)作為預測結果的評價指標:
(10)
(11)
MA=1-MAPE
(12)

在對比實驗中,將本文方法與各層獨立預測以及自下而上的傳統(tǒng)方法進行比較,對測試集的數據進行24 h的短期負荷預測,得到MAPE、RMSE、MA這3種指標的實驗結果分別如表1~3所示.各層獨立預測方法分別對每個區(qū)域負荷采用單個LSTM模型進行預測,忽略了上下級負荷聚合一致性的約束,該方法作為實驗的基礎對照方案.自下而上的傳統(tǒng)方法用LSTM模型得到底層區(qū)域的負荷預測,再按層級結構累加匯總成上層的負荷預測,以下簡稱傳統(tǒng)方法.同時,為了體現本文方法選取LSTM作為基礎模型的優(yōu)越性,將LSTM替換為人工神經網絡(ANN)和線性回歸方法,對比3種模型在本文方法下的預測效果.表1~3中,將各列指標最優(yōu)的數據加粗,以突出預測性能最佳的方法.另外,表中分別用“√”、“×”表示是否考慮聚合一致性.從表中可以看出,結合LSTM的本文方法獲得的負荷預測結果不僅滿足了上下級負荷聚合一致性的約束條件,而且顯著提高了預測精度.

表1 不同方法的負荷預測MAPE比較

表2 不同方法的負荷預測RMSE比較

表3 不同方法的負荷預測MA比較
具體來說,首先對比均采用LSTM的獨立預測方法、傳統(tǒng)方法以及本文方法.與傳統(tǒng)方法相比,本文方法對每層負荷預測的誤差(MAPE,RMSE)都更小、平均精度(MA)都更高.隨著層級的增加,MAPE逐層遞減,L3的MAPE低至1.03%,是采用傳統(tǒng)方法獲得的同一層級MAPE的1/3.對比均方根誤差,本文方法獲得的RMSE在絕對數值上顯著小于傳統(tǒng)方法,前者的RMSE平均值是后者平均值的0.38,可見本文方法預測效果顯著突出.對比兩種方法在整個層級結構的平均精度,本文方法的MA高達98.54%,同樣優(yōu)于傳統(tǒng)方法.將本文方法與獨立預測方法進行對比,不難發(fā)現,本文方法獲得的預測結果不僅滿足上下級負荷的聚合一致性,在預測精度上更是優(yōu)于獨立預測方法.這主要得益于ADMM算法在模型聯邦訓練過程中融入了難以顯式建模的區(qū)域負荷間的相關性以及負荷的聚合一致性,在模型交替訓練過程中不斷修正原始負荷預測數據,因而得到精準的負荷預測結果.綜上可以說明,本文的ADMM算法在預測效果上全面優(yōu)于各層獨立預測方法和傳統(tǒng)方法,可作為電網統(tǒng)一各個層級的負荷預測結果的有效方法之一.此外,對比LSTM、ANN和線性回歸方法,不難發(fā)現,在本文方法的框架下,采用LSTM基礎模型獲得了最高的預測精度.這說明本文方法的預測效果依賴于所選取的基礎模型,而LSTM作為深度學習算法的代表性模型,相比機器學習方法和數學統(tǒng)計方法體現出了明顯的優(yōu)勢.
為驗證結合LSTM的本文方法所訓練的模型已達到穩(wěn)定,繪制訓練過程中平均絕對百分比誤差隨迭代次數的變化曲線,如圖5所示.圖中分別展示了3個層級的MAPE,其中L1、L2、L3分別選取SEMA、MASS和ISONE數據作為代表.可以看出,當迭代次數達到500次時,各層的MAPE已趨于最小值并在最小值附近輕微振蕩,說明模型已達到收斂.

圖5 MAPE變化曲線Fig.5 Variation curves of MAPE
另外,繪制5種方法的負荷預測曲線,如圖6所示,預測數據選取測試集中連續(xù)的5天,數據分辨率為1 h,圖中L為負荷.可以看出,結合LSTM的本文方法得到的負荷預測曲線誤差最小,對于每一層級的數據都最好地擬合了實際負荷的變化曲線.而結合線性回歸的本文方法預測誤差最明顯,這說明數學統(tǒng)計方法在預測效果上已逐漸被機器學習和深度學習方法所超越.當僅關注獨立預測方法、傳統(tǒng)方法和本文方法(LSTM)時,對于L2和L3的數據,傳統(tǒng)方法的誤差最大,這主要是由于隨著層級結構的增加,下層負荷預測誤差會在上層負荷疊加.對于各層數據,本文方法(LSTM)的負荷預測曲線都比各層獨立預測得到的曲線更貼近實際值,這進一步佐證了本文方法預測準確度比獨立預測方法還要高,大大提升了各層級負荷預測準確度.

圖6 三級負荷層級結構的預測結果Fig.6 Forecast results of three-level load hierarchical structure
本文提出了一種融合ADMM與LSTM算法優(yōu)勢的多層負荷協同預測方法,其在滿足負荷預測數據自下而上聚合一致性的同時,顯著提升了所有層級負荷的整體預測準確度.采用的深度學習算法依靠純數據驅動,無需任何顯式的建模,就能學習負荷的變化規(guī)律.同時,在負荷聚合一致性的約束下使用ADMM算法,使得模型的訓練過程融入了負荷數據間的相關性以及負荷聚合一致性,進而達到提升負荷預測準確度的目的.算例結果表明,該方法具有突出的預測效果,可以幫助電網更好地協調各個層級的負荷預測結果.然而,本文未考慮節(jié)假日等假期因素對負荷預測的影響,在后續(xù)研究中,可在本文基礎上進一步增加節(jié)假日的輸入特征,也可以考慮電價、濕度、降水量等其它特征,通過關鍵影響因素關聯分析確定最佳的輸入特征集,進一步提高負荷預測準確度.