基于BP神經(jīng)網(wǎng)絡的短期負荷預測

  摘要:基于人工神經(jīng)網(wǎng)絡原理,設計了一個三層的BP網(wǎng)絡來實現(xiàn)電力系統(tǒng)的短期負荷預測。經(jīng)過仿真驗證,利用BP神經(jīng)網(wǎng)絡進行電力系統(tǒng)短期負荷預測是可行和有效的,其預報結果準確性很高。

  關鍵詞:短期負荷預測;BP神經(jīng)網(wǎng)絡;電力系統(tǒng)  

  0前言

   電力系統(tǒng)負荷預測是電力生產(chǎn)部門的重要工作之一,通過準確的負荷預測,可以經(jīng)濟合理地安排機組啟停,減少旋轉備用容量,合理安排檢修計劃,降低發(fā)電成本,提高經(jīng)濟效益。許多學者對此進行了研究,提出了很多種預測方法,并且及時地將數(shù)學上的最新進展應用到預測中去,使預測的水平得到迅速提高,負荷預測研究取得了很大的進展。

  1負荷的分類及其短期預測的方法

  1.1負荷的分類

   負荷預測按預測時間可以分為長期、中期和短期負荷預測。其中,在短期負荷預測中,周負荷預測(未來7天)、日負荷預測(未來24小時負荷預測)及提前小時預測對于電力系統(tǒng)的實時運行調度至關重要。因為對未來時刻進行預調度要以負荷預測的結果為依據(jù),負荷預測的結果的準確性將直接影響調度的結果,從而對電力系統(tǒng)的安全穩(wěn)定運行和經(jīng)濟性帶來重要影響。

  1.2負荷短期預測的方法

   電力系統(tǒng)負荷短期預報問題的解決辦法和方式可以分為統(tǒng)計技術、專家系統(tǒng)法和神經(jīng)網(wǎng)絡等3種。統(tǒng)計技術中所用的短期負荷模型一般可歸為時間系列模型和回歸模型。時間系列模型的缺點在于不能充分利用對負荷性能有很大影響的氣候信息等因素,但需要事先知道負荷與氣象變量之間的函數(shù)關系,這是比較困難的。而且為了獲得比較精確的預報結果,需要大量的計算,這一方法不能處理氣候變量和與負荷之間的非平衡暫態(tài)關系。專家系統(tǒng)法利用了專家的經(jīng)驗知識和推理規(guī)則,使節(jié)假日或有重大活動日子的符合預報精度得到了提高。但是,把專家知識和經(jīng)驗等準確地轉化為一系列規(guī)則是非常不容易的。

   眾所周知負荷曲線是與很多因素相關的一個非線性關系函數(shù)。對于抽取盒逼近這種非線性函數(shù),神經(jīng)網(wǎng)絡是一種合適的方法。神經(jīng)網(wǎng)絡的優(yōu)點在于它具有模擬多變量而不需要對輸入變量做復雜的相關假定的能力。它不依靠專家經(jīng)驗,只利用觀察到的數(shù)據(jù),可以從訓練過程中通過學習來抽取和逼近隱含的輸入/輸出非線性關系。近年來的研究表明,相對于前兩種方法,利用神經(jīng)網(wǎng)絡技術進行電力系統(tǒng)短期負荷預報可獲得更高的精度。本文主要采用BP神經(jīng)網(wǎng)絡來對電力系統(tǒng)短期負荷進行預測。

  2BP神將網(wǎng)絡

  2.1BP學習算法的思想

   BP算法的基本思想是,學習過程由信號的正向傳播與誤差的反向傳播兩個過程組成。正向傳播時,輸入樣本從輸入層傳入,經(jīng)各隱層逐層處理后,傳向輸出層。若輸出層的實際輸出與期望的輸出(教師信號)不符,則轉入誤差的反向傳播階段。誤差反傳是將輸出誤差以某種形式通過隱層向輸入層逐層反傳,并將誤差分攤給各層的所有單元,從而獲得各層單元的誤差信號,此誤差信號即作為修正各單元權值的依據(jù)。這種信號正向傳播與誤差反向傳播的各層權值調整過程,是周而復始地進行的。權值不斷調整的過程,也就是網(wǎng)絡的學習訓練過程。此過程一直進行到網(wǎng)絡輸出的誤差減少到可接受的程度,或進行預先預定的學習次數(shù)為止。

  2.2BP神經(jīng)網(wǎng)絡的組成及作用

   BP神經(jīng)網(wǎng)絡的產(chǎn)生歸功于BP算法的獲得,它有一個輸入層、一個輸出層和一個或多個隱含層,同層神經(jīng)元間無關聯(lián),各層神經(jīng)元間向前連接,根據(jù)對象的復雜程度,選擇適當?shù)木W(wǎng)絡結構,就可以實現(xiàn)從輸入空間到輸出空間的任意非線性函數(shù)的映射。

   BP神經(jīng)網(wǎng)絡主要用于:(1)函數(shù)逼近,即用輸入矢量和相應的輸出矢量訓練一個網(wǎng)絡逼近一個函數(shù);(2)系統(tǒng)辨識和預測,即用一個特定的輸出矢量將它與輸入矢量聯(lián)系起來;(3)分類,即把輸入矢量以所定義的合適方式進行分類;(4)數(shù)據(jù)壓縮,即減少輸出矢量維數(shù)以便于傳輸或存儲。

  3短期負荷預測的BP神經(jīng)網(wǎng)絡設計

  3.1輸入/輸出向量設計

   在預測日的前一天中,每隔2個小時對電力負荷進行1次測量,這樣一來,一天共測得12組負荷數(shù)據(jù)。由于負荷值曲線相鄰的點之間不會發(fā)生突變。因此后一時刻的值必然和前一時刻的值有關,除非出現(xiàn)重大事故等特殊情況。所以這里將前一天的實時負荷數(shù)據(jù)作為網(wǎng)絡的樣本數(shù)據(jù)。

   此外,由于電力負荷還與環(huán)境因素有關,比如最高和最低氣溫等,因此,還需要通過天氣預報等手段獲得預測日的最高氣溫、最低氣溫和天氣特征值(晴天、陰天還是雨天)。以此形式表示天氣特征值:0——晴天,0.5——陰天,1——雨天。這里將電力負荷預測日當天的氣象特征數(shù)據(jù)作為網(wǎng)絡的輸入變量。因此,輸入變量就是一個15維的向量。

   顯而易見,目標向量就是預測日當天的12個負荷值,即一天中每個整點的電力負荷。這樣一來,輸出變量就成為一個12維的向量。

   在獲得輸入和輸出變量后,要對其歸一化處理,將數(shù)據(jù)處理為區(qū)間[0,1]之間的數(shù)據(jù)。歸一化方法有很多種形式,本文主要采用如下公式(3.1)。

  (3.1)

  3.2BP網(wǎng)絡設計

   對于BP網(wǎng)絡的設計,一般的預測問題都可以通過單隱層的BP網(wǎng)絡實現(xiàn)。由于輸入向量有15個元素,所以網(wǎng)絡輸入層的神經(jīng)元有15個,根據(jù)Kolmogorov定理可知,網(wǎng)絡中間層的神經(jīng)元可以取31個。而輸出向量有12個,所以輸出層中的神經(jīng)元應該有12個。網(wǎng)絡中間層的神經(jīng)元傳遞函數(shù)采用S型正切函數(shù)tansig,輸出層神經(jīng)元傳遞函數(shù)采用S型對數(shù)函數(shù)logsig。這是因為函數(shù)的輸出位于區(qū)間[0,1]中,正好滿足網(wǎng)絡的輸出要求。其相關的Matlab程序代碼為:

  Threshold=[0,1;0,1;0,1;0,1;0,1;0,1;0,1;0,1;0,1;0,1;0,1;0,1;0,1;0,1;0,1]

  Net=newff(threshold,[31,12],{‘tansig’,’logsig’},’trainlm’)

  3.3網(wǎng)絡訓練

   網(wǎng)絡經(jīng)過訓練后才可以用于電力負荷預測的實際應用。考慮到網(wǎng)絡的結構比較復雜,神經(jīng)元個數(shù)比較多,需要適當增大訓練次數(shù)和學習速率。其訓練參數(shù)及代碼如下:

  Net.trainparam.epochs=1000;

  Net.trainparam.goal=0.01;

  Net.trainparam.lr=0.1;

  Net=train(net,p,t)

  4BP神經(jīng)網(wǎng)絡仿真及分析

   本文以河南省漯河市2008年7月11日到7月21日的整點有功負荷值,以及2008年7月12日到7月22日的氣象特征狀態(tài)量作為網(wǎng)絡的訓練樣本,預測7月23日的電力負荷。利用Matlab仿真結果如圖1所示。

   由仿真結果可以看出,經(jīng)過6次訓練后,網(wǎng)絡的誤差已經(jīng)小于0.01,達到了要求。

  5結論

   本文提出了用BP神經(jīng)網(wǎng)絡對短期負荷進行預測,并且利用Matlab進行仿真,其仿真結果與實際值非常接近。可見文中所使用方法可以很好的對短期負荷進行預測,并且具有很好的實用價值。

  參考文獻

  1趙林明,胡浩云,魏德華等。多層前向人工神經(jīng)網(wǎng)絡[M]。北京:清華大學出版社,1998

  2劉晨輝。電力系統(tǒng)負荷預報理論與方法。哈爾濱工業(yè)大學出版社,1987.12

  3袁曾任。人工神經(jīng)元網(wǎng)絡及其應用。清華大學出版社,1990.1

  4葛哲學,孫志強。神經(jīng)網(wǎng)絡理論與MATLABR2007實現(xiàn)。電子工業(yè)出版社,2008.5。