劉昳娟,陳云龍,劉繼彥,張雪梅,吳瀟雨,孔維政
(1. 國網(wǎng)山東省電力公司,山東 濟南 250002;2. 國網(wǎng)能源研究院有限公司,北京 102209)
隨著全球?qū)Νh(huán)境保護的要求逐步提高,能源結(jié)構(gòu)亟待優(yōu)化。尤其是2020年以來,為緩解新冠肺炎疫情的沖擊,各國政府逐漸將可再生能源、氫能等清潔能源技術(shù)作為經(jīng)濟復(fù)蘇計劃的核心[1]。其中,光伏作為清潔、高效的可再生能源,已得到廣泛應(yīng)用。截至2022年3月,中國光伏發(fā)電裝機容量達(dá)3.2億kW,同比增長22.7%[2]。光伏發(fā)電業(yè)已成為中國能源結(jié)構(gòu)轉(zhuǎn)型的主要手段之一,然而,由于光伏出力受所處小范圍氣象影響嚴(yán)重,隨機性強,其消納問題成為阻礙光伏發(fā)電發(fā)展的主要原因。準(zhǔn)確可靠的光伏發(fā)電功率預(yù)測可以有效降低光伏發(fā)電裝置對配電網(wǎng)運行的沖擊,保障供電可靠性[3]。光伏功率預(yù)測的研究從作用上分為日前預(yù)測模型和日內(nèi)預(yù)測模型,前者是制定日前發(fā)電計劃的重要數(shù)據(jù)支撐,后者用于指導(dǎo)電網(wǎng)的實時調(diào)度[4]。
目前,光伏預(yù)測的主要方法有持久性模型、自回歸移動平移(autoregressive moving average,ARMA)模型、指數(shù)平滑法、物理方法、人工神經(jīng)網(wǎng)絡(luò)(artificial neural network,ANN)、支持向量機(support vector machine,SVM)和混合模型等[5]。利用時間序列對短期光伏發(fā)電功率進行預(yù)測是一種常見的預(yù)測思路,但面對時間尺度和輸出維數(shù)的增加,難以保障預(yù)測結(jié)果的精度。衛(wèi)星圖像和天空圖像可以應(yīng)用于基于云的跟蹤和預(yù)測的超短期太陽能輻照度預(yù)測[6-7],但受氣象衛(wèi)星數(shù)據(jù)地理分辨率低和地基天線覆蓋面積小的限制,該方法的預(yù)測精度和實用性有待進一步提高。太陽能輻照度由于可以與光伏出力形成正比例映射,也被應(yīng)用于光伏出力預(yù)測[8-9],但目前國內(nèi)氣象部門提供的太陽能輻照度信息存在諸多限制,限制了該類方法的應(yīng)用。
機器學(xué)習(xí)方法的非線性處理能力有利于擬合光伏功率的變化規(guī)律,在光伏預(yù)測中得到了廣泛應(yīng)用[10-12]。隨著電網(wǎng)對光伏電站預(yù)測精度的要求不斷提高,單層的神經(jīng)網(wǎng)絡(luò)預(yù)測模型往往難以滿足預(yù)測需求,長短期記憶網(wǎng)絡(luò)(long short-term memory network,LSTM)[13]、卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)[14]等深度學(xué)習(xí)網(wǎng)絡(luò)逐漸被應(yīng)用于光伏預(yù)測中。但是,深度學(xué)習(xí)方法在構(gòu)建模型的過程中往往需要大量運行數(shù)據(jù)支撐,并且由于網(wǎng)絡(luò)層數(shù)的增加其收斂時間也大幅增加。針對這一問題,越來越多的研究著眼于混合預(yù)測方法。文獻(xiàn)[15]利用灰色關(guān)聯(lián)度獲取相似日氣象特征向量,并將其作為免疫遺傳神經(jīng)網(wǎng)絡(luò)的輸入,以提高光伏預(yù)測精度。文獻(xiàn)[16]通過改進狼群算法優(yōu)化最小二乘支持向量機的參數(shù),用于預(yù)測光伏出力。這些研究有效提高了光伏預(yù)測精度,但均為單點預(yù)測方法。日前預(yù)測模型是在前一預(yù)測目標(biāo)日的發(fā)電功率曲線,屬于多點預(yù)測,相較于單點預(yù)測難度更高。尤其是為了滿足電網(wǎng)調(diào)度需求,往往需要光伏電站提供更短步長的預(yù)測結(jié)果,光伏日前預(yù)測面臨進一步挑戰(zhàn)。
針對這一問題,本文提出了一種基于集成學(xué)習(xí)的光伏出力日前預(yù)測方法。綜合考慮光伏出力本身的周期性和規(guī)律性,通過特征提取技術(shù)和改進的K均值(k-means++)聚類獲取相似日數(shù)據(jù)集,以降低訓(xùn)練集復(fù)雜度;針對傳統(tǒng)人工智能建模方法的不足之處,利用集成學(xué)習(xí)技術(shù),極限學(xué)習(xí)機(extreme learning machine,ELM)嵌入Boosting框架,以彌補單個機器學(xué)習(xí)方法的不足,保障模型的泛化能力和收斂速度,提高預(yù)測精度。
光伏發(fā)電功率變化主要受氣象因子的變化影響,例如太陽輻照度、氣溫、濕度、氣壓等。為在眾多氣象因子中篩選出影響光伏出力的主要特征,減少關(guān)聯(lián)性小的因素對結(jié)果的負(fù)面影響,需要先對氣象因子進行相關(guān)性分析[14]。
皮爾遜相關(guān)系數(shù)(Pearson correlation)在歐幾里得距離上做了改進,提供了對于變量取值范圍不同情況下的處理方法,是一種有效的判斷向量相似度的方式。本文選取皮爾遜相關(guān)系數(shù)對氣象特征進行分析,以提取關(guān)鍵信息因子。
2個序列X和Y的皮爾遜相關(guān)性系數(shù)P計算公式為
式中:n為序列長度;xi和yi分別為序列X和Y的第i個變量;和分別為序列X和Y的平均值。
P的取值范圍為[-1,1]。相關(guān)程度與P的取值范圍對應(yīng)如表1所示。
表1 P取值范圍與向量相關(guān)度對應(yīng)關(guān)系Table 1 Correspondence between the range ofPvalues and vector correlation
本文選擇澳大利亞某光伏電站的光伏出力歷史數(shù)據(jù)及其對應(yīng)的氣象數(shù)據(jù)以驗證所提出模型的預(yù)測性能。該實驗數(shù)據(jù)集包含歷史光伏出力數(shù)據(jù)和7個氣象數(shù)據(jù)(總水平輻照度(W/m2)取值范圍[0~1 500]、直接輻射(W/m2)取值范圍[0~1 500]、風(fēng)速(m/s)取值范圍[0~10]、風(fēng)向(°)、室外溫度(℃)取值范圍[-10~45]、濕度(%)取值范圍[0~100]、降雨量(mm)取值范圍[0~40]),利用上述7個氣象數(shù)據(jù)進行相關(guān)性分析。為保證數(shù)據(jù)集的完整性和結(jié)果的適應(yīng)性,選擇2020-01-01—2021-12-31的歷史數(shù)據(jù),以確保涵蓋晴天、陰天、雨天、多云等多種氣象條件。其光伏出力與氣象特征之間的皮爾遜系數(shù)和相關(guān)性如表2所示。
表2 氣象因素與光伏出力的相關(guān)性Table 2 Correlation between meteorological factors and PV output
由表2可知,總水平輻照度和直接輻射與光伏出力極度相關(guān),風(fēng)速和室外溫度呈現(xiàn)中等相關(guān)、風(fēng)向和濕度呈弱相關(guān),而降雨量幾乎不相關(guān)。因此,為保證氣象信息的完整性同時減少冗余信息對預(yù)測模型產(chǎn)生的負(fù)面影響,本文選取總水平輻照度、直接輻射、風(fēng)速和室外溫度作為氣象特征。
k-means是簡單常用的聚類方法之一,其主要原理是通過兩目標(biāo)間歐式距離的大小判斷其相關(guān)度。但是,k-means也存在可能會選取到不合適的初始值的問題,容易陷入局部最優(yōu)。k-means++就是k-means針對該問題的優(yōu)化算法。其算法思路為:在選取第n+1個中心點時,計算多個隨機選取的點與前n個點的距離,從而選擇距離最遠(yuǎn)的點作為第n+1個聚類中心。
根據(jù)表2可知,總水平輻照度與光伏出力相關(guān)性趨近于1,呈現(xiàn)出極度相關(guān)性。選取某天的光伏出力(photovoltaic power,PV)與總水平輻照度(global horizontal irradiance,GHI)進行歸一化處理,如圖1所示。
圖1 光伏出力與總水平輻照度日曲線Fig. 1 Daily curve of photovoltaic output and total horizontal irradiance
由圖1可以看出,光伏出力與總水平輻照度的波動趨勢幾乎一致,因此,選取總水平輻照度作為主影響因素對其進行聚類。選取光伏電站整年數(shù)據(jù)進行聚類,以確保涵蓋春夏秋冬各類氣象條件下的光伏電站運行情況。
采用肘部法則來確定最佳K值[17],其原理是通過計算每個簇的誤差平方和(sum of squared errors,SSE)來判斷聚合程度,隨著K值的增大,樣本劃分更加精細(xì),SSE就會更小,但當(dāng)K值增大到一定程度,增加K值所獲得的聚合程度回報變化減小,SSE的變化趨于平緩,由此,在K值變化過程中會產(chǎn)生拐點,該拐點對應(yīng)的便是最佳K值。利用肘部法則確定K值如圖2所示。
圖2 肘部法則確定最佳K值Fig. 2 The optimalKvalue determined by the elbow method
由圖2可以看出,當(dāng)K=4時,SSE曲線出現(xiàn)明顯拐點,因此選擇最優(yōu)K值為4。利用kmeans++實現(xiàn)聚類,繪制每個簇中對應(yīng)日期的光伏出力日曲線如圖3所示,其中圖3中的有色曲線為對應(yīng)簇的中心值,灰色曲線為被分入該簇的實際光伏出力曲線。
圖3 光伏出力日曲線聚類結(jié)果Fig. 3 Clustering result of photovoltaic output daily curve
由于每個簇的波動和變化趨勢和幅值相近,將每個簇中的曲線作為相似日樣本,構(gòu)建相似日數(shù)據(jù)集,從而降低預(yù)測模型建立的復(fù)雜度。
ELM作為一種單隱層前饋神經(jīng)網(wǎng)絡(luò)(single hidden layer feedforward neural,SLFN),具有良好的泛化能力[18],善于挖掘非線性系統(tǒng)中已知信息的內(nèi)部關(guān)系,可以通過已知信息挖掘光伏出力的內(nèi)部特征。同時,ELM在訓(xùn)練過程中隨機選擇隱藏閾值,對輸出權(quán)值進行分析,不需要迭代計算,與傳統(tǒng)神經(jīng)網(wǎng)絡(luò)相比,顯著提高了訓(xùn)練速度。因此,本文選取ELM作為基礎(chǔ)預(yù)測算法,其網(wǎng)絡(luò)結(jié)構(gòu)如圖4所示。
圖4 ELM網(wǎng)絡(luò)結(jié)構(gòu)Fig. 4 ELM network structure
對于一個N維矩陣(xi,ti),xi=[xi1,xi2,…,xin]T∈Rn,ti=[ti1,ti2,…,tim]T∈Rm,ELM 可以被映射為
式中:xj為第j個數(shù)據(jù)示例;L是隱藏層神經(jīng)元個數(shù);βi是隱藏神經(jīng)元與輸出神經(jīng)元之間的輸出權(quán)重;g(x)是激勵函數(shù);Wi=[ωi1,ωi2,···,ωin]T是輸入節(jié)點與隱藏神經(jīng)元之間的輸入權(quán)重;bi為隱藏層閾值;oj為輸出值。
在機器學(xué)習(xí)模型訓(xùn)練過程中,單個模型往往只能在某些方面有較好的表現(xiàn)。而集成學(xué)習(xí)就是通過組合這些單個模型以期得到一個更好更全面的強模型,其潛在的指導(dǎo)思想是:當(dāng)某個模型輸出錯誤結(jié)果時,其他模型可以校正預(yù)測結(jié)果。
Boosting框架是一種序列集成方法,其主要思想是:在概率近似正確的學(xué)習(xí)框架下,順序生成被訓(xùn)練的單個模型。利用這些模型之間的依賴關(guān)系,對前面訓(xùn)練過程中出現(xiàn)錯誤的樣本賦予較高權(quán)重,從而改善整個集成框架的預(yù)測效果。本文提出的基于Boosting框架的光伏出力日前預(yù)測模型(B-ELMs)結(jié)構(gòu)如圖5所示。
圖5 光伏出力日前預(yù)測模型Fig. 5 Photovoltaic generation day-ahead output prediction model
結(jié)合圖5對光伏出力日前預(yù)測模型結(jié)構(gòu)進行詳細(xì)描述。
(1)Boosting框架對多個ELM模型進行線性組合,在訓(xùn)練開始時分配給每一個訓(xùn)練樣例相同的權(quán)重。
(2)在接收到輸入矩陣I的數(shù)值后,由ELM0先給出預(yù)測結(jié)果,如果預(yù)測誤差較大,則該點在下一個ELM模型中具備更高權(quán)重。
(3)迭代步驟(2),讓每一個ELM模型在每次學(xué)習(xí)后都更注意錯誤樣本,從而得到n個ELM模型。
(4)通過擬合殘差的方式減小殘差,分配給誤差較小的單體模型更高的權(quán)重,從而得到最終預(yù)測結(jié)果。
本文選擇澳大利亞某光伏電站的光伏出力歷史數(shù)據(jù)及其對應(yīng)的氣象數(shù)據(jù)以驗證所提出模型的預(yù)測性能。光伏系統(tǒng)設(shè)備配置信息匯總?cè)绫?所示。
表3 光伏電站配置Table 3 Photovoltaic power station configuration
根據(jù)1.2節(jié)的聚類結(jié)果劃分相似日數(shù)據(jù)集,對應(yīng)簇的標(biāo)號分別命名為SDD1、SDD2、SDD3、SDD4。針對各個相似日數(shù)據(jù)集分別構(gòu)建對應(yīng)的BELMs預(yù)測模型。同時,選擇常見的ANN、LSTM和ELM構(gòu)建預(yù)測模型,對所提出模型性能進行驗證。
利用均方根誤差(RMSE)、平均絕對誤差(MAE)和決定系數(shù)(R2)來評估模型效果,定義分別為
式中:y(t)、Y(t)和?(t)分別為預(yù)測值、真實值和真實平均值;n為測試集長度。
RMSE與MAE的評估方式相似,數(shù)值越小說明預(yù)測誤差越小。R2是一種評估預(yù)測曲線與真實值曲線的相似程度的參數(shù),其取值范圍為(0,1),當(dāng)R2越趨近于1,其相似度越高,即預(yù)測精度越高。選擇數(shù)據(jù)集的前70%作為訓(xùn)練集,中間10%作為交叉驗證集,最后20%作為測試集,驗證B-ELMs的性能,試驗結(jié)果如圖6和表4所示。由表4可知,除了少數(shù)評估參數(shù),本文提出的B-ELMs模型性能優(yōu)于其他模型。同時,在不同相似日數(shù)據(jù)集下,各模型的表現(xiàn)不同。在SDD1和SDD2作為模型數(shù)據(jù)集時,由于這2個數(shù)據(jù)集中的光伏出力日曲線較為平滑,規(guī)律性更強,各模型精度差距不大。由此可見,對于規(guī)律性和周期性較強的平滑曲線,傳統(tǒng)的機器學(xué)習(xí)例如ANN也可以有較好的學(xué)習(xí)效果。當(dāng)數(shù)據(jù)集變?yōu)镾DD3時,由于光伏出力日曲線波動性增加,規(guī)律性減弱,各模型的表現(xiàn)差距開始展現(xiàn),ANN和ELM作為單層神經(jīng)網(wǎng)絡(luò),難以應(yīng)對波動性強的數(shù)據(jù)的弊端開始展現(xiàn),而由于LSTM是深度學(xué)習(xí)網(wǎng)絡(luò),其對于非線性的歸納能力強于前兩個模型。各模型的功能差距全然展現(xiàn)在SDD4數(shù)據(jù)集下,由于該數(shù)據(jù)集內(nèi)多為復(fù)雜天氣狀況,光伏出力日曲線的規(guī)律性進一步減小,波動性進一步加大,ANN、ELM和LSTM都難以再維持良好表現(xiàn),而由于B-ELMs將多個基礎(chǔ)模型規(guī)范在Boosting框架下,穩(wěn)定性更強,仍然保持著較高的預(yù)測精度。由此可知,B-ELMs模型不僅在正常天氣情況下有良好的預(yù)測性能,而且在面對復(fù)雜天氣情況時仍能保持穩(wěn)定的預(yù)測能力,保障光伏日前預(yù)測的精度。
圖6 各模型在不同相似日數(shù)據(jù)集下的預(yù)測結(jié)果Fig. 6 Prediction results of each model under different similar day datasets
表4 不同相似日數(shù)據(jù)集下的各模型精度Table 4 Accuracy of each model under different similar day datasets
另外,除精度外,收斂速度也是評價預(yù)測模型性能的一大標(biāo)準(zhǔn)。本文計算了不同模型在各相似日數(shù)據(jù)集下訓(xùn)練的收斂速度,結(jié)果如圖7所示。由圖7可知:ANN和ELM都是單層神經(jīng)網(wǎng)絡(luò),收斂速度最快;LSTM由于是深度學(xué)習(xí)網(wǎng)絡(luò),收斂速度最慢;B-ELMs選用了多個基礎(chǔ)模型,其收斂速度雖然相較于單一的ELM有所上升,但依然遠(yuǎn)低于LSTM。因此,本文提出的BELMs模型可以在保障收斂速度的同時,有效提高預(yù)測精度。
圖7 各模型在不同相似日數(shù)據(jù)集下的收斂速度Fig. 7 Convergence rate of each model under different similar day datasets
針對光伏出力受天氣影響大、隨著步長變短導(dǎo)致精準(zhǔn)的光伏日前預(yù)測愈發(fā)困難的問題,本文提出了基于集成學(xué)習(xí)框架的光伏日前預(yù)測方法。實驗結(jié)果表明,本文提出的B-ELMs模型其性能不僅優(yōu)于傳統(tǒng)的單層神經(jīng)網(wǎng)絡(luò)和深度學(xué)習(xí)網(wǎng)絡(luò),在數(shù)據(jù)波動大、規(guī)律性弱時,在保證收斂速度的同時,仍然能保持較好的預(yù)測性能,保障預(yù)測結(jié)果的準(zhǔn)確性。