孫玉芹,王亞文,朱威,李彥
(上海電力大學(xué)數(shù)理學(xué)院,上海市 200090)
電力負(fù)荷預(yù)測是電力公司進(jìn)行能源管理的關(guān)鍵。作為電力領(lǐng)域研究的重要問題,電力負(fù)荷預(yù)測既能為電力系統(tǒng)的安全運行提供保障,又可以為制定供電計劃提供有效的理論支持[1]。所以,具有較高預(yù)測精度的負(fù)荷預(yù)測方法,是理論研究的重點。由于電力負(fù)荷往往會受到多種因素的影響,電力負(fù)荷常表現(xiàn)為非線性、非平穩(wěn)和周期性[2-3],導(dǎo)致其精確預(yù)測的難度也隨之提高。
目前,常用的短期電力負(fù)荷預(yù)測的方法主要有:統(tǒng)計學(xué)方法[4-10]、傳統(tǒng)機器學(xué)習(xí)方法[11-16]和深度學(xué)習(xí)方法[17-20]。其中,統(tǒng)計學(xué)方法分為兩類,一類是時間序列建模方法。文獻(xiàn)[4]針對電力負(fù)荷序列的波動性,使用區(qū)間時間序列向量自回歸模型提高了負(fù)荷預(yù)測精度。文獻(xiàn)[5]結(jié)合Java的多線程技術(shù),基于自回歸差分移動平均(autoregressive integrated moving average,ARIMA)模型實現(xiàn)了R語言在電力負(fù)荷預(yù)測中的高效并行運算。文獻(xiàn)[6]考慮溫度對夏季電力負(fù)荷的影響,利用帶有協(xié)變量的ARIMA模型提高了負(fù)荷的預(yù)測精度。文獻(xiàn)[7]首次采用自激門限自回歸(self-excitation threshold autoregressive,SETAR)模型對日負(fù)荷進(jìn)行預(yù)測,解釋了負(fù)荷序列的非線性特征。雖然上述方法相對簡單易行、計算速度較快,但是只將氣溫和負(fù)荷非線性特性兩個因素中的一種作為研究內(nèi)容。另一類是以時間序列模型為基礎(chǔ)的組合模型方法。文獻(xiàn)[8]構(gòu)建了季節(jié)自回歸差分移動平均、廣義回歸神經(jīng)網(wǎng)絡(luò)和支持向量機三者結(jié)合的組合模型;文獻(xiàn)[9]提出了ARIMA和在線循環(huán)神經(jīng)網(wǎng)絡(luò)的組合模型;文獻(xiàn)[10]采用集合經(jīng)驗?zāi)J椒纸獾姆椒?,并結(jié)合長短期記憶網(wǎng)絡(luò)和ARIMA模型對負(fù)荷進(jìn)行短期預(yù)測。這些文獻(xiàn)使用的方法與單一模型相比,在負(fù)荷預(yù)測精度上提高不少,但模型機理和內(nèi)置參數(shù)復(fù)雜,對硬件配置要求較高,需要大量的數(shù)據(jù)訓(xùn)練模型才能發(fā)揮機器學(xué)習(xí)的優(yōu)勢,在小容量數(shù)據(jù)下的預(yù)測效果較差;當(dāng)處理不同的數(shù)據(jù)時,通常需要反復(fù)地調(diào)整超參數(shù),建模所需時間成本較高[21]。
本文在考慮氣溫對負(fù)荷影響的同時,兼顧負(fù)荷的非線性特征,利用氣溫與居民用電負(fù)荷的關(guān)系,以氣溫突變點為門限,將居民用電負(fù)荷時間序列分為兩段,每段為一個機制。根據(jù)負(fù)荷時間序列的非線性特征,建立以氣溫為協(xié)變量的門限自回歸移動平均(threshold autoregressive moving average with exogenous variable,TARMAX)模型。利用氣象預(yù)報30天的氣溫預(yù)報功能,對不同氣溫影響下的浙江省西南某地級市居民日用電負(fù)荷進(jìn)行預(yù)測。實例結(jié)果表明:該方法在居民用電負(fù)荷預(yù)測方面表現(xiàn)更優(yōu)。
許多研究表明:影響居民用電負(fù)荷的主要因素有各種氣象因素、節(jié)假日、重大事件等,其中氣溫的影響最大[22-23]。隨著生活水平的提高,用戶對生活舒適度的追求也相應(yīng)提高,在溫度較高或較低時,都采用風(fēng)扇、空調(diào)或取暖設(shè)備等保持適宜的溫度環(huán)境。特別是在極端氣溫情況下,長時間且大量地使用設(shè)備更容易增大負(fù)荷的峰谷差,影響全網(wǎng)的供電質(zhì)量。而且居民用電負(fù)荷和氣溫的時間序列都具有非線性特征,如圖1所示,給負(fù)荷分析和預(yù)測造成不便。
圖1 某居民用電負(fù)荷與最高氣溫的時間序列圖
通常采集到的氣溫數(shù)據(jù)有最高氣溫、最低氣溫和平均氣溫,三者與負(fù)荷的相關(guān)度大小由相關(guān)系數(shù)判斷。
Pearson相關(guān)系數(shù)計算如式(1)所示:
(1)
以浙江省西南某地級市2017年8月份氣溫與負(fù)荷數(shù)據(jù)為例,表1給出了氣溫與居民用電負(fù)荷的Pearson相關(guān)系數(shù)。通過分析表明:最高氣溫對居民用電負(fù)荷的影響最大,故將最高氣溫作為負(fù)荷協(xié)變量的最佳選擇。
表1 氣溫與居民用電負(fù)荷的相關(guān)度
圖2為浙江省西南某地級市2017年居民用電負(fù)荷和日最高氣溫的散點圖。最高氣溫存在“拐點”,又稱為突變點,將負(fù)荷序列分為兩個集群。若以該突變點為門限,門限左側(cè)的負(fù)荷序列與最高氣溫表現(xiàn)為負(fù)相關(guān),右側(cè)表現(xiàn)為正相關(guān)。
圖2 居民日用電負(fù)荷-日最高氣溫散點圖
如圖3所示,大于30 ℃?zhèn)群托∮?0 ℃?zhèn)鹊呢?fù)荷數(shù)據(jù)點均不連續(xù),所以不能分別對兩個負(fù)荷群建立時間序列模型。針對此類負(fù)荷時間序列,本文建立以氣溫為協(xié)變量、氣溫突變點為門限的雙體制TARMAX模型?;赥ARMAX模型,從整體負(fù)荷序列出發(fā),通過比較日最高氣溫與氣溫突變點的大小,居民負(fù)荷時間序列被分配到2個機制中。
圖3 兩側(cè)負(fù)荷序列圖
給定電力負(fù)荷時間序列,TARMAX模型[24]結(jié)構(gòu)如下:
(2)
基于TARMAX模型的負(fù)荷預(yù)測流程如圖4所示,隨機搜索變量算法得到的最優(yōu)模型結(jié)構(gòu)中只包含影響顯著的滯后項。
圖4 負(fù)荷預(yù)測流程圖
利用以貝葉斯定理為核心的馬爾科夫鏈蒙特卡洛(Markov chain Monte Carlo,MCMC)算法搜尋氣溫突變點,需要求得氣溫突變點的條件后驗分布。
2.1.1 氣溫突變點的條件后驗分布
模型式(2)似然函數(shù)的矩陣形式近似如下所示:
(3)
式中:n1、n2分別是兩個機制中負(fù)荷序列的數(shù)量;Θk是系數(shù)的列向量;Yk是第k個機制中負(fù)荷的列向量;Xk是由往期負(fù)荷時間序列構(gòu)成的矩陣。
根據(jù)模型參數(shù)的先驗信息[24],參數(shù)的條件后驗分布如式(4)—(7)所示。
參數(shù)1:服從多元正態(tài)分布:
(4)
參數(shù)2:服從逆伽馬分布:
(5)
參數(shù)3:氣溫突變點的條件后驗分布是非標(biāo)準(zhǔn)分布,近似形式如下:
(6)
參數(shù)4:d的條件后驗概率函數(shù)如下:
(7)
式中:d0是d的超參數(shù)。
2.1.2 氣溫突變點采樣
基于條件后驗分布的MCMC采樣步驟如下:
f=min{1,p(r*)/p[r(m-1)]}
(8)
步驟4:記錄每次的迭代值,再重復(fù)步驟2—3。
負(fù)荷模型的結(jié)構(gòu)取決于時間序列模型的滯后項。本文應(yīng)用隨機搜索變量方法[25]選擇影響顯著的模型系數(shù),以確定模型結(jié)構(gòu),避免了從龐大的模型群(數(shù)量級為107)中篩選最佳模型的困擾。
對于每個可能影響顯著的系數(shù),存在與否分別以取值1或0的潛變量s表示,其概率滿足:P(s=1)=P(s=0)=0.5。此時,模型系數(shù)(以自回歸系數(shù)為例)的先驗分布如下:
φ|s~(1-s)N(0,τ2)+sN(0,c2τ2)
(9)
式中:τ和c是超參數(shù)。
潛變量的條件后驗分布具有伯努利分布形式,s=1的條件概率為:
(10)
式中:聯(lián)合概率A=p(φ|s=1)P;Ψ是未知參數(shù)的集合;下標(biāo)-s代表不包括s;聯(lián)合概率B=p(φ|s=0)(1-P);P=0.5;p是模型系數(shù)在s取不同值時的條件概率。
本文選取平均絕對百分比誤差(mean absolute percentage error, MAPE)、均方根誤差(root mean squared error, RMSE)、平均絕對誤差(mean absolute error,MAE)、平均百分比誤差(mean percentage error,MPE)和平均誤差(mean error, ME)判斷模型的預(yù)測效果,部分誤差的計算式分別為:
(11)
(12)
(13)
實驗選取浙江省西南某地級市2017年5月1日到2020年3月31日的居民日平均用電負(fù)荷數(shù)據(jù)。數(shù)據(jù)取自然對數(shù),使用遞歸時間窗口預(yù)測。為了驗證模型在不同氣溫下的有效性,將2017年5月1日到預(yù)測月份前一日的數(shù)據(jù)作為訓(xùn)練集,分別對2019年6月、9月、12月以及2020年3月等4個不同季節(jié)的居民用電負(fù)荷進(jìn)行預(yù)測。
Vk取值為對角矩陣diag(0.1,0.1,0.1);門限的超參數(shù)可以根據(jù)負(fù)荷-溫度散點圖確定,圖2中氣溫的突變點在30 ℃左右,故先驗分布U(a,b)中的a與b分別取氣溫的20%和80%分位數(shù);αk=1,βk=0.5;d0取為4;用于模型選擇的超參數(shù)的取值應(yīng)滿足:(τ,c)=(σ/4,20),其中,σ是系數(shù)φ的標(biāo)準(zhǔn)差;將不同階數(shù)的模型殘差帶入赤池信息準(zhǔn)則(akaike information criterion, AIC)中,當(dāng) AIC最小時,模型最大的滯后階數(shù)取5。整個MCMC過程執(zhí)行5 000次,將前1 000次作為燃燒期,為了降低初始值的影響,獲得近似獨立的樣本,本文在剩余樣本中每隔10個抽取一個用于統(tǒng)計計算,將樣本的均值作為參數(shù)的估計值。
如圖5所示,氣溫突變點(取對數(shù))的采樣值集中在3.45附近,累計均值表明樣本最終收斂。該采樣值對應(yīng)的實際氣溫為31.5 ℃,與預(yù)期的氣溫突變點相近。
圖5 氣溫突變點的采樣結(jié)果
在上述氣溫突變點的基礎(chǔ)上,對模型系數(shù)進(jìn)行選擇。如圖6所示,以每個系數(shù)的潛變量的后驗概率大于0.5作為系數(shù)選擇的標(biāo)準(zhǔn)[25],模型的形式最終確定為:
圖6 負(fù)荷預(yù)測模型的選擇結(jié)果
(14)
圖7為不同模型對2019年6月居民用電負(fù)荷的預(yù)測負(fù)荷曲線。從圖7中可以看出,TARMAX模型的預(yù)測值(紅色折線)接近負(fù)荷的真實值(黑色折線),預(yù)測效果較好;同時,TARMAX模型在峰谷處的預(yù)測具有一定優(yōu)勢。而帶協(xié)變量的自回歸移動平均(autoregressive moving average with exogenous variable, ARIMAX)和ARIMA模型的負(fù)荷曲線表現(xiàn)為:以真實負(fù)荷曲線為中心上下變化,且變化幅度較大。
圖7 2019年6月居民用電負(fù)荷預(yù)測結(jié)果
表2給出了不同模型的預(yù)測誤差結(jié)果。其中,TARMAX模型的MAPE值為4.167%,與ARIMAX模型相比提高了3.762%;RMSE值為6.833%,相比ARIMAX模型降低了3.753%。表明TARMAX模型的預(yù)測精度高于線性時間序列模型。同時,TARMAX模型在小數(shù)據(jù)量下的預(yù)測效果明顯優(yōu)于LSTM和MLP。
表2 2019.6居民用電負(fù)荷預(yù)測精度
為了進(jìn)一步驗證所提方法的有效性,本文對浙江省西南某地級市2019年9月和12月、2020年3月的居民用電負(fù)荷進(jìn)行預(yù)測。不同模型的預(yù)測結(jié)果如圖8至10所示,相比其他模型,TARMAX模型的預(yù)測精度更高,且在不同季節(jié)的預(yù)測表現(xiàn)都較平穩(wěn)。
圖8 2019年9月居民用電負(fù)荷預(yù)測結(jié)果
圖9 2019年12月居民用電負(fù)荷預(yù)測結(jié)果
圖10 2020年3月居民用電負(fù)荷預(yù)測結(jié)果
表3給出了不同月份的預(yù)測誤差指標(biāo)的對比結(jié)果。從表3可以看出:TARMAX模型的誤差均低于其他模型,MAPE的值基本為ARIMAX模型的一半,相比之下RMSE和其他誤差指標(biāo)也較低;雖然ARIMAX模型的預(yù)測誤差略低于ARIMA模型,但該模型未考慮非線性因素,所以預(yù)測效果略差??傮w來說,TARMAX模型在居民用電負(fù)荷預(yù)測方面效果更優(yōu),該模型對不同季節(jié)氣溫影響下的居民用電負(fù)荷均有良好的適應(yīng)能力。
表3 不同月份居民用電負(fù)荷預(yù)測精度
根據(jù)文中1.1節(jié)所述,平均氣溫與負(fù)荷的相關(guān)系數(shù)略小于最高氣溫的相關(guān)系數(shù),為了驗證平均氣溫對居民用電負(fù)荷的影響大小,表4給出了以平均氣溫為協(xié)變量的TARMAX模型的預(yù)測結(jié)果。通過與以最高氣溫為協(xié)變量的預(yù)測結(jié)果相比可以看出:兩者的預(yù)測誤差較為接近,表明平均氣溫對負(fù)荷也有重要的影響。
表4 以平均氣溫為協(xié)變量的預(yù)測精度
圖11為2014年1月到2016年8月浙江省西南某地級市和北京市的月用電負(fù)荷-月平均最高氣溫散點圖,月負(fù)荷數(shù)據(jù)由一個月中每日平均負(fù)荷數(shù)據(jù)累加得到??梢钥闯觯罕本┑貐^(qū)的負(fù)荷也存在門限效應(yīng),與浙江地區(qū)相比,由于地域因素,其門限值小于浙江地區(qū)的門限值。所以本文所提方法在北方地區(qū)同樣適用。
圖11 不同地區(qū)負(fù)荷-氣溫散點圖
本文充分利用氣溫與居民用電負(fù)荷之間的關(guān)系,發(fā)現(xiàn)了居民用電負(fù)荷時間序列的門限效應(yīng)。針對此類非線性特征,以氣溫為協(xié)變量、氣溫突變點為門限,建立了非線性TARMAX模型。所建模型克服了傳統(tǒng)線性時間序列模型對非線性時間序列擬合的困境;同時,加入了外源因素——氣溫,進(jìn)一步提高了預(yù)測精度。文中應(yīng)用MCMC算法搜尋到了氣溫突變點,反映了居民用電負(fù)荷的非線性特征。其次,根據(jù)隨機搜索變量方法高效地選擇出模型系數(shù),提高了算法的實際應(yīng)用價值。通過實例對不同季節(jié)下的居民用電負(fù)荷進(jìn)行了預(yù)測。結(jié)果表明:TARMAX預(yù)測效果優(yōu)于傳統(tǒng)線性時間序列模型、LSTM和MLP,驗證了該方法在負(fù)荷預(yù)測方面的有效性,且能適應(yīng)氣溫較大幅度變化。
本文所用算法可以與機器學(xué)習(xí)、深度學(xué)習(xí)相結(jié)合,構(gòu)成新的組合模型來進(jìn)一步提高負(fù)荷預(yù)測精度;由于在協(xié)變量的選擇上考慮了氣溫因素,因此,預(yù)測的效果會受到天氣預(yù)報準(zhǔn)確度的影響;同時,在今后的研究中,可以考慮多重氣象因素對電力負(fù)荷的影響。