吳堅,項頌,閻誠,吳曉丹,馬繼濤,劉福鎖
(1.國網(wǎng)內(nèi)蒙古東部電力有限公司,內(nèi)蒙古呼和浩特 010000;2.東南大學(xué)電氣工程學(xué)院,江蘇南京210096;3.國電南瑞科技股份有限公司,江蘇南京 211106)
風(fēng)能作為一種高效的清潔能源,具有強烈的隨機性、間歇性和逆負荷性等特點[1]。據(jù)統(tǒng)計,2019年全球風(fēng)電新增和累積裝機容量較2018年同比增長19%和10%[2]。為了降低高滲透率風(fēng)電對電網(wǎng)帶來的不確定性,提高風(fēng)電消納能力,實現(xiàn)系統(tǒng)安全穩(wěn)定運行,準(zhǔn)確的風(fēng)電超短期功率預(yù)測具有重要的意義[3]。
風(fēng)電功率時間序列具有很強的時序特征。風(fēng)電功率序列預(yù)測方法以統(tǒng)計學(xué)方法和人工智能算法為主。統(tǒng)計學(xué)方法僅依賴時間序列方法進行建模,能夠有效捕捉時間序列中的非線性關(guān)系,但存在模型定階和參數(shù)估計問題[4]。人工智能算法能夠有效捕捉風(fēng)電功率時間序列中的非線性關(guān)系,但對樣本數(shù)據(jù)質(zhì)量依賴較高[5],其中,最小二乘支持向量機(Least-Squares Support Vector Machine,LSSVM)通過映射關(guān)系將原支持向量機模型參數(shù)訓(xùn)練中的非線性問題替換成線性問題,能有效增強模型計算效率,具有較強的泛化能力[6]。對于風(fēng)電功率序列復(fù)雜的波動特性,單一預(yù)測模型因受制于樣本維度和數(shù)量等因素而具有局限性[7]。
基于數(shù)據(jù)預(yù)處理過程的組合預(yù)測模型是提升單一預(yù)測方法適應(yīng)能力和模型精度的重要途徑[8]。通過對原始高頻非線性時間序列進行分解,能夠有效降低序列的復(fù)雜程度,采用分解后的子序列分別建立一系列適應(yīng)其序列特征的預(yù)測模型,顯著提升了預(yù)測性能。傳統(tǒng)數(shù)據(jù)預(yù)處理方法包括以經(jīng)驗?zāi)B(tài)分解(Empirical Mode Decomposition,EMD)[9]和小波分析(Wavelet Decomposition,WD)[10]為基礎(chǔ)衍生出的一系列序列分解方法,但是分解序列結(jié)果存在顯著的端點效應(yīng)和模態(tài)混疊現(xiàn)象,極大地增強了預(yù)測過程中的難度。而奇異譜分析(Singular Spectrum Analysis,SSA)作為一種非線性時間序列分解重構(gòu)的分析方法,能夠有效處理復(fù)雜序列,無須選取先驗基函數(shù)和復(fù)雜的運算過程,具有較好的客觀性和自適應(yīng)性[11],使其廣泛地應(yīng)用于各工程學(xué)科領(lǐng)域。文獻[12]采用SSA提取風(fēng)速序列的趨勢成分、振蕩成分和噪聲成分,分別建立預(yù)測模型,實現(xiàn)了準(zhǔn)確可靠的風(fēng)速區(qū)間預(yù)測。但是SSA存在嵌入維度選取困難的問題,過高的嵌入維度導(dǎo)致關(guān)鍵序列分量被過度分解為噪聲成分,而較小的嵌入維度無法有效提取序列的關(guān)鍵變化特征[13]。
考慮到風(fēng)電功率時間序列包含大量的時序性和自相關(guān)性特征,本文提出了一種基于SSA和LSSVM的組合預(yù)測模型。針對SSA嵌入維度存在不確定性的問題,使用Cao方法判別嵌入維度。對于分解得到的子序列分別使用LSSVM進行訓(xùn)練,通過粒子群優(yōu)化算法(Particle Swarm Optimization,PSO)確定各子序列的LSSVM模型參數(shù),實現(xiàn)對風(fēng)電功率的多步預(yù)測。引入樣本熵作為分解模型效果度量指標(biāo),結(jié)合實測數(shù)據(jù),驗證了基于SSA的風(fēng)電功率超短期預(yù)測模型在多步預(yù)測中的優(yōu)越性能。
通過對風(fēng)電功率時間序列進行分解,根據(jù)所得到的不同分量的波動特性,分別建立預(yù)測模型,以降低預(yù)測誤差。采用組合模型進行預(yù)測的整體研究思路如圖1所示。

圖1 組合預(yù)測模型Fig.1 Diagram of combined forecasting model
首先,基于復(fù)雜系統(tǒng)混沌理論,采用Cao方法確定嵌入維度的選取,即分解算法所得到的分量數(shù)量,通過對原始訓(xùn)練樣本進行SSA分解,得到一系列不同時間尺度的分量序列;然后,采用LSSVM分別對其進行訓(xùn)練,采用PSO優(yōu)化預(yù)測模型的基本參數(shù)。類似的,在功率預(yù)測階段,將實時采集到的功率數(shù)據(jù)與歷史數(shù)據(jù)進行拼接,根據(jù)選取的嵌入維度重新進行分解,并采用LSSVM對各分量序列進行預(yù)測;最后,疊加不同分量的風(fēng)電功率序列預(yù)測輸出。
SSA是基于奇異值分解的一種序列成分分析方法,與時序預(yù)測模型結(jié)合能有效提升預(yù)測性能。對于具有非線性特征的風(fēng)電功率序列樣本,通過構(gòu)建軌跡矩陣、奇異值分解、分組和對角平均化等流程實現(xiàn)風(fēng)電功率序列的分解[11]。具體流程如下。
提取樣本數(shù)量為N的風(fēng)電歷史功率序列z=[z1,z2,…,zN],設(shè)定SSA的模型嵌入維度為L,將其重構(gòu)為跡矩陣X:

在此基礎(chǔ)上,可根據(jù)奇異值對各子序列進行分組,篩選分解后的各類型分量,剔除諧波分量。在本文中,待預(yù)測風(fēng)電功率序列已經(jīng)進行了預(yù)處理剔除異常數(shù)據(jù),因此在SSA階段中不考慮分組的情況。
對角平均化還原時間序列,當(dāng)X是一個L×K的矩陣,矩陣中元素為xij,令L*=min(L,K),K*=max(L,K),N=L+K-1,且滿足當(dāng)L<K時,=xij;否則=xji,對子矩陣Xi進行重構(gòu)得到的序列[y1,y2,…,yN]可表示為

SSA具有很強的非參數(shù)性,因此其嵌入維度L決定了模型分解性能。對于復(fù)雜波動的風(fēng)電功率序列,L越大會削弱不同分量之間特征值差異,利于周期規(guī)律變化的風(fēng)電功率的成分提取,但會產(chǎn)生多余分量;L較小能有效反映風(fēng)電功率序列的波動態(tài)勢,但無法充分挖掘分量中蘊含的關(guān)鍵信息。L一般通過已知數(shù)據(jù)進行經(jīng)驗選取,不能大于給定序列長度的1/2。而風(fēng)電功率序列兼具短時間尺度的高頻波動特性和長時間尺度變化趨勢,因此合理的L選取具有重要的意義。SSA中構(gòu)建跡矩陣與混沌系統(tǒng)理論中的相空間重構(gòu)一致,可借鑒混沌序列相空間重構(gòu)嵌入維度的選取方法。
Cao方法具有較強的適應(yīng)性和計算效率[14],采用Cao方法計算風(fēng)電功率序列分解的L步驟如下。
計算不同L下最近鄰點的距離變化值:

式中:i=1,2,…,N-L;||·||為∞-范數(shù);Xi(L+1)為L+1的第i個重構(gòu)得到的相空間向量。
對于L+1,Xn(i,M)(L+1)為∞-范數(shù)下與Xi(L+1)距離最近的向量,n(i,M)為滿足1≤n(i,M)≤(N-L)的整數(shù)。
計算相同L下空間距離波動值的均值:

采用E1(L)監(jiān)測不同L下E(L)的變化情況:

當(dāng)滿足L>L0時,對應(yīng)E1數(shù)值停止變化或波動小于一定閾值,得到最小L為L0+1。為了保證L選取的客觀性和合理性,引入E1波動率ei。

設(shè)定閾值e0和波動邊界k,滿足1<k<N-1,k為當(dāng)?shù)谝淮螡M足ei<e0時的下標(biāo)。
在此基礎(chǔ)上,定義e:

當(dāng)i+1滿足ei+2<ei+1<ei,且ei+1<e時,得到最佳L=i+1。
為對比不同分解方法下風(fēng)電功率序列的分解效果,引入樣本熵描述其復(fù)雜程度。樣本熵越大的序列,復(fù)雜程度越大。作為一種復(fù)雜性度量方法,樣本熵對數(shù)據(jù)長度不敏感,具有較好的穩(wěn)定性。對于長度為N的時間序列X=[X(1),X(2),…,X(N)],其樣本熵計算步驟如下[15]。
基于重構(gòu)維數(shù)m對原風(fēng)電功率分解子序列進行重構(gòu),得到一組m維的空間向量Xm:

Xm(i)表示為

定義運算Xm(i)和Xm(j)之間距離的絕對值為

計算Dm{Xm(i),Xm(j)}小于設(shè)定相似度閾值r的數(shù)量,并記為,Bm。

樣本熵計算式為

基于一致性原理,通常取樣本熵m為1,r為0.15倍風(fēng)電功率序列統(tǒng)計標(biāo)準(zhǔn)差[16]。
本文所研究的風(fēng)電超短期功率預(yù)測,要求風(fēng)電場內(nèi)輸出功率序列進行就地和實時的準(zhǔn)確預(yù)測,因此對于預(yù)測模型精度和復(fù)雜程度提出了一定的要求。本文通過LSSVM構(gòu)建風(fēng)電功率分解后子序列的預(yù)測模型,而LSSVM作為支持向量機(Support Vector Machine,SVM)的改進模型,將SVM模型訓(xùn)練中復(fù)雜的二次規(guī)劃問題轉(zhuǎn)變成線性方程組問題[17],更有利于在工程實際中的應(yīng)用。可表示為

式中:φ(x)為核空間映射函數(shù);w為權(quán)重;b為偏差量。
根據(jù)結(jié)構(gòu)風(fēng)險最小化原則,LSSVM的參數(shù)優(yōu)化模型可表示為

式中:ζ為松弛因子;樣本數(shù)量滿足i=1,2,…,N。
構(gòu)造拉格朗日函數(shù)如下:

式中:αi為拉格朗日乘子。
根據(jù)Karush-Kuhn-Tucker最優(yōu)條件,得到?L/?ω=0,?L/?b=0,?L/?ξ=0和?L/?αi=0,模型中權(quán)值系數(shù)w和誤差變量ξ可進行化簡消去,最終得到方程組:

式中:l=[1,1,…,1]T;K(xi,xj)為根據(jù)Mercer條件的核函數(shù),文中LSSVM的核函數(shù)選取徑向基核函數(shù)(Radial Basis Function,RBF)。

求解得到LSSVM模型為

LSSVM模型的性能很大程度取決于懲罰系數(shù)γ以及核函數(shù)的參數(shù)σ的取值,文中采用的PSO為優(yōu)化算法,以LSSVM輸出和實測值的均方根誤差作為PSO算法的適應(yīng)度函數(shù),對超參數(shù)γ和σ進行尋優(yōu),具體原理可見文獻[18]。
風(fēng)電功率序列在短時間尺度存在高非線性和波動性的特征。單一預(yù)測方法無法在預(yù)測過程中對這些特征進行準(zhǔn)確捕捉,因此預(yù)測結(jié)果普遍存在一定的時延性。本文結(jié)合SSA處理非平穩(wěn)序列的優(yōu)勢和LSSVM在線高效計算的特點,提出了一種SSA-LSSVM的風(fēng)電超短期功率組合預(yù)測模型。首先采用Cao方法確定功率時間序列的最優(yōu)L,對原始序列進行SSA分解,得到一系列多時間尺度的固有模態(tài)分量(Intrinsic Mode Function,IMF),實現(xiàn)序列的關(guān)鍵特征提??;然后分別采用LSSVM對各分量進行訓(xùn)練,通過PSO優(yōu)化模型參數(shù);最后通過測試樣本的預(yù)測值疊加得到實際風(fēng)電功率的預(yù)測結(jié)果。具體步驟如下:
①將功率序列進行訓(xùn)練集和測試集劃分,以驗證預(yù)測模型的泛化能力。初始化模型參數(shù):預(yù)測步長T和PSO中的尋優(yōu)參數(shù),包括粒子種群數(shù)量、粒子的位置和速度等;
②在離線模型訓(xùn)練階段,采取Cao方法確定L,對序列進行SSA分解,采用PSO選取各分量的最佳參數(shù),訓(xùn)練LSSVM模型;
③在線預(yù)測階段,根據(jù)T選取測試樣本,對其進行SSA分解,以此輸入LSSVM中生成預(yù)測結(jié)果。根據(jù)T調(diào)整LSSVM輸入值,滾動迭代完成該步長下所有分量的預(yù)測后,將各分量預(yù)測值累加得到真實功率預(yù)測值;
④重復(fù)步驟③,直到完成整個預(yù)測周期的功率預(yù)測。
具體功率預(yù)測模型流程如圖2所示。

圖2 組合預(yù)測模型流程圖Fig.2 Flow chart of combined forecasting model
值得注意的是,采用組合模型通過序列分解的方式進行預(yù)測會存在一個誤區(qū),就是對包含訓(xùn)練樣本和測試樣本的原始風(fēng)速序列直接進行分解,然后將各分量帶入相應(yīng)的模型進行預(yù)測。因為對含有未來數(shù)據(jù)的序列進行分解,得到的分量結(jié)果本身包含了未來真實值波動的一個趨勢,所以上述方法在實際工程應(yīng)用中是不可能實現(xiàn)的。采用組合模型進行預(yù)測時,必須在每一步預(yù)測前對含有當(dāng)前功率真實值的序列重新進行分解。同時由于分解算法原理上的問題,當(dāng)待分解的時間序列邊緣的真實值增加到一定數(shù)量時,模型輸出的各模態(tài)分量會與原始測試樣本產(chǎn)生的分量存在一定程度的畸變。采用EMD方法進行預(yù)測時,由于其模態(tài)分解數(shù)量不可控性,待分解的序列不斷更新,EMD輸出模態(tài)分量的數(shù)量也會發(fā)生改變,而SSA可以克服上述缺點。基于上述考慮,由于每一步預(yù)測均須要進行SSA分解以更新各分量的真實值且計算量大,因此組合模型不適用于單步預(yù)測和中長期的預(yù)測。
為了克服上述問題,文中采用的多步預(yù)測模型采用迭代法,即每次只向前預(yù)測一步,且每步都采用新得到的預(yù)測值而不是實測值來繼續(xù)下一步的預(yù)測。相較于直接向前預(yù)測T步的直接法,迭代法多步預(yù)測具有更高的精度[19]。文中通過虛假臨近點法確定LSSVM輸入維度[20]。
算例采用中國某風(fēng)電場1.5 MW風(fēng)機在2015年6月19-26日SCADA采集的功率序列為實驗樣本,輸入風(fēng)速采樣間隔為10 min,共計1 152個功率采樣點,選取前1 008個采樣點為模型實驗樣本,后144個點為測試樣本。測試前已進行數(shù)據(jù)清洗,故在SSA分析過程中不再考慮對樣本重構(gòu)分量的篩選。實驗在MATLAB 2019a平臺上進行。選取Cao方法維度篩選閾值e0=0.01,Cao方法中所定義E1的波動情況和不同維度下最大最小特征值的比值λmax/λmin如圖3所示。

圖3 Cao方法選取嵌入維度Fig.3 Select embedding dimension using Cao method
由圖3可以看出,當(dāng)L達到13時,E1停止波動,同時λmax/λmin與L呈線性遞增關(guān)系上漲。L過大會造成計算量顯著增加和關(guān)鍵特征序列被淹沒,而Cao方法不須要依賴經(jīng)驗,可確定最佳L?;诖耍瑢τ?xùn)練樣本進行SSA分解,構(gòu)成13個特征值遞減的模態(tài)分量,如圖4所示。由圖可以看出,SSA分量為1的奇異值顯著高于其他分量,說明該分量對原風(fēng)電功率軌跡矩陣貢獻值最大。

圖4 SSA分解序列奇異值Fig.4 Comparison of Singular value of SSA decomposition sequence
為了驗證所提模型的預(yù)測性能,本文采用PSO-LSSVM[18]和以EMD方法、完備經(jīng)驗?zāi)B(tài)分解(Ensemble EMD,EEMD)以及改進總體完備經(jīng)驗?zāi)B(tài)分解(Improved Complete Ensemble EMD,ICEEMD)[21]為基礎(chǔ),與LSSVM結(jié)合的預(yù)測方法進行對比分析,以下分別稱為EMD-LSSVM,EEMD-LSSVM和ICEEMD-LSSVM方法。EEMD在EMD的基礎(chǔ)上通過增加白噪聲降低EMD的模態(tài)混疊現(xiàn)象。進一步,ICEEMD通過利用添加自適應(yīng)白噪聲和選取各模態(tài)分量當(dāng)前的局部均值以重新定義真實模態(tài)的方式對EMD方法進行改進,克服了虛假模態(tài)和分量存在延遲特性等問題,是當(dāng)前EMD一類算法應(yīng)用于預(yù)測模型中的典型代表,具體算法流程可參見文獻[22]。
樣本熵在度量低維數(shù)據(jù)復(fù)雜程度上具有巨大的優(yōu)勢,通過計算可得原始時間序列樣本熵為1.606 9,各方法樣本熵對比結(jié)果如表1所示。

表1 不同分解方法樣本熵計算結(jié)果Table 1 Calculation results of sample entropy for different decomposition methods
表1顯示經(jīng)SSA分解后的各分量信號仍保持較高的復(fù)雜性特征,而只通過EMD類方法分解得到的分量平均樣本熵遠低于原始序列樣本熵。為了量化分析不同預(yù)測方法和步長下多步預(yù)測時的預(yù)測精度,本文采用歸一化均方根誤差(Normalized Root-Mean-Squared Error,NRMSE)、歸一化絕對平均誤差(Normalized Mean Absolute Error,NMAE)和歸一化絕對誤差(Normalized Absolute Error,NAE),定義如下:

式中:y0(i)為真實值;y(i)為預(yù)測值;N為預(yù)測序列總長度;PN為風(fēng)機裝機容量。
預(yù)測模型的四步預(yù)測結(jié)果及其對應(yīng)的不同預(yù)測方式下的NAE如圖5所示。

圖5 四步預(yù)測結(jié)果及誤差Fig.5 Curves of four-step wind power prediction results and error
為了驗證文中所提方法的有效性,本文將直接通過LSSVM預(yù)測和以EMD類分解方法為基礎(chǔ)的LSSVM預(yù)測結(jié)果與所提出的方法進行對比。由圖5可以看出,SSA-LSSVM方法能夠在多步預(yù)測過程中很好地捕捉原始序列的變化趨勢,精度較未采用序列分解而直接預(yù)測的結(jié)果有顯著的提升。由于對時間序列的充分分解,原來具有高頻波動特征的風(fēng)電功率序列的復(fù)雜程度被充分降低,有利于預(yù)測模型的擬合。EMD類方法無法主觀設(shè)定分解維數(shù),因此在預(yù)測過程中會出現(xiàn)分解維度突變情況,適應(yīng)性較差。ICEEMD相較于EMD和EEMD方法,克服了數(shù)據(jù)預(yù)處理過程中的端點效應(yīng),但是在風(fēng)電功率突變點,預(yù)測結(jié)果與SSALSSVM方法預(yù)測結(jié)果變化趨勢有明顯差別,說明單獨的ICEEMD模態(tài)分解方法無法對原序列的多時間尺度分量實現(xiàn)充分的分解,整體預(yù)測精度低于SSA-LSSVM方法。而只采用LSSVM的方法受訓(xùn)練樣本容量的限制,超短期預(yù)測結(jié)果中存在多處滯后現(xiàn)象,預(yù)測效果最差。在四步預(yù)測步長下,SSA-LSSVM方法相對誤差始終維持在一個較低水平,說明組合模型能有效提升機器學(xué)習(xí)方法對時間序列的擬合水平。SSA方法能夠很好地挖掘原始時間序列中的關(guān)鍵特征,而LSSVM方法可以模擬序列分解得到非線性特性變化。
圖6給出了不同預(yù)測方法在各預(yù)測步長下的誤差性能指標(biāo),SSA-LSSVM預(yù)測模型在不同預(yù)測步長下的預(yù)測誤差均小于其他方法,隨著預(yù)測步長的提升,同一預(yù)測模型的預(yù)測性能也會逐漸下降。單一LSSVM預(yù)測性能最差,相較于傳統(tǒng)EMD方法,采用EEMD-LSSVM和ICEEMD-LSSVM方法有效降低了模型預(yù)測誤差,但是對預(yù)測性能的改善作用十分有限,隨著預(yù)測步長的增大,這一改善作用會逐漸減弱。在各預(yù)測步長下,基于SSA的預(yù)測方法的NRMSE和NMAE始終低于EMD類方法誤差性能指標(biāo),說明與EMD類方法相比,SSA方法對序列關(guān)鍵特征分量提取能力更強,輸出分量質(zhì)量較高,有利于LSSVM學(xué)習(xí)序列特征,提升組合模型的預(yù)測精度。

圖6 預(yù)測誤差性能指標(biāo)Fig.6 Prediction error performance index
針對風(fēng)電功率序列復(fù)雜的波動特性,本文提出了一種基于SSA的超短期風(fēng)電功率組合多步預(yù)測方法。算例對比研究結(jié)果表明:
①通過Cao方法確定SSA的最佳嵌入維度,有效避免了人為因素的影響以及單純追求預(yù)測結(jié)果而造成的序列特征被淹沒和計算量暴增等問題;
②SSA具有直接提取風(fēng)電功率序列不同成分的能力,與其他數(shù)據(jù)預(yù)處理方法相比,分解后序列平均樣本熵最大,有效保留了原始序列關(guān)鍵特征;
③所提基于SSA的預(yù)測模型能夠獲取時間序列中的時序演變特征和波動趨勢,有效提升了不同步長下的預(yù)測精度,計算效率更高。