張娜,任強,劉廣忱,郭力萍,李靜宇
(1. 內(nèi)蒙古工業(yè)大學(xué) 電力學(xué)院,內(nèi)蒙古 呼和浩特 010051;2. 內(nèi)蒙古自治區(qū)電能變換傳輸與控制重點實驗室,內(nèi)蒙古 呼和浩特 010051)
光伏發(fā)電作為一種可再生能源,已經(jīng)在中國得到了迅猛的發(fā)展。然而因其出力與氣象因素相關(guān)性較大,具有隨機性和波動性的特征,大規(guī)模光伏電源接入將影響電力系統(tǒng)的穩(wěn)定運行[1-2]。針對此問題,國內(nèi)外學(xué)者提出對光伏輸出功率進行預(yù)測以降低其隨機性,增加光伏功率的可預(yù)測性,從而提高含光伏并網(wǎng)的電力系統(tǒng)的穩(wěn)定性[3-6]。文獻(xiàn)[7]選取與待預(yù)測日同類的歷史數(shù)據(jù),構(gòu)建了Elman神經(jīng)網(wǎng)絡(luò)模型,通過對比典型日功率預(yù)測結(jié)果,證明Elman具有預(yù)測光伏輸出功率的能力。文獻(xiàn)[8]使用主成分分析(principal component analysis, PCA)算法對原始數(shù)據(jù)進行預(yù)處理,確定預(yù)測模型的輸入因素,將其輸入粒子群算法優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)對輸出功率進行預(yù)測,粒子群算法優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)克服了粒子群算法搜索速度較慢和BP神經(jīng)網(wǎng)絡(luò)易陷入局部極值點的缺點,從而有效提高了輸出功率的預(yù)測精度。文獻(xiàn)[9]分析了影響光伏功率的氣象因子,使用思維進化算法對BP神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值進行優(yōu)化,從而使光伏輸出功率的預(yù)測精度有所提升。文獻(xiàn)[10]提出了基于灰狼優(yōu)化算法(grey wolf optimization,GWO)優(yōu)化多層感知器(multilayer perceptron,MLP)的光伏輸出功率短期預(yù)測模型,針對MLP在初始權(quán)值和偏置量中存在隨機性的問題,運用改進后的GWO算法對MLP的初始權(quán)值和偏置量進行優(yōu)化,減小了MLP隨機權(quán)值和閾值的誤差,對提高光伏輸出功率短期預(yù)測模型的精度有一定的作用。文獻(xiàn)[11]為降低光伏序列的非平穩(wěn)性,使用變分模態(tài)分解(variational mode decomposition,VMD)方法對序列進行分解,提出了基于VMD結(jié)合深度回聲狀態(tài)網(wǎng)絡(luò)(deep echo state network,DESP)和稀疏高斯混合過程專家模型(mixture of sparse Gaussian process experts model, MSGP)的超短期光伏功率預(yù)測模型,通過VMD處理后預(yù)測精度有所提高。文獻(xiàn)[12]首先分析了光伏輸出功率的影響因素,然后運用小波分解方法將歷史功率數(shù)據(jù)以及氣象數(shù)據(jù)進行分解,將得到的基頻信號和多個高頻信號輸入最小二乘支持向量機分別進行預(yù)測,最后疊加各分量預(yù)測結(jié)果為最終預(yù)測結(jié)果,所提方法預(yù)測精度有所提升。
本文針對Elman神經(jīng)網(wǎng)絡(luò)初始權(quán)值和閾值隨機的缺點,結(jié)合VMD降低光伏序列的非平穩(wěn)性的優(yōu)勢,提出基于VMD-GWO-Elman的短期輸出功率預(yù)測模型。首先,使用K-means算法對歷史數(shù)據(jù)按天氣分類處理,其次,針對聚類算法結(jié)果的每一類數(shù)據(jù),使用VMD將其分解為不同頻率的模態(tài)分量,再將每一類數(shù)據(jù)的各分量分別輸入經(jīng)GWO優(yōu)化的Elman神經(jīng)網(wǎng)絡(luò)進行光伏輸出功率預(yù)測,最后對預(yù)測結(jié)果進行疊加。通過實例仿真驗證本文所提模型的有效性。
K-means的思想簡單,即對于確定的樣本集,將此樣本集劃分為K個簇,讓每個簇里的樣本點盡量緊密地連在一起,而讓簇與簇之間的距離盡可能大[13-14]。設(shè)聚類的簇劃分為(C1,C2,· · ·,CK),則目標(biāo)是最小化平方誤差E,即
式中:x為樣本數(shù)據(jù);ui為 簇Ci的均值;Pi為Ci中的數(shù)據(jù)量。
K-means算法的流程如下。
(1)設(shè)定輸入樣本集D={x1,x2,···,xn},n為樣本數(shù)量,N為最大迭代次數(shù),輸出簇劃分C={C1,C2,···,CK}。
(2)從輸入樣本集D中隨機選擇K個樣本作為初始的K個質(zhì)心向量 {u1,u2,···,uK}。
(3)分別計算每個點到K個聚類中心的歐式距離,然后將該點分到與聚類中心距離最小的一類,形成K個簇。
(4)重新計算每個簇的均值。
(5)重復(fù)步驟(3)~(4),如果均值不再變化或者達(dá)到最大迭代次數(shù)則終止算法。
變分模態(tài)分解(VMD)是一種完全非遞歸的信號變分和信號處理的方法,為處理非平穩(wěn)信號提供了一種實用的方法[15]。由于光伏輸出功率具有一定的周期性和波動性,本文選擇此方法將歷史光伏輸出功率曲線分解為多個不同頻率且相對平穩(wěn)的子序列,從而有效降低光伏功率曲線復(fù)雜度高和非線性強的時間序列非平穩(wěn)性[16-17]。其實現(xiàn)步驟如下。
首先假設(shè)原始信號f被分解為M個模態(tài),在保證每個模態(tài)是具有中心頻率的有限帶寬的分量的同時,使得各分解模態(tài)的估計帶寬之和最小,約束條件為所有模態(tài)之和等于原始信號[18],則相應(yīng)約束變分表達(dá)式為
式中: ?t為求偏導(dǎo); {vm}、{ωm}分別為分解后第m個模態(tài)分量及其對應(yīng)的中心頻率; δ (t)為狄拉克函數(shù); ?為卷積運算符;f(t)表示原始信號。引入Lagrange乘法算子 λ,將約束型變分問題轉(zhuǎn)變?yōu)榉羌s束型變分問題。
VMD的主要迭代求解過程如下。
(3) 精 度 收 斂 判 據(jù) ε >0, 若 不 滿 足 式(4),則返回步驟(2),否則終止迭代,輸出最后一次迭代的m和 ωm為最終結(jié)果。
Elman 初始權(quán)值和閾值具有盲目隨機性,有可能導(dǎo)致模型訓(xùn)練過程中,收斂過程不穩(wěn)定,本文采用灰狼優(yōu)化算法(GWO)對Elman的閾值和權(quán)值進行優(yōu)化,并用于短期光伏功率預(yù)測。
灰狼優(yōu)化算法(GWO)通過模擬灰狼群體捕食行為,基于狼群群體協(xié)作機制達(dá)到優(yōu)化目的[19-20]。如圖1所示, α 為狼群的領(lǐng)導(dǎo)者,代表最優(yōu)解。β是 α的第一候選者,主要負(fù)責(zé)協(xié)助 α 進行決策。δ聽從 α和 β的命令,是 α的第二候選者。金字塔最底層是 ω ,主要負(fù)責(zé)種群內(nèi)部關(guān)系的平衡。狼群通過3個狼個體 α 、 β和 δ的初始解逼近搜索空間中的最優(yōu)解[21]。狼的位置隨之更新和進化,與獵物的距離也隨之更新,直到獲得最優(yōu)解。
圖1 灰狼的社會等級制度Fig. 1 Social hierarchy of grey wolf
灰狼狩獵的主要階段為:(1)尋找和追蹤獵物;(2)追逐并環(huán)繞獵物直到其停止移動;(3)攻擊獵物。
在狼群狩獵的過程中,式(5)(6)代表灰狼圍捕獵物的行為。
式中:D為灰狼與獵物之間的距離;A、C為系數(shù)向量;i為目前的迭代次數(shù); Φp、Φ分別為獵物和灰狼的位置向量。
灰狼識別獵物的位置并且包圍獵物[22-23],當(dāng)獵物的位置停止移動時,灰狼群體會通過逐漸減小圍攻的范圍來完成狩獵。
Elman神經(jīng)網(wǎng)絡(luò)是一種改進的BP神經(jīng)網(wǎng)絡(luò)[24-25],其神經(jīng)元網(wǎng)絡(luò)一共分為4層:輸入層、隱含層、承接層和輸出層,其網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。Elman神經(jīng)網(wǎng)絡(luò)的隱含層通過承接層的記憶進行自聯(lián),使其對輸入數(shù)據(jù)變得敏感,增強網(wǎng)絡(luò)的動態(tài)、時變特性,如果給定系統(tǒng)的輸入、輸出,就可以對系統(tǒng)進行建模,這對于光伏輸出功率預(yù)測較為適用[26]。
圖2 Elman神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)Fig. 2 Elman neural network structure
Elman神經(jīng)網(wǎng)絡(luò)的數(shù)學(xué)模型為
式中:y為m維輸出結(jié)點向量;x為n維隱含層結(jié)點向量;u為r維輸入向量;xc為n維反饋狀態(tài)向量; ω1、ω2、ω3分別為承接層到隱含層、輸入層到隱含層、隱含層到輸出層的連接權(quán)值;b1、b2分別為輸入層和隱含層的權(quán)值;g(?)為輸出層的傳遞函數(shù);f(?)是隱含層的傳遞函數(shù)。
由于原始光伏輸出功率具有很強的非線性和非平穩(wěn)性,因此本文首先使用K-means算法根據(jù)天氣類型對原始數(shù)據(jù)聚類,再對每一類數(shù)據(jù)的光伏輸出功率曲線進行VMD分解,然后用由GWO優(yōu)化后的Elman神經(jīng)網(wǎng)絡(luò)進行預(yù)測,其預(yù)測流程如圖3所示,具體步驟如下。
圖3 預(yù)測算法流程Fig. 3 Flowchart of forecasting algorithm
(1)定義日特征向量,使用K-means算法將歷史數(shù)據(jù)按晴天、多云、雨雪天氣聚為3類。
(2)將每一類數(shù)據(jù)中的光伏功率歷史數(shù)據(jù)進行VMD分解。
(3)使用GWO優(yōu)化算法優(yōu)化Elman神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值。
(4)將VMD分解的各子序列分別作為GWO優(yōu)化后的Elman神經(jīng)網(wǎng)絡(luò)的輸出,以每一類氣象數(shù)據(jù)作為Elman的輸入分別進行預(yù)測。
(5)疊加各子序列的預(yù)測結(jié)果并驗證模型預(yù)測的準(zhǔn)確性。
VMD參數(shù)設(shè)置:VMD分量個數(shù)M的確定十分重要,一般M取3~8,經(jīng)試驗驗證,當(dāng)M=6時,預(yù)測模型的效果最佳。將VMD的懲罰參數(shù)、初始的中心頻率、收斂判據(jù)分別設(shè)定為α=2 000,ω=1,r=10?7。
GWO參數(shù)設(shè)定:灰狼的種群數(shù)量為20,最大迭代次數(shù)為30。Elman網(wǎng)絡(luò)結(jié)構(gòu)為3、13、1、1。
本文以光伏電站實際功率和氣象數(shù)據(jù)作為預(yù)測模型的原始數(shù)據(jù),其中,選取輻照度、溫度和濕度作為影響光伏輸出功率的氣象因素。為了消除量綱不一致的問題,在氣象數(shù)據(jù)輸入預(yù)測模型前,將數(shù)據(jù)進行歸一化處理[27],即
本文選取均方根誤差(RMSE)、平均絕對誤差(MAE)、均方誤差(MSE)作為評價各預(yù)測模型精度的標(biāo)準(zhǔn)[28],其表達(dá)式為
式中:yi、分別是第i個樣本點的實際功率值和預(yù)測功率值。
本文選取內(nèi)蒙古蒙西地區(qū)某一光伏發(fā)電站2019年5月1日至2019年11月24日每天06:00—18:00每15 min一個樣本點的天氣與光伏輸出功率的時間序列作為原始數(shù)據(jù)。K-means聚3類后,分別將每一類數(shù)據(jù)的后20%作為測試集,其余數(shù)據(jù)作為訓(xùn)練集。
將原始數(shù)據(jù)使用K-means方法進行聚類,其中,每日特征向量為
通過4種模型比較說明本文所提模型在光伏輸出功率預(yù)測精度方面的提升作用。模型1:傳統(tǒng)Elman神經(jīng)網(wǎng)絡(luò)。模型2:GWO-Elman神經(jīng)網(wǎng)絡(luò)。訓(xùn)練集訓(xùn)練經(jīng)GWO優(yōu)化后的Elman神經(jīng)網(wǎng)絡(luò)進行預(yù)測。模型3:VMD-Elman神經(jīng)網(wǎng)絡(luò)。將聚類后的每一類數(shù)據(jù)中的光伏輸出功率數(shù)據(jù)分別進行VMD分解,將分解得到的各子序列分別作為Elman神經(jīng)網(wǎng)絡(luò)的輸出數(shù)據(jù),同類數(shù)據(jù)的氣象數(shù)據(jù)作為網(wǎng)絡(luò)的輸入數(shù)據(jù),最后將各序列預(yù)測結(jié)果進行疊加得到最終預(yù)測結(jié)果。模型4:本文建立的預(yù)測模型。
通過Matlab軟件進行仿真,K-means聚類后多云、雨雪、晴天的歷史功率曲線VMD結(jié)果如圖4所示,以MSE為評價函數(shù),3種天氣類型下GWO的優(yōu)化結(jié)果及典型日預(yù)測結(jié)果如圖5~10所示,測試集的預(yù)測誤差見表1~3。
圖4 各天氣類型功率數(shù)據(jù)VMD結(jié)果Fig. 4 VMD results of power data for each weather type
圖5 多云天氣下GWO的優(yōu)化結(jié)果對比Fig. 5 Comparison of GWO results in cloudy weather
圖6 多云天氣下各模型預(yù)測結(jié)果(8月25日)Fig. 6 Forecasting results of each model in cloudy weather (August 25)
由圖5、圖7和圖9可知,經(jīng)過灰狼算法優(yōu)化后的Elman神經(jīng)網(wǎng)絡(luò),模型的收斂速率變快,即在同樣的MSE值下,GWO-Elman迭代次數(shù)比Elman少,而且在第100次迭代后,GWO-Elman和Elman的MSE都達(dá)到最小,可以證明GWO算法對改進Elman神經(jīng)網(wǎng)絡(luò)的性能有一定的作用。
圖7 雨雪天氣下GWO的優(yōu)化結(jié)果對比Fig. 7 Comparison of GWO results in rainy or snowy weather
圖8 雨雪天氣下各模型預(yù)測結(jié)果(10月31日)Fig. 8 Forecasting results of each model in rainy or snowy weather (October 31)
圖9 晴天天氣下GWO的優(yōu)化結(jié)果對比Fig. 9 Comparison of GWO results in sunny weather
圖10 晴天天氣下各模型預(yù)測結(jié)果(11月24日)Fig. 10 Forecasting results of each model in sunny weather (November 24)
表1 多云天氣下各預(yù)測模型誤差Table 1 Error of each forecasting model in cloudy weather
表2 雨雪天氣下各預(yù)測模型誤差Table 2 Error of each forecasting model in rainy or snowy weather
表3 晴天天氣下各預(yù)測模型誤差Table 3 Error of each forecasting model in sunny weather
由圖6可以看出,多云天氣情況下,本文所提模型和其他3種模型的預(yù)測結(jié)果與真實的功率曲線相距都很近,在功率曲線的左端,VMDElman模型的表現(xiàn)最好,在第25~32個樣本點之間,本文模型的誤差顯然較大,但是在35~49個樣本點之間,本文模型的預(yù)測結(jié)果不僅能夠跟隨真實曲線的趨勢,在整個測試集的誤差也達(dá)到最小,再結(jié)合表1各模型的預(yù)測誤差值,本文所提模型的RMSE、MAE、MSE相比傳統(tǒng)Elman神經(jīng)網(wǎng)絡(luò)分別降低了31.46%、53.02%、9.00%,相比GWO-Elman模型分別降低了39.61%、63.53%、29.74%,也就是說,整體的預(yù)測效果以及預(yù)測精度,本文模型勝過其他3種模型。
圖8中,GWO-Elman模型的預(yù)測效果顯然是最差的,在前13個樣本點之間,其預(yù)測結(jié)果與真實曲線相差甚遠(yuǎn),而本文所提模型無論是曲線的平滑階段還是突變階段,都與真實功率曲線相差不大,結(jié)合表2,本文所提模型在雨雪天氣下的RMSE、MAE、MSE 分別為 0.462 6 kW、0.214 0 kW、0.353 9 kW2,而 Elman 模型的誤差值分別為 1.009 8 kW、1.019 6 kW、0.683 3 kW2,顯然本文所提模型的誤差更小,再相比VMD-Elman的誤差值,本文模型的誤差值分別降低了46.91%、71.81%、46.61%。
圖10中,雖然預(yù)測的是晴天情況下的光伏輸出功率,但是各模型的預(yù)測精度也還是有一定的差距,在前10個樣本點的預(yù)測結(jié)果中,VMDElman的預(yù)測曲線最接近真實功率曲線,其次為本文所提模型,最差的是原始Elman以及GWOElman模型,但在第15~43樣本點之間,VMDElman模型的預(yù)測結(jié)果與真實值相差比其他模型更大,結(jié)合表3晴天情況下測試集的誤差,本文模型的 RMSE、MAE、MSE 分別為 1.089 3 kW、1.186 6 kW、0.839 1 kW2,相比其他模型誤差值最小,所以本文所提模型在晴天情況下預(yù)測精度相較于其他3種模型更高。
由圖5、圖7、圖9和表1~3可知,在Elman、GWO-Elman、VMD-Elman、VMD-GWO-Elman這4種模型中,當(dāng)僅使用GWO優(yōu)化Elman的初始權(quán)值和閾值時,對3種天氣類型的預(yù)測精度都不如原始Elman模型高,但是,圖5、圖7和圖9中,3種天氣類型下,經(jīng)過GWO優(yōu)化的Elman模型在相同的迭代次數(shù)下,MSE誤差更??;當(dāng)僅使用VMD對原始功率數(shù)據(jù)進行分解再用Elman進行預(yù)測時,雖然在雨雪天氣下的預(yù)測精度有所提升,但是,與本文所提的VMD分解結(jié)合GWO優(yōu)化Elman初始權(quán)值和閾值的模型相比,無論哪種天氣類型,VMD-GWO-Elman的精度都是最高的。
本文提出了VMD-GWO-Elman預(yù)測模型,為了減小Elman初始權(quán)值和閾值隨機對光伏輸出功率預(yù)測精確度和準(zhǔn)確性的影響,在彌補了Elman初始權(quán)值和閾值隨機的缺點上,又使用VMD降低了原始序列非平穩(wěn)性的特點,最終提高了光伏輸出功率的預(yù)測精度。經(jīng)真實數(shù)據(jù)仿真結(jié)果表明,與Elman、GWO-Elman、VMD-Elman這3種預(yù)測模型相比,本文所建模型的RMSE、MSE、MAE最小,對光伏輸出功率短期預(yù)測的精度有一定的提升作用,在光伏輸出功率短期預(yù)測方面有一定的參考意義。