崔明建,孫元章,柯德平,王樹鵬
(1.武漢大學(xué) 電氣工程學(xué)院,湖北 武漢 430072;2.中國地質(zhì)大學(xué) 數(shù)理學(xué)院,湖北 武漢 430074)
風(fēng)能作為可再生能源中成本較低、技術(shù)較成熟、可靠性較高的新能源,近年來發(fā)展很快并開始在能源供應(yīng)中發(fā)揮重要作用。隨著風(fēng)電場規(guī)模的增大,風(fēng)速的波動性[1-4]和非平穩(wěn)性成為制約風(fēng)電大規(guī)模、高效并網(wǎng)的嚴(yán)峻問題。風(fēng)電功率預(yù)測技術(shù)是解決風(fēng)電波動[5]、風(fēng)電并網(wǎng)[6]和電網(wǎng)調(diào)度[7]的關(guān)鍵技術(shù)之一,這也對風(fēng)電功率的預(yù)測精確提出了更高的要求。
為得到較高的預(yù)測精度,國內(nèi)外很多研究集中在構(gòu)造合適的預(yù)測模型。根據(jù)輸入量的不同,現(xiàn)有預(yù)測模型可以分為物理模型、統(tǒng)計模型和物理統(tǒng)計混合模型:物理模型[8-9]使用如氣象學(xué)(數(shù)值天氣預(yù)報等)、地質(zhì)學(xué)(山岳形態(tài)等)和風(fēng)電機組的技術(shù)特征(輪轂高度、功率曲線和推力系數(shù))等信息作為模型輸入量,目的是得到本地風(fēng)速的最佳估計值,進而利用模式輸出統(tǒng)計(MOS)方法減小預(yù)測殘差;統(tǒng)計模型[10-12]使用解釋變量和在線測量方法,通常使用如遞歸最小二乘法和人工神經(jīng)網(wǎng)絡(luò)ANN(Artificial Neural Network)法等遞歸技術(shù);混合模型[13-15]作為最優(yōu)模型,先得到風(fēng)電機組區(qū)域內(nèi)的氣流等物理量,再使用先進的統(tǒng)計模型補充物理模型得到的信息,因而能夠得到更為精確的預(yù)測值。由于物理方法中風(fēng)電場周圍的物理信息等對預(yù)測結(jié)果的精確度有很大影響,而統(tǒng)計方法能夠根據(jù)風(fēng)電場自身的特點和位置,隨時修改預(yù)測模型參數(shù),可以得到比較高的準(zhǔn)確度。
國內(nèi)對風(fēng)電功率測報與預(yù)測提出了最新的技術(shù)要求,2009年國家電網(wǎng)公司發(fā)布企業(yè)標(biāo)準(zhǔn)Q/GDW 392—2009《風(fēng)電場接入電網(wǎng)技術(shù)規(guī)定實施細(xì)則(試行)》中明確規(guī)定,風(fēng)電功率預(yù)測系統(tǒng)應(yīng)能通過專網(wǎng)向調(diào)度機構(gòu)上報相關(guān)數(shù)據(jù),應(yīng)至少具備日前預(yù)報功能和超短期預(yù)報功能,每日12:00之前向調(diào)度機構(gòu)申報次日日前風(fēng)電功率預(yù)測曲線,根據(jù)超短期預(yù)測結(jié)果,滾動調(diào)整2 h以后的風(fēng)電功率預(yù)測曲線[16]。國外主要集中在預(yù)測模型的研究,比國內(nèi)起步早,技術(shù)也相對成熟。為得到提前0.5~36 h的預(yù)測值,丹麥科技大學(xué)(DTU)提出一種計及遺忘因子的自適應(yīng)遞歸最小二乘估計法的風(fēng)電功率預(yù)測模型;馬德里卡洛斯第三大學(xué)提出Sipreolico模型,該模型由9個自適應(yīng)非參數(shù)統(tǒng)計模型組成,使用遞歸最小二乘算法或者卡爾曼濾波算法循環(huán)計算;TrueWind公司提出一種EWIND模型,該模型使用一次性參數(shù)設(shè)計方法研究順風(fēng)向NWP模型輸出量的局部效應(yīng)[17]。
現(xiàn)有的風(fēng)電功率預(yù)測建模方法中,很少有考慮原始風(fēng)電功率序列的非平穩(wěn)特性的方法,ANN是一種應(yīng)用廣泛的風(fēng)電功率預(yù)測建模方法,但由于其自適應(yīng)訓(xùn)練的收斂性受步長、隱含層神經(jīng)元個數(shù)、隱含層輸出函數(shù)和輸出層輸出函數(shù)等因素影響,訓(xùn)練時間較長,往往不能完全映射風(fēng)電功率的非平穩(wěn)特性。因此本文采用一種具有很強的非平穩(wěn)信號跟蹤、預(yù)測能力的信號處理新方法——原子稀疏分解ASD(Atomic Sparse Decomposition)法,作為 ANN 的前置分解手段。現(xiàn)實中的風(fēng)電功率具有很強的非平穩(wěn)性,可看作具有多個不同參數(shù)的原子分量和殘差分量的疊加,其非平穩(wěn)性導(dǎo)致原子參數(shù)不斷變化。對原子分量進行自預(yù)測,殘差分量進行ANN預(yù)測,疊加后得到最終預(yù)測結(jié)果。較之常規(guī)的ANN預(yù)測方法,所提預(yù)測方法具有更好的處理非平穩(wěn)特性的能力。將該方法應(yīng)用于國內(nèi)外某幾個實際風(fēng)電場的風(fēng)電功率預(yù)測中,取得了令人滿意的結(jié)果,預(yù)測精度也符合要求。
近年來ASD技術(shù)在信號處理領(lǐng)域成為熱點。該方法源于文獻[18]提出的信號在過完備原子庫上分解的思想,在信號建模、壓縮、特征提取等方面具有重要作用。ASD采取的是一種貪婪的自適應(yīng)分解策略,其原子庫是高度冗余(過完備)的,以保證任意信號都可以從中自適應(yīng)地選擇一組最佳的原子來表示,使得分解結(jié)果非常稀疏,此過程則為稀疏分解。核心問題是如何自適應(yīng)地尋找最佳匹配原子及其系數(shù)。
當(dāng)前,ASD法在電力系統(tǒng)中的應(yīng)用才剛剛起步,且主要集中在電能質(zhì)量擾動信號特征提取[19-20]和低頻振蕩模式識別[21]的研究。
在ASD中,原子通常由一般性的核函數(shù)表示,在信號處理領(lǐng)域,多種核函數(shù)可用來表示原子,例如正弦函數(shù)[22]、Chirp 函數(shù)[23]。 本文采用的核函數(shù)為高斯函數(shù),如下式所示:
其中,g(o)為高斯核函數(shù);c和σ分別為中心和尺度參數(shù)。選擇不同的中心和尺度參數(shù),可以構(gòu)造一系列不同的原子,這些原子的集合稱為字典集。圖1中列舉了3個不同的原子,其中,g1表示中心為0、尺度為2的原子;g2表示中心為2、尺度為2的原子;g3表示中心為0、尺度為3的原子。
圖1 3個不同原子(高斯核函數(shù))的比較Fig.1 Comparison among three different atoms(Gaussian kernel function)
在迭代分解過程中,每次迭代的待選擇原子可以分為2類:先前已經(jīng)被選擇過的舊原子和尚未被選擇過的新原子。因此,過完備字典集可以劃分為2個分離的字典集:一個由舊原子構(gòu)成,一個由新原子構(gòu)成。
在開始階段,所有的原子均屬于新字典集,在分解過程的前面幾次迭代中,大部分被選擇的最優(yōu)原子屬于新字典集,隨著迭代的繼續(xù),舊字典集慢慢增大。當(dāng)舊字典集足夠大時,被選擇的最優(yōu)原子大部分屬于舊字典集。從稀疏性的角度看,新原子的選取不利于分解的稀疏性,為達到稀疏分解的目的應(yīng)盡可能從舊字典集中選取原子。因此,文獻[24-25]提出了一種有利于分解稀疏性的最優(yōu)原子選取流程,具體第k步迭代描述如下。
根據(jù)第k步以前的分解結(jié)果,過完備字典集已被分為舊和新2個字典集。由于2個信號的內(nèi)積(各時刻2個信號乘積之和)描述了它們的線性相關(guān)性:內(nèi)積的絕對值越大,2個信號的相關(guān)性越強;內(nèi)積為0,2個信號線性無關(guān)。所以,分別計算殘差信號和2個字典集中各個原子的內(nèi)積,并選出每個字典集中最大的內(nèi)積cold和cnew,其對應(yīng)的舊和新字典集中的原子分別用Φold和Φnew表示。
a.分別計算舊和新字典集上的殘差:
b.計算相對誤差re:
其中,‖·‖表示信號的歐氏范數(shù)。
c.通過給定的閾值T決定最優(yōu)原子:如果re≤T,選Φold作為該次迭代中的最優(yōu)原子,后續(xù)的計算過程與情況下的相同;如果re>T,選Φnew作為該次迭代中的最優(yōu)原子,更新變量,即令copt=cnew,Φopt=Φnew,R(k)=Rnew,把該原子添加到舊字典集中,并從新字典集中刪除,系數(shù)copt作為該原子的分解系數(shù)。
d.更新閾值。通過給定閾值T,在舊和新字典集中選擇最優(yōu)原子。為保證收斂和穩(wěn)定性,T是一個隨著迭代步數(shù)而遞減的函數(shù),本文采用的是模擬退火算法中的退火函數(shù):
其中,0.7≤α<1;T0為初始溫度,并且設(shè)定小于 1;k為當(dāng)前迭代步數(shù);N為退火速度因子。隨著迭代步數(shù)的增加,T趨于0。相關(guān)算法流程如圖2所示。
在進行模型預(yù)測時,當(dāng)輸入或輸出向量的各個分量量綱不同或大小相差很大時,應(yīng)對不同的分量在其取值范圍內(nèi)分別進行歸一化處理??紤]到本文所采用各分量的物理意義相同且為同一量綱,故采用先在整個數(shù)據(jù)范圍內(nèi)確定最大值和最小值再進行統(tǒng)一的歸一化變換處理,進而將模型輸入輸出變換為[0,1]區(qū)間的值,具體歸一化公式如下:
圖2 雙字典集ASD法的算法流程圖Fig.2 Flowchart of ASD algorithm with two dictionaries
其中,xput為模型的輸入或輸出分量;為經(jīng)過歸一化處理后的輸入或輸出分量;xmax和xmin分別為模型輸入或輸出量的最大值和最小值。
風(fēng)機的發(fā)電量由于受到平均風(fēng)速、主導(dǎo)風(fēng)向、最大風(fēng)速、極大風(fēng)速、氣溫、氣壓、空氣密度、雷暴、電線覆冰等因素的影響,使得風(fēng)電功率本質(zhì)上具有很強的非平穩(wěn)性。ANN能較好地擬合輸入輸出數(shù)據(jù)間的非線性關(guān)系,但離線訓(xùn)練的ANN無法自適應(yīng)輸入信號的非平穩(wěn)性,不能完全映射其特性。因此,本文采用ASD算法對風(fēng)電功率進行滑動分解,并用殘差信號取代原始信號作為ANN的輸入量預(yù)測下個時刻的殘差信號。由于殘差信號的能量(相對于原始信號)很小,這樣能極大地避免具有主導(dǎo)能量的信號成分(原子的線性組合)的非平穩(wěn)性對ANN預(yù)測產(chǎn)生影響。模型結(jié)構(gòu)見圖3,具體的預(yù)測過程描述如下。
a.對風(fēng)電功率數(shù)據(jù)進行n次ASD,見式(6)。
圖3 ASD-ANN結(jié)構(gòu)Fig.3 Structure of ASD-ANN
其中,r(t)為殘差分量;aj(t)為第 j個原子分量,等于原子與其分解系數(shù)的乘積。
b.將殘差信號作為ANN殘差預(yù)測模型的輸入量進行下一時刻的殘差預(yù)測。
c.根據(jù)ASD的表達式自預(yù)測下一時刻的原子分量值。
d.將ANN殘差預(yù)測結(jié)果與ASD預(yù)測結(jié)果疊加即得到下一時刻的原子稀疏分解-人工神經(jīng)網(wǎng)絡(luò)(ASD-ANN)模型預(yù)測值,如圖 3 所示。 圖中,x(t)表示風(fēng)電功率的時間序列,x(t+1)表示模型預(yù)測值。
文獻[26-28]中已說明ANN可以用來擬合能量較小的風(fēng)電功率殘差分量。因此,本文采用常用的ANN作為殘差預(yù)測模型,輸入節(jié)點數(shù)設(shè)定為15,根據(jù)Kolmogorov定理,中間節(jié)點數(shù)設(shè)定為31,輸出節(jié)點數(shù)設(shè)定為1,對應(yīng)于前15個時刻的殘差分量,中間層采用正切Sigmoid傳遞函數(shù),輸出層采用對數(shù)Sigmoid傳遞函數(shù),輸出節(jié)點對應(yīng)于下一時刻的風(fēng)電功率殘差分量預(yù)測值,模型網(wǎng)絡(luò)結(jié)構(gòu)如圖4所示。
圖4 ANN殘差預(yù)測模型網(wǎng)絡(luò)結(jié)構(gòu)Fig.4 Network structure of ANN residual forecasting model
一般而言,一個確定的風(fēng)電功率序列經(jīng)過ASDANN預(yù)測模型前置分解后,必然得到一組參數(shù)確定、平穩(wěn)且具有主導(dǎo)能量的原子分量和非平穩(wěn)、隨機性強但能量小的殘差分量。由于原子分量占有主導(dǎo)作用,這種方法從本質(zhì)上講還是片面地把風(fēng)電功率數(shù)據(jù)當(dāng)作平穩(wěn)序列來處理。因此,本文提出一種滑動預(yù)測方法,通過2.2節(jié)建立50個最佳的預(yù)測模型。采用最新的輸入變量和對應(yīng)的不同模型來對下一個15 min風(fēng)電功率進行滑動預(yù)測。每個模型對應(yīng)的輸入變量不同:模型Mi以第i點前的400點風(fēng)電功率作為輸入變量,對第i點預(yù)測;Mi+1利用第i點的實測值和第i點前的399點風(fēng)電功率作為輸入變量,依此類推。
采用時間尺度確定的時間窗進行下一時刻的預(yù)測,得到預(yù)測值后時間窗滑動向前推進一個時刻,繼續(xù)類似的預(yù)測。該方法的優(yōu)點在于,雖然時間窗內(nèi)的分解得到的是平穩(wěn)的原子分量,但隨著時間窗不斷地向前滑動,時間窗與時間窗之間的原子分量參數(shù)是不斷變化的,當(dāng)訓(xùn)練樣本足夠大時,時間窗個數(shù)很多,可視為對風(fēng)電功率數(shù)據(jù)進行了非平穩(wěn)化處理;同時,隨著時間窗的滑動,原子分量自適應(yīng)地調(diào)節(jié)自身的參數(shù),以適應(yīng)非平穩(wěn)的風(fēng)電功率數(shù)據(jù),極大地增強了預(yù)測模型的泛化能力。
目前國內(nèi)外的風(fēng)電功率預(yù)測模型中,風(fēng)電功率預(yù)測精度較差,使用滑動模型進行風(fēng)電功率預(yù)測時有必要對預(yù)測結(jié)果進行校正。采用線性回歸方法進行校正[29],校正模型如下:
其中,PASD,t為采用ASD-ANN模型的t時刻的風(fēng)電功率預(yù)測值;PcASD,t為校正后的 t時刻預(yù)測值;eASD,t=a+bPASD,t為t時刻的預(yù)測誤差,a和b為參數(shù),可采用最小二乘法計算得到,由歷史風(fēng)電功率及其誤差樣本數(shù)據(jù)進行估計,方法如式(8)、(9)所示。
其中,Nc為歷史樣本數(shù)量;eASD,i=PASD,i-Pmeas,i為歷史風(fēng)電功率預(yù)測誤差,Pmeas,i為風(fēng)電場實測風(fēng)電功率數(shù)據(jù),PASD,i為實測數(shù)據(jù)的模型訓(xùn)練值。
綜上所述,可以得到本文提出的ASD-ANN風(fēng)電功率滑動預(yù)測模型結(jié)構(gòu)如圖5所示。
為驗證本文采用的基于雙字典集的ASD算法的有效性,使用MATLAB 7.10進行算法編程,構(gòu)造一個典型非平穩(wěn)的測試信號,如下所示:
其中,i?[-15,15],從中均勻抽取 600 個采樣點,e為隨機白噪聲信號。根據(jù)2.3節(jié)所述,取前400個點進行ASD,殘差信號序列作為ANN的訓(xùn)練樣本,后200個點作為測試樣本。
根據(jù)文獻[24-25],計算過程中的迭代分解參數(shù)α=0.935,初始溫度T0=0.09,退火速度因子N=2.5,迭代終止閾值為1.0×10-6。圖6為構(gòu)造的測試信號,圖7為預(yù)測結(jié)果。
當(dāng) i?[-10,10]時,分析比較單字典集和雙字典集的ASD算法仿真效果如表1所示。定義測試信號的絕對平均誤差eNMAE和均方根誤差eNRMSE的公式分別如式(11)、(12)所示。
圖5 風(fēng)電功率預(yù)測模型結(jié)構(gòu)圖Fig.5 Structure of wind power forecasting model
圖6 測試信號的采樣數(shù)據(jù)Fig.6 Sampling data of test signals
圖7 測試信號的預(yù)測結(jié)果對比Fig.7 Comparison among forecasting results of test signals
其中,y(i)為測試信號;y?(i)為預(yù)測結(jié)果;M 為預(yù)測樣本個數(shù)。
表1 2種ASD仿真結(jié)果對比Tab.1 Comparison of simulative results between two kinds of ASD
由圖6、圖7和表1可見:
a.相比基于單字典集的ASD算法,基于雙字典集的ASD算法預(yù)測結(jié)果的絕對平均誤差和均方根誤差均有一定程度的降低;
b.在無噪聲和加噪聲的情況下,基于雙字典集的ASD算法的預(yù)測效果均更加精確;
c.完成仿真計算的時間僅為3.485 s,約減少1 s的時間。
選取2006年5月10日至2006年5月24日內(nèi)國內(nèi)某風(fēng)電場58臺風(fēng)電機組中的某一臺風(fēng)電機組輸出功率數(shù)據(jù),時間分辨率為15 min,總共1440個數(shù)據(jù)。選取其中前450點作為樣本數(shù)據(jù)進行實驗,如圖8所示。
圖8 前450個點的風(fēng)電功率數(shù)據(jù)Fig.8 Wind power data of former 450 points
選取圖8中前400個數(shù)據(jù)點分解的殘差信號作為ANN的訓(xùn)練樣本,后50個數(shù)據(jù)點作為測試樣本。預(yù)測結(jié)果如圖9所示,參數(shù)如表2所示。
圖9 采用ANN和ASD-ANN的預(yù)測結(jié)果對比Fig.9 Comparison of forecasting results between ANN and ASD-ANN
表2 前400個數(shù)據(jù)點的ASD結(jié)果參數(shù)表Tab.2 ASD parameters of former 400 points
作為對比,采用常規(guī)ANN預(yù)測風(fēng)電功率[27]。由于預(yù)測誤差大小和風(fēng)機容量有直接關(guān)系,為了定量評價預(yù)測效果,采用國際上普遍的歸一化絕對平均誤差eNMAE和歸一化均方根誤差eNRMSE為依據(jù),定義如下:
表3 3種預(yù)測方法的誤差對比Tab.3 Comparison of errors among three forecasting methods
由圖9和表3可見:
a.校正后得到的風(fēng)電功率預(yù)測結(jié)果相對于校正前得到較大的改善,而常規(guī)ANN法不能較好地自適應(yīng)風(fēng)電功率的強非平穩(wěn)性,導(dǎo)致其預(yù)測誤差最大;
b.ASD-ANN滑動預(yù)測的誤差總體上小于ANN預(yù)測的誤差;
c.對預(yù)測結(jié)果的校正只能有限地提高預(yù)測精度,而采用合適的預(yù)測方法、充分考慮風(fēng)電功率的非平穩(wěn)性才是提高預(yù)測精度的主要方法。
為驗證所提預(yù)測方法的魯棒性,采用統(tǒng)計學(xué)方法分析單臺風(fēng)機在不同時段和不同風(fēng)機在同一時段的預(yù)測效果。
3.3.1 單臺風(fēng)機在不同時段預(yù)測誤差統(tǒng)計分析
選取2001年1月1日至2008年6月23日內(nèi)國外某風(fēng)機輸出功率數(shù)據(jù)作為樣本。統(tǒng)計過程中,每600個采樣點作為一個時間段記錄一次預(yù)測結(jié)果,總共統(tǒng)計50個時間段,即30000個采樣點。計算每個時間段的絕對平均誤差并統(tǒng)計出現(xiàn)的頻率,結(jié)果如圖10所示。圖中,頻率直方圖指樣本觀測值在各區(qū)間單位長度內(nèi)的頻數(shù)與總數(shù)的比值。
圖10 統(tǒng)計絕對平均誤差出現(xiàn)的頻率Fig.10 Statistical frequency of absolute mean error
采用統(tǒng)計學(xué)常用的正態(tài)分布擬合方法分別擬合圖10中2種預(yù)測方法的絕對平均誤差(置信區(qū)間取值均為95%),得到均值的估計值分別為16.13%和20.72%,標(biāo)準(zhǔn)差的估計值分別為1.26%和1.46%。可見,就單臺風(fēng)機在不同時段的預(yù)測誤差統(tǒng)計分析而言,統(tǒng)計結(jié)果有效驗證了本文預(yù)測方法的魯棒性,絕對平均誤差由常規(guī)ANN預(yù)測方法得到的20.72%降至本文所提方法的16.13%,精度提高約30%。
3.3.2 不同風(fēng)機在同一時段的預(yù)測結(jié)果對比分析
選取某風(fēng)電場4臺風(fēng)電機組輸出功率數(shù)據(jù),時間為2006年5月10日至2006年5月16日,分辨率為15 min,每臺機組選取600個采樣點,前400個點作為訓(xùn)練樣本,后200個點作為測試樣本[30]。不同風(fēng)機在同一時段的預(yù)測結(jié)果如表4所示。
由圖10和表4可得出以下結(jié)論。
a.根據(jù)文獻[31]提出的相關(guān)系數(shù)判斷隨機變量相關(guān)性的準(zhǔn)則:ANN預(yù)測方法的預(yù)測結(jié)果與實測結(jié)果相關(guān)系數(shù)約為0.36~0.49,二者具有低度相關(guān);本文所提預(yù)測方法的預(yù)測結(jié)果與實測結(jié)果相關(guān)系數(shù)約為0.50~0.57,二者具有中度相關(guān)。
表4 不同風(fēng)機在同一時段的預(yù)測結(jié)果對比Tab.4 Comparison of forecasting results for same period among different wind turbines
b.預(yù)測結(jié)果與實測結(jié)果的偏差分析可知,ANN預(yù)測方法的絕對平均誤差約為17%~19%,均方根誤差約為22%~24%,預(yù)測數(shù)據(jù)合格率(eNRMSE<10%)約為57%~65%;本文所提預(yù)測方法的絕對平均誤差約為15%~18%,均方根誤差約為20%~23%,預(yù)測數(shù)據(jù)合格率(eNRMSE<10%)約為 68%~74%。
可以看出,就不同風(fēng)機在同一時段的預(yù)測結(jié)果對比分析而言,所提預(yù)測方法提高了預(yù)測結(jié)果與實測結(jié)果的相關(guān)度和預(yù)測數(shù)據(jù)合格率的統(tǒng)計區(qū)間,降低了絕對平均誤差、均方根誤差計算值的統(tǒng)計區(qū)間。
ASD是近年來信號稀疏分解領(lǐng)域的新熱點,可實現(xiàn)對信號更加靈活、簡潔和自適應(yīng)的表示。針對風(fēng)電功率的非平穩(wěn)性,本文將雙字典集ASD和ANN相結(jié)合的方法引入到風(fēng)力發(fā)電功率時間序列的預(yù)測中。通過滑動的ASD,信號中能量占主導(dǎo)地位的非平穩(wěn)部分能較準(zhǔn)確地被預(yù)測。同時,ANN可以較好地映射出較平穩(wěn)的殘差信號輸入輸出之間的非線性關(guān)系。將該方法應(yīng)用于某幾個實際風(fēng)電場的功率預(yù)測中,結(jié)果表明,該方法可以有效地處理風(fēng)電功率的非平穩(wěn)性,能夠產(chǎn)生更為稀疏的分解效果,降低絕對平均誤差、均方根誤差計算值的統(tǒng)計區(qū)間。