焦國梅
(甘肅省武威水文水資源勘測局,甘肅 武威 733000)
由于我國水資源短缺的現狀,現如今國內相關用水管理部門急需找出合理的方法對水文變量進行模擬,以期為水資源管理辦法及相關政策制定提供依據[1- 2]。徑流作為水資源優化配置、防旱減災措施制定的主要依據之一,其精確預報對區域水資源供需平衡發展具有十分重要的意義。已有研究表明,影響徑流變化的主要因素包括氣象因素、人類活動和下墊面變化3大類[3- 4],可將長時間徑流序列看作是由不同頻率組成的非線性非平穩序列[5- 6]。傳統的水文模擬方法主要包括時間序列法[7]、多元線性回歸法[8]、組合回歸法[9]等,這些方法操作簡單,在一定條件下可對徑流進行模擬,但由于要求的條件過高,導致精度無法滿足日常工作的需要。
隨著計算機技術的不斷發展,神經網絡模型能從復雜的數據中自動發現規律、學習規律,并通過數據訓練對數據進行模擬,已被逐漸廣泛應用于數據模擬與預測中。常用的神經網絡模型包括BP神經網絡模型、小波神經網絡模型、廣義回歸神經網絡模型等[10],不同模型在不同區域的精度及訓練時間不同,因此需找出合理的方法對傳統神經網絡模型進行優化,進一步提高模型精度。崔東文[11]基于多組群教學優化神經網絡算法建立了水文預測模型,指出該模型的計算精度優于傳統的神經網絡模型;何國棟等[12]基于陰陽對算法優化的隨機森林及支持向量機的組合模型建立了徑流預測模型,指出該模型對數據訓練、檢驗和預測的平均相對誤差分別為2.76%、4.64%、3.02%,精度較高;李文敬等[13]基于IQPSO優化SVM模型構建了徑流預測模型,指出該算法能夠有效提高月徑流預報精度。
誤差反向神經網絡模型(BPNN)是神經網絡算法的基本模型之一,該算法存在收斂速度慢且易產生局部極值的缺點,限制了該模型的應用。思維進化算法(MEA)和遺傳算法(GA)均可用于優化BPNN神經網絡模型,已在數據預測領域得到了廣泛的應用[14- 15],但是在徑流模擬中的應用較少。本文基于思維進化算法(MEA-BPNN)及遺傳算法(GA-BPNN)分別優化BPNN模型,采用EEMD 方法將入庫徑流序列逐級分解成多個不同頻率的IMF本征模態函數,建立徑流預報模型。
BPNN神經網絡模型是一種多層反饋的模型,其主要組成部分包括輸入層、隱含層和輸出層3部分,具體原理圖如圖1所示。該模型通過輸入層將變量輸入模型中,通過隱含層確定變量最優解,若初始解不滿足要求,則重新進行運算,直至滿足要求為止。BPNN模型可通過訓練變量,得出變量的潛在規律,從而實現對數據的模擬及預測,具體步驟如下。
(1)模型初始化。根據圖1中的基本原理,確定模型結構的主要參數,其中主要包括:輸入層節點數p,輸出層節點數m,隱含層節點數l及不同數據層之間的權重Wij和Wjk。初始化隱含層閾值a,輸出層閾值b,給定學習速率η和神經元激勵函數f。
(2)輸出計算。根據隱含層輸出結果,確定最終輸出層結果,具體公式如下:

(1)
式中,Ok—輸出結果;Hj—隱含層輸出結果;bk—輸出層閾值。
(3)誤差計算。根據模型輸出值與期望輸出值對比,算出誤差,若誤差滿足要求,則計算結束,不滿足要求則重新進行計算。誤差計算公式如下:
ek=Yk-Ok,k=1,2,……m
(2)
式中,ek—計算誤差,Yk—期望輸出值。

圖1 BPNN模型原理圖
由于傳統的BPNN模型具有收斂速度慢且易發生局部極值的缺點,導致當訓練樣本數量較多時,該模型的精度較低,這極大程度上限制了BPNN模型的使用。GA算法可通過群體搜索技術,基于適者生存的原則找出最優解,加快運算速率,因此,基于遺傳算法對BPNN模型進行優化,可在一定程度上解決BPNN存在的問題,主要流程可分為BPNN模型結構確定、GA算法優化計算權重及模型輸出3個部分,具體步驟可見文獻[15]。
隨著研究的逐漸深入,發現GA算法在運算過程中對變量的輸入具有一定的依賴性,這使得GA算法運算效率逐漸無法滿足要求。MEA算法可彌補GA算法的缺點,在GA算法的基礎上提出了“趨同”和“異化”的步驟,使得MEA-BPNN模型具有了良好的擴充性、移植性和極強的全局優化能力,MEA-BPNN模型具體步驟可見文獻[14]。
由于徑流是一個由不同頻率數據組合成的長時間序列,因此在預測時需對數據進行去噪處理,保證模型計算精度。EEMD算法可對輸入數據進行平滑處理,將復雜頻率的信號分解成不同級別頻率的信號,具體步驟如下。
(1)針對原始信號x(t),加入空白信號y(t),形成新的序列s(t)。
(2)應用EEMD算法分解s(t) 序列,最終可得出不同IMF分解層zij(t)和殘余項R(t),具體公式如下:
(3)
(3)重復上述步驟,得出最大迭代次數N,計算IMF分解層均值,消除空白信號的影響,得出最終分解結果,具體公式如下:
(4)
(5)
將EEMD算法分解的不同IMF分解層,帶入MEA-BPNN模型及GA-BPNN模型中,分別對不同時期徑流進行預測,模型計算精度指標可采用以均方根誤差(RMSE),相對均方根誤差(RRMSE),確定系數(R2),平均絕對誤差(MAE)和效率系數(Ens)5種指標形成評價指標體系來評判不同模型的精度,具體公式如下:
(6)
(7)
(8)
(9)
(10)

基于EEMD法對實測徑流量長時間序列進行分解,可得到IMF分量共7項,7項分量由高頻到低頻依次排序,包括1項殘差項,結果如圖2所示。其中,殘差項表示徑流量長時間序列的時間變化趨勢,由殘差項圖可知,徑流量隨時間的變化呈現逐漸降低的趨勢,這與實際相符,可將不同IMF分量代入模型中,用于訓練與模擬徑流。
對EEMD方法分解出的8個徑流序列分量分別使用MEA-BPNN模型、GA-BPNN模型和BPNN模型進行模擬,不同分量模擬精度見表1。由表1可以看出,不同模型不同分量的模擬結果有所不同,其中,隨著IMF分量頻率的降低,不同模型的模擬精度均出現升高的趨勢,同時MEA-BPNN模型的精度最高,整體精度在訓練期RMSE為0.280m3/s,RRMSE為12.56%,R2為0.960,Ens為0.958,MAE為0.210m3/s,預測期RMSE為0.330m3/s,RRMSE為15.41%,R2為0.932,Ens為0.931,MAE為0.261m3/s,誤差指標最低而一致性指標最高,該模型精度最高。

圖2 EEMD分解結果
圖3為不同模型模擬結果與徑流量實測值月值擬合結果對比。由圖3可以看出,不同模型計算精度雖有所差異,但模擬結果的變化趨勢基本一致,在全年內均呈現了先升高后降低的豐枯水期交替變化趨勢。不同模型在汛期計算結果要明顯優于枯水期,同時MEA-BPNN模型模擬結果與實測值的擬合性最好。
綜上所述,該模型可作為徑流預測的標準模型使用。

表1 BPNN模型 IMF分量及預報結果

表2 GA-BPNN模型 IMF分量及預報結果

表3 MEA-BPNN模型 IMF分量及預報結果

表4 MEA-BPNN模型不同月份不同預報方式精度對比

圖3 不同模型模擬徑流結果對比
已有研究表明,不同時期采用連續滾動預報和同期預報2種方式所得模擬結果的精度不同,為找出不同時期MEA-BPNN模型的最優預報方式,本文分別對該模型2種預報方式下不同月份的徑流預測精度進行了對比,結果見表4。由表4可以看出,MEA-BPNN模型在不同預報方式下均呈現5—10月的豐水期精度高于枯水期,在豐水期,連續滾動預報的精度優于同期預報,而11月—次年4月的枯水期同期預報精度較優。這可能是由于徑流量在豐水期的取值較大,連續滾動預報在追求豐水期的精度的同時忽略了枯水期的貢獻率,同時豐水期年內變化趨勢較劇烈,而枯水期變化趨勢較緩。因此,采用MEA-BPNN模型預測徑流時,在豐水期采用連續滾動預報,而在枯水期采用同期預報,可保證模型擁有最高的精度。
本文基于MEA-BPNN模型構建了水文預測模型,并與GA-BPNN模型與BPNN模型精度進行了對比,得出以下結論。
(1)采用EEMD方法對徑流實測序列進行分解,得出8項IMF分量,對不同分量預測結果進行對比,指出頻率越低的分量精度越高,該方法可為模型訓練提供數據基礎。
(2)不同模型模擬結果變化趨勢與實測值基本一致,其中MEA-BPNN模型精度最高,同時在豐水期的預測精度要高于枯水期。
(3)不同時期基于連續滾動預報和同期預報2種方式的MEA-BPNN模型預測精度有所區別,其中在豐水期采用連續滾動預報,而在枯水期采用同期預報可保證MEA-BPNN模型精度最高。
(4)本文基于思維進化算法優化BPNN神經網絡模型,構建了MEA-BPNN模型在月徑流的預測中取得了較高的精度,在今后的研究中,可基于該模型分析日尺度、旬尺度不同時間尺度的徑流預測精度。