何誼君
(株洲市河東防洪排漬管理站 株洲市 412000)
電力系統負荷預測是電力生產部門的重要工作之一,通過準確的負荷預測,可以經濟合理地安排機組啟停,減少旋轉備用容量,合理安排檢修計劃,降低發(fā)電成本,提高經濟效益,為電力系統規(guī)劃建設提供可靠依據,它已成為電力系統中現代能量管理系統的一個重要組成部分,尤其是短期電力負荷預測對于系統運行和生產消費具有重大意義[1]。負荷預測的誤差將導致運行和生產費用的劇增,因此,精確的預測對于電力部門和供電系統都有著重要的經濟意義。從而,如何提高短期電力負荷預測的精度就成了電力工作者和其他科技人員致力解決的問題。通過程序設計了BP 神經網絡。通過實例運行BP 網絡證明本文所提供的預測方法具有較高的預測精度。
電力系統負荷短期預測問題的解決辦法和方式可以分為統計技術、專家系統法和神經網絡法等。統計技術中所使用的短期負荷一般可歸為時間系列模型和回歸模型。時間序列模型的缺點在于不能充分利用對負荷性能有很大影響的氣候信息和其他因素,導致了預報的不準確和數據的不穩(wěn)定。而且為了獲得比較精確的預報結果,需要大量的計算,這一方法不能處理氣候變量與負荷之間的非平衡暫態(tài)關系。專家系統法利用了專家的經驗知識和推理規(guī)則,使節(jié)假日或有重大活動日子的負荷預報精度得到了提高。但是,把專家知識和經驗等準確地轉化為一系列規(guī)則是非常不容易的[2-4]。
BP 網絡是一種單向傳播的多層前向網絡,其結構如圖1 所示。由圖可見,BP 網絡是一種具有三層或三層以上的神經網絡,包括輸入層、中間層(隱層)和輸出層。上下層之間實現全連接,而每層神經元之間無連接。當一對學習樣本提供給網絡后,神經元的激活值從輸入經各中間層向輸出層傳播,從輸出層的各神經元獲得網絡的輸入響應。接下來,按照減小目標輸出與實際誤差的方向,從輸出層經過各中間層逐層修正各連接權值,最后回到輸入層,這種算法稱為“誤差逆?zhèn)鞑ニ惴ā?,即BP 算法。隨著這種誤差逆?zhèn)鞑バ拚牟粩噙M行,網絡對輸入模式響應的正確率也不斷上升[6]。
圖1 BP 網絡結構圖
對于BP 網絡,有一個非常重要的定理,即對于任何在閉區(qū)間內的一個連續(xù)函數都可以用單隱層的BP 網絡逼近,因而一個三層BP 網絡就可以完成任意的n 維到m 維的映射。
隱層的神經元數目選擇是一個十分復雜的問題,往往需要根據設計者的經驗和多次實驗來確定,因而不存在一個理想的解析式來表示。隱單元的數目與問題的要求、輸入/輸出單元的數目都有著直接關系。隱單元數目太多會導致學習時間過長、誤差不一定最佳,也會導致容錯性差、不能識別以前沒有看到的樣本,因此一定存在一個最佳的隱單元數。以下3個公式可用于選擇最佳隱單元數。
(3)n1=log2n,其中,n 為輸入單元數。
本文以某城市2008年9月10日到9月20日的有功負荷值,以及2008年9月11日到9月21日的氣象特征狀態(tài)量作為網絡訓練樣本,預測9月21日的電力負荷,數據如表1 所示,所有數據都已經歸一化。
表1 用電負荷及氣象特征
在對短期負荷進行預測前,需劃分負荷類型或日期類型。本文將一周的7 天每天都看做一種類型,則共有7 種類型。在預測日的前一天中,每隔2小時對電力負荷進行一次測量,這樣一來,一天共測得12 組負荷數據。由于負荷值曲線相鄰的點之間不會發(fā)生突變,因此后一時刻的值必然和前一時刻的值有關,除非出現重大事故等特殊情況。所以這里將前一天的實時負荷數據作為網絡的樣本數據。
此外,由于電力負荷還與環(huán)境因素有關,如最高和最低氣溫等,因此,還需要通過天氣預報等手段獲得預測日的最高氣溫、最低氣溫和天氣特征值(晴天、陰天還是雨天)。
獲得輸入和輸出變量后,要對其進行歸一化處理,將數據處理為區(qū)間[0,1]之間的數據。歸一化方法有許多種形式,本文采用如下公式:
本文選擇三層結構的BP 網絡,由于輸入向量有15個元素,所以網絡輸入層的神經元有15個,根據Kolmogorov 定理可知,網絡中間層的神經元可以取31個。而輸出向量有12個,所以輸出層中的神經元應該有12個。網絡中間層的神經元傳輸函數采用S 型正切函數tansig,輸出層神經元傳遞函數采用S 型對數函數logsig。這是因為函數的輸出位于區(qū)間[0,1]中,正好滿足網絡輸出的要求。
BP 網絡的學習過程及步驟如下。
輸入層至中間層的連接權Wij,i=1,2,...,15,j=1,2,...,31;
中間層至輸出層的連接權vjt,j=1,2,...,31,t=1,2,...,12;
中間層各單元的輸出閾值θj,t=1,2,...,31;
輸出層各單元的輸出閾值γt,t=1,2,...,12;
整理好的歷史負荷數據和氣象特征值構成k個15 維輸入向量Pk=(a1,a2...a15),同理負荷數據構成k個12 維目標向量Tk=(γ1,γ2...γ12)。
給每個連接權值Wij、vjt、閾值θj、γt賦予區(qū)間(-1,1)內的隨機值,隨機選取一組輸入樣本和目標樣本提供給網絡,可以得到輸出層各單元的響應Ct,即網絡的實際輸出:
進一步可利用下面2個公式得到輸出層和中間層各單元的一般化誤差:
利用輸出層各單元的一般化誤差dktk 來修正連接權vjt和閾值γt。
利用中間層各單元的一般化誤差ekjk 來修正連接權Wjt和閾值θj。
隨機選取下一個學習樣本向量提供給網絡,直到k個訓練樣本訓練完畢。接著重新從k個學習樣本中隨機選取一組輸入和目標樣本提供給網絡,直到網絡全局誤差E 小于預先設定的10-2,即網絡收斂。
用以下代碼創(chuàng)建一個滿足上述要求的BP 網絡。
其中,變量threshold 用于規(guī)定輸入向量的最大值和最小值,規(guī)定網絡輸入向量的最大值為1,最小值為0?!畉rainlm’表示設定網絡的訓練函數,它采用Levenberg-Marquardt 算法進行網絡學習。
網絡經過訓練后才可以用于電力負荷預測的實際應用??紤]到網絡的結構比較復雜,神經元個數比較多,需要適當增大訓練次數和學習速率。訓練參數的設定如表2 所示。
表2 訓練參數
訓練代碼如下:
可見,經過6 次訓練后網絡誤差達到之前設定的要求,結果如圖2 所示。
圖2 訓練結果圖
訓練好的網絡還需要進行測試才可以判定是否可以投入實際應用。這里的測試數據就是利用表1 中的2008年9月20日的電力負荷和21日的氣象特征數據來預測21日的用電負荷,以檢驗預測誤差能否滿足要求的。代碼如下:
%P_test 為由20日的電力負荷向量和21日的氣象特征組成的測試向量
本文利用仿真函數sim 來計算網絡的輸出,運行結果為:
預測誤差曲線如圖3 所示。由圖可知,網絡預測值和真實值之間的誤差是非常小的,除了第9 和第11 次出現了一個相對比較大的誤差之外,其余的誤差都在0 左右。即使是第9 和第11 次的誤差也分別只有0.177 4 和0.182 1,這表明預測取得了比較滿意的結果。
電力負荷預測是電力調度、用電、計劃、規(guī)劃等部門的重要工作,國內外關于短期負荷預測的文獻很多,但是電力負荷預測受到多個因素的共同影響,且各個因素之間有著比較復雜的關系,負荷曲線是具有高度不確定性的非線性系統。本文介紹的基于BP 神經網絡的預測方法,在綜合考慮天氣特征、歷史負荷和日期類型等對未來負荷影響的因素后,使用了神經網絡的非線性擬合等功能,取得了較好的負荷預測效果。
圖3 預測誤差曲線
[1]飛思科技產品研發(fā)中心.神經網絡理論與MATLAB7 實現[M].北京:電子工業(yè)出版社,2005.
[2]葛哲學,孫志強.神經網絡理論與MATLAB.R2007 實現[M].北京:電子工業(yè)出版社,2007.
[3]Zhang Chao,Lv Yuqin,Hou Bin,Chen Xiaojun,Zu Yunxiao.Investigation on the Short-Term Load Forecasting of Electric Power Based on BP Neural Network [EB/OL].http://www.paper.edu.cn.
[4]D.C.Park,M.A.E1 -Sharkawi,R.J.Marks,et al.Electric Load Forecasting Using an Artificial Neural Network [J].IEEE Trans On Power System,199l,6(2):442-449.
[5]Hippert H.S,Pedreira C.E,Souza R.C.Neural Networks for Short-term Load Forecasting:A review and Evalution[J].IEEE Trans on Power System,2001,16(1):44-45.
[6]儲琳琳,郭純生.淺析BP 神經網絡算法的改進和優(yōu)化[J].科技創(chuàng)新導報,2009,12(2):31-33.