李 衡,朱 理,鄭 潔,劉海瓊
(1.國網浙江省電力有限公司杭州供電公司,杭州 310009;2.杭州沃瑞電力科技有限公司,杭州 310012)
電力負荷預測是電力安全調度的重要依據,在保證電力系統穩定、可靠、經濟運行等方面具有十分重要的意義。隨著我國經濟的高速發展,電力負荷預測已成為一項重要而艱巨的任務。提前一至兩星期對配電網線路進行負荷峰值預測,準確預測將出現重過載的線路,能為配電網制定供電計劃提供重要參考[1-3]。
目前常用的負荷預測方法可分為傳統統計方法[4-5]和現代智能方法[6-10]。傳統統計方法包括指數平滑法、自回歸方法等。文獻[2]通過K-means算法對線路負荷增長趨勢進行聚類分析,篩選出未來可能負荷較重的目標線路,再基于XGBoost算法建模進行線路峰值負荷預測,其預測模型的樣本特征值數據包括:氣象數據、時間數據、春季負荷數據。文獻[4]提出以指數平滑法為基礎的組合負荷預測模型。文獻[5]提出基于自回歸平均移動模型與灰色理論的負荷預測模型。現代智能方法包括:BP人工神經網絡[6]、LSTM(長短期記憶)[7]、隨機森林[8]、XGBoost[2,9-10]等。文獻[6]提出基于隨機分布式嵌入框架及BP神經網絡的超短期電力負荷預測方法。文獻[7]提出基于CNN(卷積神經網絡)和LSTM 網絡的混合模型短期負荷預測方法。文獻[8]將隨機森林算法引入負荷預測領域,并利用灰色投影篩選出相似日樣本集合訓練模型。文獻[9]建立LSTM 預測模型和XGBoost 預測模型,并使用誤差倒數法將LSTM 與XGBoost 組合起來進行預測。
近年來,由于Prophet 算法[11-13]在時間序列數據預測方面具有很強的優勢,同時能出色地適應數據的節日效應和變化趨勢點,被引入電力系統負荷預測領域。文獻[11]針對大量的歷史電負荷數據、日期信息、氣象數據,提出基于Prophet與XGBoost 的混合電力負荷預測模型。文獻[12]提出一種基于Prophet加法模型和LSTM的組合模型的短期負荷預測方法。目前基于峰值負荷預測的研究有限[14-15],文獻[14]建立基于時間序列的臺區配變負荷峰值預測方法,其模型由自相關和移動平均兩部分構成。文獻[15]構建基于雙向LSTM的幅值預測模型,再利用幅值模型的預測結果展開基于XGBoost 分類器的日峰值負荷出現時段預測。但是上述方法大部分應用于輸電網日負荷曲線預測或日電量預測,卻很少應用于配電網線路的峰值負荷預測[16-21],而配電網線路負荷具有變化趨勢差異性大、難以量化的特點,這對預測模型的泛化性提出了更高的要求,使得負荷預測更加困難[2]。為此,本文首先分析線路負荷曲線受節假日、季節等因素影響的變化規律,再將Prophet應用于配電網線路峰值負荷預測,基于歷史日峰值負荷數據對每條線路單獨建模,并采用自動調參計算方法,實現基于時間序列負荷數據的配電網線路峰值負荷預測。
配電網線路負荷數據受節假日、季節等因素的影響,具有自己獨特的變化規律。本文對某配電網線路負荷受節假日、季節的影響情況進行分析。
圖1所示為某線路2017年7月連續兩個星期的電流數據,其中7 月15 日、7 月22 日為周六,該線路周末的電流日峰值約200 A,而工作日的日峰值均大于280 A,可見周末的日峰值大輻低于工作日的日峰值,該線路日負荷峰值受是否工作日影響明顯。

圖1 某線路連續2個星期的負荷曲線
圖2所示為某線路2018—2019年春節7天假期及前后各一星期的電流負荷曲線。2018-02-15、2019-02-04 為除夕,該線路除夕前一星期,負荷峰值大致呈逐漸下降趨勢,初一至初五日負荷峰值明顯小于春節前的日負荷峰值,從初六開始負荷逐步恢復至春節前水平。可見,受春節影響,負荷于初一至初五期間出現峰值低谷。

圖2 某線路春節前后的負荷曲線
圖3所示為某線路2018年1月負荷與7月負荷曲線,1 月日負荷峰值均值約120 A,而7 月日負荷峰值均值約為170 A。可見,受季節影響,該線路1月負荷水平明顯低于7月負荷。

圖3 某線路同年1月與7月的負荷曲線
綜上所述,配電網線路負荷受節假日、季節影響,且具有特定的變化趨勢,因此本文利用Prophet 在預測時序性數據的周期性、節假日和趨勢變化方面的優勢,進行峰值負荷預測。
2017 年2 月,Facebook 發布了時間序列預測框架Prophet,Prophet與傳統的時間序列預測方法相比,有以下優點:有較好的靈活性,輕松適應多個季節的季節性,并通過分析對趨勢做出不同的假設;測量值不必呈等間距分布,不需要插值缺失值;擬合速度較快等[11]。
Prophet 是基于自加性模型的預測時間序列數據的模型,模型整體可分解為3個主要部分:趨勢項、季節項、節假日項,其組合公式為:

式中:g(t)為趨勢項;s(t)為季節項;h(t)為節假日項;εt為誤差項。通常假設εt服從均值為0的正態分布,主要用來反映未在模型中體現的異常變動。
g(t)表示時間序列的非周期變化趨勢,包括飽和增長模型與分段線性增長模型,根據數據中的變化點檢測趨勢走向。本文采用飽和增長模型:

式中:k為增長率;b(t)為偏移量;C(t)為模型容量;隨著t的增加,g(t)趨近于C(t)。
s(t)代表周期性變化,為了擬合并預測季節的效果,Prophet 基于傅里葉級數提出了一個靈活的模型,s(t)可根據以下公式進行估算:

式中:N為周期總數;T為某個固定的周期,年度數據的T為365.25,周數據的T為7;2n為期望在模型中使用該周期的個數;a1,a2,…,aN,b1,b2,…,bN為模型中需要估計的參數。
h(t)代表節假日效果,節假日可能導致時間序列數據出現波動。而節假日的周期不固定,不能通過周期性模型實現,因此對不同節假日建立獨立模型,給每個獨立模型制定一個時間窗口,同一個窗口中的影響為相同值。節假日效果模型h(t)根據以下公式進行估算:

式中:L為節假日集合;i為第i個節假日;κi為對應節假日對預測值的影響因子;Di為窗口期中包含的時間t。
定義Z(t)=[l(t∈D1),…,l(t∈DL)]),可得:

式中:v越大,表示節假日影響力越大。
由于每條配電網線路的負荷變化規律不同,因此本文對每條需要進行負荷峰值預測的線路提取其近幾年的日負荷峰值,建立Prophet時間序列負荷模型。
本文對某市城區配電網線路2020-08-01—2020-08-21 共3 個星期的峰值進行預測,由于歷史負荷數據距離預測時段的時間越遠,其對預測時段負荷的影響越小,因此本文采用的歷史數據負荷數據為:2017-07-01—2020-08-21 的電流數據,線路負荷采樣間隔為1 h,即每天24個電流數據,提取每天的日負荷峰值。
線路Prophet時間序列負荷模型的輸入數據分為日期ds和日負荷峰值y兩列,如下式所示:

式中:dn為第n天的日期;yn為第n天的日負荷峰值。輸出數據為未來一星期(即[dn+1,dn+2,dn+7])的日負荷峰值。
配電網線路負荷數據常常存在數據不完整、異常數據等現象,而Prophet算法的優點之一是不需要補充缺失值,算法自身可以通過插值處理缺失值,但是Prophet 算法對異常值比較敏感。因此,為避免異常值影響模型預測效果,本算法將小于10 A 或大于800 A 的線路日負荷峰值置為無效值NA。
本算法設置的歷史負荷數據期間的節假日窗口如表1所示,其中lower_window為節日前幾天,upper_window為節日后幾天。

表1 節假日特征
本文選用的預測指標為峰值負荷預測誤差EPEAK:

式中:ypeak為預測時段線路實際電流峰值;為預測時段線路預測電流峰值;Icontrol為線路最大允許電流。
Prophet 算法中有兩個重要指標:變點增長率(以下簡稱為“c”)與變點個數(以下簡稱為“p”)。
Prophet 能自動監測變點,變點個數由參數p來決定。如果數據趨勢的變化被過度擬合或者擬合不足,可以利用輸入c來調整稀疏先驗的程度。c默認值為0.05,其值增大會導致趨勢擬合得更加靈活,其值減小會導致趨勢擬合的靈活性降低。每條線路的峰值變化趨勢不一樣,c值與p值的選取將直接影響預測的結果。
因此,本文提出自適應計算方法,通過對每條線路上一周期進行峰值負荷預測來計算出該線路當前預測時段的最優c值與p值,具體流程如圖4所示。對于每條線路:

圖4 自適應調參流程
1)設置初始參數值c與p。
2)基于上一周期,即用ds=[d1,d2,…,dn-8]預測[dn-7,dn-6,…,dn-1]的日負荷峰值,由于上一周期實際負荷已知,因此可計算預測峰值誤差。
3)判斷上一周期預測峰值誤差是否大于誤差門檻值,若預測峰值誤差大于門檻值,執行下一步4),否則跳轉到5)。
4)按設定調整步長改變c或p,并判斷c與p是否在允許范圍內,若是則繼續進行2),否則進入5)。
5)退出參數計算,提取上一周期預測誤差最小時對應的c做為cbest,p做為pbest。
6)用cbest與pbest進行本周期的峰值負荷預測,即預測[dn+1,dn+2,...dn+7]的日負荷峰值。
以預測周期2020-08-01—08-07 為例,其上一周期為2020-07-25—07-31。
本文對某城區配電網175 條10 kV 線路2020-08-01—08-21 日共3 個星期的峰值進行預測,所用實驗平臺條件為Windows10 X64 操作系統、In-ter i5-8265 CPU,使用Python 語言編程實現。Prophet 模型參數中c值和p值采用自適應計算方法,其它參數統一固定設置,其中:seasonality_mode 為“additive”,seasonality_prior_scale 為20,interval_width為0.8,changepoint_range為0.9。
Prophet模型參數中的c值和p值采用自適應計算方法,c值初始值為0.05,增長步長為0.02,最大為0.23。p值初始值為20,增長步長為5,最大為50。
本文通過固定p值,分析c值對峰值誤差EPEAK的影響。在某周期預測計算結果中,4條典型線路c值與EPEAK的變化關系如圖5 所示。由圖5 可見,隨著c值的逐漸增加,EPEAK值有以下幾種變化趨勢:

圖5 典型線路c值與峰值誤差EPEAK變化關系
1)線路1、線路2的預測誤差逐漸減小,兩條線路的預測誤差均下降了0.04。
2)線路3在c值從0.07增加到0.09時,EPEAK由0.15降至0.14,而c由0.09增加至0.23,EPEAK均保持為0.14。
3)線路4在c值從0.07增加到0.13時,EPEAK由0.14增加至0.16,而c由0.15增加至0.23,EPEAK均保持為0.17。
可見,c值的選取,直接影響著線路的峰值預測誤差大小。線路1、線路2的cbest為0.23,線路3的cbest為0.09,線路4的cbest為0.15。
本文以2條變化趨勢差異較大的線路為例來分析,線路1的Prophet模型可視化展示如圖6所示,線路2的Prophet模型擬合效果如圖7所示。

圖6 線路1負荷模型可視化展示

圖7 線路2負荷模型可視化展示
圖6(a)為線路1 的歷史日負荷峰值數據與模型擬合效果,圖中小圓點為實際歷史日負荷峰值,曲線為模型擬合后的日負荷峰值變化曲線??梢娝惴〝M合效果較好,與原始負荷數據基本貼合。歷史負荷曲線表明,2020 年之前負荷變化年周期性明顯,夏高冬低,但2020年負荷出現大輻增長,推測原因是受2020年極端天氣導致空調負荷增加、全球新冠疫情使工廠訂單突增等影響。
圖6(b)為線路1 的總體趨勢,可見該線路2017年7月與2019年12月負荷變化趨勢接近,但2020年負荷比同期出現明顯大幅增長趨勢。
圖6(c)為線路1的節假日影響,可見:
1)春節對該線路負荷影響最大,負荷在春節期間出現下降趨勢。
2)2017年中秋節在國慶節內,負荷出現下降。2018—2019 年中秋節在國慶假期前,中秋節負荷升高,國慶節負荷下降。
3)端午節、勞動節、清明節線路負荷下降。
4)元旦節線路負荷略有上升。
圖6(d)為線路1 的年趨勢,可見該線路7—9月為全年負荷的高峰期,其中8 月為負荷最高峰時期。
圖7 為線路2 的歷史峰值數據與模型擬合效果,與圖6(a)對比可見,線路1與線路2的變化趨勢差異很大,但Prophet模型均能很好地擬合。
對175條線路進行3個星期的負荷預測,統計結果如表2 所示??梢?,08-01—08-07,EPEAK在[0,0.05]區間占70.86%,EPEAK在[0,0.1]區間占91.43%,EPEAK在[0,0.15]區間占97.71%,08-08—08-14 與08-15—08-21 的EPEAK在[0,0.05]區間的占比略有增加,但EPEAK在[0,0.1]與[0,0.15]區間的占比略有降低。但3 個星期平均占比中,EPEAK在[0,0.05]區間占73.14%,EPEAK在[0,0.1]區間占89.52%,EPEAK在[0,0.15]區間占94.86%??梢?,該算法預測準確度基本滿足工程實際需求。

表2 峰值負荷預測誤差統計
為對比預測效果,采用文獻[2]所述XGBoost峰值負荷預測方法結合氣象特征數據、時間特征數據、春季負荷特征數據進行08-01—08-21的峰值負荷預測,所有氣象數據均采用實際氣象數據,統計XGBoost 算法平均預測誤差,并與本文所提出的Prophet算法進行比較,結果如表3所示。

表3 2種算法預測結果對比
由表3 可見2 種算法的峰值預測誤差在EPEAK在[0,0.05]、[0,0.1]、[0,0.15]3 個區間的占比,其中XGBoost 算法的誤差均略高于Prophet 算法;兩種算法的預測誤差在EPEAK在[0,0.1]、[0,0.15]區間內占比僅相差約1%。相比而言,XGBoost算法預測平均誤差更小,但XGBoost 算法除了需要負荷數據外,還需獲取相關氣象數據,且預測未來時段的負荷峰值時,預測準確度依賴于天氣預測的準確度。而Prophet算法僅依賴于時間序列的負荷數據即可達到接近XGBoost算法的計算結果。因此,Prophet 算法更易于推廣至工程實際應用中,預測準確度也基本滿足工程實際需求。
本文提出一種基于Prophet算法的配電網線路峰值負荷預測算法,得出以下結論:
1)配電網線路負荷數據受節假日、季節等因素的影響,具有自己獨特的變化規律。
2)采用Prophet預測算法針對每條線路單獨建模,且僅以日負荷峰值數據為輸入數據,對每條線路自適應選取c和p參數,并通過實際算例證明該算法的預測準確度能滿足工程實際需求。
3)Prophet 預測方法支持多角度可視化,能直觀了解線路負荷歷史變化趨勢、受節假日影響程度;且無需補齊丟失的數據。
4)對配電網線路歷史負荷數據的完整率要求低。
該預測方法可準確實現配電網線路峰值負荷預測,易于推廣至工程實際應用中,其不足之處在于未考慮氣象數據等影響因素,對于氣溫敏感型負荷的預測效果可能欠佳,下一步可與基于多個影響因素的深度學習算法進行結合預測。