嚴雪穎,秦川,鞠平,曹路,李建華
(1. 河海大學能源與電氣學院,江蘇 南京 211100;2. 國家電網有限公司華東分部,上海 200120)
電力負荷預測是根據歷史負荷數據及其他外界影響因素對將來的負荷需求進行科學預測的過程[1]。電力系統瞬時供需平衡的特點決定了其預測工作的緊迫性,構建精準的負荷功率模型并進行準確的負荷預測是電力系統進行安全調度和經濟運轉的重要前提條件。然而負荷功率呈現多樣的時空變化特性,受多因素(如氣象、日期類型等)影響。隨著各種儲能設備、電動汽車、分布式電源等大規模接入電網,以及基于激勵措施、電價等需求側管理方案的實施,負荷預測的復雜度增加[2]。
構建負荷功率模型并進行負荷預測的關鍵因素之一是確定模型的輸入特征量。國內外大部分短期負荷預測研究是對模型和方法的探索[3—4]。近年來,許多專家學者將電力負荷預測相關影響因素作為研究重點[5—9],這些研究也表明對負荷特征的深入挖掘分析可有效提高預測效果。
特征選擇(feature selection,FS)是通過移除無關、冗余特征,從一組給定的特征集合中選出最有效的相關特征子集從而實現特征空間維數降低的過程[10]。經過特征選擇后的低維數據在后期聚類分析或機器學習中能降低復雜度,提高精度和穩定性。就數據類型而言,特征選擇分類包括監督式、無監督式和半監督式;從機制層面來看,又可以分為過濾式(Filter)、封裝式(Wrapper)和嵌入式(Embedded)。Filter法用評價準則來增強特征與類的相關性或削減特征之間的相關性[10];Wrapper法直接采用學習器分類性能作為特征子集的評價標準;而Embedded法將特征選擇與學習算法相結合,在訓練過程中自主完成了特征選擇。快速消除冗余特征,提高算法分類性能是特征選擇重要的研究方向[11]。結合子算法的優勢,混合方法通常比傳統方法更穩健,因此成為解決特定問題的新策略。文獻[12]提出了一種混合的過濾器和包裝器方法,采用自舉策略創建特征子集,通過計算每個特征子集的分類精度找到優化子集。
文中首先以氣象、日期及歷史負荷等因素作為初始輸入特征集,并引入負荷和溫度的導數以刻畫變量之間的非線性影響;接著,分別采用基于Filter、Wrapper和Embedded的方法進行負荷功率模型的特征選擇;最后,基于各方法選擇結果的明顯差異提出基于遺傳算法的最優特征集搜索策略,實現了輸入特征集的最優化,并通過算例進行驗證。
負荷預測往往都是實時采集數據,而動態的數據采集可能存在通道擁堵、故障等現象,導致相應數據采集程序發生中斷,從而原始數據會出現錯誤與不真實的情況。同時可能因為天氣突變、特殊突發事件等引起數據異常,造成大量偽數據的存在[13],這必定會嚴重影響預測精度,因此須對負荷數據進行加工、完善。
(1) 插值法補全缺失值。文中取某地區220 kV變電站能量管理系統(energy management sys-tem,EMS)記錄數據,數據缺失情況非常少,個別空缺數據采用線性插值法補全,具體是將空缺點前后兩點數據取平均作為空缺點的缺失值。
(2) 小波去噪法處理異常值。文中算例的母線負荷預測量級小,隨機性與波動性較強,且往往摻雜部分壞數據,從而對預測精度產生較大影響。文中選擇db4小波作為小基波,利用小波去噪處理負荷數據的異常波動。該方法首先在各尺度上將含噪聲的信號進行小波分解,得到小波系數和尺度系數;然后對高頻系數置零,去除噪聲信號;最后利用重構算法、小波系數和尺度系數重構出估計信號[14],具體流程如圖1所示。

圖1 db4小波去噪流程Fig.1 Flow chart of db4 wavelet denoising
(3) 歸一化。由于樣本氣象數據、負荷數據單位不一致,在進行負荷功率模型構建和訓練前,應對其進行歸一化處理,將數據取值范圍定在[0,1]或[-1,1]之間,計算公式為:
(1)
式中:xi,x′i分別為歸一化之前和之后的數值;xmin,xmax分別為該組數據中的最小值與最大值。
負荷功率模型的輸入特征集考慮氣象、歷史負荷等36個特征,符號表示及其含義如表1所示。左邊一欄為氣象、日期等負荷相關的外部因素,右邊一欄為歷史負荷特征,其中前一時刻負荷為預測值。

表1 相關特征命名Table 1 Nomenclature of the related features
氣象因素中加入了前3 d的溫度特征,以充分考慮溫度對負荷的影響和氣溫的累積效應[15]。實際值往往不及一階導或二階導能夠捕捉到變量的基本趨勢[16],考慮將負荷和溫度曲線的日動態變化趨勢作為新的預測因素以系統地解釋不同特征量之間的非線性相互作用,特征中加入溫度和負荷的一階和二階導數,計算公式為:
(2)
式中:L′(t)為t時刻的負荷一階導數;L(t+1),L(t-1)分別表示t+1,t-1時刻的負荷值。利用差分法同樣可求負荷二階導數和溫度相關導數。
文中采用Filter法中的最大信息系數(maximal information coefficient,MIC)、Wrapper法中基于支持向量機的遞歸特征消除(support vector machine based recursive feature elimination,SVM-RFE)和Embedded法中的隨機森林(random forest,RF)。
MIC主要利用互信息和網格劃分方法進行計算,互信息是衡量變量之間相關程度的指標[17],對于給定樣本數為n的變量,X={xi,i=1,2,…,n}和Y={yi,i=1,2,…,n},互信息定義為:
(3)
式中:p(x,y)為X和Y的聯合概率密度;p(x),p(y)分別為X和Y的邊緣概率密度。
假設Z={(xi,yi),i=1,2,…,n}為一有限的有序對的集合,定義G為a×b的網格,將X,Y的值域分別分成a段和b段。MIC定義為:
(4)
式中:maxIMI(Z|G)為劃分G下Z的最大互信息,取不同劃分方式中的IMI(X,Y)最大值作為劃分G的互信息值。B(n)為網格劃分a×b的上限值,當B=n0.6時效果較好。
SVM-RFE是將SVM作為遞歸特征消除過程中的分類器,通過調節SVM模型的各項參數以確定特征排序的標準,算法流程如圖2所示。

圖2 SVM-RFE算法流程Fig.2 Flow chart of SVM-RFE algorithm
SVM-RFE是一個向后消去特征的迭代過程,需經過多輪訓練,每次迭代都要經過以下3步:
(1) 利用當前數據集對SVM進行訓練,獲得與分類器特征相關的信息;
(2) 按照評估準則計算特征權重值;
(3) 移除特征重要性排名最靠后的特征。
當特征集中只剩1個特征時,結束循環,輸出五折交叉驗證得分最高時所對應的特征集合。
RF算法結構示意如圖3所示,核心思想是從樣本M維特征中隨機抽取m個特征組成分裂特征集,進行節點分裂,每個決策樹不進行剪枝處理[18],使其最大程度地生長,最終生成一片森林,森林中的所有決策樹投票得出最終結果。

圖3 隨機森林結構Fig.3 Structure of random forest
在進行特征選擇時,歷史負荷特征往往會掩蓋其他特征,故將歷史負荷特征單獨考慮,利用以上3種方法對表1中歷史負荷特征進行選擇,得到的MIC、RFE算法中不同特征數的交叉驗證分數、RF模型特征權重值分別如圖4—圖6所示。

圖4 最大信息數Fig.4 Maximum information coefficient

圖5 遞歸特征消除交叉驗證分數Fig.5 Cross-validation scores of SVM-RFE

圖6 隨機森林特征權重Fig.6 Feature weights of random forest
隨著我國經濟持續增長,人民生活水平不斷提高,大功率家用電器也越來越普及,導致各種降溫取暖負荷(特別是空調負荷)在社會總用電負荷中所占比例越來越大,故氣象因素對于電力負荷的影響也是愈加顯著。為此,同樣應用以上3種方法對氣表1左欄氣象、日期類型等特征進行選擇,根據每個特征的MIC值、SVM-RFE算法中每個特征的得分和RF特征權重,將特征重要性按由大到小排序,所得特征排名如表2所示。

表2 3種方法的負荷外部因素特征排名Table 2 Ranking of load-related external features in three methods
根據以上特征選擇結果可得如下結論:
(1) MIC與RF的歷史負荷特征排序相差不大,雖然3種方法選擇結果略有不同,但前一時刻負荷和1 d前時刻負荷的重要性排名都是位于第一和第二,可見這2個特征對于負荷預測的重要性。
(2) 相較于時刻負荷特征,各種日平均負荷排名相對靠后。對于負荷導數特征,除了SVM-RFE,其他2種方法中幾乎排在末尾;MIC方法中負荷二階導數排名普遍高于一階導數,RF中則相反。
(3) 由于氣象因素的隨機多變、不確定性,且對于負荷功率的影響存在延時和累積效應,各方法的特征排名存在明顯差異,選擇結果也不盡相同,但可知外部因素中溫度特征均占有較大權重。
(4) 據歷史負荷和溫度特征的排名,可知同一類型特征中,特征所在時間與預測日越近,重要性排名越高,這也體現了負荷影響因素的近因效應。
綜上,盡管對比結果說明了部分歷史負荷和溫度特征的重要性,但負荷導數特征的重要性也未得到體現且3種方法的特征排名結果之間存在明顯差異,僅靠設定閾值或是排名難以統一所選特征集,因此需要進一步對輸入特征集進行優化搜索和驗證分析。
針對以上3種特征選擇方法結果的差異性,文中提出利用遺傳算法對36個特征優化搜索得到最優特征子集。
與生物遺傳概念相對應,遺傳算法里個體指優化問題的可行解,為1個變量序列,可行解中每一分量代表的特征就是基因[19]。根據具體問題通過1種編碼方式,將可行解域中的每個解都表示為簡單的字符串或數字符串,即染色體。
待選特征集中共有36個特征,對應染色體中36個基因,每個個體都代表1種可能的特征組合,采用二進制對個體基因編碼,1代表選中該特征,0代表沒有選中,因此每個特征組合都可由1個長度為36的二進制串表示。
為找出使負荷預測準確率達到最高的最優特征子集,預測模型采用極限梯度提升XGBoost模型,通過1組弱分類器的迭代計算實現準確的分類效果[20—23]。目標函數采用負荷預測模型日負荷平均引用誤差的倒數,具體公式為:
(5)
其中:
(6)
式中:Xi為第i個遺傳個體,即1個可能的特征子集;Et為t時刻母線的負荷預測的引用誤差;N為測試集中的天數。文中日負荷曲線采用96點,時間間隔為15 min;Pt為t時刻母線負荷的實際值;P′t為t時刻母線負荷的預測值;PB為負荷基準值,220 kV母線的負荷基準值為305 MV·A。
文中基于遺傳算法的最優特征集搜索流程如圖7所示。由圖7可知,首先對待選特征集進行染色體編碼,接著隨機生成具有一定數量個體的初始種群。在每一代中,通過適應性函數計算值評價每一個體,并按照適應度高低進行排序。根據排名將優良個體挑選出來,通過交叉和變異過程實現種群的遺傳進化。該過程不斷重復,直至達到迭代次數,最終輸出最優特征子集。

圖7 遺傳算法流程Fig.7 Flow chart of genetic algorithm
文中采用某地區220 kV高壓側母線2017-01-01—2018-10-23的負荷數據作為算例,根據國網公司發布的《電網母線負荷預測工作考核管理辦法》,采用了母線的負荷預測引用誤差作為負荷預測相關考核指標,具體計算公式見式(5)和式(6)。除此之外,文中還采用平均絕對百分誤差(mean abso-lu-te percentage error,MAPE)來描述模型的預測性能。
(7)
式中:Pi為i時刻負荷的真實值;P′i為i時刻負荷的預測值;N為每日預測點總數。
依照以上遺傳算法流程,將交叉概率設為0.7,變異概率設為0.1,種群進化迭代次數設為100,每生成新一代種群,選擇其中最優個體輸出,種群進化100次后,共有18個特征,其中包含負荷導數特征,輸出的最優特征集如表3所示。

表3 遺傳算法輸出最優特征集Table 3 Optimal feature set obtained by genetic algorithm
遺傳算法迭代100次的目標函數值變化曲線如圖8所示。從迭代曲線和相應輸出結果數據中得出,當迭代次數達到56次,算法已經收斂。

圖8 遺傳算法目標函數變化曲線Fig.8 Curve of genetic algorithm objective function
表4列出了部分迭代次數后種群中最優個體的目標函數和相關負荷預測評價指標值。

表4 評價指標變化情況Table 4 Change of evaluation index values
由表4可知,算法每輪的輸出結果表明當前最優特征組合在逐步向最終的最優特征集合靠攏,目標函數值不斷增大,而日負荷平均引用誤差和預測模型的平均絕對百分比誤差在逐漸減小,最終得到最優特征子集。
在第2節中,已經得到MIC、SVM-RFE、RF的特征排名,考慮到閾值的設定會對各方法所選特征數量產生較大影響,選定3種特征選取方案對比上述3種方法與遺傳算法的特征選擇效果,具體分別為:
方案一:不做任何特征選擇,分別選取僅含歷史負荷因素和僅含負荷外部因素的特征集以及所有36個特征組成的特征集。
方案二:3種方法單獨考慮歷史負荷時,從歷史負荷排名結果中選取前9位,其他外部相關因素排名中選前9位,18個特征組成各自的輸入集。
方案三:3種方法將所有特征一起考慮,選擇總排名前18位特征作為輸入集。
為體現導數特征對于負荷預測的影響,增加一組對比量,利用遺傳算法對不含導數特征的輸入特征集進行優化搜索。
分別將上述方案中各方法的特征選擇結果作為負荷功率模型的特征輸入集,采用與遺傳算法中相同的XGBoost預測模型對算例中相同的訓練集和測試集分別進行訓練和負荷預測,各評價指標統計結果如表5所示。

表5 各特征選擇方法的負荷預測誤差統計Table 5 Load forecasting error statistics of various feature selection methods
由表5可知:
(1) 由方案一的3組結果對比得到歷史負荷因素對于負荷預測精度的重要性明顯高于外部因素。從3種方法的總排名中也可以得到驗證,其中歷史負荷特征排名總體相對靠前,導數特征中溫度導數特征重要性明顯弱于負荷導數特征。
(2) 后2種方案中,MIC結果變動不大,誤差結果較大;SVM-RFE結果同樣差距不大,且誤差較小;RF方法中3種方案的負荷預測誤差跨距最大。這說明歷史負荷特征與外部因素特征分開或合并選擇對MIC和RFE影響不大,對RF影響較大。
(3) 將不考慮導數特征的遺傳算法輸出結果作為負荷預測輸入特征時,誤差指標明顯增加,即負荷預測準確性下降,說明負荷導數特征一定程度上能描述負荷的變化趨勢,對負荷預測具有重要意義。
(4) SVM-RFE的2種方案選擇結果中均含有負荷導數,RF總排名前18位中也含有負荷導數特征。方案一中當僅有歷史負荷特征作為輸入和所有特征作為輸入時,模型的輸入特征集中包含了負荷導數特征,且預測效果有很大提升,與遺傳算法結果較為接近,進一步驗證了負荷導數特征的重要性,也對(2)中現象做出了合理解釋。但是,遞歸特征消除方法在所有特征一起考慮時僅僅選擇了3個,其中并不包含負荷導數特征,說明該方法利用交叉驗證分數存在一定的局限性。
(5) 綜合以上誤差統計情況,就日負荷平均引用誤差和MAPE而言,遺傳算法對應的數值結果都是所在行的最小值,說明遺傳算法所選特征集的預測結果要優于MIC、SVM-RFE和RF這3種方法所有特征選取方案和不做特征選擇時的預測結果,表明文中基于遺傳算法的最優特征集搜索方法對于負荷功率模型的特征輸入集確實有一定的優化效果,能夠有效提升負荷預測效果。
文中研究了短期功率模型的輸入特征集的選擇,針對MIC、SVM-RFE和RF 3種特征選擇方法結果存在差異性這一情況,進一步提出利用遺傳算法優化搜索最優特征集。對比各特征選擇方法和特征選取方案,誤差結果表明基于遺傳算法得到的最優特征集作為輸入可有效提高負荷預測精度,有助于確定負荷功率模型的輸入特征集,并驗證特征選擇相關研究在短期負荷預測方面的有效性。