摘 要:文章采用BP神經(jīng)網(wǎng)絡(luò)法對風(fēng)電場58臺風(fēng)機的輸出功率進(jìn)行了預(yù)測研究,建立三層神經(jīng)網(wǎng)絡(luò)模型,根據(jù)已有的風(fēng)電功率歷史數(shù)據(jù)、應(yīng)用數(shù)據(jù)整理, 進(jìn)行BP神經(jīng)網(wǎng)絡(luò)的計算和回歸分析,運用excel,matlab以及eviews等相關(guān)軟件進(jìn)行預(yù)測分析,解決了風(fēng)電功率預(yù)測問題。
關(guān)鍵詞:神經(jīng)網(wǎng)絡(luò);預(yù)測;Eviews;MATLAB;Excel
中圖分類號:TM614 文獻(xiàn)標(biāo)識碼:A 文章編號:1006-8937(2012)20-0041-02
1 問題重述
風(fēng)電功率預(yù)測分為日前預(yù)測和實時預(yù)測。日前預(yù)測是預(yù)測明日24 h 96個時點(每15 min一個時點)的風(fēng)電功率數(shù)值。實時預(yù)測是滾動地預(yù)測每個時點未來4 h內(nèi)的16個時點(每15 min一個時點)的風(fēng)電功率數(shù)值。
某風(fēng)電場由58臺風(fēng)電機組構(gòu)成,每臺機組的額定輸出功率為850 kW。2006年5月10日至2006年6月6日時間段內(nèi)該風(fēng)電場中指定的四臺風(fēng)電機組(A、B、C、D)輸出功率數(shù)據(jù)(分別記為PA,PB,PC,PD;另設(shè)該四臺機組總輸出功率為P4)及全場58臺機組總輸出功率數(shù)據(jù)(記為P58)。
問題:風(fēng)電功率實時預(yù)測。
①預(yù)測量:a.PA,PB,PC,PD;b.P4;c.P58。
②預(yù)測時間范圍分別為:5月31日0時0分至5月31日23時45分;5月31日0時0分至6月6日23時45分。
2 問題分析
根據(jù)題意所要求是要實時預(yù)測和用excle、eviews初步分析過的數(shù)據(jù),且預(yù)測為用單一的風(fēng)電功率預(yù)測風(fēng)電功率,將神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計為三層BP網(wǎng)絡(luò),BP模型用功率預(yù)測功率,采樣時間間隔為15 min,因為相鄰時刻的值之間突變的可能性較小,所以采用一個小時內(nèi)的4個數(shù)據(jù)作為一組,用前三個數(shù)據(jù)預(yù)測下一個數(shù)據(jù),因此輸入變量就是一個三維的向量,第四個數(shù)據(jù)就是目標(biāo)輸出量。
3 模型假設(shè)
①由于歷史數(shù)據(jù)足夠多,故假設(shè)由歷史數(shù)據(jù)可以反映未來風(fēng)電功率的取值。
②由于采樣時間為15 min,所以假設(shè)相鄰時刻的風(fēng)電功率值突變可能性很小。
③預(yù)測功率時刻上傳。
4 符號說明
各種符合及含義說明如表1所示。
5 模型的建立與求解
根據(jù)題意和初步分析過的數(shù)據(jù),將神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計為三層BP網(wǎng)絡(luò),BP模型用功率預(yù)測功率,采樣時間間隔為15 min,因為相鄰時刻的值之間突變的可能性較小,所以采用一個小時內(nèi)德6個數(shù)據(jù)作為一組,用前三個數(shù)據(jù)預(yù)測下一個數(shù)據(jù),因此輸入變量就是一個三維的向量,第四個數(shù)據(jù)就是目標(biāo)輸出量。
根據(jù)Kolmogorov定理,輸入向量3個,則輸入層神經(jīng)元3個,則隱含層神經(jīng)元為2×3+1=7個,輸出向量1個,輸出層神經(jīng)元1個。由此可作出神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖,如圖1所示。
創(chuàng)建一個滿足上述要求的BP網(wǎng)絡(luò);net=newff([minmax(P),[7 1],{‘tansig’,’purelin’},’trainlm’]);當(dāng)輸出節(jié)點的目標(biāo)值為t時,模型計算公式為:y=f(net),輸出節(jié)點的輸出為:net=∑vjy-θ,隱層節(jié)點的輸出有:sj=f(netj),(j=1,2,...,j);netj=∑wji-θj,(j=1,2,...,j)。
以上兩式中,轉(zhuǎn)移函數(shù)一般都用單極性Sigmoid函數(shù):
當(dāng)網(wǎng)絡(luò)輸出與 輸出不等時,輸出誤差E定義如下:
E=1/2∑(t-z)2
將上式誤差定義展開到隱含層,則有:
E=1/2∑[t-f(netj )]2=1/2∑[t-f(∑vjy-θ)]2
再將上式定義展開到輸出層,則:
E=1/2∑[t-f(∑vjy-θ)]2=1/2∑[t-f(∑vjyf(∑wjixi-θj)- θ)]2
由上式可以看出,網(wǎng)絡(luò)輸入誤差是各層權(quán)值vj,wji 的函數(shù),因此調(diào)整權(quán)值可改變誤差E,顯然,調(diào)整權(quán)值的原則是使誤差不斷減小,采用梯度下降法,使權(quán)值的調(diào)整量與誤差的負(fù)梯度成正比,即如下:
式中,負(fù)號表示梯度下降,a∈(0,1)。
將樣本提供給網(wǎng)絡(luò),按上述過程訓(xùn)練,預(yù)先設(shè)定誤差E的大小,當(dāng)訓(xùn)練結(jié)果與目標(biāo)值之差小于預(yù)先設(shè)定的誤差限時,網(wǎng)絡(luò)收斂,訓(xùn)練結(jié)束。若訓(xùn)練次數(shù)已達(dá)到預(yù)設(shè)的最大訓(xùn)練次數(shù),訓(xùn)練終止,網(wǎng)絡(luò)無法收斂,學(xué)習(xí)過程結(jié)束。用流程圖表示如圖2所示。
6 BP神經(jīng)網(wǎng)絡(luò)預(yù)測的MATLAB實現(xiàn)
①數(shù)據(jù)樣本的預(yù)處理,在論文前面已經(jīng)統(tǒng)一進(jìn)行了預(yù)處理。
②確定激活函數(shù),取tansig和purelin為激活函數(shù)。
③設(shè)定網(wǎng)絡(luò)的最大學(xué)習(xí)迭代次數(shù)為20000。
④設(shè)定網(wǎng)絡(luò)的學(xué)習(xí)精度為a。
⑤創(chuàng)建和訓(xùn)練BP神經(jīng)網(wǎng)絡(luò)的MATLAB程序。
⑥測試BP神經(jīng)網(wǎng)絡(luò),將測試的輸出數(shù)據(jù)還原,與實際數(shù)據(jù)比較分析誤差。
7 模型的評價及推廣
由于風(fēng)的波動性和間歇性,風(fēng)電的典型特征就是不可控,大容量風(fēng)電場的介入會對電網(wǎng)運行產(chǎn)生較大的沖擊甚至危險。為了保障電網(wǎng)的安全,對風(fēng)電場發(fā)電功率進(jìn)行預(yù)測十分必要。
通過這種模型,不僅從數(shù)量上揭示了風(fēng)電場風(fēng)電功率的發(fā)展變化規(guī)律,也從動態(tài)上刻畫了現(xiàn)象的內(nèi)部數(shù)量關(guān)系及其變化規(guī)律。
參考文獻(xiàn):
[1] 楊秀媛,肖洋,陳樹勇.風(fēng)電場風(fēng)速和發(fā)電功率預(yù)測研究[J].中國機電工程學(xué)報,2005,(11).
[2] 焦淑華,夏冰,徐海靜,等.BP神經(jīng)網(wǎng)絡(luò)預(yù)測的MATLAB實現(xiàn)[J].哈爾濱金融高等??茖W(xué)校學(xué)報,2009,(1).
[3]王世謙,蘇娟,杜松懷.基于小波變換和神經(jīng)網(wǎng)絡(luò)的短期風(fēng)電功率預(yù)測方法[J].農(nóng)業(yè)工程學(xué)報,2010,(s2).
[4] 黃金花.基于神經(jīng)網(wǎng)絡(luò)的風(fēng)電場短期風(fēng)電功率預(yù)測研究[D].南京:東南大學(xué),2010.