范國慶, 李康輝, 高 捷, 彭 峰, 王瀟晨, 唐 亮, 史 潔
(1.濟南大學, 山東 濟南 250022; 2.山東省計量科學研究院, 山東 濟南 250014; 3.山東電力咨詢院有限公司, 山東 濟南 250000)
太陽能是一種取之不盡的清潔能源,光伏發(fā)電是太陽能利用的有效形式之一。但是,太陽能光伏發(fā)電具有波動性、隨機性等缺點,給并網(wǎng)光伏發(fā)電、建筑一體化光伏發(fā)電和分布式光伏發(fā)電等領(lǐng)域帶來了設(shè)計及運行挑戰(zhàn),嚴重影響了太陽能的利用效率,限制了光伏發(fā)電的前景和發(fā)展規(guī)?!,F(xiàn)有的解決方法包括光伏-儲能組合優(yōu)化運行技術(shù)、風光水儲多能互補技術(shù),以及光伏功率預(yù)測等。其中,有效的光伏功率預(yù)測在新能源系統(tǒng)的可靠性等方面起著重要作用。
集中式光伏功率預(yù)測有多種分類方式。按照預(yù)測過程,光伏功率預(yù)測可分為直接預(yù)測和間接預(yù)測;根據(jù)預(yù)測的空間尺度,可分為單場預(yù)測和區(qū)域預(yù)測;根據(jù)預(yù)測的時間尺度,可分為超短期預(yù)測、短期預(yù)測、中期預(yù)測和長期預(yù)測;根據(jù)預(yù)測的形式,可分為確定性預(yù)測和概率性預(yù)測[1]。光伏功率的確定性預(yù)測主要是基于時間序列和氣象因素,通過建立數(shù)學模型來預(yù)測光伏發(fā)電的產(chǎn)量。為了分析時間序列對預(yù)測的影響,文獻[2]提出了一種基于卷神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)和長短期記憶(Long Short Term Memory,LSTM)網(wǎng)絡(luò)的混合模型。該方法指出,合理的時間序列數(shù)據(jù)長度可以提高光伏預(yù)測精度、降低計算成本。文獻[3]提出了2種新的太陽能光伏隨機預(yù)測模型,與標準時間序列預(yù)測機制相比,總發(fā)電量有了顯著提高。針對不同氣象條件和季節(jié)下的短期光伏輸出功率預(yù)測,文獻[4]提出了一種新的CNN模型,模型設(shè)計為一個并行池結(jié)構(gòu),提高了預(yù)測性能。文獻[5]將增強碰撞剛體優(yōu)化(Enhanced Colliding Bodies Optimization,ECBO)算法、變分模式分解(Variational Mode Decomposition,VMD)和深度極限學習機(Deep Extreme Learning Machine,DELM)相結(jié)合,提出了一種基于相似日的光伏功率短期多步預(yù)測模型。文獻[6]提出了一種多通道卷積神經(jīng)網(wǎng)絡(luò),利用代表各種區(qū)域效應(yīng)的光柵圖像數(shù)據(jù)預(yù)測每月光伏發(fā)電量。文獻[7]提出了一種三階段機器學習架構(gòu),結(jié)合使用輕量級梯度提升機(Light Gradient Boosting Machine,LightGBM)和隨機森林(Cuda Random Forest,CURF),提高了模型性能。
與確定性預(yù)測相比,光伏發(fā)電的概率性預(yù)測考慮了更多因素。概率性預(yù)測方法可以提供更多關(guān)于潛在不確定性的信息,從而得到更全面的預(yù)測結(jié)果。在傳統(tǒng)確定性預(yù)測方法的基礎(chǔ)上,文獻[8]提出了一種光伏發(fā)電量的集成非參數(shù)概率預(yù)測模型,將分位數(shù)回歸平均(Quantile Regression Averaging,QRA)和LSTM結(jié)合,獲得光伏輸出的概率預(yù)測。通過人工智能概率模型可以提高預(yù)測的可靠性。文獻[9]提出了一種混合概率太陽輻照度預(yù)測方法,結(jié)合了深度循環(huán)神經(jīng)網(wǎng)絡(luò)(Deep Recurrent Neural Network,DRNN)和殘差建模。另外,還有將物理光伏模型鏈擴展為概率預(yù)測的方法,使用模型鏈的校準集合來生成概率光伏發(fā)電預(yù)測模型。文獻[10]將模糊信息粒化(Fuzzy Information Granulation,FIG)、差分自回歸移動平均(Autoregressive Integrated Moving Average,ARIMA)和改進的長短期記憶(Improved Long Short Term Memory,ILSTM)網(wǎng)絡(luò)3個模型相結(jié)合,構(gòu)建了一個混合區(qū)間預(yù)測模型,能夠準確地覆蓋實際光伏功率值。文獻[11]提出了一種基于高階馬爾可夫鏈(Higher order Markov Chain,HMC)的光伏發(fā)電功率概率分布函數(shù)預(yù)測方法,利用高斯混合法(Gaussian Mixture Method,GMM),結(jié)合多個分布函數(shù),并使用基于HMC的模型系數(shù)對光伏功率進行超短期預(yù)測。
基于上述分析發(fā)現(xiàn):利用時間序列對太陽能光伏功率進行短期預(yù)測是有效的方法之一,但當時間尺度和輸出維度過多時,預(yù)測結(jié)果反而并不理想。傳統(tǒng)的預(yù)測方法主要基于物理和統(tǒng)計模型,利用模型假設(shè)、系統(tǒng)參數(shù)和天氣數(shù)據(jù)等進行預(yù)測,通常需要大量的數(shù)據(jù)支撐,在復(fù)雜氣象條件下,預(yù)測效果無法達到預(yù)期。為解決上述問題,本文針對環(huán)境因素對光伏功率預(yù)測的影響進行研究,深度解析各主要影響因素與光伏功率的耦合關(guān)聯(lián)特性,進而實現(xiàn)高精度和高可靠度的短期預(yù)測。首先,使用核密度估計(Kernel Density Estimation,KDE)對光伏發(fā)電功率進行分析,獲得光伏發(fā)電功率的分布概率;其次,通過CatBoost算法對功率與各影響因素之間的非線性耦合相關(guān)性進行研究,運用CatBoost預(yù)測模型對光伏發(fā)電功率變化趨勢進行預(yù)測;然后,構(gòu)建基于CatBoost和KDE的超短期光伏功率預(yù)測框架,進一步提高光伏功率預(yù)測的精度和可靠性;最后,給出系統(tǒng)參數(shù)和算例結(jié)果分析。
KDE屬于非參數(shù)檢驗方法。在光伏功率預(yù)測中,KDE可用于功率數(shù)據(jù)的建模和分析。它能夠提供功率的概率分布信息,有助于了解功率的變化范圍和分布情況,從而為決策提供更全面的依據(jù)[12]。
CatBoost與極端梯度提升(Extreme Gradient Boosting,XGBoost)和LightGBM是梯度提升決策樹(Gradient Boosting Decision Tree,GBDT)的3種主要算法,相對于XGBoost和LightGBM,CatBoost的準確率更高。CatBoost能夠處理分類特征和缺失數(shù)據(jù),具有較強的泛化能力,并且可以自動處理類別型特征的編碼,減少特征工程的復(fù)雜性。另外,CatBoost還能夠自動進行特征選擇和調(diào)參,提供較好的模型性能。由于其采用完全對稱樹作為基模型,故可以避免過擬合,提高預(yù)測的可靠性,強大的泛化能力和自動調(diào)參功能,使得其成為光伏功率預(yù)測的有力工具。
為了提高預(yù)測的準確度,本文利用KDE分析特征數(shù)據(jù),研究光伏功率分布概率特性,同時利用CatBoost在非連續(xù)性類別特征處理和運算速度方面的優(yōu)勢,將光伏功率分布概率預(yù)測結(jié)果輸入CatBoost模型中,得到最終的光伏功率預(yù)測結(jié)果。
1.2.1 KDE特征處理
非參數(shù)KDE是利用觀測數(shù)據(jù)對某事件進行密度函數(shù)估計。其過程就是將每一點的概率分配到附近的區(qū)間,將所有的獨立點區(qū)間密度累加,即可得到最終的密度函數(shù)。假設(shè)X1,X2,X3,…,Xq是從總體中抽取的q個獨立同分布樣本,其密度函數(shù)為f(x),則KDE公式為
(1)
帶寬h是影響整個擬合效果優(yōu)劣的核心因素[13]。由式(1)可以看出:若h的取值較大,則樣本數(shù)據(jù)經(jīng)過壓縮處理突出了平均化,忽略了密度函數(shù)的細節(jié)部分;若h的取值較小,則隨機性的影響增大,估計曲線尖峰過多,函數(shù)圖像波動大。為判斷預(yù)測的光伏功率分布是否符合實際分布,將光伏功率數(shù)據(jù)劃分為m組不重復(fù)的數(shù)據(jù),采用擬合優(yōu)度檢驗,公式為
(2)
式中:χ2——擬合優(yōu)度檢驗結(jié)果;Ai——光伏功率在第i個區(qū)間的觀測頻數(shù);Ei——光伏功率在第i個區(qū)間的期望頻數(shù)。
1.2.2 Catboost特征處理
利用CatBoost對常規(guī)離散特征方法進行優(yōu)化,通過添加先驗分布項使數(shù)據(jù)免受噪聲和低頻率類別型數(shù)據(jù)的干擾。這一優(yōu)化過程的具體公式為
(3)
式中:xi,k——第k個樣本的第j個類別特征;xi,j——第k個樣本之前第j個樣本的第i個類別特征;
Dk——隨機排序中在第k個樣本之前的數(shù)據(jù)集;
Yj——第j個樣本的標簽值;
a——權(quán)重系數(shù);
p——添加的先驗分布項。
本文提出的KDE-CatBoost光伏功率預(yù)測模型步驟如下。
步驟1 數(shù)據(jù)獲取。采集集中式光伏電站的歷史光伏功率和歷史氣象數(shù)據(jù)。
步驟2 數(shù)據(jù)預(yù)處理。檢測數(shù)據(jù)中的異常值和缺失值,剔除缺失值,采用前后數(shù)據(jù)求平均值的方式處理異常值,并對數(shù)據(jù)進行歸一化處理。歸一化公式為
(4)
xi(k)——第i個類別特征的第k個原始值;
xi,min、xi,max——第i個類別特征的最小值和最大值。
步驟3 建立數(shù)據(jù)集。該數(shù)據(jù)集包含目標變量(即光伏功率)和特征變量(即氣象因子)。
步驟4 數(shù)據(jù)分析。對各數(shù)據(jù)進行相關(guān)性分析,并通過KDE方法確定符合條件的特征數(shù)據(jù)及種類。
步驟5 數(shù)據(jù)集拆分。將輻射、溫度、氣壓、濕度、功率等數(shù)據(jù)拆分為訓(xùn)練集和測試集,其中80%為訓(xùn)練集,20%為測試集。
步驟6 構(gòu)建CatBoost功率預(yù)測模型。為了使模型保持較高的預(yù)測精度,通過經(jīng)驗設(shè)置和實驗的方法調(diào)節(jié)模型參數(shù)。
步驟7 預(yù)測結(jié)果輸出。將步驟6的預(yù)測結(jié)果進行反歸一化,得到最終預(yù)測結(jié)果。反歸一化公式為
(5)
本文采用多種評判方式對模型預(yù)測精度進行評估。主要評價指標包括平均絕對誤差SMAE、均方誤差SMSE、均方根誤差SRMSE、決定系數(shù)SR2(R表示決定系數(shù))。其計算公式分別為
(6)
(7)
(8)
(9)
本文算例數(shù)據(jù)采用山東某地區(qū)光伏電站2017年4月—6月的信息,數(shù)據(jù)間隔為15 min,預(yù)測目標是大型集中式光伏電站提前1 h的功率。預(yù)測模型包含9個字段,其中參與機器學習建模的變量有8個,分別為總輻射、直輻射、散輻射、溫度、環(huán)境溫度、氣壓、環(huán)境濕度和光伏功率。
對光伏功率進行KDE,創(chuàng)建Kernel Density對象模型,通過數(shù)據(jù)訓(xùn)練判定各樣本的得分,使用不同帶寬和核函數(shù)進行測試,觀察不同帶寬和核函數(shù)對密度估計的影響。
首先對不同的核函數(shù)進行計算,然后選取預(yù)測概率密度最為接近的核函數(shù),最后計算最佳帶寬值。但是,在系統(tǒng)計算過程中,一些測試點會發(fā)生偏移,導(dǎo)致余弦、線性和Top-hat核函數(shù)執(zhí)行錯誤。因此,本文通過編寫自定義函數(shù)的算法程序忽略測試點并返回平均值,即可有效解決該問題。此外,對函數(shù)進行優(yōu)化和誤差分析可得到最終的KDE圖,以及相應(yīng)的最佳帶寬和核函數(shù)參數(shù)。
為了更好地評估模型的擬合度優(yōu)劣,本文提出了模型優(yōu)度指標。計算公式為
(10)
式中:SGOF——模型優(yōu)度指標,SGOF越接近于零說明模型擬合度越高;
m——預(yù)測樣本數(shù)。
KDE模型、基于概率函數(shù)(Probability Function,PF)預(yù)測模型和非參數(shù)概率估計(Non-Parametric Probability Weighted Estimation,NP-PWE)預(yù)測模型的SRMSE、SGOF與χ2檢驗結(jié)果如表1所示。
表1 3種模型的預(yù)測誤差
由表1可知,基于PF的光伏功率分布預(yù)測模型SGOF較大且未通過χ2檢驗;KDE和NP-PWE模型的χ2都小于臨界值,但KDE模型的SGOF與χ2值更小,即預(yù)測值與相應(yīng)實際值更接近。相較于其他兩種模型,KDE模型的SRMSE值最小。
光伏電站運行數(shù)據(jù)的相關(guān)性系數(shù)如圖1所示。其中,正數(shù)為正相關(guān),負數(shù)為負相關(guān),絕對值越大相關(guān)性越強。
圖1 光伏電站運行數(shù)據(jù)的相關(guān)性系數(shù)
由圖1可以看出,輻射照度(總輻射、直輻射和散輻射)是光伏功率的主要影響因素之一。較高的輻射照度通常意味著更高的光能轉(zhuǎn)換效率,從而產(chǎn)生更高的光伏功率。
分析圖1中數(shù)據(jù)可知,在一定范圍內(nèi),隨著溫度的升高,光伏模塊的電子特性和效率會發(fā)生變化,從而影響光伏功率的輸出。一般情況下,光伏功率與溫度之間存在負相關(guān)關(guān)系。但由于本文采集的數(shù)據(jù)中溫度未達到對發(fā)電效率產(chǎn)生負影響的臨界值,故為正相關(guān)。
除了輻射照度和溫度,其他天氣條件如云量、風速等也會對光伏功率產(chǎn)生影響。云量的增加和風速的提高可能導(dǎo)致日照減弱或局部陰影,從而降低光伏功率。由于太陽高度角和日照時間的不斷變化,光伏發(fā)電系統(tǒng)在不同季節(jié)可能產(chǎn)生不同的功率輸出。在夏季,由于受輻射時間更長和太陽高度角較高,因此光伏功率通常相對較高。另外,光伏系統(tǒng)本身的特性如組件類型、布局以及傾斜角度等也會對光伏功率的相關(guān)性產(chǎn)生影響。
針對同一訓(xùn)練測試數(shù)據(jù)集,分別采用支持向量機(Support Vector Regression,SVR)、決策樹回歸(Decision Tree Regressor,DTR)、K近鄰(K-Nearest Neighbor,KNN)算法、LSTM、LightGBM和本文所提的KDE-Catboost模型進行光伏發(fā)電功率預(yù)測,結(jié)果如表2所示。
表2 不同預(yù)測模型的預(yù)測誤差和耗時
由表2可以得出,與其他5種模型相比,KDE-Catboost模型的SRMSE值分別下降了27.59%、8.69%、16.21%、23.33%、12.56%,說明本文所提模型的預(yù)測精度更高,適用于真實數(shù)據(jù)預(yù)測。另外,本文所提模型的SR2值最高,說明模型的擬合效果更好,可靠性更高。
為驗證所提模型的魯棒性,選取以下5種KDE-CatBoost模型:模型1,考慮近7 d光伏歷史數(shù)據(jù)的KDE-CatBoost算法模型;模型2,考慮另外30 d光伏歷史數(shù)據(jù)的KDE-CatBoost算法模型;模型3,考慮不同季節(jié)特性的KDE-CatBoost算法模型;模型4,在模型3基礎(chǔ)上增加天氣特征的KDE-CatBoost模型;模型5,考慮不同天氣特征的KDE-CatBoost算法模型。5種模型的預(yù)測誤差如表3所示。5種模型的預(yù)測結(jié)果與真實值對比如圖2所示。
圖2 5種預(yù)測模型的預(yù)測結(jié)果與真實值對比
表3 5種KDECatBoost模型的預(yù)測誤差
根據(jù)表3和圖2可知,5種模型均具有較高的擬合度,可見本文所提模型的魯棒性較好。其原因是模型中KDE只需要設(shè)置帶寬值一個參數(shù),使得算法結(jié)果相對穩(wěn)定。另外,CatBoost算法在訓(xùn)練進程中對類別特征進行了分析處理,并采用對稱樹作為基模型避免了過度擬合,同時縮短了計算時長。
本文提出KDE與CatBoost算法相結(jié)合的光伏功率超短期預(yù)測模型,解決了預(yù)測模型普遍存在的超參數(shù)調(diào)優(yōu)和過度擬合的難題,模型具有更加廣泛的適用性。具體結(jié)論如下。
(1) KDE與CatBoost算法相結(jié)合的光伏功率超短期預(yù)測模型與實際值具有較高的擬合精度,且預(yù)測模型的魯棒性較好。
(2) 算例結(jié)果表明,所提模型的SRMSE相較于SVR、DTR、KNN、LSTM、LightGBM分別下降了27.59%、8.69%、16.21%、23.33%、12.56%。