張景楊,王維慶,王海云,武家輝
(新疆大學(xué)可再生能源發(fā)電與并網(wǎng)技術(shù)教育部工程研究中心,新疆烏魯木齊830047)
由于風(fēng)功率具有隨機(jī)性大,波動(dòng)性強(qiáng)的缺點(diǎn),風(fēng)電的大規(guī)模使用給電網(wǎng)的安全穩(wěn)定運(yùn)行帶來了很大的風(fēng)險(xiǎn)[1]。因此對(duì)風(fēng)功率的精準(zhǔn)預(yù)測(cè)是保證電網(wǎng)安全穩(wěn)定運(yùn)行的前提[2]。
目前,對(duì)風(fēng)功率預(yù)測(cè)有許多方法,例如,時(shí)間序列法的優(yōu)點(diǎn)是易于建模,但在描述風(fēng)功率變化特征時(shí)存在缺點(diǎn)[3];卡爾曼濾波模型對(duì)風(fēng)功率進(jìn)行預(yù)測(cè)尋優(yōu)時(shí)雖然可以避免陷入局部最優(yōu),但該方法易受統(tǒng)計(jì)特性不明的影響[4];相關(guān)向量機(jī)雖然消除了卡爾曼模型易受統(tǒng)計(jì)特性不明的影響,但該方法需要訓(xùn)練大量的原始數(shù)據(jù)作為輸入[5-6];EMD與SVM組合預(yù)測(cè)模型雖然有著較高的預(yù)測(cè)精度,但該模型的缺點(diǎn)是復(fù)雜度高和訓(xùn)練時(shí)間長(zhǎng)[7-9]。
通過上述分析,本文采用CEEMDAN算法對(duì)風(fēng)功率進(jìn)行分解能夠很好地克服EMD和EEMD所存在的問題,在分解風(fēng)功率序列上有更好的表現(xiàn)[10]。同時(shí)對(duì)于向量機(jī)(SupportVectorMachine,SVM)模型的缺點(diǎn),提出一種螢火蟲(SAFA)優(yōu)化最小二乘支持向量機(jī)(LSSVM)預(yù)測(cè)模型[11]。可以解決LSSVM預(yù)測(cè)精度易受參數(shù)選擇的影響[12]。于是本文建立了一種基于CEEMDAN-SAFA-LSSVM組合預(yù)測(cè)模型。通過與LSSVM和EEMD-LSSVM進(jìn)行對(duì)比,結(jié)果表明本文提出的模型具有更快的收斂速度和更高的預(yù)測(cè)精度[13]。
CEEMDAN算法是在原始風(fēng)功率分解過程中的每一階段添加自適應(yīng)高斯白噪聲,通過計(jì)算唯一余量信號(hào)得到各個(gè)模態(tài)分量,分解過程完整,重構(gòu)誤差極低。有效解決EMD模態(tài)混疊問題,同時(shí)克服EEMD分解效率低和噪聲難以完全消除的問題[14]。
CEEMDAN算法實(shí)現(xiàn)的步驟如下:
1)利用CEEMDAN對(duì)信號(hào)X(t)+ε0ni(t)進(jìn)行N次重復(fù)分解,通過均值計(jì)算得到第一個(gè)模態(tài)分量
(1)
2)然后對(duì)得到的第一個(gè)余量信號(hào)進(jìn)行計(jì)算r1(t)
(2)
3)然后對(duì)信號(hào)r1(t)+ε1E1(ni(t))進(jìn)行N次重復(fù)分解,分解完成后可得到第二個(gè)模態(tài)分量
(3)
4)對(duì)于k=2,…,K,計(jì)算第k個(gè)殘余信號(hào)
(4)
5)重復(fù)步驟3)的計(jì)算過程,得到第k+1個(gè)模態(tài)函數(shù)為
(5)
6)重復(fù)計(jì)算步驟4)和5),直到余量信號(hào)達(dá)到分解的終止條件,最終得到K個(gè)模態(tài)分量。分解的最終殘差信號(hào)為
(6)
最終原始信號(hào)可以分解為
(7)
相空間重構(gòu)的思想是系統(tǒng)中任一分量都與其它分量有關(guān),而其它分量的信息隱藏在這一分量中。因此,通過對(duì)其分量的分析,從而實(shí)現(xiàn)重建原非線性系統(tǒng)的目的[15]。
設(shè)某一混沌序列的延遲時(shí)間為τ,嵌入維數(shù)為m,則重構(gòu)的相空間為
{f(i)=[x(i),x(i+τ),x(i+2τ),…,x(i+(m-1)τ)]}
(8)
式中:f(i)為相點(diǎn);i=1 2…N。
因此只要τ和m選擇合適,則原系統(tǒng)的狀態(tài)空間就和重構(gòu)的相空間等價(jià)。所以,相空間重構(gòu)要點(diǎn)就是要選取合適的延遲時(shí)間τ和嵌入維數(shù)m。
假設(shè)m個(gè)訓(xùn)練數(shù)據(jù){xi,yi}im=1,xi∈Rn為L(zhǎng)SSVM模型的輸入向量,yi∈R為L(zhǎng)SSVM模型的輸出向量,則LSSVM數(shù)學(xué)模型為
(9)
式中:ω—權(quán)重,C—懲罰參數(shù),
ξi—松弛變量。
b—偏置。
φ(x)—映射函數(shù)。
LSSVM模型的Lagrange函數(shù)
(10)
式中:ai——Lagrange乘子。
式(9)求偏導(dǎo),消去ω和ξi,可得到LSSVM模型的估計(jì)公式為
(11)
式中:K(x,xi)——核函數(shù)。
本文核函數(shù)采用徑向基核函數(shù),其定義為
(12)
式中:g——核函數(shù)的參數(shù)。
螢火蟲算法(FireflyAlgorithm,F(xiàn)A)是通過高亮度的螢火蟲會(huì)吸引低亮度的螢火蟲,可以使螢火蟲不斷變換位置,從而實(shí)現(xiàn)參數(shù)尋優(yōu)的目的[15]。
亮度高的螢火蟲j會(huì)吸引亮度低的螢火蟲i,螢火蟲位置變化公式如下
Xi=Xi+β(r)×(Xj-Xi)+α×εi
(13)
式中:β(r)——螢火蟲之間的吸引度。
(14)
β0——rij=0時(shí)螢火蟲的吸引度;
Xi——螢火蟲i的位置。
Xj——螢火蟲j的位置。
為提高FA算法的搜索能力,將非線性動(dòng)態(tài)慣性W引入式(15),得到新的螢火蟲位置更新式(16)
(15)
式中:wmax——權(quán)重w的最大值;
wmin——權(quán)重w的最小值;
f——當(dāng)前螢火蟲的適應(yīng)度函數(shù)值;
favg——所有螢火蟲個(gè)體的平均適應(yīng)度函數(shù)值;
fmin——螢火蟲的最小適應(yīng)度函數(shù)值。
所以,式(13)改進(jìn)為
Xi=w×Xi+β(r)×(Xj-Xi)+α×εi
(16)
針對(duì)LSSVM的預(yù)測(cè)精度受參數(shù)選擇的影響,將SAFA引入用于對(duì)LSSVM的參數(shù)優(yōu)化,可以解決LSSVM預(yù)測(cè)精度受參數(shù)選擇的影響,從而可以提高LSSVM對(duì)風(fēng)功率的預(yù)測(cè)精度,同時(shí)本文采用均方差作為適應(yīng)度函數(shù)如下式
(17)
[Cmin,Cmax]——C的取值范圍。
[gmin,gmax]——g的取值范圍。
由于SAFA算法對(duì)種群中最亮螢火蟲的位置具有快速準(zhǔn)確的尋優(yōu),同時(shí)又因?yàn)長(zhǎng)SSVM模型的預(yù)測(cè)精度易受懲罰參數(shù)C和核函數(shù)參數(shù)g的影響,所以SAFA優(yōu)化LSSVM就是其將參數(shù)(C,g)最優(yōu)化問題轉(zhuǎn)換成尋找螢火蟲群體中螢火蟲亮度最大的問題,即尋找到螢火蟲亮度最大的位置(C*,g*)?;赟AFA-LSSVM的風(fēng)功率預(yù)測(cè)步驟具體可描述如下。
Step1:設(shè)置SAFA的初始參數(shù);螢火蟲個(gè)數(shù)N,步長(zhǎng)α,最大迭代次數(shù)T、初始吸引度β0、螢火蟲初始位置X。
Step2:根據(jù)計(jì)算得到所有螢火蟲的亮度再根據(jù)螢火蟲的亮度大小對(duì)其進(jìn)行排序,計(jì)算所有螢火蟲群體的適應(yīng)度函數(shù)值fi(C,g)并對(duì)其進(jìn)行排序,得到最亮螢火蟲的位置。
Step3:判斷是否達(dá)到最大迭代次數(shù),若大于最大迭代次數(shù)T,則轉(zhuǎn)到Step4,反之轉(zhuǎn)到Step5。
Step4:找到最亮螢火蟲位置,從而可以得到優(yōu)化后的LSSVM模型的參數(shù)(C*,g*)。
Step5:重新確定螢火蟲位置,根據(jù)式(16)確定螢火蟲最新的位置。
SAFA優(yōu)化LSSVM的流程圖如圖1所示。
圖1 SAFA優(yōu)化LSSVM的流程圖
CEEMDAN算法是在原始風(fēng)功率分解過程中的每一階段添加自適應(yīng)高斯白噪聲,通過計(jì)算得到各個(gè)特征相異的分量,分解過程完整,重構(gòu)誤差極低。有效解決EMD模態(tài)混疊問題,同時(shí)克服EEMD分解效率低和噪聲難以完全消除的問題,然后利用相空間重構(gòu)原理,對(duì)IMF分量進(jìn)行重構(gòu),可有效提高風(fēng)功率預(yù)測(cè)精度和預(yù)測(cè)效率。LSSVM在預(yù)測(cè)方面優(yōu)于SVM但預(yù)測(cè)精度易受參數(shù)的選擇影響,所以提出SAFA對(duì)LSSVM參數(shù)進(jìn)行優(yōu)化,可有效解決LSSVM預(yù)測(cè)精度受參數(shù)選擇的影響?;诖私⒘薈EEMDAN-SAFA-LSSVM的組合預(yù)測(cè)模型對(duì)風(fēng)功進(jìn)行預(yù)測(cè),預(yù)測(cè)流程如圖2所示。
圖2 CEEMDAN-SAFA-LSSVM預(yù)測(cè)流程
CEEMDAN-SAFA-LSSVM模型實(shí)施步驟如下。
1)采用 CEEMDAN算法對(duì)風(fēng)功率進(jìn)行分解,將其分解成各個(gè)特征相異的各個(gè)分量。
2)對(duì)風(fēng)功率序列分解產(chǎn)生的各個(gè)分量進(jìn)行相空間重構(gòu)來確定各分量的參數(shù)τ和m。
3)根據(jù)新本征模態(tài)分量的特征,使用SAFA優(yōu)化后的LSSVM模型,對(duì)各新本征模態(tài)分量分別進(jìn)行預(yù)測(cè)。
4)將各分量的預(yù)測(cè)結(jié)果進(jìn)行疊加處理,從而可以得到真實(shí)的預(yù)測(cè)結(jié)果。
為了證明本文所提CEEMDAN-SAFA-LSSVM預(yù)測(cè)模型的有效性,以中國新疆某風(fēng)電場(chǎng)實(shí)測(cè)風(fēng)功率數(shù)據(jù)為測(cè)試樣本,每隔15min取一個(gè)點(diǎn),以某月連續(xù)12d的1152個(gè)數(shù)據(jù)為測(cè)試樣本,用前1088個(gè)數(shù)據(jù)為本文模型的初始訓(xùn)練數(shù)據(jù),后64個(gè)數(shù)據(jù)用來作為預(yù)測(cè)模型的測(cè)試值來驗(yàn)證模型的有效性。
CEEMDAN算法是在原始風(fēng)功率分解的每一階段添加自適應(yīng)高斯白噪聲,通過計(jì)算可將原始風(fēng)功率分解成多個(gè)模態(tài)分量,分解過程完整,誤差極低。解決了EMD和EEMD中存在的模態(tài)混疊問題,計(jì)算量過大和添加白噪聲幅值不當(dāng)?shù)膯栴}。CEEMDAN對(duì)原始風(fēng)功率序列進(jìn)行分解如圖3所示。
圖3 CEEMDAN分解的風(fēng)功率序列
從圖3可知,原始風(fēng)功率序列被分解成了特征互異的11個(gè)IMF分量和一個(gè)ECG分量。然后利用相空間重構(gòu)原理對(duì)經(jīng)CEEMDAN分解后的每個(gè)IMF分量進(jìn)行處理,同時(shí)確定每個(gè)分量的延遲時(shí)間和嵌入維數(shù)。表1給出了各個(gè)IMF分量經(jīng)相空間重構(gòu)后確定的延遲時(shí)間τ和嵌入維數(shù)m[16-17]。
表1 相空間重構(gòu)參數(shù)
對(duì)CEEMDAN分解后的各個(gè)分量進(jìn)行相空間重構(gòu),然后對(duì)重構(gòu)之后的各分量分別建立的SAFA-LSSVM預(yù)測(cè)模型,對(duì)風(fēng)功率進(jìn)行預(yù)測(cè),最后對(duì)預(yù)測(cè)結(jié)果進(jìn)行疊加得到實(shí)際的預(yù)測(cè)結(jié)果。
為了驗(yàn)證本文所用模型對(duì)于參數(shù)優(yōu)化的優(yōu)越性,將本文模型與LSSVM,EEMD-LSSVM進(jìn)行對(duì)比。
由圖4可見,CEEMDAN-SAFA-LSSVM優(yōu)化模型數(shù)時(shí),其迭代次數(shù)最少,10次左右就能達(dá)到收斂,而LSSVM和EEMD-LSSVM需迭代20次左右才可實(shí)現(xiàn)收斂,雖然本文的模型收斂時(shí)的適應(yīng)度稍微大些,但本文的模型整體效果更為理想。
圖4 三種優(yōu)化算法的適應(yīng)度曲線
為提高風(fēng)功率預(yù)測(cè)的效率,采用滾動(dòng)預(yù)測(cè)法對(duì)后64個(gè)數(shù)據(jù)點(diǎn)進(jìn)行滾動(dòng)預(yù)測(cè),然后將其預(yù)測(cè)的各分量的結(jié)果進(jìn)行疊加得到風(fēng)功率最終預(yù)測(cè)值。為驗(yàn)證CEEMDAN-SAFA-LSSVM組合預(yù)測(cè)模型相比于其它模型的優(yōu)越性,與LSSM、EEMD-LSSVM進(jìn)行對(duì)比,結(jié)果如圖5所示。
圖5 風(fēng)功率預(yù)測(cè)曲線
從圖5可知,雖然LSSVM與EEMD-LSSV兩種預(yù)測(cè)模型預(yù)測(cè)出的風(fēng)功率在整體趨勢(shì)上大致可以跟隨實(shí)際輸出,但是在關(guān)鍵點(diǎn)處這兩種預(yù)測(cè)模型的預(yù)測(cè)曲線偏離實(shí)際輸出較大,預(yù)測(cè)效果較差。而本文提出的CEEMDA-SAFA-LSSVM預(yù)測(cè)模型在大多數(shù)預(yù)測(cè)點(diǎn)都更貼近實(shí)際值,預(yù)測(cè)效果比LSSVM和EEMD-LSSVM這兩種模型更好,同時(shí)在關(guān)鍵點(diǎn)本文預(yù)測(cè)模型的預(yù)測(cè)曲線能緊跟實(shí)際風(fēng)功率序列的變化。說明,本文模型預(yù)測(cè)效果更好。
為了比較每個(gè)預(yù)測(cè)方法的預(yù)測(cè)精度,選用絕對(duì)百分比誤差(MAPE)和均方根誤差(RMSE)這兩個(gè)參數(shù)對(duì)各方法進(jìn)行評(píng)價(jià)。
(18)
(19)
從表2可知,相比于LSSVM,EEMD-LSSVM預(yù)測(cè)模型的RMSE與MAPE指標(biāo)分別降低了11.81%和17.44%,預(yù)測(cè)精度更高,說明對(duì)原始風(fēng)功率進(jìn)行分解,可以有效提高風(fēng)功率預(yù)測(cè)精度。而CEEMD-SAFA-LSSVM模型相對(duì)于EEMD-LSSVM模型的RMSE與MAPE指標(biāo)分別降低了11.61%和13.38%,可知采用CEEMDAN分解法可有效改善EEMD分解中的缺點(diǎn)。同時(shí)采用SAFA優(yōu)化LSSVM參數(shù),提高了LSSVM參數(shù)尋優(yōu)速度和預(yù)測(cè)的精度。說明本文所提的CEEMDAN-SAFA-LSSVM預(yù)測(cè)模型提高了風(fēng)功率預(yù)測(cè)效率和預(yù)測(cè)精度。
表2 幾種預(yù)測(cè)方法結(jié)果對(duì)比分析
本文建立的CEEMDAN-SAFA-LSSVM組合預(yù)測(cè)模型,對(duì)風(fēng)功率進(jìn)行短期預(yù)測(cè),經(jīng)過以上分析可得如下結(jié)論。
1)利用CEEMDAN對(duì)波動(dòng)的風(fēng)功率序列進(jìn)行逐級(jí)分解解決了EMD和EEMD中存在的模態(tài)混疊問題,計(jì)算量過大和添加白噪聲幅值不當(dāng)?shù)膯栴}。
2)利用相空間重構(gòu)原理,對(duì)IMF分量進(jìn)行重構(gòu),可有效提高風(fēng)功率預(yù)測(cè)精度和預(yù)測(cè)效率。
3)采用SAFA優(yōu)化LSSVM參數(shù),解決了LSSVM參數(shù)尋優(yōu)效率低的問題。
4)通過與LSSVM和EEMD-LSSVM相比,研究結(jié)果表明本文提出的模型CEEMDAN-SAFA-LSSVM降低了原始非平穩(wěn)序列對(duì)預(yù)測(cè)精度造成的影響提高了收斂速度,同時(shí)具有更高的預(yù)測(cè)精度,證明了本文所提的CEEMDAN-SAFA-LSSVM預(yù)測(cè)模型對(duì)風(fēng)功率預(yù)測(cè)的有效性,同時(shí)為未來短期風(fēng)功率預(yù)測(cè)提供了鋪墊。