張亞杰,崔東文
(1.云南省玉溪市易門縣水利局,云南 玉溪 651100;2.云南省文山州水務(wù)局,云南 文山 663000)
水文時間序列預(yù)報是揭示水文自身演變規(guī)律性的一種有效而可靠的方法,同時是水文預(yù)報研究領(lǐng)域的重要內(nèi)容之一。提高水文時間序列預(yù)報精度對區(qū)域水資源開發(fā)利用、防洪抗旱規(guī)劃、水資源管理保護(hù)、水庫優(yōu)化調(diào)度等具有重要意義。由于受氣候變化、人類活動、土地利用及植被覆蓋等多重因素的影響,月徑流時間序列表現(xiàn)出高噪聲、非線性、非平穩(wěn)性和多尺度等特征,回歸類模型[1]、BP神經(jīng)網(wǎng)絡(luò)[2]、支持向量機(SVM)[3]、隨機森林(RF)[4]、長短時記憶神經(jīng)網(wǎng)絡(luò)(LSTM)[5]等單一模型難以獲得滿意的預(yù)測效果。當(dāng)前,基于“分解-預(yù)測-重構(gòu)”思想的多種方法組合預(yù)測模型廣泛用于徑流時間序列預(yù)測,如桑宇婷等[6]利用互補集合經(jīng)驗?zāi)B(tài)分解(CEEMD)方法和BP神經(jīng)網(wǎng)絡(luò)建立組合預(yù)測模型,將其應(yīng)用于汾河上游月徑流預(yù)測;劉祖發(fā)等[7]利用小波分解(WD)方法和秩次集對模型建立組合預(yù)測模型,將其應(yīng)用于馬口站年總徑流量預(yù)測;王麗麗等[8]融合奇異譜分析(SSA)方法、灰狼優(yōu)化算法、回歸支持向量機模型,提出SSA-GWO-SVR月徑流組合預(yù)測模型;呂晗芳等[9]建立變分模態(tài)分解(VMD)-最小二乘支持向量回歸機(LSSVM)耦合模型,將其應(yīng)用于上靜游站等多個水文站月徑流預(yù)測;李繼清等[10]將極點對稱模態(tài)分解(ESMD)方法與Elman神經(jīng)網(wǎng)絡(luò)相結(jié)合,建立ESMD-Elman模型對長江干、支流8站的年、月徑流進(jìn)行預(yù)報。
上述徑流預(yù)測[6-10]體現(xiàn)了“分解-預(yù)測-重構(gòu)”方法的適用性。當(dāng)前,常用于時間序列分解的算法主要有經(jīng)驗?zāi)B(tài)分解(EMD)、集合經(jīng)驗?zāi)B(tài)分解(EEMD)、小波分解(WD)、變分模態(tài)分解(VMD)、奇異譜分解(SSA)等;常用于月徑流時間序列預(yù)測的預(yù)測器主要有BP、SVM、LSTM等,但均存在缺點與不足,如BP神經(jīng)網(wǎng)絡(luò)存在設(shè)置參數(shù)多、易陷入局部最優(yōu)等缺點;SVM模型存在對參數(shù)敏感、大容量樣本預(yù)報中表現(xiàn)不佳等不足;LSTM模型預(yù)測性能較好,但存在內(nèi)存資源消耗大、運行時間長等缺陷。極限學(xué)習(xí)機(extreme learning machine,ELM)是近年興起的一種隱層前饋神經(jīng)網(wǎng)絡(luò)(SLFNs)學(xué)習(xí)算法,由于具有預(yù)測精度高、學(xué)習(xí)速度快、參數(shù)少等優(yōu)點,已在各行業(yè)領(lǐng)域及徑流預(yù)測[11]中得到應(yīng)用。相比于其他方法,ELM克服了梯度下降學(xué)習(xí)算法需要多次迭代的缺點,在滿足精度要求的同時提高了學(xué)習(xí)速度[12]。但在實際應(yīng)用中,ELM輸入層權(quán)值、隱含層偏置的隨機選取對ELM預(yù)測性能影響較大。目前,遺傳算法(GA)等傳統(tǒng)智能算法[13-15]、生物地理學(xué)優(yōu)化(BBO)算法[16]、花授粉算法(FPA)[17]、差分進(jìn)化(DE)算法[18]等嘗試用于ELM輸入層權(quán)值和隱含層偏置優(yōu)化,并取得較好的優(yōu)化效果。法務(wù)偵查(Forensic-Based Investigation,F(xiàn)BI)算法是2020年提出的一種新型元啟發(fā)式優(yōu)化算法[19],其靈感來源于警察對嫌疑犯采取的調(diào)查-定位-追捕過程,與傳統(tǒng)群智能算法相比,F(xiàn)BI收斂速度快、尋優(yōu)精度高,具有較好的探索和開發(fā)能力,鮮見于ELM輸入層權(quán)值和隱含層偏值優(yōu)化及徑流預(yù)測研究。
為有效提高徑流時間序列預(yù)測精度,結(jié)合徑流時間序列多尺度、非平穩(wěn)性等特點,研究提出經(jīng)驗?zāi)B(tài)分解(Empirical Mode Decomposition,EMD)-FBI算法-ELM徑流時間序列預(yù)測模型,旨在驗證EMD-FBI-ELM模型應(yīng)用于月徑流時間序列預(yù)測的可行性。內(nèi)容如下:①利用EMD將徑流時間序列數(shù)據(jù)分解成多個更具規(guī)律的子序列分量;②基于重構(gòu)輸入向量建立ELM模型,利用FBI算法優(yōu)化ELM輸入層權(quán)值、隱含層偏置,建立EMD-FBI-ELM徑流預(yù)測模型,并構(gòu)建EMD-FBI-SVM、FBI-ELM、FBI-SVM作對比預(yù)測模型;③通過云南省姑老河站年徑流預(yù)測實例對EMD-FBI-ELM、EMD-FBI-SVM、FBI-ELM、FBI-SVM模型進(jìn)行檢驗及對比分析。
EMD最早提出于1998年,其原理是將相同的非平穩(wěn)信號分解為不同頻率的信號,從而得到由不同尺度信號組成的序列,稱為本征模函數(shù)(Intrinsic Mode Function,IMF)。IMF滿足2個條件:①數(shù)據(jù)序列中穿越極值點與零點的數(shù)量必須相等或最多相差一個;②信號上任意一點的局部極大值和局部極小值平均值為零[20-22]。
EMD 步驟如下:由時序數(shù)據(jù)x(t)的局部極大極小值確定其上包絡(luò)線和下包絡(luò)線;利用x(t)減去均值包絡(luò)線得到第一個IMF序列分量c1(t);將剩余分量作為新的時間序列,重復(fù)采用EMD方法獲得各個IMF子序列和1個殘余序列。表達(dá)式如下:
(1)
式中cn(t)——第n個IMF序列分量;rn-1(t)——第n-1次采用EMD方法分解后的剩余分量;res(t)——最終殘余分量。
FBI算法靈感來源于警察對嫌疑犯采取的調(diào)查-定位-追捕過程。算法分為偵查(A階段)、追捕(B階段)2個階段,分別由偵查組和追捕組執(zhí)行[19]。FBI算法數(shù)學(xué)描述簡述如下。
a)偵查階段。偵查組通過分析、評估信息,初步確定嫌疑人可疑位置,并對嫌疑人每個可疑位置進(jìn)行調(diào)查。嫌疑人可疑位置數(shù)學(xué)描述如下:
(2)
偵查員將每個可疑位置的概率與其他可疑位置的概率進(jìn)行比較,以確定最可能的可疑位置,并做進(jìn)一步調(diào)查。嫌疑人XAi可疑位置概率Prob數(shù)學(xué)描述如下:
Prob(XAi)=(pAi-pmin)/(pmax-pmin)
(3)
式中 Prob(XAi)——嫌疑人新可疑位置概率;pAi——嫌疑人可疑位置概率;pmax、pmin——嫌疑人可疑位置概率的最大、最小值。
(4)
(5)
式中Xmin——嫌疑人最有可能的可疑位置;a——影響XAij搜索的可疑位置數(shù)量;α——有效系數(shù);XAbj、XAdj——嫌疑人第b個、第d個隨機可疑位置;rand——[0,1]范圍內(nèi)隨機數(shù);其他參數(shù)意義同上。
b)追捕階段。在接到偵查組最有可能的嫌疑人位置報告后,追捕組所有警察協(xié)同接近目標(biāo),追捕嫌疑人。根據(jù)式(6),每個警察Bi接近可能性最高的嫌疑人位置;若新接近的嫌疑人位置比前代嫌疑人位置的可能性更大,則更新該位置。數(shù)學(xué)描述如下:
(6)
rand4·(Xmin-XBrj)
(7)
rand4·(Xmin-XBij)
(8)
式中XBrj——第r個特工隨機位置;rand3、rand4——[0,1]范圍內(nèi)隨機數(shù);其他參數(shù)意義同上。
極限學(xué)習(xí)機(ELM)是一種廣義的單隱層前饋神經(jīng)網(wǎng)絡(luò),具有較快的學(xué)習(xí)速度和良好的泛化能力。給定M個樣本Xk={xk,yk},k=1,2,…,M,其中xk為輸入數(shù)據(jù),yk為真實值,f(·)為激活函數(shù),隱層節(jié)點為m個,ELM輸出可表示為[13-14]:
(9)
式中oj——輸出值;Wi——輸入層節(jié)點與隱含層節(jié)點的連接權(quán)值;bi——輸入節(jié)點和隱含層節(jié)點的偏值;λi——隱含層節(jié)點與輸出節(jié)點的連接權(quán)值。
EMD-FBI-ELM預(yù)測實現(xiàn)步驟如下。
步驟一利用EMD方法將實例徑流原始數(shù)據(jù)分解得到3個IMF分量和1個剩余分量。利用自相關(guān)函數(shù)法(AFM)、虛假最鄰近法(FNN)確定各分量的最佳延遲時間和最佳嵌入維數(shù)k,即利用前k個月的月徑流量來預(yù)測當(dāng)月月徑流量,并合理劃分訓(xùn)練樣本和預(yù)測樣本。
步驟二利用訓(xùn)練樣本均方誤差構(gòu)建優(yōu)化目標(biāo)函數(shù):
(10)
步驟三設(shè)置種群規(guī)模N、最大迭代次數(shù)T和算法終止條件;隨機初始化嫌疑人位置Xi(i=1,2,…,N),XAi=XBi=Xi,令當(dāng)前迭代次數(shù)t=1。FBI算法優(yōu)化流程見圖1。
圖1 FBI優(yōu)化流程
步驟四執(zhí)行偵查任務(wù),利用式(3)更新嫌疑人可疑位置概率;利用式(5)生成嫌疑人可疑位置;更新XAi,計算并保存?zhèn)刹殡A段最優(yōu)適應(yīng)度值fA及最佳位置Xbest,A。
步驟五執(zhí)行追捕任務(wù),利用式(6)—(8)生成警察新位置,更新XBi,計算并保存追捕階段最優(yōu)適應(yīng)度值fB及最佳位置Xbest,B。
步驟六比較偵查階段和追捕階段適應(yīng)度值,保存最優(yōu)適應(yīng)度值和當(dāng)前全局最佳位置Xbest。
步驟七判斷終止條件,輸出Xbest,算法結(jié)束;否則返回步驟四。
步驟八利用ELM最佳輸入層權(quán)值和隱含層偏值矩陣Xbest構(gòu)建FBI-ELM模型,利用FBI-ELM模型對各IMF分量和剩余分量進(jìn)行預(yù)測,預(yù)測結(jié)果疊加即得到實例徑流預(yù)測的最終結(jié)果。
步驟九模型評估。利用MAPE(%)、MAE(m3/s)、納什系數(shù)(NSE)對模型性能評估。
(11)
姑老河站位于南汀河干流下游,系南汀河干流控制站,控制徑流面積4 186 km2,為國家重要水文站。南汀河發(fā)源于臨滄市臨翔區(qū)博尚鎮(zhèn)永泉村,國境內(nèi)徑流面積8 097 km2,河長264 km,落差2 090 m,平均比降4%,流域內(nèi)河網(wǎng)水系發(fā)育較差,河網(wǎng)密度0.4,流域形狀0.16,主要支流有南捧河、西河、盤河、河底崗河等。本文數(shù)據(jù)來源于姑老河站1960—2013年實測年徑流序列,見圖2。
圖2 1960—2013年年徑流變化曲線
利用EMD將實例年徑流時序數(shù)據(jù)分解得到3個不同尺度的模式分量IMF1—IMF3和1個剩余分量res,見圖3。
a)IMF1
采用自相關(guān)函數(shù)法(AFM)、虛假最鄰近法(FNN)分別確定模式分量IMF1—IMF3和剩余分量res的最佳延遲時間和最佳嵌入維數(shù)k,見表1。同時選取1960—2007年年徑流實測數(shù)據(jù)作為訓(xùn)練樣本,2008—2013年作為預(yù)測樣本。
表1 各IMF分量和剩余分量res延遲時間及嵌入維數(shù)
2.4.1參數(shù)設(shè)置
a)EMD-FBI-ELM模型。設(shè)置FBI最大迭代次數(shù)T=200,種群規(guī)模N=30;ELM模型激活函數(shù)選擇sigmoid函數(shù),輸入層權(quán)值和隱含層偏置搜索范圍[-1,1],設(shè)置IMF1、IMF2、IMF3、res隱含層節(jié)點數(shù)分別為14、19、13、5,輸入數(shù)據(jù)均采用[-1,1]進(jìn)行歸一化處理。
b)FBI-ELM模型。設(shè)置FBI最大迭代次數(shù)T=200,種群規(guī)模N=30;ELM模型激活函數(shù)選擇sigmoid函數(shù),輸入層權(quán)值和隱含層偏置搜索范圍[-1,1];設(shè)置原徑流序列隱含層節(jié)點數(shù)為13,輸入數(shù)據(jù)均采用[-1,1]進(jìn)行歸一化處理。
c)EMD-FBI-SVM、FBI-SVM模型。設(shè)置FBI最大迭代次數(shù)T=200,種群規(guī)模N=30;核函數(shù)選擇徑向基核函數(shù),懲罰因子、核函數(shù)參數(shù)搜索范圍設(shè)置為[10-3,103],不敏感系數(shù)搜索范圍設(shè)置為[0.000 1,1]、交叉驗證折數(shù)設(shè)置為5。所有輸入數(shù)據(jù)均采用[-1,1]進(jìn)行歸一化處理。
2.4.2各IMF分量和剩余分量res預(yù)測比較
利用EMD-FBI-ELM、EMD-FBI-SVM模型對EMD分解各IMF分量和剩余分量res進(jìn)行訓(xùn)練及預(yù)測,效果見圖4,結(jié)果見表2。
a)IMF1
c)IMF3
表2 實例徑流序列各IMF分量和剩余分量res擬合-預(yù)測相對誤差
從圖4、表2可以看出,EMD-FBI-ELM模型對徑流序列IMF1、IMF2、IMF3分量及剩余分量res預(yù)測的平均相對誤差分別為86.200%、22.900%、2.120%、0.004%,相對誤差較EMD-FBI-SVM模型分別降低了15.0%、51.5%、79.0%、94.3%,具有更高的預(yù)測精度和泛化能力。
2.4.3年徑流預(yù)測及比較
將EMD-FBI-ELM、EMD-FBI-SVM模型對實例各IMF分量和剩余分量res預(yù)測結(jié)果進(jìn)行疊加獲得實例年徑流最終預(yù)測結(jié)果。對于原徑流序列,采用AFM和FNN法確定其延遲時間為1,嵌入維數(shù)為7,利用FBI-ELM、FBI-SVM模型進(jìn)行訓(xùn)練及預(yù)測。預(yù)測結(jié)果見表3,效果見圖5、6。
表3 年徑流擬合及預(yù)測結(jié)果對比
圖5 實例年徑流擬合與預(yù)測相對誤差
圖6 實例年徑流擬合與預(yù)測效果
依據(jù)表3及圖5、6可以得出以下結(jié)論:①EMD-FBI-ELM模型預(yù)測的MAPE、MAE分別為3.97%、2.92 m3/s,MAPE分別較EMD-FBI-SVM、FBI-ELM、FBI-SVM模型的預(yù)測結(jié)果降低了53.9%、81.7%、86.5%;MAE分別較EMD-FBI-SVM、FBI-ELM、FBI-SVM模型的預(yù)測結(jié)果下降了50.7%、81.4%、85.5%,具有更高的預(yù)測精度和更強的泛化能力,表明EMD能科學(xué)將徑流序列數(shù)據(jù)分解成多個更具規(guī)律的分量序列,F(xiàn)BI算法能有效優(yōu)化ELM輸入層權(quán)值和隱含層偏值,將EMD-LSTM-ANFIS模型用于徑流預(yù)測是可行的;②從NSE來看,EMD-FBI-ELM模型擬合、預(yù)測的NSE分別為0.921 3和0.910 0,優(yōu)于EMD-FBI-SVM模型,遠(yuǎn)優(yōu)于FBI-ELM、FBI-SVM模型,表明EMD-FBI-ELM模型具有較高的可信度;③EMD-FBI-ELM模型對實例訓(xùn)練樣本擬合的相對誤差在-16.10%~8.49%、預(yù)測樣本預(yù)測的相對誤差值在-5.20%~4.63%,與其余3種模型相比穩(wěn)定性和預(yù)測精度均較高,從圖5、6來看,EMD-LSTM-ANFIS模型對實例擬合、預(yù)測誤差更小,更接近實測值。
a)采用EMD對實例年徑流時間序列進(jìn)行分解,可以弱化復(fù)雜環(huán)境對徑流時間序列的影響,降低預(yù)測復(fù)雜度,有效提高預(yù)測精度。
b)EMD-FBI-ELM對實例預(yù)測的平均相對誤差分別較EMD-FBI-SVM、FBI-ELM、FBI-SVM模型的預(yù)測結(jié)果降低了53.9%、81.7%、86.5%,平均絕對誤差分別較EMD-FBI-SVM、FBI-ELM、FBI-SVM模型的預(yù)測結(jié)果下降了50.7%、81.4%、85.5%,擬合、預(yù)測的納什系數(shù)均在0.9以上,模型具有更小的預(yù)測誤差和更高的預(yù)測精度。EMD-FBI-ELM模型用于徑流預(yù)測是可行的。
c)通過實例驗證表明,F(xiàn)BI算法能有效優(yōu)化ELM輸入層權(quán)值和隱含層偏值,通過EMD、FBI和ELM相融合建立的EMD-FBI-ELM模型能有效提高年徑流預(yù)測精度。模型及方法可為相關(guān)徑流時間序列預(yù)測研究提供借鑒。