林俐 湯亞芳 張尚然
摘 要:BP算法較強的自學習能力使之可對短期電力負荷進行預測,將一種改進的BP神經(jīng)網(wǎng)絡學習算法應用于短期電力負荷預測中,該算法由于加入動量項修正權值閾值提高了BP神經(jīng)網(wǎng)絡本身的精度,使得預測結果具有更高的精度,算例驗證了該算法處理短期電力系統(tǒng)負荷預測的高效性。
關鍵詞:神經(jīng)網(wǎng)絡;短期負荷預測;BP算法;動量項
1 概述
電力系統(tǒng)負荷預測實質(zhì)是對電力市場需求的預測,短期電力負荷預測是電力部門的重要工作之一。目前主要的負荷預測方法有傳統(tǒng)預測、灰色預測、混沌理論預測、智能技術預測、優(yōu)選組合預測等,其中智能預測中最典型的就是人工神經(jīng)網(wǎng)絡。
人工神經(jīng)網(wǎng)絡是一個極其復雜的非線性動力學系統(tǒng)。它的自學習功能對預測有著重要的意義,能通過學習已存在的歷史負荷數(shù)據(jù),來反映出輸入變量和輸出變量之間的非線性關系。由于很多因素都會對電力負荷造成影響,所以可以把神經(jīng)網(wǎng)絡算法引用到負荷預測中來,提高電力負荷的預測精度。本文針對短期電力負荷預測的問題,采用了一種增加動量項改進BP算法的負荷預測方法,并對某城市的有功負荷進行短期負荷預測仿真。
2 傳統(tǒng)BP算法及其改進
2.1 傳統(tǒng)BP模型及其學習過程
傳統(tǒng)BP算法的實質(zhì)是求均方誤差函數(shù)的最小值問題,常選擇Sigmoid型函數(shù)作為激勵函數(shù)。如圖2-1所示即為典型的三層BP神經(jīng)網(wǎng)絡的結構圖,從左至右依次為輸入層、隱含層、輸出層。一般情況下,輸入層單元數(shù)與輸出層相等,隱含層比輸入層多,一般多取2n-1,其中n為輸入層單元數(shù)。
[圖2-1 三層BP神經(jīng)網(wǎng)絡結構圖]
令輸入模式向量為Xk=(x,x,…,x)T,(k=1,2,…,m),m是學習模式對的個數(shù),n為輸入層單元數(shù);對應輸入模式的期望輸出模式向量為Yk=(y,y,…,y)T,q為輸出層單元數(shù);中間隱含層的凈輸入向量為Sk=(S,S,…,S)T,輸出向量為Bk=(b,b,…,b)T,p為隱含層單元數(shù);輸出層凈輸入向量為Lk=(l,l,…,l)T,實際輸出向量為Ck=(c,c,…,c)T;輸入層至隱含層的連接權值為W={wij}(i=1,2,…,n,j=1,2,…,p),隱含層到輸出層的連接權值為V={vjt},(j=1,2,…,p,t=1,2,…,q);隱含層各個單元的閾值為θ={θj}(j=1,2,…,p),輸出層各個單元的閾值為γ={γt}(t=1,2,…,q)。
中間隱含層各個神經(jīng)元的凈輸入和輸出:
S=wijs-θj j=1,2,…,p b=f(s) j=1,2,…,p
輸出層各個神經(jīng)元的凈輸入和實際輸出:
l=vjtb-γt t=1,2,…,q c=f(l) j=1,2,…,q
依據(jù)給定的期望輸出值,得到輸出層各個神經(jīng)元的校正誤差:
d=(y-c)f′(l) t=1,2,…,q;隱含層各個神經(jīng)元的校正誤差:
e=[vjtd]f′(S) j=1,2,…,p修正隱含層和輸出層神經(jīng)元之間的閾值γ,其中α為學習速率,0<α<1:
Δvjt=αdd i=1,2,…,p,t=1,2,…,q Δvjt=αdb i=1,2,…,p,t=1,2,…,q
Δγt=αd t=1,2,…,q
修正輸入層與隱含層的連接權值和隱含層神經(jīng)元的閾值θ,其中β為學習速率,0<β<1:
Δwij=βex i=1,2,…,n,j=1,2,…,p Δθj=βe j=1,2,…,p
直到全部m個學習模式對訓練完畢,然后判斷該神經(jīng)網(wǎng)絡的全局誤差E是否滿足訓練精度要求。
2.2 BP算法的改進
傳統(tǒng)BP算法在調(diào)整連接權值時,只考慮了此次調(diào)整的誤差梯度下降方向,因而經(jīng)常會使訓練過程發(fā)生振蕩,收斂速度緩慢。本文通過增加動量項調(diào)整連接權值來改進傳統(tǒng)BP算法,進而克服這些缺點。
為了提高神經(jīng)網(wǎng)絡的訓練速度,可以在對連接權值進行調(diào)整時,以一定的比例加上前一次學習時的調(diào)整量,即動量項,帶有動量項的連接權值調(diào)整公式為:
Δwij(n)=-β+ηΔwij(n-1)
其中ηΔwij(n-1)為動量項,n為學習次數(shù),η為動量系數(shù),0<η<1。加入動量項的實質(zhì),就是使其學習速率在訓練過程中不再是一個恒定的值。動量項對于n時刻的權值調(diào)整起著阻尼作用。在引入動量項后,向同一方向來進行連接權值的調(diào)整,即使兩次連接權值調(diào)整的方向不一樣,也可以減小訓練過程中的振蕩趨勢,提高訓練速度,加快網(wǎng)絡的收斂。
3 基于BP算法的短期電力系統(tǒng)負荷預測及其仿真分析
3.1 負荷預測的基本思想
利用BP神經(jīng)網(wǎng)絡預測未來時日的數(shù)據(jù),主要思想是以過去的歷史數(shù)據(jù)作為網(wǎng)絡的訓練數(shù)據(jù),當網(wǎng)絡訓練完畢,就可通過輸入新的時序數(shù)據(jù)來預測未來數(shù)據(jù)。因各種因素都會對短期負荷造成一定影響,于是便可建立如圖3-1所示的電力系統(tǒng)負荷預測的模型。
3.2 BP神經(jīng)網(wǎng)絡的設計
將一星期內(nèi)的每一天看成是相同的負荷類型,每隔兩小時對電力負荷進行一次測量,得12組整點測量的負荷數(shù)據(jù),記為輸入變量,輸出變量為預測日當天的12個整點的電力負荷值,中間層取神經(jīng)元位數(shù)為25。網(wǎng)絡中間層和輸出層神經(jīng)元的激勵函數(shù)均采用S型函數(shù)。
3.3 實例分析
參考文獻[2]中的數(shù)據(jù),以某城市2009年6月13日到6月23日的12個整點電力負荷值,作為該網(wǎng)絡的樣本數(shù)據(jù),預測6月24日的電力負荷值。分別采用傳統(tǒng)和改進的BP算法對這些數(shù)據(jù)用matlab進行編程仿真,預測結果如表1所示,預測結果仿真圖及誤差曲線圖分別如圖3-2、3-3所示。
由以上仿真結果可知,傳統(tǒng)BP算法電力負荷預測的最大誤差為0.4857%,平均絕對值相對誤差為0.0760%;改進BP算法電力負荷預測的最大誤差為0.0548%,平均絕對值相對誤差為0.0213%。綜合圖3-2和3-3的比較可得,加入動量項改進后的BP算法在預測精度上明顯優(yōu)于傳統(tǒng)BP神經(jīng)網(wǎng)絡算法,故該神經(jīng)網(wǎng)絡滿足應用要求。
4 結語
電力系統(tǒng)短期負荷預測對供輸電以及電力系統(tǒng)安全分析具有重要的意義。本文在傳統(tǒng)BP神經(jīng)網(wǎng)絡的基礎上,提出了加入動量項改進BP算法,克服了傳統(tǒng)BP算法的一些缺點和不足之處。仿真結果表明,該方法具有較高的預測精度,可以為電力系統(tǒng)提供有效的決策依據(jù)。
參考文獻:
[1]馬銳.人工神經(jīng)網(wǎng)絡原理[M].北京:機械工業(yè)出版社.2010:45-57.
[2]米陽,朱旺青,李正輝.改進的BP算法在短期負荷預測中的應用[J].上海電力學院學報,2011,27(1):14-18.
[3]潘雪濤.基于改進BP神經(jīng)網(wǎng)絡算法的短期負荷預測[J].上海電力學院學報,2012,28(4):388-391.
[4]高雋.人工神經(jīng)網(wǎng)絡原理及仿真實例[M].北京:機械工業(yè)出版社.2007:43-53.
[5]王小川,史峰,郁磊等.MATLAB神經(jīng)網(wǎng)絡43個案例分析[M].北京:北京航空航天大學出版社,2011:4-9.
作者簡介:
林俐,1992,安徽人,在職碩士研究生,研究方向:電力系統(tǒng)控制與穩(wěn)定運行;湯亞芳,貴州人,副教授;張尚然,1991,河北人,在職碩士研究生,研究方向:電力系統(tǒng)控制與穩(wěn)定運行。