張穎超,沈子豪,馬偉叁,熊 雄,陳 昕
(1.南京信息工程大學 a.自動化學院; b.江蘇省大氣環(huán)境與裝備技術協(xié)同創(chuàng)新中心, 南京 210044;2.中國鐵路上海局集團有限公司, 上海 200000)
隨著社會經濟的發(fā)展,全球降碳腳步的加快,能源消耗增加與能源儲量有限之間的矛盾逐漸加劇。為了解決這個問題,許多國家都在積極探索新能源來應對世界范圍內的嚴重能源危機[1]。中國提出了“碳中和”目標,為我國能源轉型的進度上緊了“發(fā)條”。 風能作為清潔環(huán)保能源,正逐漸受到世界各國的重視。從生態(tài)環(huán)境和經濟發(fā)展方面考慮,推動風力發(fā)電技術已成為各國促進能源結構調整的重要舉措。在這個能源轉型的關鍵時刻,風電產業(yè)正迎來前所未有的發(fā)展良機[2]。風電行業(yè)順應“碳中和”的時代潮流,但其本身的獨特性也帶來了不少挑戰(zhàn)——如何保證發(fā)電連續(xù)性、發(fā)電效率和實現高效運維等[3]。
目前,短期風電功率預測方法主要分為物理方法、統(tǒng)計方法及組合方法。物理方法基于數值天氣預報得到風電場所在地的氣象資料,然后根據風電場所在地的地理環(huán)境建模,根據此模型將數值天氣預報資料轉換成風機所在位置和高度的風速風向數據,再結合功率曲線推算出風機的有功功率[4];統(tǒng)計方法的核心是通過大量歷史運行數據的學習和訓練,建立氣象信息與風電功率之間復雜的對應關系進行預測。采用傳統(tǒng)的線性回歸方法如回歸分析法、指數平滑法、卡爾曼濾波和灰色預測法處理波動性較大的風電功率預測問題時常力不從心[5]。相對而言,非線性的統(tǒng)計方法如人工神經網絡、深度學習、支持向量機等,提高了模型的泛化性和精確性,達到更好的預測效果[6]。
雖然統(tǒng)計方法能較好地反映風電波動特性,預測精度較高。但大量的輸入樣本訓練,容易存在冗余信息,影響模型的訓練效率。同時,由于天氣復雜多變,整體訓練樣本訓練的模型往往精度不高,計算效率較低。針對此問題,目前出現了一些相似性方法來篩選輸入樣本。閻潔等[7-8]直接將基準日風速數據作為特征向量,選取與其相似性最好的歷史風速數據作為模型輸入數據;張穎超等[9-11]將風速、風向等氣象因素的最值與均值作為特征量,通過關聯系數等構建與其相似性最好的歷史數據構建訓練樣本集。汪慶洋[12]根據天氣模式變化將訓練樣本聚類,構建預測模型,其預測精度有了明顯的提高。
由于天氣情況復雜多變,影響風機出力的因素較多,而風速作為風機出力的最主要影響因素,目前大多研究方法僅考慮風速數值大小和特征變化的相似性,并沒有考慮風速和其他氣象因素在時間序列上的變化趨勢對風電功率預測的影響。因此本文提出一種通過動態(tài)時間規(guī)整法(DTW)計算預測日與歷史日風速、溫度、氣壓等時間序列相似性,選出相似日。但在傳統(tǒng)的相似日選取上,同一影響因子間的相同權重會直接導致相似度大的因子直接決定總體相似度,導致誤差。為體現風機出力的主導因素,本文通過核主成分分析(KPCA)方法進行降維處理,并計算加權相似度來篩選出合適的相似日作為訓練集,最后采用核極限學習機(KELM)方法預測短期風電功率,實驗表明該方法既能有效提高數據處理效率,又提高了預測精度。
以上海某風電場數據為例,實驗數據為30臺風機的實際發(fā)電功率數據和測風塔采集的風速和其他氣象數據。30臺風機型號相同,風機切入風速為3 m/s,額定風速為12 m/s,切出風速為25 m/s,額定功率2 MW,風輪直徑93 m,掃風面積6 793 m2。采樣時間段為2014年9—11月,采樣間隔為10 min。
動態(tài)時間彎曲距離方法是一種通過彎曲時間軸來更好匹配時間序列形態(tài)的相似度量方法。動態(tài)時間彎曲距離最早應用于處理語音數據,后來,Li[13]將其應用到時間序列相似性度量研究中。假定一條時間序列S長度為n:S={s1,s2,…si…,sn},另一條時間序列T長度為m:T={t1,t1,…tj,…tm}。令距離矩陣Am×n=(aij)m×n,用aij表示(si,tj)兩點間的路徑距離,其中aij基于基距離方法進行計算,一般情況下選用歐式距離的平方進行基距離計算,即aij=(si-tj)2。
在距離矩陣中,令W=w1,w2,…wk,為時間序列S={s1,s2,…si…,sn}和T={t1,t1,…tj,…tm}的動態(tài)時間彎曲路徑[14]。其中wk=(aij)k是路徑第k個元素。該路徑用時間規(guī)整函數W表示,其定義如下:
W={w1,…,wk,wK}
(1)
max(m,n)≤K (2) 規(guī)劃路徑需求滿足邊界性、連續(xù)性和單調性的約束條件: 1) 邊界性約束:路徑的起始點為w1=(x1,y1),終止點為wK=(xm,yn);任意風速時間序列快慢都有可能發(fā)生變化,但是其先后順序不可能改變,因此,所選路徑必須是從左下角出發(fā),右上角結束。 滿足1)~3)的路徑有很多,將其中累計距離最小的那個定為序列X和Y間的DTW距離,累計距離D定為[15]: (3) KPCA是一種對主成分分析(principal component analysis,PCA)非線性拓展的降維方法,能夠基于核信息保留完整特征的非線性數據,發(fā)掘到數據集中含有的非線性信息。KPCA 算法是通過非線性映射將輸入空間映射到高維空間向量,從而達到數據降維的目的[16-17]。在高維空間中協(xié)方差矩陣為: (4) 對式(4)進行特征值分解,可得到對應的特征方程: λv=Cv (5) 式中:λ≥0,v為協(xié)方差矩陣C的特征值和特征向量。式(5)兩端同時乘以內積φ(xk)(k=1,2,…,n),可得: λ[φ(xk),v]=[φ(xk),Cv] (6) 且v可表示為: (7) 聯合式(4)~(6),可得: (8) 引用核函數k(xi,xj)=[φ(xi),φ(xj)],即可通過映射計算投影如下: (9) 核極限學習機(KELM)是將ELM算法與核函數相結合,即將核函數代替ELM中隱含層的特征映射,形成基于核的ELM算法[18]。 ΩKELM=HHT:Ωi, j=h(Xi)h(Xj)=K(Xi,Xj) (10) 核矩陣Ω代替HHT,是將所有輸入樣本從N維的輸入空間映射到高維隱藏層特征空間。再利用嶺回歸原理將參數I/C引入對角矩陣中,求得正則化最小二乘解: β=H+(I/C+HHT)-1T (11) 以上公式可得KELM輸出為: (12) 風機出力影響受諸多因素影響,其發(fā)電功率P計算公式為: P=CpAρv3/2 (13) 式中:P為風機輸出功率;Cp為風機功率系數;ρ為空氣密度;A為風機葉片掃掠面積。在風機發(fā)電過程中,風機功率系數是固定的[19]。風機葉片掃掠面積主要和風向有關,由式(13)可知。風機發(fā)電輸出功率受風速和空氣密度影響??諝饷芏扔峙c氣溫、氣壓、相對濕度有關[20]。因此,本文在構建氣象特征向量時,主要考慮風速、風向、溫度、氣壓、相對濕度5個氣象要素。由于各氣象因素的量綱不同,對上述風速、溫度、氣壓和相對濕度特征向量進行歸一化處理,去除量綱。風向則計算風向的余弦值作為特征量[21]。本文采用最大最小歸一化方法: (14) 由于風機發(fā)電功率預測模型的輸入量之間并不符合線性特征提取條件,所以將核函數的非線性降維方式,即KPCA引入風機發(fā)電功率預測模型中,提取非線性主元,最大程度保留原始有效信息的基礎上控制特征個數。記有n個樣本的數據集為X=[x1,x2,…,xn],xn是m維列向量,m為氣象因子個數。具體計算步驟如下: 1) 選取高斯徑向基函數如式(15)作為式(8)的核函數,計算核矩陣K。 (15) 2) 對K進行特征向量分解,將核矩陣K去中心化。計算協(xié)方差矩陣的特征值和特征向量,將主對角線上為特征值的對角陣變成列向量并將按降序排列。 3) 確定主元貢獻率。計算主元的貢獻率η及累計貢獻率ξ,同時記錄主元所在特征向量中的個數d。 (16) (17) λi為式(4)協(xié)方差矩陣C的特征值。 4) 由式(9)計算主元所對應的特征向量在特征空間上的投影,構建非線性映射。 記預測日和第i個歷史日的氣象因素的特征向量為X0=[X0(1),…,X0(m)],Xi=[Xi(1),…,Xi(m)],d代表主元個數。根據式(3)分別計算預測日與第i(i=1,2,…,N)日的第k(k=1,2,…,d)個主元序列的DTW相似距離lk,i。構建距離矩陣A如下: A=[lk,i] (18) 在傳統(tǒng)計算預測日與歷史日的相似度時,相同的各個影響因子間的權重統(tǒng)一會直接導致相似度大的因子直接決定總體相似度,導致誤差。為體現各個影響要素在相似日選擇中所占的比重不同。因此本文采用計算各要素加權相似度的方式來定義總體相似度公式,總體相似度公式定義如下: (19) 并以此為依據,對各歷史日進行相似度由高到低的排序,本文選取相似度排序靠前的N個歷史日作為相似日。 在基于KPCA提取非線性主元和DTW構建相似日樣本后,采用KELM方法進行預測,因此,本文提出了基于KPCA_DTW相似樣本選取的KELM短期風電功率預測模型。預測流程如圖1所示。 圖1 預測流程框圖 首先,將每個時間對應的風速、風向、溫度、氣壓、相對濕度作為輸入,功率作為輸出。其次,通過KPCA方法對特征量進行初始樣本分析,根據主元貢獻率,提取非線性主元作為特征。將預測日的特征序列與歷史日的特征序列進行相似分析,以總體相似度為衡量標準,最后將提取出的相似日和該時刻選取的特征主元放入模型訓練,輸出為對應時刻的實際功率值。 以上海市某風電場2014年9—11月的歷史氣象數據和對應時刻的功率數據作為實驗對象,有效數據為55 d,其中以11月29日為預測日,其余時間為歷史日作為訓練樣本。通過2.1節(jié)中數據預處理步驟,完成數據準備工作,本次算例用到的氣象數據信息包括風速、風向余弦值、溫度、相對濕度、氣壓。利用2.2節(jié)方法計算各個氣象因素關于風機有功功率的單個貢獻率和累計貢獻率,如表1所示。 表1 主成分貢獻率以及累計貢獻率 % 從表1可以看出,風速的單個貢獻率高于其他4個影響因素,表明風速與風機出力的相關程度最高,為關鍵影響因素。當提取輸入變量的維數為3時,累計貢獻率已經達到90.26%,基本可以替代原始的5維輸入空間。由于風速是影響風電功率的主導因素,分別以動態(tài)時間規(guī)整法(DTW)和相似離度作為相似判據在歷史日中提取出相似日的風速曲線。 為了能更為清楚直觀地比較,將上述2種相似判據提取出的序列與預測日風速序列相似度最好的風速序列進行作圖對比,如圖2所示??梢钥闯?,相較于相似離度,采用動態(tài)時間規(guī)整法(DTW)提取出的相似日風速曲線除了在數值大小上大致相同,在幅值和整體的變化趨勢上也大致相同。說明動態(tài)時間規(guī)整法(DTW)作為時間序列相似性判據,能夠充分考慮到風速序列總體趨勢的相似情況。 圖2 預測日與相似日風速曲線 以11月29號為預測日,選出10個相似日如表2所示。為了能表征風速的主導作用,依據相似判據按加權相似度大小降序排序,加權相似度的值越大表明該相似日與預測日相似度越高。 表2 相似日選擇結果 所選取的10個相似日的氣象數據和功率數據作為KELM預測模型的訓練集,為探究本文進行相似日選擇和核主成分分析的方法的合理性和有效性,將以下3種預測方法進行對比。 KELM預測模型:將未處理的原始數據集輸入KELM預測模型,由于原始數據量較大,雖然經過初步數據清洗但仍存在較多冗余數據,模型訓練精度不高,訓練花費較長時間,時間成本較大。 DTW_KELM預測模型:根據式(3)計算各歷史日和預測日對應風速、風向、溫度、壓力、相對濕度時間序列的DTW距離。將氣象要素賦予相同的權重,計算各歷史日和預測日的相似程度,選取相似度最高的日期構成相似日樣本。將相似日的氣象要素和對應時刻的實際功率作為數據樣本輸入KELM預測模型訓練。 KPCA_DTW_KELM預測模型:在方法2的基礎上,考慮風速、風向、溫度、壓力、相對濕度的權重,采用KPCA方法對特征量進行初始樣本分析,提取非線性主元,最大程度保留特征個數,根據式(19)計算加權相似度,構成相似樣本。最后將相似日樣本數據和對應氣象要素特征放入KELM預測模型訓練。 將上述3種預測模型的結果(圖3)進行對比分析可知,使用原始數據作為輸入KELM模型訓練時,預測結果較差,實際值與預測值相比較小,但在高風速段預測值與實際功率較為貼合。DTW_KELM預測方法,將各個氣象要素取相同權重過濾了原始數據集中的冗余信息,功率變化與風速變化的整體趨勢也大致相同,預測結果表明,對于方法1在低風速段的預測值與實際值誤差有了較大的改善。方法3 KPCA_DTW_KELM預測模型,在方法2的基礎上,在風速變化較大的時間段(即采樣點為50~80)預測精度有一定的提高,且在低風速段(即采樣點為100~144)預測功率值與實際值結果更加接近,預測精度也有了提高。 圖3 各方法預測結果曲線 圖4為3種方法預測的絕對誤差。從圖中可以看出,采用原始數據樣本輸入單一KELM預測模型,預測值大多高于真實值,且對應預測點(40~60)及(80~100)誤差較大,將近200 kW左右。并且方法1絕對誤差的波動范圍較大,絕對誤差大幅變化的次數較多。通過DTW_KELM預測方法的處理后,雖然相對于方法1,絕對誤差的波動范圍有所減少,出現較大誤差的次數也較少,但在風速變化劇烈及大風速時刻,對應的功率預測值相對于真實值仍有較大的誤差。在方法2的基礎上經過特征加權處理后,預測結果無論是在高風速段還是低風速段對應時刻的預測功率都有較高的精度。 圖5為3種方法的誤差回歸擬合曲線。圖中R2為決定系數,N為采樣點個數,y為對應預測值擬合線。通過擬合率可以看出,采用單一模型的預測方法,其誤差擬合效果較差,決定系較小,實際觀測值與預測值的相關性較差。 圖4 各方法預測的絕對誤差曲線 圖5 各方法誤差擬合曲線 通過選取相似日方法,優(yōu)化樣本數據過后,預測值擬合線與最佳擬合線貼合度有所提高,擬合效果有所改善,決定系數相比于方法1更接近1,模型擬合優(yōu)度與模型精度也有了一定的提高,但預測值與實際觀測值點仍無法貼近最佳擬合線。方法3經過核主成分分析,選取主元特征的基礎上,再計算加權相似度選取相似日,其模型擬合優(yōu)度相對于前2種方法效果最佳,預測值與實際觀測值點都在最佳擬合線附近,預測值擬合線與最佳擬合線相對于方法2更為貼合,模型精度明顯改善。分別采用平均絕對誤差(MAE)、均方根誤差(RMSE)和相對均方根誤差(rRMSE)作為評價各預測方法效果的指標,各誤差計算結果如表3所示。 表3 各方法預測誤差 從表3可以看出,經過核主成分分析和動態(tài)時間規(guī)劃法分析后,篩選出相似日樣本作為模型的輸入,各個預測模型誤差指標都有所降低。相比與使用所有訓練樣本的方法和同一權重選取相似日的方法,本文所提出的加權相似日KPCA_DTW_KELM模型預測效果更好。說明所提出的核主成分分析和加權相似日選取樣本能更有效提高建模精度和數據的相似性,降低預測誤差。 對于不同預測方法的模型訓練時間,實驗結果顯示,方法1將原始數據樣本放入預測模型訓練所需時間為30 s左右,所需要的訓練時間較長,時間成本較大。方法2選取最為相似的日期構成相似日樣本數據,訓練時間有所減少(15.756 4 s)。方法3采用的KPCA_DTW_KELM模型所需時間更短(5.676 1 s),降低了模型所需的訓練時間,提高了模型效率。 為驗證選取方法的普適性,分別選取9、10、11月的月初、月中和月末3 d,共9 d作為方案驗證。圖6箱線圖所示為9 d作為預測日,在不同方法下的預測效果指標。圖中箱線圖的黑色點及上、下線分別表示各種方法預測指標的均值,以及最大值、最小值。從圖中可以看出:相對于前2種預測模型,KPCA_DTW_KELM模型在MAE、RMSE、rRMSE各評價指標上都有了明顯下降,表明預測精度都所提升。 圖6 各模型誤差箱線圖 鑒于影響風機出力的特征因素很多,通過核主成分分析篩選出貢獻率較高的影響因子作為特征量,能降低模型復雜度有效提高模型訓練速度。通過動態(tài)時間規(guī)整法(DTW)判別曲線相似性及對相似度加權處理來選取相似日,能夠更好地表征風速在風機出力的主導因素,不僅考慮到了風速的變化趨勢和各天氣特征因素的影響,同時增強了樣本數據的關聯性,提高了預測模型的精度。結合核極限學習機(KELM)非線性學習的特點,建立短期風電功率預測模型,具有較好的模型泛化能力的同時,也實現對風功率的快速高精度預測。1.3 核主成分分析(KPCA)
1.4 KELM理論
2 KPCA_DTW_KELM數學模型建立
2.1 數據歸一化
2.2 特征提取
2.3 相似日選取
2.4 預測模型建立
3 實驗與結果
4 結論