(哈爾濱工業(yè)大學 自動化測試與控制研究所,哈爾濱 150080)
目前,我國已成為世界上第一大能源消費國,在能源消費結(jié)構(gòu)中煤炭占比最大,這使我國面臨著巨大的環(huán)境壓力,發(fā)展綠色能源顯得尤為重要。我國的風能資源非常豐富,風電建設(shè)在我國的能源發(fā)展格局中有著舉足輕重的地位。但風速的不穩(wěn)定性和間歇性使風電功率也具有同樣的性質(zhì),這給風電功率注入電網(wǎng)帶來了巨大的挑戰(zhàn),直接影響我國風電發(fā)展的進程。因此,風電功率預測一直都是研究的熱門領(lǐng)域[1]。
風電功率預測方法按照預測結(jié)果的形式可以分為確定性預測和概率性預測。確定性預測僅給出預測點的信息,不能描繪風電功率的不穩(wěn)定性。而概率性預測可以提供預測點的誤差信息,在應用層面,這對電網(wǎng)運行調(diào)度、規(guī)劃和穩(wěn)定性分析有重要作用。
風電功率概率性預測主要有兩類方法,一是對現(xiàn)有確定性預測模型的誤差進行擬合獲得其密度函數(shù),二是直接對變量進行概率性預測[2]。文獻[3]中在ARMA(Autoregressive Moving Average Model)和SVM(Support Vector Machine)兩種確定性預測模型的基礎(chǔ)上,實現(xiàn)了基于分位數(shù)的概率性預測方法[3]。文獻[4]中使用了小波閾值去噪和遞歸神經(jīng)網(wǎng)絡(luò)作為風速預測的子模型,從子模型中獲得方差,然后計算概率性預測的預測區(qū)間,其中方差包括了建模和預測的不確定性[4]。文獻[5]中提出了一種新的多模型組合概率風電預測方法,以利用不同預測模型的優(yōu)勢,這些模型提供不同類型的概率密度函數(shù)以提高概率預測的性能?;谙∈柝惾~斯學習、核密度估計和β分布擬合3個概率預測模型,用于形成組合模型[5]。本文采用第一種概率性預測方法,在LS-SVM(Least Squares Support Vector Machines)確定性預測模型的基礎(chǔ)上,應用核密度估計法對模型的誤差進行密度估計,實現(xiàn)風電功率概率性預測。
支持向量機(SVM)是一個十分出色的機器學習算法,它成功的解決了一系列難題,例如高維和局部極小值問題等[6]。
為了解決支持向量機模型在處理大數(shù)據(jù)集時優(yōu)化困難的問題,LS-SVM算法在SVM算法的基礎(chǔ)上稍作改進,在優(yōu)化時引入了誤差的平方項,并用正則化參數(shù)γ來調(diào)節(jié)對誤差項的懲罰力度,使不等式約束變成了等式約束,降低了LS-SVM模型計算的復雜性。
在LS-SVM中,回歸問題對應的優(yōu)化式為:
(1)
其中:ei為估計誤差,γ為正則化參數(shù)。
約束條件為:
|wTφ(xi)+ξ+ei|<ε
(2)
其中:φ(x)是非線性函數(shù)。
其拉格朗日函數(shù)如下:
L(w,b,e,α)=
(3)
對拉格朗日函數(shù)各參數(shù)求偏導數(shù)有:
(4)
整理成矩陣形式可得:
(5)
(6)
所得LS-SVM模型預測函數(shù)為:
(7)
對樣本數(shù)據(jù)分析時,一般用密度函數(shù)和分布函數(shù)來描述樣本數(shù)據(jù)分布的特點。一些特點類型的樣本數(shù)據(jù),有足夠的經(jīng)驗可以說明其數(shù)據(jù)分布的特征,若密度函數(shù)形式已知,可以利用樣本數(shù)據(jù)估計出密度函數(shù)的具體參數(shù),這種方法稱為參數(shù)估計法。但當密度函數(shù)形式未知,用參數(shù)估計法就無從下手了,這種情況下就可以用非參數(shù)估計方法對樣本數(shù)據(jù)的密度函數(shù)進行估計。
非參數(shù)估計方法不依賴假定的密度函數(shù)形式,可以被用于估計多種類型數(shù)據(jù)的密度函數(shù),例如非正態(tài)數(shù)據(jù)、重尾數(shù)據(jù)等[7]?;镜姆菂?shù)估計方法有直方圖估計法、核密度估計法、近鄰估計法、序列估計法等。下面簡要介紹核密度估計法的基本原理:
假設(shè)有一組一維離散隨機樣本,其密度函數(shù)f(x)和分布函數(shù)F(x)形式未知,則有:
(8)
其中:h是核密度估計的帶寬(窗口)。
一個常用的經(jīng)驗布函數(shù)為:
(9)
其中:I(x)為核函數(shù)。
將Fn(x)代入式(8),則密度函數(shù)的估計為:
(10)
計算fn(x)的方差和均值,當h→0且nh→∞時有:方差趨于0,而均值趨于f(x),說明fn(x)對f(x)的估計是準確的。
(11)
其中:u為核函數(shù)寬度。
由公式(9)可知,核密度函數(shù)估計是一個加權(quán)和,在進行加權(quán)求和時,對處于區(qū)間[x-h,x+h]中的樣本點賦予同樣的權(quán)重。這樣的處理實際上是不合理的,因為在估計X在x點處的密度f(x)時,離x越近的樣本點提供的關(guān)于f(x)的信息越多。因此,在定義f(x)的估計時,就要對距離x較近的點賦予較大的權(quán)值,對距離x較遠的點賦予較小的權(quán)值,可以選取不同的核函數(shù)來決定各點的權(quán)值。
風電功率預測按照預測方法的結(jié)果可以分為確定性預測和概率性預測。確定性預測的主要不足是預測結(jié)果中沒有提供任何關(guān)于預測值預測誤差的信息,限制了這類方法在實際中的應用。而概率性預測則可以為每個預測量提供一個預測區(qū)間,彌補了確定性預測的不足。
本文在LS-SVM確定性預測模型基礎(chǔ)上,利用核密度估計方法計算確定性預測模型誤差的分布函數(shù),實現(xiàn)了風電功率的概率性預測,概率性預測模型的算法框圖如圖1所示。
圖1 整體算法框架
在LS-SVM預測模型進行時間序列預測之前,需要對輸入時間序列進行相空間重構(gòu)得到輸入向量。構(gòu)造的輸入向量不僅關(guān)系到模型的復雜度,而且會影響到模型的預測精度。
重構(gòu)得到的輸入向量并不能直接作為模型的輸入,因為原始數(shù)據(jù)的范圍變化較大,有些數(shù)據(jù)可能會使模型內(nèi)部函數(shù)飽和從而影響模型的預測精度,所以輸入向量需要歸一化處理后才能輸入模型。預測得到的預測值經(jīng)過反歸一化后,才能得到實際的預測值。
在模型構(gòu)建的過程中需要選擇核函數(shù),常見的核函數(shù)有Sigmoid核函數(shù)、多項式核函數(shù)、徑向基RBF(Radial Basis Function)核函數(shù)等[8]。本文選取RBF核函數(shù)。另外,超參數(shù)的選擇也是構(gòu)建模型的重點,需要設(shè)定的超參數(shù)有正則化參數(shù)γ和核函數(shù)參數(shù)σ。γ稱作懲罰因子,決定對誤差平方項的懲罰力度,關(guān)系到模型的訓練誤差和泛化能力。在實際應用中σ和γ的偏大或者偏小都會引起模型的過學習或欠學習現(xiàn)象,因此選擇合理的超參數(shù)非常重要。
本文采用網(wǎng)格搜索法來確定超參數(shù),利用此方法可以得到全局范圍內(nèi)的最優(yōu)解[9]。具體步驟如下:
1) 設(shè)定兩個參數(shù)的選擇范圍和步長。
2)設(shè)定初始化參數(shù),移動網(wǎng)格交點在每一處交點建立模型,計算得模型的平均絕對誤差MAE。
3) 搜索完畢后選取計算指標最優(yōu)的一組參數(shù)作為模型的超參數(shù)。
在模型建立完成之后,需要在訓練集上訓練模型,得到支持向量alpha和偏移參數(shù)b,構(gòu)造決策函數(shù),確定風電功率確定性預測模型。
在確定性預測的基礎(chǔ)上,通過對確定性預測模型誤差密度函數(shù)的估計,應用概率論理論可以計算任意置信度下的置信區(qū)間。
對不同的風電功率區(qū)段,風電功率確定性預測模型的誤差分布的范圍有明顯區(qū)別。因此,需要將風電功率進行分區(qū),對不同的分區(qū)分別計算誤差概率密度曲線和各功率區(qū)間的置信區(qū)間[10],實現(xiàn)全功率段的概率性預測。
假設(shè)風電功率值的最大值為Pmax、最小值為Pmin、區(qū)間長度為ΔP,分區(qū)數(shù)n為:
n=(Pmax-Pmin)/ΔP+1
(12)
初步區(qū)間劃分后,有時會出現(xiàn)某些分區(qū)樣本點不足的情況,這樣所得到的誤差密度分布不能準確地反映誤差的實際分布情況。這時需要將相鄰的樣本點較少的區(qū)間合并,直到合并區(qū)間的誤差樣本點達到數(shù)量要求。
應用核密度估計法計算各區(qū)間的誤差概率密度函數(shù):
(13)
其中:ei為LS-SVM模型預測誤差樣本,N為樣本總數(shù),K(x)為核函數(shù),h為帶寬。
對密度函數(shù)積分可得分布函數(shù),設(shè)定置信度α,使下式成立:
P(xmin (14) 則[xmin,xmax]為該功率區(qū)間的置信區(qū)間。依次對每個功率區(qū)間進行以上步驟可得全功率段的置信區(qū)間。最后,將每個預測點的上下限分別于相鄰的點上下限相連即可得到整個時段的概率性預測結(jié)果[11]。 本文的實驗數(shù)據(jù)來自比利時Elia公司AggregateBelgian風電場,其中記錄了該風電場2018年2月28日至2018年3月29日期間的共2974個數(shù)據(jù)點,時間間隔為15分鐘。 圖2 風電功率實驗數(shù)據(jù) 從圖2可以看出,實驗數(shù)據(jù)存在數(shù)據(jù)缺失的情況,表現(xiàn)為數(shù)據(jù)中出現(xiàn)連續(xù)的0值,這些值將會對預測算法產(chǎn)生影響;因此,在預測實現(xiàn)之前,必須對這些缺失值進行插值處理。將預處理后的實驗數(shù)據(jù)中的前2000個作為模型訓練數(shù)據(jù),后974個作為測試數(shù)據(jù)。 使用該預測模型,對測試數(shù)據(jù)中的974個數(shù)據(jù)點進行預測,得到974個誤差樣本。將風電功率的范圍等分為4個區(qū)間,分別為[0,500]、[500,1000]、[1000,1500]、[1500,2000],對各區(qū)段的誤差樣本分別求取概率密度函數(shù),如圖3所示。 圖3 各功率區(qū)間誤差樣本概率密度圖 給定置信度為0.9,則所得各分區(qū)的置信區(qū)間為: 1)功率區(qū)間[0,500]的置信區(qū)間為[-75,75]; 2)功率區(qū)間[500,1000]的置信區(qū)間為[-150,150]; 3)功率區(qū)間[1000,1500]的置信區(qū)間[-125,125]; 4)功率區(qū)間[1500,2000]的置信區(qū)間為[-100,100]。 圖4 概率性預測結(jié)果(置信度為0.9) 給定置信度為0.7,則所得各分區(qū)的置信區(qū)間為: 1) 功率區(qū)間[0,500]的置信區(qū)間為[-52.5,52.5]; 2) 功率區(qū)間[500,1000]的置信區(qū)間為[-105,105]; 3) 功率區(qū)間[1000,1500]的置信區(qū)間[-87.5,87.5]; 4) 功率區(qū)間[1500,2000]的置信區(qū)間為[-70,70]。 由圖5可以看出,區(qū)間預測中置信度為0.9的結(jié)果中兩條包絡(luò)線完全將實際功率曲線包在中間,而置信度取0.7時,則有一點越過了下包絡(luò)線,這就說明合理的選取置信度十分關(guān)鍵。置信度的選擇直接決定預測區(qū)間包括真值概率的大小。另外,由于在不同功率區(qū)段預測的精度不同,因此可以在不同的功率區(qū)段內(nèi)可以采用不同的置信度,從而提高概率性預測的整體性能[11]。 圖5 概率性預測結(jié)果(置信度0.7) 為了驗證LS-SVM模型的預測精度,采用ARMA模型和BP神經(jīng)網(wǎng)絡(luò)模型的預測結(jié)果進行對比。 采用AIC(Akaike Information Criterion)準則[12]確定模型階數(shù)為p=6,q=10。經(jīng)檢驗一次差分后,原先不平穩(wěn)的時間序列變?yōu)槠椒€(wěn)的時間序列,將差分后的時間序列代入模型得到的預測結(jié)果如圖6所示。 圖6 ARMA預測模型的實驗結(jié)果 以上實驗結(jié)果說明使用ARMA線性建模方法對非線性的風電功率時間序列進行預測的效果不佳。 設(shè)定學習次數(shù)為5000,學習速率為0.02,訓練的誤差精度為0.01,得到的BP神經(jīng)網(wǎng)絡(luò)預測結(jié)果[13]如圖7所示。 用LS-SVM模型、BP神經(jīng)網(wǎng)絡(luò)模型[14]和ARMA模型,基于相同時段的歷史數(shù)據(jù),預測相同的時段,得出的性能指標可以充分地說明三者的優(yōu)劣。三者預測性能對比情況如表1所示。 圖7 BP神經(jīng)網(wǎng)絡(luò)預測模型的實驗結(jié)果 表1 三種預測模型性能對比 預測結(jié)果表明,對風電功率進行確定性預測時,LS-SVM模型的預測精度優(yōu)于其他兩種模型。因此,在LS-SVM預測模型的基礎(chǔ)上進行概率性預測會得到更精確的結(jié)果。 應用最小二乘支持向量機和核密度估計相結(jié)合的方法實現(xiàn)對風電功率的概率性預測。首先利用了最小二乘支持向量機模型實現(xiàn)了對風電功率的單步預測,在單步預測的基礎(chǔ)上利用迭代法實現(xiàn)了多步預測,多步預測的平均絕對誤差為42.6,預測效果較好,具有一定的實用價值。 但本文的研究方法還存在著一定的不足,首先在輸入向量構(gòu)造方面,本文采用的是經(jīng)驗法,選取連續(xù)的13個點作為輸入向量,這種方法完全基于實驗效果,缺乏量化標準和選取原則,后續(xù)可考慮采用其他方法來構(gòu)造輸入向量,例如:自相關(guān)分析方法、功率譜分析方法。 使用了非參數(shù)核密度估計法對風電功率進行概率性預測,首先對確定性預測模型預測誤差進行了分布擬合,與傳統(tǒng)的參數(shù)統(tǒng)計不同的是非參數(shù)統(tǒng)計不需要事先假設(shè)誤差的分布,模型完全基于數(shù)據(jù),提高了預測結(jié)果的可靠性。但核密度估計方法的準確性是以樣本數(shù)據(jù)量為基礎(chǔ),其進行估計時需要大量的誤差數(shù)據(jù),實驗中各區(qū)間的誤差樣本數(shù)量太小,無法真實地反映出實際中誤差的分布情況,這樣對區(qū)間預測的效果會有一定的影響,文獻[10]中采用Bootstrap方法與核密度估計相結(jié)合的方法來解決這一問題,利用Bootstrap法對每個功率區(qū)間的誤差樣本值進行多次重抽樣,產(chǎn)生大量新的誤差樣本,然后在新誤差樣本的基礎(chǔ)上進行概率密度的估計,求各個功率區(qū)間的置信區(qū)間,這種方法為本文后續(xù)研究提供參考和借鑒。3 實驗結(jié)果與分析
3.1 實驗數(shù)據(jù)
3.2 基于LS-SVM和核密度的概率性預測驗證
3.3 對比實驗
4 結(jié)論