凌武能,杭乃善,李如琦
(廣西大學(xué) 電氣工程學(xué)院,廣西 南寧 530004)
風(fēng)電功率預(yù)測(cè)是大規(guī)模風(fēng)電接入電力系統(tǒng)的安全保證之一。因此,眾多學(xué)者針對(duì)這一問(wèn)題提出了時(shí)間序列[1]、神經(jīng)網(wǎng)絡(luò)[2]、支持向量機(jī) SVM(Support Vector Machine)和組合預(yù)測(cè)[3-4]等風(fēng)電功率預(yù)測(cè)方法。其中,SVM因?yàn)榉夯芰^強(qiáng),已廣泛應(yīng)用在各種短期風(fēng)電功率預(yù)測(cè)系統(tǒng)中[5-10]。文獻(xiàn)[5-6]先用小波變換對(duì)風(fēng)速序列進(jìn)行分解,再用SVM分別對(duì)各分解信號(hào)進(jìn)行建模預(yù)測(cè),最后對(duì)各預(yù)測(cè)結(jié)果疊加得到最終預(yù)測(cè)值;文獻(xiàn)[7]先對(duì)風(fēng)速序列進(jìn)行經(jīng)驗(yàn)?zāi)B(tài)分解 EMD(Empirical Mode Decomposition)得到多個(gè)分解序列,再綜合SVM對(duì)各分解序列的預(yù)測(cè)結(jié)果得到原風(fēng)速序列的預(yù)測(cè)風(fēng)速,最后利用功率曲線轉(zhuǎn)換得到預(yù)測(cè)功率;文獻(xiàn)[8]先用 SARIMA(Seasonal Auto-Regression Integrated Moving Average)模型對(duì)風(fēng)速序列建模,再通過(guò)分段預(yù)測(cè)得到N-1段預(yù)測(cè)殘差,用最小二乘支持向量機(jī)對(duì)殘差序列建模預(yù)測(cè)得到第N段的殘差預(yù)測(cè)值,用該值修正第N段風(fēng)速預(yù)測(cè)值得到最后預(yù)測(cè)結(jié)果;文獻(xiàn)[9]認(rèn)為采用相似數(shù)據(jù)來(lái)為SVM提供訓(xùn)練樣本可以提高預(yù)測(cè)精度;文獻(xiàn)[10]采用蟻群優(yōu)化算法來(lái)解決最小二乘支持向量機(jī)模型的參數(shù)選擇問(wèn)題,取得了不錯(cuò)的預(yù)測(cè)效果。
無(wú)論如何優(yōu)化預(yù)測(cè)模型和改進(jìn)預(yù)測(cè)策略,預(yù)測(cè)精度的提高都是有限的,歷史數(shù)據(jù)中固有的隨機(jī)特征是一個(gè)無(wú)法忽略的因素。因此,針對(duì)風(fēng)電功率的隨機(jī)性和波動(dòng)性特征,提出一種云支持向量機(jī)模型。該模型引入云理論的云變換方法來(lái)挖掘風(fēng)速的隨機(jī)特征,并將這些用X條件云表示的風(fēng)速特征作為SVM的輸入,將實(shí)測(cè)風(fēng)電功率作為輸出,建模預(yù)測(cè)未來(lái)24 h的風(fēng)電功率。由于云的不確定性特征和良好的趨勢(shì)預(yù)測(cè)能力,使得某個(gè)點(diǎn)的預(yù)測(cè)結(jié)果不是一個(gè)固定的預(yù)測(cè)值,多次預(yù)測(cè)將得到一個(gè)有穩(wěn)定傾向的離散點(diǎn)集合。但云理論對(duì)風(fēng)速的特征提取,使得SVM在一定程度上提高了預(yù)測(cè)精度。
云由云滴組成,給定一個(gè)由精確數(shù)值構(gòu)成的定量論域U,c是定義在這個(gè)論域上的定性概念,任取x?U,則 x 對(duì) c 的隸屬程度 y?[0,1],是一個(gè)有穩(wěn)定傾向的隨機(jī)數(shù)。取若干個(gè)x?U,則x的分布就構(gòu)成了云,每一個(gè)x稱為一個(gè)云滴。
云模型一般由3個(gè)數(shù)字特征(期望、熵、超熵)來(lái)描述。云的期望(Ex)是最能代表該定性概念的數(shù)值;熵(En)反映了該定性概念的模糊程度;超熵(He)反映了云的離散程度。如風(fēng)速的一個(gè)定性概念“較快”及其數(shù)字特征如圖1所示。由圖可得:Ex=12.6071,En=1.5537,He=0.7271。
圖1 風(fēng)速的一個(gè)定性概念“較快”及其數(shù)字特征Fig.1 “Faster”,a qualitative concept of wind speed,and its numerical characteristics
云變換是指把風(fēng)速數(shù)據(jù)轉(zhuǎn)換成由多個(gè)云疊加而成的定性概念。其思想主要采用基于峰值的云變換算法,即:
其中,f(x)為風(fēng)速數(shù)據(jù)的頻率分布,c(Exi,Eni,Hei)為變換后的其中一個(gè)云概念,ri為相應(yīng)云概念的幅度系數(shù),n為變換后的云概念的個(gè)數(shù),ε為云變換的誤差。數(shù)據(jù)頻率分布的局部最高點(diǎn)(峰值)是數(shù)據(jù)的匯聚中心,可將它所對(duì)應(yīng)的橫坐標(biāo)作為某個(gè)云概念的期望值。峰值越大,表示數(shù)據(jù)匯集越多,越能反映某個(gè)定性概念。
采用某風(fēng)電場(chǎng)10月份的歷史數(shù)據(jù),則風(fēng)速的峰值云變換步驟如下。
a.對(duì)風(fēng)速數(shù)據(jù)進(jìn)行歸一化處理,即:
其中,vj(j=1,2,…,500)為歸一化前的某一風(fēng)速值,vmax、vmin分別為統(tǒng)計(jì)風(fēng)速數(shù)據(jù)的最大風(fēng)速和最小風(fēng)速,wj為相對(duì)于vj的歸一化風(fēng)速值。
b.求取wj序列的頻率分布。以a為區(qū)間長(zhǎng)度,將wj序列分成b個(gè)區(qū)間,分別統(tǒng)計(jì)wj落在每個(gè)區(qū)間內(nèi)的個(gè)數(shù),得到風(fēng)速數(shù)據(jù)的頻率分布f(x),見(jiàn)圖2。
圖2 風(fēng)速16個(gè)云概念概率密度期望曲線的疊加Fig.2 Superposition of 16 expectation curves of cloud concept about wind speed
c.找到f(x)中的各個(gè)峰值位置,將峰值大小定義為云的幅度系數(shù)ri,并將其對(duì)應(yīng)橫坐標(biāo)定義為云的期望值 Exi(i=1,2,…,n)。
d.采用文獻(xiàn)[11]的方法,計(jì)算用于擬合 f(x)的以Exi為期望值的各個(gè)云概念的熵Eni,并計(jì)算云概念的概率密度期望函數(shù) fi(x),將 fi(x)作為各個(gè)云的分布函數(shù),如圖2所示。
e.用不帶確定度的逆向云算法[12]求取各個(gè)云概念的超熵Hei。
圖2是經(jīng)過(guò)云變換得到的結(jié)果,可以看出此時(shí)得到的16個(gè)云概念還比較粗糙,某些云相距較近,甚至一個(gè)云已把另一個(gè)云完全包含在內(nèi),造成概念的重復(fù)和多余,所以有必要對(duì)云變換之后的概念進(jìn)行躍升,使每個(gè)云概念的意義更加獨(dú)立和清晰。
所謂概念躍升,是指將云變換得到的基本概念作為泛概念樹(shù)的葉結(jié)點(diǎn),并考慮云之間的幅度系數(shù)影響,逐步合并距離最近的2個(gè)概念,以得到所需概念層次[13]。設(shè)相鄰 2 個(gè)云概念分別為 ci(Exi,Eni,Hei)和 cj(Exj,Enj,Hej),幅度系數(shù)分別為 ri和 rj,且 Exi<Exj,它們的概率密度期望曲線相交于點(diǎn)d(xd,yd),合并之后的云為 ch(Exh,Enh,Heh),幅度系數(shù)為 rh。云合并算法如下。
a.首先計(jì)算截?cái)囔兀?/p>
b.根據(jù)截?cái)囔睾拖噜徳频臄?shù)字特征,得到合并云ch的數(shù)字特征。
期望值:
熵:
超熵:
c.最后還可以得到合并云ch的幅度系數(shù):
根據(jù)人的認(rèn)知特點(diǎn)(同時(shí)只能認(rèn)知最多7±2個(gè)概念[14]),并根據(jù)各個(gè)云的分布情況,選取疏密合適的概念個(gè)數(shù),按照以上云合并算法,最后將風(fēng)速的16個(gè)原始概念壓縮至9個(gè)躍升概念。同時(shí)可認(rèn)為風(fēng)速的定性特征表現(xiàn)為“快”、“很快”等,因此,假設(shè)風(fēng)速的9個(gè)云概念分別為:{超慢,很慢,慢,較慢,中等,較快,快,很快,超快},則它們的數(shù)字特征如表1所示。
表1 風(fēng)速各個(gè)云概念的數(shù)字特征Tab.1 Numerical characteristics of different cloud concepts about wind speed
抽離每個(gè)云概念的幅度系數(shù),用云滴分布來(lái)描述每個(gè)云概念的數(shù)字特征,并且使用半云(或半梯形云)來(lái)描述最接近論域邊界的2個(gè)定性概念,則風(fēng)速9個(gè)躍升概念的概率密度期望曲線和云滴分布分別如圖3和圖4所示。從圖3可以看出躍升之后的風(fēng)速特征更加明顯,避免了概念冗余。圖4的相鄰概念之間出現(xiàn)交疊,體現(xiàn)了云模型的不確定性。
圖3 風(fēng)速9個(gè)躍升概念的概率密度期望曲線Fig.3 9 expectation curves of zooming concept about wind speed
圖4 風(fēng)速9個(gè)特征概念的云滴分布Fig.4 Cloud drop distribution of 9 feature concepts about wind speed
已知論域U內(nèi)的某個(gè)特定點(diǎn)m和定義在U上的某個(gè)定性概念 ck的數(shù)字特征(Exk,Enk,Hek),而點(diǎn) m對(duì)ck的隸屬度未知,像這樣的云就叫做X條件云。通過(guò)X條件云發(fā)生器,可以求得點(diǎn)m對(duì)ck的隸屬度,簡(jiǎn)單算法如下。
a.生成以Enk為期望值、H2ek為方差的一個(gè)正態(tài)隨機(jī)數(shù) E′nk。
b.計(jì)算點(diǎn)m對(duì)ck的隸屬度:
若m是由多個(gè)風(fēng)速值構(gòu)成的一個(gè)樣本(即多維向量),則根據(jù)式(10)得到的hk應(yīng)是一個(gè)多維向量。根據(jù)極大判定法,以hk中的最大分量作為該樣本m對(duì)定性概念ck的最終隸屬度。
根據(jù)統(tǒng)計(jì)學(xué)理論發(fā)展起來(lái)的SVM,利用非線性核函數(shù)把輸入樣本映射到高維空間,并在高維空間中解決了輸入樣本的非線性回歸問(wèn)題[15]。與人工神經(jīng)網(wǎng)絡(luò)相比,SVM訓(xùn)練效率高、泛化能力強(qiáng),且不易陷入局部最優(yōu),因此,它是解決短期風(fēng)電功率非線性回歸問(wèn)題的有力工具。
根據(jù)歷史數(shù)據(jù)的原始分布情況,采用云理論來(lái)挖掘數(shù)據(jù)的本質(zhì)特征,并用X條件云定性表示該特征。假設(shè){(xi,yi),i=1,…,N,xi?Rn,yi?R}為訓(xùn)練樣本數(shù)據(jù),ci(i=1,…,K)是表示風(fēng)速特征的 K 個(gè) X 條件云,根據(jù)1.4節(jié),ci相對(duì)于每個(gè)樣本xi的輸出hi都是一個(gè)n維向量,依據(jù)云模型的極大判定理論,hi中的最大分量hmax體現(xiàn)了該風(fēng)速樣本對(duì)相應(yīng)的風(fēng)速特征的最大激活強(qiáng)度,則以hmax作為該樣本xi對(duì)風(fēng)速特征ci的最終隸屬度,并將其作為SVM的訓(xùn)練輸入。
常用的預(yù)測(cè)策略有提前1步的滾動(dòng)預(yù)測(cè)和提前N步的直接預(yù)測(cè)[16]等。由于滾動(dòng)預(yù)測(cè)會(huì)導(dǎo)致誤差的累積從而影響預(yù)測(cè)精度,本文采用提前24步的直接預(yù)測(cè)法來(lái)預(yù)測(cè)未來(lái)24 h的風(fēng)電功率,并用時(shí)間序列模型選擇訓(xùn)練的輸入變量[17]。利用計(jì)量經(jīng)濟(jì)分析軟件EViews對(duì)風(fēng)速數(shù)據(jù)進(jìn)行統(tǒng)計(jì),得到:
xt=1.4057xt-24-0.5712xt-25-0.1138xt-28+εt(11)其中,xt為當(dāng)前時(shí)刻的風(fēng)速值,xt-24、xt-25和 xt-28分別為由xt往前推24、25和28個(gè)時(shí)刻的風(fēng)速值,εt為時(shí)間序列模型的擬合殘差。
式(11)的赤池信息準(zhǔn)則 AIC(A kaike’s I nfor-mation C riterion)結(jié)果較理想,說(shuō)明該式可以較好地詮釋風(fēng)速數(shù)據(jù),包含了較大的信息量,也說(shuō)明當(dāng)前風(fēng)速 xt和風(fēng)功率yt受xt-24、xt-25和xt-28的影響較大,以它們作為模型的訓(xùn)練輸入、yt作為訓(xùn)練輸出,以此組成訓(xùn)練樣本集將可以提高預(yù)測(cè)精度。
SVM采用v支持向量機(jī)回歸模型,基于云支持向量機(jī)模型的短期風(fēng)電功率預(yù)測(cè)步驟如下:
a.將風(fēng)速、風(fēng)功率的歷史數(shù)據(jù)歸一化到[0,1];
b.根據(jù)1.2節(jié)的內(nèi)容對(duì)風(fēng)速數(shù)據(jù)進(jìn)行云變換;
c.根據(jù)1.3節(jié)的內(nèi)容對(duì)云變換得到的原始云進(jìn)行概念躍升,并得到K個(gè)X條件云ci(i=1,…,K);
d.根據(jù)式(11)形成訓(xùn)練樣本集{(xi,yi),i=1,…,N,xi?Rn,yi?R};
e.根據(jù)2.2節(jié)建立風(fēng)電功率的預(yù)測(cè)模型;
f.利用該預(yù)測(cè)模型提前24步直接預(yù)測(cè)未來(lái)24 h的風(fēng)電功率 p′i(p′i?R,i=1,…,24)。
由于云支持向量機(jī)的預(yù)測(cè)方法本質(zhì)上是基于云模型的時(shí)間序列預(yù)測(cè),因此,多次運(yùn)行云支持向量機(jī)對(duì)某個(gè)點(diǎn)進(jìn)行預(yù)測(cè),模型的輸出是服從正態(tài)分布的多個(gè)云滴[18-19](即得到一個(gè)小幅波動(dòng)的離散值集合)。按照文獻(xiàn)[19]方法,本文采用逆向云算法[12]求取集合的期望值作為預(yù)測(cè)點(diǎn)的確定性結(jié)果。
實(shí)例分析采用我國(guó)某風(fēng)電場(chǎng)(風(fēng)電場(chǎng)1)一個(gè)月內(nèi)的500組歷史數(shù)據(jù),每組數(shù)據(jù)包含風(fēng)速和風(fēng)功率2類(lèi)數(shù)據(jù),數(shù)據(jù)時(shí)間間隔為1 h。實(shí)驗(yàn)中的云支持向量機(jī)采用9個(gè)X條件云描述風(fēng)速特征,訓(xùn)練樣本輸入 xi?R3,輸出 yi?R,其中 i=1,…,472。
利用云支持向量機(jī)預(yù)測(cè)50次,每個(gè)預(yù)測(cè)點(diǎn)都得到由50個(gè)離散值構(gòu)成的集合,采用逆向云算法求取每個(gè)集合的期望值作為確定的預(yù)測(cè)值,將其結(jié)果與單純使用ARIMA模型和SVM的預(yù)測(cè)結(jié)果相比較,如圖5所示(圖中縱軸為歸一化值)。
圖5 未來(lái)24 h的風(fēng)電功率預(yù)測(cè)值與實(shí)際值比較圖(風(fēng)電場(chǎng)1)Fig.5 Comparison between actual and forecasted wind powers for next 24 hours(wind farm 1)
為了便于分析比較,同時(shí)對(duì)預(yù)測(cè)模型的整體性能進(jìn)行客觀評(píng)價(jià),定義以下誤差指標(biāo):
其中,eMRE、eMAE和eRMSE分別為平均相對(duì)誤差、平均絕對(duì)誤差和均方根誤差,N為預(yù)測(cè)點(diǎn)數(shù),pi為風(fēng)電功率實(shí)測(cè)值,p′i為風(fēng)電功率預(yù)測(cè)值。
各預(yù)測(cè)方法的誤差比較如表2所示。從指標(biāo)eMRE來(lái)看,云支持向量機(jī)較SVM和ARIMA模型分別下降了9.76%和26.79%,總體上顯示了較高的預(yù)測(cè)精度;指標(biāo)eMAE反映了預(yù)測(cè)誤差的平均幅值,云支持向量機(jī)在該指標(biāo)上的表現(xiàn)亦優(yōu)于SVM和ARIMA,較兩者分別下降了0.027 5和0.065 1;指標(biāo)eRMSE衡量了預(yù)測(cè)誤差的分散程度[20],云支持向量機(jī)的eRMSE值較SVM和ARIMA模型分別下降了3.15%和7.07%,可見(jiàn),云支持向量機(jī)的預(yù)測(cè)誤差相對(duì)集中,預(yù)測(cè)結(jié)果比較穩(wěn)定,有利于用戶對(duì)風(fēng)電預(yù)測(cè)值進(jìn)行分析決策。
表2 不同預(yù)測(cè)方法的誤差比較(風(fēng)電場(chǎng)1)Tab.2 Comparison of forecast error among different prediction methods(wind farm 1)
為了檢驗(yàn)云支持向量機(jī)的泛化能力,采用另一個(gè)風(fēng)電場(chǎng)(風(fēng)電場(chǎng)2)一個(gè)月的歷史數(shù)據(jù),該風(fēng)電場(chǎng)一共有58臺(tái)風(fēng)電機(jī)組,每臺(tái)機(jī)組的額定輸出功率均為850 kW,對(duì)該風(fēng)電場(chǎng)未來(lái)24 h的風(fēng)電功率預(yù)測(cè)結(jié)果如圖6所示(圖中縱軸為歸一化值)。云支持向量機(jī)與SVM和ARIMA模型的預(yù)測(cè)誤差比較如表3所示。從圖6和表3可以看出,云支持向量機(jī)對(duì)另一個(gè)風(fēng)電場(chǎng)的功率預(yù)測(cè)結(jié)果依然保持了比SVM和ARIMA更高的預(yù)測(cè)精度,具有較強(qiáng)的泛化能力。
圖6 未來(lái)24 h的風(fēng)電功率預(yù)測(cè)值與實(shí)際值比較圖(風(fēng)電場(chǎng)2)Fig.6 Comparison between actual and forecasted wind powers for next 24 hours(wind farm 2)
表3 不同預(yù)測(cè)方法的誤差比較(風(fēng)電場(chǎng)2)Tab.3 Comparison of forecast error among different prediction methods(wind farm 2)
風(fēng)速是影響風(fēng)電場(chǎng)出力的主要因素,為此提出云支持向量機(jī)模型來(lái)提取風(fēng)速序列的定性特征,進(jìn)而預(yù)測(cè)未來(lái)24 h的風(fēng)電功率,通過(guò)2個(gè)預(yù)測(cè)實(shí)例得到如下結(jié)論:
a.云理論可以有效挖掘風(fēng)速的隨機(jī)特征,進(jìn)而增強(qiáng)了后期SVM的預(yù)測(cè)輸入數(shù)據(jù)的規(guī)律性,并為SVM的精確預(yù)測(cè)提供了堅(jiān)實(shí)基礎(chǔ);
b.云支持向量機(jī)的預(yù)測(cè)精度較傳統(tǒng)SVM方法有所提高,預(yù)測(cè)誤差相對(duì)集中,有利于風(fēng)電調(diào)度的分析決策;
c.云支持向量機(jī)保持了SVM原有的泛化能力,可用于未來(lái)24 h的短期風(fēng)電功率確定性預(yù)測(cè)。