?

基于小波包分解與相空間重構的SSA-ELM水文時間序列預報模型

2022-09-02 08:57李祿德崔東文
人民珠江 2022年8期
關鍵詞:徑流權值分量

李祿德,崔東文

(1.云南省水文水資源局文山分局,云南 文山 663000;2.云南省文山州水務局,云南 文山 663000)

水文時間序列預報是揭示水文自身演變規律性的一種有效而可靠的方法,同時是水文預報研究領域的重要內容之一。提高水文流時間序列預報精度對區域水資源開發利用、防洪抗旱規劃、水資源管理保護、水庫優化調度等具有重要意義。為提高水文預測精度,多元回歸分析[1]、馬爾科夫鏈模型[2]、ARIMA模型[3]、人工神經網絡[4]、支持向量回歸機(SVM)[5]、隨機森林(RF)[6]、相關向量機(RVM)[7]、長短期記憶網絡(LSTM)[8]、自適應神經模糊推理系統[9]、組合模型[10]等模型及方法都被廣泛應用于徑流與降水預報。

水文時間序列往往表現出多尺度、非線性等特征,傳統單一預測方法難以獲得理想的預報效果。當前,基于“分解-預測-重構”思想的多種方法組合預報模型被廣泛應用于水文時間序列預報,取得較好的預報效果。桑宇婷等[11]利用互補集合經驗模態分解(CEEMD)方法和BP神經網絡建立組合預測模型,將其應用于汾河上游月徑流預測;劉祖發等[12]利用小波分解(WD)方法和秩次集對模型建立組合預測模型,將其應用于馬口站年總徑流量以及深圳市年總降雨量預測;王麗麗等[13]融合奇異譜分析(SSA)方法、灰狼優化算法、回歸支持向量機模型,提出SSA-GWO-SVR月徑流組合預測模型;張以晨等[14]建立奇異譜分解-支持向量回歸機耦合模型,將其應用于吉林省西部某氣象站月降水量預測;呂晗芳等[15]建立變分模態分解(VMD)-最小二乘支持向量回歸機(LSSVM)耦合模型,將其應用于上靜游站等多個水文站月徑流預測;徐冬梅等[16]融合小波包分解(WPD)方法、LSSVM、ARIMA模型,提出WPD-LSSVM-ARIMA降水量組合預測模型;李繼清等[17]將極點對稱模態分解(ESMD)方法與Elman神經網絡相結合,建立ESMD-Elman模型對長江干、支流8站的年、月徑流進行預報。

然而,上述組合模型[11-17]徑流預測主要存在以下問題和不足。①分解不充分或分解子序列分量過多。如CEEMD分解雖然能在一定程度上解決模型混疊問題,但仍然存在計算量大、復雜度高等問題;WD僅對低頻信號再次分解,難以有效將原序列分解為更具規律的子序列分量;SSA存在子序列分解數量多、模型計算量大等不足;VMD缺點在于模態個數和懲罰因子難以確定,很大程度上影響了VMD的分解精度。②常用于徑流預測的模型中,BP、Elman神經網絡存在調節參數多、易陷入局部最優等缺點;SVM、LSSVM能較好地解決非線性和局部最小值問題,但處理大規模數據時預測精度較低。

為進一步提高水文時間序列預報精度,拓展組合模型應用范疇,基于小波包分解(Wavelet Packet Decomposition,WPD)和相空間重構原理,提出松鼠搜索算法(Squirrel Search Algorithm,SSA)-極限學習機(Extreme Learning Machine,ELM)預報模型,并構建鯨魚優化算法(WOA)-ELM、灰狼優化(GWO)算法-ELM、粒子群優化(PSO)算法-ELM模型及未經優化的ELM模型作對比模型,并通過云南省上果水文站月徑流、月降水量時間序列預報實例對5種模型進行驗證。

1 研究方法

1.1 小波包分解(WPD)

小波包分解(WPD)是在小波分解(WD)的基礎上改進和發展而來的一種有效分解方法。WPD能同時對高頻、低頻部分實施信號分解,并能根據信號特性和分析要求自適應地選擇相應頻帶與信號頻譜相匹配。對于波動信號,采用WPD能夠凸出信號的細節特征,理論上3層小波包分解能夠提取絕大部分信號中的有效信息,逼近任意非線性函數,從而達到解決實際問題的目的[18-20]。

小波包分解算法公式[18-20]為:

(1)

重構算法為:

(2)

1.2 相空間重構

相空間重構的目的在于恢復高維空間中時間序列的規律。根據塔肯斯定理(Takens theorem)[21],只要選擇合適的時間延遲和嵌入維,就能重構出一個與原系統具有相同拓撲性質的動力學系統。重構后時間序列的長度為M=S-(m-1)τ,S、m、τ分別為時間序列長度、嵌入維數和延遲時間[22]。重構后的相點計算如下:

X=[xi,xi+τ,xi+2τ,…,xi+(m-1)τ]

(3)

式中X——維數為M×m的矩陣;i=1,2,…,M;x——徑流或降水時間序列。

相空間重構的對象是經WPD分解的水文序列各分量,為便于將各分量預測結果疊加重構,確定延遲時間τ=1,即在延遲時間τ=1條件下,利用Cao方法[23]確定各分量嵌入維數m。Cao是虛假鄰近法(FNN)的改進方法,其優點在于:計算時只需要延遲時間τ一個參數,能夠有效區分隨機系統和確定性系統,使用較少的數據就可以求得嵌入維數,目前已在各行業領域得到廣泛應用。Cao方法主要通過式(4)計算相空間中的點在不同嵌入維數下的最鄰近點的距離變化α(i,m);再利用式(5)計算α(i,m)的均值E(m),并通過式(6)計算E1(m)的變化情況;最后通過繪制E1(m)-m曲線,當E1(m)的變化逐漸達到穩定時,由穩定處的m即為所求[23]。

(4)

(5)

(6)

式中E(m)——α(i,m)的均值;E1(m)——E(m)的變化情況;τ——延遲時間,取1。

1.3 松鼠搜索算法(SSA)

2018年,Jain M等[24]受飛行松鼠靈活多變的覓食策略啟發,提出松鼠搜索算法(SSA),該算法具有尋優能力強、收斂速度快等優點,已在盲源分離[25]、故障診斷[26]等方面得到應用。SSA基本以下假設:①森林中有n只飛行松鼠,假設一只松鼠在一棵樹上,飛行松鼠并采取靈活多變的覓食策略從普通樹、(一般食物源)、橡樹(較好食物源)、核桃樹(最佳食物源)上獲得食物資源;②每只飛行松鼠都通過自己的動態覓食策略來尋找食物;③只有3種類型的樹——普通樹、橡樹和核桃樹。

參考文獻[24-25],SSA數學描述如下。

a)初始化。隨機初始化松鼠在搜索空間中的位置,并進行適應度計算和排序。SSA采用式(7)初始化松鼠的位置:

FSi,j=FSL+rand()×(FSU-FSL)

(7)

式中 FSi,j——第i只松鼠在第j維空間的位置;FSU、FSL——搜索空間上、下限值;rand()——[0,1]范圍均勻分布的隨機數。

b)通過滑行更新位置。SSA中,松鼠通過3種不同的覓食策略進行位置更新。

策略一:處于橡樹上的松鼠通過滑行向核桃樹上移動,該策略下松鼠位置更新描述如下:

(8)

策略二:處于普通樹上的松鼠通過滑行向橡樹上移動,該策略下松鼠位置更新描述如下:

(9)

策略三:處于普通樹上的松鼠通過滑行直接向核桃樹上移動,該策略下松鼠位置更新描述如下:

(10)

式中R3——[0,1]范圍均勻分布的隨機數;其他參數意義同上。

c)檢查季節監控條件。松鼠覓食策略受季節變化的影響而改變,因此引入季節監控條件,防止算法陷入局部最優。當滿足季節常數Sc小于季節常數最小值Smin時,說明冬季結束,將無法在森林中尋找到冬季食物源的普通松鼠個體按式(11)進行隨機遷移:

(11)

1.4 極限學習機(ELM)

極限學習機(ELM)是一種廣義的單隱層前饋神經網絡,具有較快的學習速度和良好的泛化能力。給定M個樣本Xk={xk,yk},k=1,2,…,M,其中xk為輸入數據,yk為真實值,f(·)為激活函數,隱層節點為m個,ELM輸出可表示為[27-29]:

(12)

式中oj——輸出值;Wi={ωi1,ωi2,…,ωim}′——輸入層節點與第i個隱含層節點的連接權值;bi——第i個輸入節點和隱含層節點的偏值;λi——第i個隱含層節點與輸出節點的連接權值。

1.5 建模流程

基于WPD分解與相空間重構的SSA-ELM模型預測步驟如下。

步驟一小波包分解層數的確定是小波包分解的關鍵,分解層數過大則導致預報復雜度增加,分解層數過小則不利于將水文時序數據中的不同頻率特征分量分離。經分析,對于實例1960年1月至2005年12月月徑流時序數據,利用2層WPD進行分解,得到4個子序列分量[2,0]—[2,3],見圖1、2;對于實例1959年1月至2005年12月月降水量時序數據,在兼顧模型計算規模和預報精度條件下,先采用2層WPD進行分解,得到4個子序列分量[2,0]—[2,3]。由于子序列分量[2,1]的預測效果不理想,再利用WPD繼續對[2,1]分量進行分解,共得到5個子序列分量[2,0]、[2,1,1]、[2,1,2]、[2,2]、[2,3],見圖3、4。

圖1 月徑流時序分解

圖2 月徑流WPD分解3D效果

圖3 月降水量時序分解

圖4 月降水量WPD分解3D效果

步驟二為便于各分量預報結果重構,在延遲時間為1的條件下,采用Cao方法確定各子序列分量的輸入向量(嵌入維),見表1。并利用月徑流、月降水量前417~432組數據作為訓練樣本,后120組作為預報樣本。

表1 WPD分解各子序列分量嵌入維數及序列長度

步驟三利用訓練樣本的均方誤差作為SSA、WOA、GWO、PSO算法優化ELM輸入層權值和隱含層偏值(超參數)的目標函數:

(13)

ELM輸入層權值、隱含層偏值待優化維度表示為:

Dim=input×hid+hid+output×hid+output

(14)

式中 Dim——待優化維度;input——ELM網絡輸入維數;hid——隱含層神經元數;output——ELM網絡輸出維數。

步驟四設置松鼠種群規模n,最大迭代次數tm,捕食者出現概率Pdp,滑向常數Gc;利用式(7)隨機初始化松鼠位置(WOA、GWO、PSO算法具體優化步驟可參考SSA實現)。

步驟五根據式(13)計算每只松鼠位置的適應度值并按升序進行排序,具有最小適應度值的松鼠處在核桃樹上FSht,適應度值較小的3只松鼠處在橡樹上FSat,其余松鼠處在普通樹上FSnt。令迭代次數t=1。

步驟六基于式(8)—(10),松鼠通過3種策略進行位置更新。

步驟七檢查季節監控條件,當Sc

步驟八計算每只松鼠位置的適應度值,比較并保存最佳松鼠位置。

步驟九令t=t+1。判斷t是否等于tm,若是,輸出最佳松鼠位置,算法結束;否則重復步驟六至九。

步驟十輸出最佳松鼠位置,即ELM輸入層權值和隱含層偏值矩陣。利用SSA-ELM模型對各分量進行預報,預報結果疊加重構后即得到實例月徑流、月降水量最終預報結果。

步驟十一模型評估。利用平均相對誤差(MAPE)、平均絕對誤差(MAE)、均方根誤差(RMSE)、預報合格率(QR)對各模型進行評估,見式(15)。

(15)

2 實例應用

上果水文站設立于1958年11月,位于云南省西疇縣西灑鎮上果村董金河干流,觀測項目有水位、流量、降雨。董金河屬紅河流域瀘江水系,發源于硯山縣龍所街水頭寨,流經硯山、西疇、廣南、麻栗坡、富寧,注入越南。董金河河長51.9 km,流域集水面積704 km2,氣候以亞熱帶低緯高原季風山地氣候為主,降水豐沛,但時空分布不均,導致水旱災害頻發和水資源供需矛盾突出。因此,開展上果水文站徑流和降水時間序列預報研究,對于緩解流域水資源供需矛盾、提高防洪減災應對能力、保護水環境水生態安全具有重要意義。

2.1 參數設置

a)SSA-ELM、WOA-ELM、GWO-ELM、PSO-ELM模型。設置SSA、WOA、GWO、PSO算法最大迭代次數tm=100,種群規模n=50。其中SSA捕食者出現概率Pdp=0.1,滑向常數Gc=1.9;WOA對數螺旋形狀常數b=2;PSO算法慣性權重wmax、wmin分別取值0.9、0.1,自我學習因子、社會學習因子c1、c2均取值1.494 45;其他參數設置采用各算法默認值。ELM網絡激活函數選擇sigmoid函數,隱層數為2×input-1(input為輸入維數),輸入層權值和隱含層偏值搜索空間設置為[-1,1],數據采用[-1,1]進行歸一化處理。

b)ELM模型。為驗證群體智能算法優化ELM網絡輸入層權值和隱含層偏值對提高網絡預報精度的影響,除算法部分外,ELM參數設置同上述SSA-ELM等4種模型。

2.2 目標函數優化

基于步驟二、三,利用SSA、WOA、GWO、PSO算法對目標函數minf(w,b)進行尋優,尋優結果見表2。

表2 目標函數minf(w,b)尋優結果

從表2可以看出,除月徑流分解分量[2,1]外,SSA對各分解分量目標函數的尋優精度均優于WOA、GWO、PSO算法,具有較好的尋優效果。整體而言,4種算法尋優性能由優至劣依次是SSA>WOA>GWO>PSO算法。

2.3 預報結果及分析

利用SSA、WOA、GWO、PSO算法對目標函數minf(w,b)尋優獲得的輸入層權值和隱含層偏值矩陣分別構建SSA-ELM、WOA-ELM、GWO-ELM、PSO-ELM預報模型,并構建未經優化的ELM模型對各分量進行預報,將各分量預報結果加和重構后即得到最終預報結果。各模型采用上述MAPE(%)、MAE(m3/s或mm)、RMSE(m3/s或mm)、QP(%)進行評估,結果見表3;預報相對誤差、絕對誤差效果見圖5—8。

表3 實例月徑流、月降水量時間序列預報結果對比

圖5 月徑流時間序列預報相對誤差3D

圖6 月徑流時間序列預報絕對誤差3D

圖7 月降水量時間序列預報相對誤差3D

圖8 月降水量時間序列預報絕對誤差3D

依據表3、圖5—8可以得出以下結論。

a)SSA-ELM模型對實例月徑流預報的MAPE為5.32%,分別較WOA-ELM、GWO-ELM、PSO-ELM、ELM對比模型提高22.0%、23.1%、66.8%、88.1%;預報的MAE為0.078 m3/s,分別較對比模型提高23.5%、24.3%、65.5%、89.8%;預報的RMSE為0.103 m3/s,分別較對比模型提高21.4%、25.9%、63.1%、89.9%;預報的QP達97.5%,分別較對比模型提高5.0%、2.5%、15.8%、42.5%。對實例月降水量預報的MAPE為3.84%,分別較對比模型提高81.3%、83.1%、93.2%、98.8%;預報的MAE為0.169 mm,分別較對比模型提高68.8%、68.9%、90.8%、97.3%;預報的RMSE為0.209 mm,分別較對比模型提高68.9%、70.7%、91.4%、97.2%;預報的QP達95.8%,分別較對比模型提高3.3%、4.1%、10.0%、25.8%。5種模型預報精度由高至低依次是:SSA-ELM>WOA-ELM>GWO-ELM>PSO-ELM>ELM,與各算法對目標函數優化性能排序一致??梢?,通過智能算法優化ELM輸入層權值和隱層偏值,可有效提高ELM網絡性能;智能算法尋優效果越好,尋優獲得的ELM超參數越佳,所構建的模型預報精度越高。

b)SSA-ELM、WOA-ELM、GWO-ELM模型對實例月徑流、月降水量均具有較好的預報效果,表明通過WPD對原序列進行分解,可有效弱化了復雜環境對徑流及降水時間序列的影響,降低預報復雜度;通過Cao方法確定各分量嵌入維數,可以科學構建輸入向量;利用SSA、WOA、GWO優化ELM超參數,可以得到更好的ELM輸入層權值和隱層偏值,將WPD、智能算法和ELM三者結合,可大大提高水文時間序列預報精度。其中,SSA-ELM模型預報效果最佳,尤其對于月降水量預報。

c)從5種模型綜合預報效果來看,對于月徑流預報,WOA-ELM、GWO-ELM、PSO-ELM模型預報效果優于PSO-ELM模型,遠優于ELM模型;對于月降水量預報,WOA-ELM模型預報效果優于GWO-ELM、PSO-ELM模型,遠優于PSO-ELM模型,遠遠優于ELM模型。

3 結論

基于WPD分解和相空間重構原理,提出SSA-ELM預報模型,并建立WOA-ELM、GWO-ELM、PSO-ELM、ELM作對比分析模型,通過云南省上果水文站月徑流和月降水時間序列預報實例對各模型進行驗證,得到以下結論。

a)對于實例高維優化問題,除月徑流分解分量[2,1]外,SSA對各分解分量目標函數的尋優精度均優于WOA、GWO、PSO算法,具有較好的尋優精度。智能算法尋優效果越好,尋優獲得的ELM超參數越佳,所構建的模型預報精度越高。

b)SSA-ELM模型對實例月徑流和月降水量的預報精度優于WOA-ELM、GWO-ELM模型,遠優于PSO-ELM、ELM模型。WPD分解可有效弱化復雜環境對水文時間序列的影響,降低預報復雜度;Cao方法可科學確定嵌入維數和構建輸入向量;SSA優化ELM超參數,可以獲得更佳的ELM輸入層權值和隱層偏值,將三者結合,可大大提高水文時間序列預報精度。

c)通過對預報精度不理想的子序列分量進行再分解,不但有效提高模型預報精度,而且相對于3層WPD分解,大大降低了模型的復雜程度,使預報模型簡潔、高效,具有較好的實際應用價值。

猜你喜歡
徑流權值分量
格陵蘭島積雪區地表徑流增加研究
流域徑流指標的構造與應用
一種融合時間權值和用戶行為序列的電影推薦模型
基于SWAT模型的布爾哈通河流域徑流模擬研究
畫里有話
一斤生漆的“分量”——“漆農”劉照元的平常生活
一物千斤
論《哈姆雷特》中良心的分量
人工降雨下三種屋面徑流過程環境質量比較
財務風險跟蹤評價方法初探
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合