鄭敏嘉,盧 洵,程 鑫
(廣東電網(wǎng)發(fā)展研究院,廣東廣州 510080)
負(fù)荷預(yù)測是電網(wǎng)規(guī)劃的重要組成部分,目前負(fù)荷預(yù)測主要通過分析歷史數(shù)據(jù)、氣象數(shù)據(jù)等建立負(fù)荷預(yù)測模型,對未來負(fù)荷發(fā)展進(jìn)行預(yù)測[1]。受經(jīng)濟(jì)發(fā)展、產(chǎn)業(yè)結(jié)構(gòu)、用電習(xí)慣、氣候條件等多種因素的綜合影響,電力負(fù)荷具有復(fù)雜性和隨機(jī)性的特點(diǎn)[2-3]。目前在負(fù)荷預(yù)測領(lǐng)域較為常用的方法有單耗法、回歸分析法、彈性系數(shù)法、負(fù)荷密度法、灰色預(yù)測法、神經(jīng)網(wǎng)絡(luò)法等[4-7]。隨著大數(shù)據(jù)處理和云計(jì)算技術(shù)的發(fā)展,基于海量歷史數(shù)據(jù)和具有學(xué)習(xí)能力的模型被應(yīng)用到負(fù)荷預(yù)測領(lǐng)域。文獻(xiàn)[8]介紹基于Hadoop大數(shù)據(jù)技術(shù)的模式匹配短期電力負(fù)荷預(yù)測方法;文獻(xiàn)[9]介紹將馬爾可夫鏈與灰色預(yù)測相結(jié)合的風(fēng)電預(yù)測方法,均是將電力系統(tǒng)海量數(shù)據(jù)應(yīng)用于電力預(yù)測的初步探索。
目前,在負(fù)荷預(yù)測方面馬爾可夫模型已得到廣泛應(yīng)用。與馬爾可夫模型相比,隱馬爾可夫模型具有兩個(gè)優(yōu)點(diǎn),一是數(shù)學(xué)結(jié)構(gòu)更復(fù)雜、參數(shù)選擇更靈活,在訓(xùn)練模型時(shí)可根據(jù)數(shù)據(jù)的復(fù)雜程度匹配合適的模型復(fù)雜度,選取合適的參數(shù)數(shù)量和計(jì)算緯度,從而得到最優(yōu)預(yù)測模型;二是隱馬爾可夫模型的訓(xùn)練過程基于大量歷史數(shù)據(jù),其訓(xùn)練結(jié)果符合統(tǒng)計(jì)學(xué)規(guī)律,數(shù)據(jù)量越大則訓(xùn)練出來的模型更符合客觀規(guī)律,預(yù)測結(jié)果更準(zhǔn)確。
綜合上述兩項(xiàng)優(yōu)點(diǎn),認(rèn)為采用HMM模型進(jìn)行負(fù)荷預(yù)測是可行的。
1.1.1 馬爾可夫鏈
馬爾可夫鏈?zhǔn)侵笖?shù)學(xué)中具有馬爾可夫性質(zhì)的離散事件隨機(jī)過程[10],具體描述一種具有無后效性的狀態(tài)序列S1S2S3…SN。馬爾可夫鏈的每一步狀態(tài)轉(zhuǎn)移過程是隨機(jī)的,且轉(zhuǎn)移概率只與當(dāng)前狀態(tài)有關(guān),統(tǒng)計(jì)上用一個(gè)N×N的狀態(tài)轉(zhuǎn)移概率矩陣A描述各狀態(tài)之間的轉(zhuǎn)移概率,矩陣內(nèi)元素Aij表示從狀態(tài)i轉(zhuǎn)移至狀態(tài)j的概率。如圖1所示,假設(shè)馬爾可夫鏈共有S1、S2、S3三個(gè)狀態(tài),且已知t時(shí)刻所處狀態(tài)為S2,那么t+1時(shí)刻的狀態(tài)為S1的概率是A21,狀態(tài)為S2的概率是A22,狀態(tài)為S3的概率是A23,A21+A22+A23=1。
圖1 馬爾可夫鏈狀態(tài)轉(zhuǎn)移概率示意圖
1.1.2 HMM模型
隱馬爾可夫模型(Hidden Markov Model,下文簡稱HMM模型)與馬爾可夫鏈的主要區(qū)別是,包含隱藏的未知參數(shù)且狀態(tài)序列不可直接觀測得到。隱馬爾可夫模型示意如圖2所示。
圖2 隱馬爾可夫鏈
隱馬爾可夫模型θ包含3個(gè)參數(shù),狀態(tài)轉(zhuǎn)移概率矩陣A,發(fā)散概率矩陣B,初始狀態(tài)矩陣π。
隱馬爾可夫模型的狀態(tài)轉(zhuǎn)移概率由矩陣A決定。隱藏狀態(tài)序列可通過觀測序列Y=y1y2…yT及對應(yīng)的矩陣B得到。假設(shè)HMM模型共有N種狀態(tài),T個(gè)觀測值,那么B為一個(gè)N×T矩陣,Bi(yt)表示在時(shí)刻t狀態(tài)為Si且所得觀測值為yt的概率。
HMM模型在電力系統(tǒng)中被應(yīng)用于系統(tǒng)狀態(tài)預(yù)測[11]以及短期負(fù)荷預(yù)測領(lǐng)域[12],并已取得較好的預(yù)測結(jié)果。該研究中,觀測向量為日負(fù)荷特性指標(biāo),觀測序列Y為逐年日負(fù)荷特性指標(biāo)。根據(jù)統(tǒng)計(jì)學(xué)規(guī)律,合理假設(shè)觀測值y為隨機(jī)變量,且服從正態(tài)分布Y~N(μ,σ2),那么其概率密度函數(shù)可由下式表示。
概率分布函數(shù)可表示為:
以日最小負(fù)荷率 β為例, β~[0.5,0.6]的概率可表示為Pr(0.5≤β≤0.6)=F(0 . 6)-F(0.5),如圖3所示。
初始狀態(tài)矩陣π描述了t=1時(shí)刻的狀態(tài)概率,π=(π1,π2,…,πN),且π1+π2+…+πN=1。
基于上述隱馬爾可夫模型的定義,在實(shí)際應(yīng)用中構(gòu)建模型時(shí)一般將其分解為3個(gè)基本問題:
(1)概率計(jì)算:已知觀察序列Y 和模型θ=(A,B,π),求由該模型得到觀測序列的概率Pr(Y|θ)。
(2)學(xué)習(xí)問題:已知觀測序列Y,求解觀測序列的概率Pr(Y|θ)最大的時(shí)候的模型參數(shù)A,B,π。
(3)預(yù)測及解碼問題:已知觀察序列Y和模型θ,求解觀察序列的隱藏狀態(tài)序列S=S1S2…ST。
圖3 累積分布函數(shù)
HMM模型第一個(gè)問題通常用前向-后向算法解決。將長度為T的觀測序列分為兩部分,用前向算法計(jì)算前半部分概率Pr(Y=y1y2…yt|θ),用后向算法計(jì)算后半部分的概率 Pr(Y=yt+1yt+2…yT|θ)。
1.2.1 前向算法
前向算法可由下式表示,αi(t)表示由已知模型θ得到觀測序列y1y2…yt且時(shí)刻t的狀態(tài)為Si的概率。
αi(1)表示由已知模型θ得到初始觀察值y1且初始狀態(tài)為Si的概率:
其中:πi為初始狀態(tài)等于i的概率,Bi(y1)為初始狀態(tài)為i且得到y(tǒng)1的概率。
前向算法t+1時(shí)刻的概率可由t時(shí)刻的概率遞推得到,αj(t +1)表示得到觀察序列y1y2…yt+1且第t+1時(shí)刻的觀察值為yt+1且為Sj的概率,見下式:
1.2.2 后向算法
后向算法的原理與前向算法類似, βi(t)表示由已知模型θ得到觀察序列yt+1yt+2…yT,且時(shí)刻t+1的狀態(tài)為Si的概率。已知 βi(T )=1,t時(shí)刻的概率可由t+1時(shí)刻遞推計(jì)算求得。其中ΣjN=1βj(t +1) aij表示t時(shí)刻狀態(tài)為Si的概率,bj(yt+1)表示t+1時(shí)刻由狀態(tài)Sj得到觀測值yt+1的概率。
結(jié)合前后向算法,可計(jì)算由模型θ得到觀察序列Y的概率。
HMM模型的第2個(gè)問題,模型訓(xùn)練問題通常用Baum-Welch算法求解。通過前向后向算法可得到和, 下 面 引 入γ、ξ,對矩陣A、矩陣B的參數(shù)進(jìn)行迭代更新,求解最優(yōu)模型參數(shù)。γi(t)表示已知模型θ和觀測序列Y,在t時(shí)刻處于狀態(tài)Si的概率。
其中:αi(t)βi(t)為 概 率Pr(Y|St=Si,θ),為概率P(Y |θ)。r
ξij(t)表示t時(shí)刻由狀態(tài)Si轉(zhuǎn)移至t+1時(shí)刻的狀態(tài)Sj的概率。
通過計(jì)算γ、ξ可對隱馬爾可夫模型參數(shù)矩陣A、矩陣B進(jìn)行迭代更新。
每一次迭代完成后將得到一個(gè)新模型θnew,由新模型得到觀察序列Y的概率需比舊模型的概率大,即表明新模型優(yōu)于舊模型。重復(fù)迭代過程,直到新模型與舊模型的概率差值小于某一個(gè)很小的誤差值,或迭代次數(shù)達(dá)到上限,模型訓(xùn)練結(jié)束,輸出的新模型θnew即為訓(xùn)練的最優(yōu)模型。
Viterbi算法和前向后向算法的目的本質(zhì)上是一樣的,但計(jì)算速度快,因此通常用Viterbi算法解決HMM模型的第3個(gè)問題,預(yù)測及解碼問題。預(yù)測及解碼問題實(shí)際上是在訓(xùn)練得到的最優(yōu)模型上計(jì)算得到觀測序列Y的概率。通過Viterbi算法,可以得到各個(gè)時(shí)刻的狀態(tài)值。
Viterbi算法的初始化中δi(1)表示初始時(shí)刻處于狀態(tài)Si且得到觀測值y1的概率,Ψi(1)表示上一時(shí)刻的最有可能的狀態(tài)值,因此初始值可設(shè)為0。
t+1時(shí)刻的概率可通過遞推計(jì)算得到。其中δj(t +1)表示t+1時(shí)刻處于狀態(tài)Sj且得到觀測序列 y1y2…yt+1的概率,Ψj(t + 1)表示已知t+1時(shí)刻的狀態(tài)為Sj,t時(shí)刻最有可能的狀態(tài)值。
根據(jù)上述遞推方法,可以得到前T-1時(shí)刻的狀態(tài)序列St1St2…ST-1,根據(jù)T-1時(shí)刻的狀態(tài)值和狀態(tài)轉(zhuǎn)移矩陣A,可計(jì)算T時(shí)刻的狀態(tài)值ST。
該計(jì)算基于Matlab計(jì)算結(jié)果,以2011年~2016年的日最小負(fù)荷率作為模型訓(xùn)練數(shù)據(jù),預(yù)測2017年的日最小負(fù)荷率,通過與2017年的實(shí)際值對比,檢驗(yàn)預(yù)測準(zhǔn)確度。預(yù)測過程包括幾個(gè)步驟:
(1)用2011~2016夏季各典型日的日最小負(fù)荷率作為統(tǒng)計(jì)數(shù)據(jù),假設(shè)其符合正態(tài)分布,用Matlab函數(shù)mean和var計(jì)算期望值 μ和方差σ2。
(2)設(shè)定HMM模型初始參數(shù)A,B,π。設(shè)定HMM模型隱藏狀態(tài)數(shù)N=3,觀測數(shù)列長度T=5,矩陣B初始值可由步驟(1)的 μ和σ2計(jì)算得到,概率分布可由Matlab函數(shù)normcdf求得,初始初始狀態(tài)矩陣π=(0.5,0.25,0.25)。
(3)訓(xùn)練HMM模型。將2011~2016年數(shù)據(jù)按2011~2015、2012~2016分為兩組。第一組數(shù)據(jù)為Y1,根據(jù)初始模型參數(shù)求得α、β矩陣。
(4)計(jì)算γ、ξ矩陣。
(5)重新計(jì)算HMM模型參數(shù)矩陣A、矩陣B,并計(jì)算由新模型獲得Y1的概率
(7)在步驟(6)基礎(chǔ)上,用第2組數(shù)據(jù)Y2進(jìn)行再次訓(xùn)練,重復(fù)步驟(5)、(6),并輸出新模型。
(8)改變模型參數(shù)設(shè)定,分別考慮N=4,N=5的情況,對隱馬爾可夫模型進(jìn)行訓(xùn)練,選出最優(yōu)隱藏狀態(tài)數(shù)N和最優(yōu)模型θ。
(9)以2013~2016年的數(shù)據(jù)作為預(yù)測序列Yp,通過Viterbi算法求解隱藏狀態(tài)序列St1St2St3St4,根據(jù)St4及Anew的狀態(tài)轉(zhuǎn)移概率,預(yù)測St5的狀態(tài)值,該狀態(tài)值對應(yīng)的 μ即是2017年的預(yù)測值。
受多種因素影響,2011~2016年期間廣東夏季典型日最小負(fù)荷率波動(dòng)較大,不利于模型訓(xùn)練,給預(yù)測增加了難度。由圖4可見,廣東夏季典型日最小負(fù)荷率在(0.55,0.65)之間波動(dòng)。
圖4 2011~2016年廣東夏季典型日最小負(fù)荷率
隱藏狀態(tài)的數(shù)量應(yīng)根據(jù)實(shí)際觀測數(shù)列長度進(jìn)行選擇,通過模型訓(xùn)練結(jié)果比較,隱藏狀態(tài)數(shù)為N=3時(shí)模型訓(xùn)練效果最好,該例最終選取3個(gè)隱藏狀態(tài)的模型。
該算例經(jīng)過12次迭代計(jì)算后,完成模型訓(xùn)練??梢姡蒘1轉(zhuǎn)移至S2的概率為0.832,由S2轉(zhuǎn)移至S3的概率為0.758,保持S3狀態(tài)的概率為0.995,狀態(tài)轉(zhuǎn)移基本保持著向前傳遞的趨勢。
最優(yōu)模型的 μnew、σnew輸出結(jié)果如圖5所示。其中μ1=0.606, μ2=0.59, μ3=0.649,基本符合圖4所示的日最小負(fù)荷率變化規(guī)律,=0.0098,=0.0095,=0.0088。
圖5 HMM模型參數(shù) μnew及σnew
根據(jù)計(jì)算結(jié)果,St5的狀態(tài)值為S3,因此2017年的典型日最小負(fù)荷率預(yù)測值為 μ3,即0.649,該結(jié)果與2017年廣東實(shí)際日最小負(fù)荷率相差不大。
通過隱馬爾可夫模型進(jìn)行負(fù)荷預(yù)測的計(jì)算,可以得到以下幾點(diǎn)結(jié)論:
(1)用隱馬爾可夫模型進(jìn)行負(fù)荷預(yù)測是可行的。利用HMM模型進(jìn)行負(fù)荷預(yù)測具有較高的準(zhǔn)確率。
(2)HMM模型預(yù)測的優(yōu)點(diǎn)是具有學(xué)習(xí)能力,可以根據(jù)歷年的數(shù)據(jù)對模型進(jìn)行及時(shí)更新,提高預(yù)測準(zhǔn)確率,方法的適應(yīng)性較強(qiáng)。另外,根據(jù)實(shí)驗(yàn)結(jié)果,隨著數(shù)據(jù)量的增加,HMM模型預(yù)測準(zhǔn)確度也將提高,當(dāng)用于訓(xùn)練模型的數(shù)據(jù)量達(dá)到一定規(guī)模時(shí),預(yù)測的準(zhǔn)確度將得到顯著提升。
(3)HMM模型預(yù)測的缺點(diǎn)是對歷史數(shù)據(jù)的依賴程度較高,模型訓(xùn)練的結(jié)果很大程度上取決于訓(xùn)練數(shù)據(jù)的優(yōu)劣,且該方法僅根據(jù)歷史數(shù)據(jù)進(jìn)行建模,難以應(yīng)對突變情況。
(4)若需對此方法進(jìn)行完善,可考慮從數(shù)據(jù)篩選或數(shù)據(jù)特性挖掘方面入手,提高原始數(shù)據(jù)的質(zhì)量,從而提高預(yù)測的準(zhǔn)確性。