黃文聰,張宇,楊遠程,李子修,陳潤,常雨芳
(湖北工業(yè)大學 太陽能高效利用及儲能運行控制湖北省重點實驗室,湖北 武漢 430068)
隨著能源危機的到來,大力發(fā)展綠色可再生能源已成為全社會的共識.風能作為一種取之不盡用之不竭的綠色可再生能源,得到了廣泛的關注和大力的開發(fā)利用.根據(jù)《2017年全球風電發(fā)展報告》,截止到2017年12月底,全球風力發(fā)電裝機容量達539.1 GW[1].由于風電的波動性和間歇性,當大規(guī)模的風電接入電網(wǎng)時,可能會對電網(wǎng)的穩(wěn)定性產(chǎn)生影響,甚至會擾亂電力系統(tǒng)的正常運行.風速是影響風力發(fā)電最直接的因素,若能對風速范圍進行準確的預測,則可以提供高精度的風力發(fā)電功率預測.這將有利于電網(wǎng)及時調(diào)整電力調(diào)度計劃,提高風能資源的高效利用,降低電網(wǎng)運行成本,降低風電接入電網(wǎng)時對電網(wǎng)產(chǎn)生的影響,對風力發(fā)電的發(fā)展具有積極重要的意義.
目前,國內(nèi)外的學者對風速預測做了大量的研究.李大中等[2]提出基于卷積循環(huán)神經(jīng)網(wǎng)絡深度學習的預測模型;陳金富等[3]提出用時空相關性的多位置多步風速預測模型,構造了一個利用時空相關性的風速預測模型——深層時空網(wǎng)絡;Zhang等[4]提出基于小波分解和布谷鳥搜索算法的小波神經(jīng)網(wǎng)絡風速預測;趙征等[5]提出一種基于變分模態(tài)分解和改進差分自回歸滑動平均模型的風速預測模型.上述研究建立的預測模型在一定程度上提高了風速的預測精度,其平均百分比誤差在1%~10%的范圍內(nèi).
通過對已發(fā)表文獻的分析,目前對風速的預測主要采用物理方法與統(tǒng)計方法相結合的方法[6-11],這些方法各具特點,在預測精度上存在一些差異.灰狼優(yōu)化算法(grey wolf optimizer,GWO)是由Mirjalili等提出的一種模擬灰狼捕食行為的群智能優(yōu)化算法[12-14],因其原理簡單、收斂速度快且全局性能好等優(yōu)點,廣泛應用于故障診斷、無人機航跡規(guī)劃、客流預測、滑坡位移預測等領域[15-18].廖小平等[19]利用灰狼優(yōu)化的支持向量機得到刀具磨損的分類等級,能準確地反映刀具的磨損狀態(tài),且具有較高的泛化能力;朱敬旭輝等[20]基于灰狼算法優(yōu)化的比例積分微分(PID)控制,采用灰狼優(yōu)化算法對PID控制參數(shù)進行自整定以提高控制系統(tǒng)的動態(tài)性能,該控制算法能夠有效穩(wěn)定地控制移動機器人完成路徑跟蹤任務.
基于以上分析,本文提出一種基于模糊信息?;突依莾?yōu)化-支持向量機(GWO-SVM)算法的風速預測模型,實現(xiàn)對風速范圍區(qū)間的準確預測.
假設第i次測得的風速為xi,其中,數(shù)據(jù)長度為m的第n組的連續(xù)時間風速數(shù)據(jù)Y(n,m)為
Y(n,m)={xn,xn+1,xn+2,…,xn+m-1}.
(1)
式(1)中:數(shù)據(jù)以xn開頭,數(shù)據(jù)長度為m,順序與原始風速數(shù)據(jù)相同.數(shù)據(jù)長度為N的原始的風速數(shù)據(jù)Y(0,N)可表示為
Y(0,N)={x1,x2,x3,…,xN}.
(2)
第1組到第n-1組連續(xù)時間風速數(shù)據(jù)所構成的風速數(shù)據(jù)時間序列矩陣X(n-1,m)為
(3)
通過該風速數(shù)據(jù)為時間序列數(shù)據(jù)的特點,可以推導出第n次測得的風速xn與第1次測得的風速x1到第n-1次測得的風速xn-1之間存在模糊函數(shù)關系,即
xn=f(x1,x2,x3,…,xn-1).
(4)
數(shù)據(jù)長度為m的第n組的連續(xù)時間風速數(shù)據(jù)Y(n,m)與第1組到第n-1組連續(xù)時間風速數(shù)據(jù)所構成的風速數(shù)據(jù)時間序列矩陣X(n,m)也存在模糊函數(shù)關系,即
Y(n,m)=F(X(n-1,m)).
(5)
通過這一層模糊函數(shù)關系,可以實現(xiàn)對風速數(shù)據(jù)的預測.
信息粒化是根據(jù)一定的劃分規(guī)則,將一個信息整體分解為多個部分,每個部分即為一個信息粒.非模糊的信息粒化有區(qū)間信息?;?、相空間信息?;染唧w?;椒?,在一些技術領域中有著重要的作用.然而,在實際情況中,粒子都是模糊的,非模糊粒化具有一定的局限性.因此,采用模糊信息粒化(fuzzy information granulation,F(xiàn)IG)對數(shù)據(jù)進行處理.利用FIG可以對龐大的樣本數(shù)據(jù)進行特征提取,將提取出的特征作為輸入,代入預測模型.
對數(shù)據(jù)進行FIG處理主要劃分為兩個步驟:1) 窗口劃分,即對時間序列進行分割,劃分為多個窗口;2) 模糊信息化,即分別對每個窗口進行模糊化處理,生成數(shù)個模糊信息粒.模糊化是FIG的關鍵步驟,通過在窗口上建立一個合理的模糊集,也就是從數(shù)據(jù)中提取出關鍵的特征信息代替原來的數(shù)據(jù).
針對單窗口模糊化問題,對于確定的風速時間序列X=(x1,x2,…,xn),將整個X作為一個單窗口進行模糊化得到模糊粒子P,提取出來的模糊粒子P能夠合理描述以X為論域的模糊概念G.模糊化的本質(zhì)是建立一個函數(shù)M的過程,函數(shù)M是模糊概念G的隸屬函數(shù),即M=μG,其中,μG為G的隸屬關系.模糊化的過程也就是先確定模糊概念的基本形式,然后,再確定模糊概念G的隸屬函數(shù)M.
要得到隸屬函數(shù)M,先要確定好模糊概念的對應形式,其主要形式有三角型、梯型、高斯型和拋物型.文中采用的是三角型的模糊概念,函數(shù)關系為
(6)
式(6)中:s和h為分別對應模糊概念G的下界值、上界值;m是模糊概念G的隸屬度為1時的取值.
經(jīng)過對一段連續(xù)時間的風速值進行模糊信息處理可以提取出3個參數(shù)UP,LOW和R.其中:UP表示風速范圍預測的最大值;LOW表示風速范圍預測的最小值;R表示風速范圍預測的平均水平.
對模糊信息?;玫降娜齻€參數(shù)UP,LOW和R進行歸一化處理,利用原始數(shù)據(jù)線性化將信息轉(zhuǎn)換到[0,1]的范圍.歸一化公式為
(7)
式(7)中:p為歸一化后的數(shù)據(jù);xi為原始數(shù)據(jù);xmax,xmin分別為原始數(shù)據(jù)集的最大值和最小值.
該方法實現(xiàn)對原始數(shù)據(jù)的等比例縮放,歸一化之后將數(shù)據(jù)UP,LOW和R代入時間序列風速輸入模型,得到輸入預測模型的標簽向量和對應的特征矩陣.
支持向量機(SVM)是一種基于統(tǒng)計理論的VC(Vapnik-Chervonenkis)維理論和結果風險最小化理論的統(tǒng)計機器學習算法.其在解決小樣本、非線性,以及高維模式識別上有較好的應用,且在預測的應用上有較好效果.通過預測模型構造出損失函數(shù),再基于結構風險最小化原則得到支持向量機算法.它要解決一個原始最優(yōu)化問題,其形式為
(8)
(9)
式(9)中:k(xi,xj)為核函數(shù);xi,xj為輸入變量;l為樣本個數(shù).
由式(9)求解,可得到支持向量機的預測函數(shù)為
(10)
基于Mercer條件,且將高斯RBF作為核函數(shù),g為核函數(shù)的內(nèi)部參數(shù),則有
(11)
式(8)中的懲罰參數(shù)c和式(11)中的核函數(shù)的內(nèi)部參數(shù)g決定了SVM的預測精確度.因此,為了構建高精度的預測模型,需要對SVM內(nèi)部的參數(shù)(c,g)進行優(yōu)化以確定最優(yōu)參數(shù).
采用灰狼優(yōu)化(GWO)算法對SVM內(nèi)部的參數(shù)c,g進行參數(shù)尋優(yōu),有如下3個主要步驟.
步驟1包圍獵物.灰狼與獵物之間的距離D為
D=|C·Xp(t)-X(t)|,X(t+1)=Xp(t)-AD.
(12)
式(12)中:t為迭代次數(shù);Xp(t)為當前獵物的位置;X(t)為當前灰狼位置;X(t+1)下次迭代后灰狼的位置;A,C為系數(shù)向量.A,C的更新方式分別為A=2a·r1-a,C=2·r2,其中,r1與r2為[0,1]之間的隨機數(shù),a為收斂因子,初始值為2,隨著迭代次數(shù)的增加遞減至0.
步驟2追捕獵物.計算每個灰狼個體的適應度值fi,將適應度值排列前三的灰狼個體的位置分別記為Xα,Xβ,Xδ,并將適應度值最好的Xα記為最優(yōu)解;然后,計算剩余灰狼個體ω與排列前三的灰狼個體位置Xα,Xβ,Xδ的距離,即
Dα=|C1Xα(t)-X(t)|,Dβ=|C2Xβ(t)-X(t)|,Dδ=|C3Xδ(t)-X(t)|.
(13)
最后,更新灰狼α,β,δ和獵物的位置,即
X1=Xα(t)-A1Dα,X2=Xβ(t)-A2Dβ,X3=Xδ(t)-A3Dδ,
(14)
XP(t+1)=(X1+X2+X3)/3.
(15)
步驟3狼群對獵物進行攻擊并捕獲獵物以獲得最優(yōu)解.如果灰狼算法的迭代次數(shù)達到最大迭代次數(shù)tmax,那么,算法結束并輸出最優(yōu)解Xα;否則,返回步驟2繼續(xù)進行尋優(yōu).
由上述建立的模糊信息粒化模型和GWO-SVM模型,構建文中提出的風速范圍組合預測模型,實現(xiàn)對風速范圍的準確預測.風速預測有如下4個主要步驟.
步驟1將歷史數(shù)據(jù)進行模糊粒化處理,得到新的時間窗口的?;瘮?shù)據(jù);然后,將模糊?;蟮臄?shù)據(jù)進行歸一化操作,可得到LOW,R,UP的歸一化數(shù)據(jù);最后,將歸一化數(shù)據(jù)劃分為訓練集數(shù)據(jù)和測試集數(shù)據(jù).
步驟2構建時間序列風速輸入模型,分別對LOW,R,UP三組時間序列進行歸一化,并將訓練集數(shù)據(jù)分別代入時間序列風速輸入模型,即可得到三組GWO-SVM的訓練集標簽向量Y(n,m)與訓練集特征矩陣X(n,m)數(shù)據(jù).
步驟3將上述三組數(shù)據(jù)分別作為輸入代入模型GWO-SVM模型,初始化狼群數(shù)為n,最大迭代次數(shù)為tmax,將懲罰參數(shù)c和核函數(shù)參數(shù)g代入SVM進行預測.如果灰狼算法的迭代次數(shù)達到最大迭代次數(shù)tmax,那么,算法結束并輸出最優(yōu)解c,g;否則,繼續(xù)進行GWO參數(shù)尋優(yōu).
步驟4將最優(yōu)參數(shù)c,g代入SVM進行預測,預測時間段t上最大值、最小值和大體平均水平值,可得到時間段t風速范圍區(qū)間;然后,用同樣的預測方法繼續(xù)預測t+Δt時間段風速范圍,將風速預測值與風速實際值對比,并進行誤差檢驗.
基于模糊信息?;P秃虶WO-SVM模型的算法流程圖,如圖1所示.本算法的目的是對未來風速值進行范圍預測,預測結果為(LOW,R,UP).
樣本數(shù)據(jù)來自于某風力發(fā)電機在2019年7月6日至2019年7月15日連續(xù)10 d的風速數(shù)據(jù),采樣時間間隔為5 min.利用MATLAB編程實現(xiàn)對上述預測方式的驗證,用前6天的歷史風速數(shù)據(jù)對后4天的風速數(shù)據(jù)進行范圍預測,其中,風速數(shù)據(jù)的總樣本量為3 000,訓練數(shù)據(jù)樣本量為1 850,預測數(shù)據(jù)樣本量為1 150.歷史風速數(shù)據(jù)樣本,如圖2所示.圖2中:N5 min表示每5 min為采樣點的數(shù);v為風速.
將數(shù)據(jù)代入模糊信息粒化模型后進行FIG處理,使原來每5 min為采樣點的數(shù)以30 min(6個采樣點)作為新的窗口周期,數(shù)據(jù)模糊信息?;囊晥D,如圖3所示.
圖2 歷史風速數(shù)據(jù) 圖3 ?;L速數(shù)據(jù) Fig.2 Historical wind speed data Fig.3 Granulated wind speed data
對風速數(shù)據(jù)進行新的窗口劃分后(6個時間點為一個窗口),提取出LOW,R和UP值分別進行預測,對應得到下一個時間窗口的LOW,R和UP值,即得到最小值、大體平均水平值及最大值.主要步驟包括對?;蟮腖OW值進行歸一化處理,然后,使用GWO-SVM預測模型得到風速的LOW值.同樣選取風速模糊信息?;蟮腞值和UP值進行歸一化處理,再通過GWO-SVM預測模型進行預測,分別獲取對應的預測值,最后,得到風速的預測范圍.
GWO的初始參數(shù)設置,如表1所示.通過GWO得到的SVM模型的內(nèi)部參數(shù)c和g,如表2所示.最終的取值采用GWO-SVM預測模型預測的風速LOW,R和UP值,實際對比如圖4所示.圖4中:N30 min表示每30 min為采樣點的數(shù).通過對比圖4中預測變化曲線和實際變化曲線可以看出,GWO-SVM預測模型對風速LOW,R和UP值的預測效果較好.
表1 GWO的初始參數(shù)設置Tab.1 GWO initial parameter settings
表2 GWO-SVM模型的參數(shù)最終值Tab.2 Final value of parameters of GWO-SVM model
圖4 GWO-SVM預測模型的預測值與實際值的對比Fig.4 Comparison of predicted and actual values of GWO-SVM prediction model
連續(xù)30 min內(nèi)的實際風速值對應的風速范圍的預測值,如表3所示.表3中:實際風速值之間的時間間隔(Δt)為5 min;風速范圍區(qū)間可用[LOW,R,UP]表示.
表3 連續(xù)30 min時間內(nèi)風速范圍的預測值Tab.3 Prediction of wind speed range in 30 consecutive minutes
由表3可見:實際風速值都在預測范圍區(qū)間之內(nèi),且實際風速范圍與預測風速范圍一致.由此可知,采用模糊信息?;虶WO-SVM的組合風速預測算法可以實現(xiàn)對風速范圍的精準預測.
為了對算法預測精度進行分析,分別利用網(wǎng)格搜索(grid search,GS)法、遺傳算法(genetic algorithm,GA)尋優(yōu)法、粒子群算法(particle swarm optimization,PSO)尋優(yōu)法進行參數(shù)尋優(yōu)后,再進行風速預測,通過對誤差大小的對比,研究GWO-SVM算法的預測精度.
通過計算預測值與實測值之間的平均百分比誤差(mean absolute percent error,MAPE)和均方根誤差(mean absolute error,MAE)對結果進行誤差分析和評價,結果如表4所示.MAPE和MAE計算公式分別為
表4 四種優(yōu)化算法的誤差對比Tab.4 Comparison of errors in four optimization algorithms
(16)
采用MAPE和MAE估算模型對不同數(shù)量級樣例的擬合程度,其中,MAPE和MAE的數(shù)值越小,表示擬合精度越高.通過表4可知:GWO-SVM算法的預測精度最高,說明經(jīng)過基于GWO-SVM算法的參數(shù)尋優(yōu)效果優(yōu)于其他參數(shù)尋優(yōu)算法,即GWO-SVM算法提高了模型的預測精度和效果.
為驗證模型的區(qū)間預測效果,在不同相對寬度(90%,70%)下實現(xiàn)短期風速區(qū)間預測.調(diào)整相對寬度的方式計算式為
(17)
式(17)中:1-α為相對寬度;U(xi)為第i個預測樣本的原始上界;L(xi)為第i個預測樣本的原始下界;U(xi)(1-α)為相對寬度1-α下第i個預測樣本的上界;L(xi)(1-α)為相對寬度1-α下第i個預測樣本的下界.模型的區(qū)間預測效果及其對應方框框出的范圍放大后的區(qū)間預測結果,如圖5所示.圖5中:N5 min表示每5 min為采樣點的數(shù).
(a) 100%相對寬度 (b) 圖5(a)局部放大
(c) 90%相對寬度 (d) 圖5(c)局部放大
(e) 70%相對寬度 (f) 圖5(e)局部放大圖5 不同相對寬度下的風速區(qū)間預測結果Fig.5 Wind speed interval prediction results under different relative widths
采用如下幾個指標對區(qū)間預測效果進行評價.
1) 區(qū)間覆蓋率(forecasting interval coverage percentage,FICP).FICP用于評價區(qū)間的可信程度,其值越大,可信度就越高,其計算式為
(18)
2) 區(qū)間平均寬度(forecasting interval average width,F(xiàn)IAW).FIAW用于評價預測結果描述不確定信息的能力,其值越小,效果就越好,其計算式為
(19)
表5 不同相對寬度下區(qū)間預測效果指標Tab.5 Index of interval prediction effect under different relative widths
不同相對寬度(W)下區(qū)間預測效果指標,如表5所示.
由圖5和表5的預測效果指標可以得出以下兩點結論:1) 文中所提模型的風速預測范圍區(qū)間能夠有效包含實際值,其上下浮動趨勢與實際風速變化情況基本一致;2) 在進行區(qū)間相對寬度調(diào)節(jié)后,發(fā)現(xiàn)存在極少的風速實際值落在相對寬度100%下的預測區(qū)間之外,風速實際值大部分都落在相對寬度90%下的預測區(qū)間之內(nèi),少部分落在相對寬度70%下的預測區(qū)間之外,滿足實際情況,體現(xiàn)了文中所提模型的有效性.
各預測模型的指標評價結果,如表6所示.由表6可知:總體上,文中所提出的模型的預測區(qū)間的區(qū)間平均寬度最窄,區(qū)間覆蓋率最高,GWO-SVM預測的區(qū)間預測效果較為理想.
表6 各預測模型的指標評價結果Tab.6 Index evaluation results of each prediction model
綜上所述,所提的基于模糊信息?;虶WO-SVM算法的短期風速范圍預測模型可實現(xiàn)短期風速的區(qū)間預測,且預測效果較好.
基于時間序列預測法和模糊信息?;椒ǎ岢鰧︼L速范圍區(qū)間預測的方法,并建立模糊信息粒化和GWO-SVM算法的風速范圍預測模型.通過算例分析,得出以下2點主要結論.
1) 由于針對時間序列分布的風速預測具有偶然性,文中所提出的模糊信息?;娘L速范圍預測模型,通過模糊信息粒化提取一定時間內(nèi)風速的特征信息,對特征信息進行預測,從而實現(xiàn)對風速范圍區(qū)間的預測.
2) 通過與其他算法的誤差對比,證明利用灰狼算法進行參數(shù)尋優(yōu)能有效地提高支持向量機對風速范圍預測的精度.
基于模糊信息?;虶WO-SVM算法的風速范圍預測方法具有較高的預測精度,風速范圍的準確預測對風力發(fā)電功率的準確預測具有重要的意義.因此,該預測方法具有良好的應用價值.