程鵬遠(yuǎn),茅大鈞,胡 濤
(上海電力大學(xué) 自動化工程學(xué)院,上海 200082)
根據(jù)《中華人民共和國2020年國民經(jīng)濟(jì)和社會發(fā)展統(tǒng)計公報》所統(tǒng)計的信息,截止至2020年末,全國發(fā)電裝機(jī)容量220 058萬千瓦,其中火電裝機(jī)容量124 517萬千瓦,占比達(dá)56.58 %;全國發(fā)電量77 790.6億千瓦時,其中火電53 302.5億千瓦時,占比達(dá)68.52 %?;痣娔壳耙约霸谖磥磔^長的時間里,依舊是我國電力的最主要來源。
當(dāng)前火電廠主要是通過對比往年的發(fā)電量來對未來一定時間的發(fā)電量進(jìn)行預(yù)測,沒有建立相應(yīng)科學(xué)模型〔1,2〕,預(yù)測結(jié)果存在一定誤差,不利于發(fā)電及燃料采購計劃的制定。目前相關(guān)預(yù)測研究多集中在電力需求側(cè)用電總量和輸配電側(cè)的短期、超短期電力負(fù)荷精準(zhǔn)預(yù)測,聚焦電力交易和電網(wǎng)基礎(chǔ)安全〔3〕。但是,中長期發(fā)電量預(yù)測對電廠生產(chǎn)管理同樣有重要意義,持續(xù)穩(wěn)定且準(zhǔn)確的發(fā)電量預(yù)測是發(fā)電企業(yè)現(xiàn)金流和利潤率預(yù)測的關(guān)鍵〔4〕。
火電發(fā)電計劃由電網(wǎng)公司下達(dá),發(fā)電計劃制定受到經(jīng)濟(jì)增長、天氣以及節(jié)假日等因素的影響〔5〕,本文結(jié)合上海市某火力發(fā)電企業(yè)2018年~2020年發(fā)電量歷史數(shù)據(jù),分析發(fā)電量變化的特性規(guī)律,建立相關(guān)的預(yù)測模型。
如圖1所示,本文選取了2018年~2020年的日發(fā)電量數(shù)據(jù),通過對歷史發(fā)電量變化趨勢的分析研究,不同年份日發(fā)電量變化趨勢總體相對穩(wěn)定,但在傳統(tǒng)節(jié)日、異常天氣及特殊時期發(fā)電量會產(chǎn)生明顯變化,例如,2020年第一季度由于疫情因素,發(fā)電量出現(xiàn)了一個明顯的持續(xù)時間較長的低谷。
圖1 發(fā)電量歷史數(shù)據(jù)
在建模過程中若只考慮周期性,節(jié)假日和變化趨勢,建模忽視大量歷史數(shù)據(jù)中隱藏的非線性非周期性的特征,實際預(yù)測精度并不會提高。本文利用趨勢移動平均法在預(yù)測時間序列數(shù)據(jù)中的優(yōu)勢,結(jié)合LSTM神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)大量時序性歷史數(shù)據(jù)中的隱藏關(guān)系的能力,組成新的火電企業(yè)日發(fā)電量預(yù)測模型。
移動平均法是在時間序列持續(xù)演變的過程中,按照順序?qū)ㄈ舾蓴?shù)量的時序平均數(shù)進(jìn)行運(yùn)算,來對長期的變化趨勢做出預(yù)測。在實際的時間序列數(shù)據(jù)中,經(jīng)常會發(fā)生無規(guī)律波動,會對預(yù)測結(jié)果產(chǎn)生較大影響。移動平均法的運(yùn)用可以減小和避免無規(guī)律波動的影響,從而保證對時間序列的長期變化趨勢所做的預(yù)測具有準(zhǔn)確性。移動平均法的種類有簡單移動平均法,加權(quán)移動平均法和趨勢移動平均法等。
將觀測序列設(shè)為y1,…,yT,取移動平均的項數(shù)N (1) t=N,N+1,… (2) (3) 將前N階段序列值的平均數(shù)作為接下來各階段的預(yù)測值。N的取值區(qū)間通常為:200≥N≥5。當(dāng)往期序列的宏觀趨勢波動較小,同時序列中無規(guī)律振蕩發(fā)生較多時,N的取值通常取較大值。反之N的取值將取較小值。對于有固定變動周期的序列,通常將周期長度作為移動平均的項數(shù)。一般通過比較不同模型之間的預(yù)測誤差尋找最優(yōu)N值,最終取預(yù)測標(biāo)準(zhǔn)誤差較小的模型。 簡單移動平均法一般用于短期且目標(biāo)變化趨勢較小的預(yù)測,當(dāng)時間序列產(chǎn)生較大波動時,繼續(xù)使用該方法所預(yù)測的結(jié)果將存在較大滯后與誤差。 當(dāng)時間序列的變化趨勢波動不大時,通常使用簡單移動平均法和加權(quán)移動平均法來映射真實趨勢。但在時間序列發(fā)生不穩(wěn)定波動時,簡單移動平均法及加權(quán)移動平均法的局限性會顯露出來,預(yù)測結(jié)果將發(fā)生偏差與滯后。為解決該問題,可以使用二次移動平均處理,通過研究分析移動平均法滯后偏差的規(guī)律建立預(yù)測模型。該方法稱為趨勢移動平均法。一次移動的平均數(shù)的計算公式為: (4) 二次移動平均是連續(xù)進(jìn)行兩次移動平均,其計算公式為: (5) 設(shè)自某時刻起時間序列的變化趨勢為直線趨勢,同時在之后的周期里保持該直線趨勢進(jìn)行變化,便將該預(yù)測模型設(shè)為: (6) 式中:t為目前時期數(shù);T為自t至預(yù)測期的時期數(shù);at為截距;bt為斜率。平滑系數(shù)由二者組成。 平滑系數(shù)受移動平均值數(shù)值的影響。通過(6)可得: at=yt yt-1=yt-bt yt-2=yt-2bt … yt-N+1=yt-(N-1)bt 所以 (7) 由式(6),類似式(7)推導(dǎo),可得 (8) 所以 (9) 推導(dǎo)可得 (10) 于是由式(7)和式(10)可得 (11) 循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)是神經(jīng)網(wǎng)絡(luò)的一種,一般專門用于時間序列數(shù)據(jù)的處理,其中長短期記憶網(wǎng)絡(luò)(LSTM)是循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)的一種變種〔6〕。相同統(tǒng)計指標(biāo)的數(shù)據(jù)依照發(fā)生的先后順序組合排列形成的數(shù)列即為時間序列,時間序列數(shù)據(jù)通常用來反映某一特定項目在一定時期內(nèi)的變化趨勢。傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)建立的權(quán)連接只涉及不同層之間,RNN相比于傳統(tǒng)神經(jīng)網(wǎng)絡(luò)的優(yōu)勢在于將權(quán)連接建立在了不同層間的神經(jīng)元之間。對于時間序列的相關(guān)問題運(yùn)用RNN時會取得更好的效果,但是其也存在著一些不足,其中梯度消失的問題最為普遍。針對梯度消失的問題,在增加門限后,LSTM不僅解決了該問題,長期歷史數(shù)據(jù)的記憶能力也有了相應(yīng)提升,所以LSTM對較長時間跨度的數(shù)據(jù)信息進(jìn)行處理有著較好的效果。 圖2 LSTM神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖 循環(huán)神經(jīng)網(wǎng)絡(luò)LSTM通過遺忘門、輸入門、輸出門的設(shè)置克服了梯度消失的問題。LSTM神經(jīng)網(wǎng)絡(luò)的輸入門由前一單元的輸出ht-1,ct-1和本單元的輸入Xt共同構(gòu)成。將t時刻的輸入Xt與前一隱藏層的數(shù)據(jù)ht-1結(jié)合,再通過Wf將其變?yōu)榕ct時刻隱藏層相同的維度,并加入偏置bf后經(jīng)sigmoid函數(shù)進(jìn)行[0,1]區(qū)間內(nèi)的分類。tanh的作用是保證輸入函數(shù)的數(shù)值維持在[-1,1]的區(qū)間內(nèi)來適配網(wǎng)絡(luò),確保它的收斂速度快于sigmoid函數(shù)。在LSTM的輸出門中,Ct直接作為“記憶”輸出至下一單元。經(jīng)過tanh函數(shù)進(jìn)行運(yùn)算之后,ht接著與前一時刻的隱藏層與該時刻輸入的數(shù)據(jù)進(jìn)行乘積運(yùn)算。LSTM神經(jīng)網(wǎng)絡(luò)的計算公式如下所示。 ft=σ(Wf·[ht-1,Xt]+bf) (12) it=σ(Wi·[ht-1,Xt]+bi) (13) (14) (15) ot=σ(Wo·[ht-1,Xt]+bo) (16) (17) 本文所提出的移動平均-LSTM組合預(yù)測模型先分別由移動平均及LSTM模型對火電企業(yè)發(fā)電量進(jìn)行預(yù)測,再賦予不同的權(quán)重,最終的預(yù)測結(jié)果通過二者相加得出〔7〕。權(quán)重的值由最小二乘法得出,分別為α1、α2。其中: α1+α2=1 (18) 組合模型的流程圖如下圖所示。 圖3 組合模型流程圖 本文以上海市某火力發(fā)電企業(yè)2018年1月至2020年11月的日發(fā)電量數(shù)據(jù)為訓(xùn)練集,對2020年12月的日發(fā)電量進(jìn)行預(yù)測。通過與單一移動平均和LSTM模型的對比得出本文所提出的組合模型具有更高的精確性。 本文選取平均百分比誤差作為評價標(biāo)準(zhǔn),評價標(biāo)準(zhǔn)公式如下: (19) 式中:xi、xi′分別為發(fā)電量的預(yù)測值及實際值。 在對上述模型進(jìn)行訓(xùn)練處理后,得出2020年12月1日至12月31日的發(fā)電量預(yù)測值,并與單一的移動平均模型及LSTM模型的預(yù)測值實行比較。結(jié)果如圖4所示。 圖4 預(yù)測結(jié)果圖 本文采用平均百分比誤差作為評價標(biāo)準(zhǔn),來反映不同模型的精確度,結(jié)果見表1所示。 表1 預(yù)測效果對比 從表1及圖4可知,移動平均LSTM組合模型的精度較于單一算法的模型精度有所提高,更加接近實際曲線。 移動平均作為研究時間序列數(shù)據(jù)的常用工具,本文將其與LSTM神經(jīng)網(wǎng)絡(luò)結(jié)合,通過對上海市某火力發(fā)電企業(yè)的歷史數(shù)據(jù)進(jìn)行分析研究,得出了以下結(jié)論: (1)使用趨勢移動平均法對歷史數(shù)據(jù)進(jìn)行處理分析后得出未來一定時間內(nèi)的預(yù)測結(jié)果,實驗結(jié)果證明其具有一定的準(zhǔn)確性。 (2)LSTM適合在時間序列建模中使用,其有長時記憶的特點,使用簡單,解決了傳統(tǒng)長期歷史數(shù)據(jù)序列訓(xùn)練中梯度消失與爆炸的問題。 (3)在接下來的研究中,引入天氣、經(jīng)濟(jì)增長率等參數(shù),將其作為輸入變量,提升模型精確度。 (4)本模型在不同地區(qū)的預(yù)測精確度還需進(jìn)一步驗證,同時模型對突發(fā)事件如疫情的適應(yīng)性也需進(jìn)一步的研究。2.2 趨勢移動平均法
3 LSTM神經(jīng)網(wǎng)絡(luò)
4 移動平均-LSTM組合預(yù)測模型
5 實例分析
5.1 實驗精度評價
5.2 實驗結(jié)果
6 結(jié)語