金保明,李 蕓,張 烜,高蘭蘭,周傳爭,付曉雷
(1.福州大學土木工程學院,福建福州350116;2.云南省水文水資源局,云南昆明650106)
基于反向傳播算法的崇陽溪流域洪水流量預報
金保明1,李 蕓2,張 烜1,高蘭蘭1,周傳爭1,付曉雷1
(1.福州大學土木工程學院,福建福州350116;2.云南省水文水資源局,云南昆明650106)
基于反向傳播算法原理,采用試錯法確定BP模型的隱含層節點數,并加入動量項,選取崇陽溪流域建陽水文站洪水流量過程及其上游武夷山水文站、支流麻沙水文站相應洪水流量過程資料,同時考慮建陽站前期流量的自回歸影響,建立建陽站最速下降動量反向傳播洪水流量預報模型。計算結果表明,模型預測精度符合要求,可以作為流域預測洪水的方法之一,為流域防汛會商和指揮調度提供依據。
洪水預報;流量;BP算法;神經網絡
河道洪水預報是一個比較復雜的問題,除了采用傳統的預報方法外,也可采用反向傳播算法建立非線性的神經網絡洪水預報模型進行預報。神經網絡應用于洪水預報的初期,一般是對最基本的反向傳播網絡直接應用。之后,有人針對反向傳播算法存在的問題提出改進的方法,包括自適應調整學習率法[1]、附加動量法[2]、彈性BP算法[3]、LM算法[4]等?;诜聪騻鞑ニ惴ǖ纳窠浘W絡由于其具有良好的自組織性、自適應性和容錯性,為非線性系統的建模和預測提供了方便,在洪水流量預報方面具有獨特的優勢。例如,戴會超等[5]建立了具有洪峰識別的宜昌站洪水流量過程反向傳播模型;Qing Hua Luan等[6]基于反向傳播算法,依據上游沙縣、洋口、七里街的流量與區間雨量建立了十里庵洪水預報模型;陳田慶等[7]尋求基于反向傳播神經網絡的馬斯京根模型參數動態估計方法;胡健偉等[8]設計出基于反向傳播算法的洪水預報模型;韓通等[9]提出引入K最近鄰算法用于洪水預報實時校正并采用BP算法實時校正,結果表明前者對確定性系數改善最優,后者對洪峰誤差校正更精確;Liu Wen-Cheng等[10]采用反向傳播算法和遺傳算法神經網絡對臺灣北部淡水河的水位進行預測,均取得較好的效果。因此,反向傳播神經網絡應用于流域洪水預報的效果較好,適用性比較強。本次采用最速下降法并加入動量項修正權值與偏置值,建立流域反向傳播洪水預報模型,并以崇陽溪流域為實例進行研究。
反向傳播算法應用于有樣本資料的流域進行洪水預報可以起到很好效果。其主要通過多層網絡實現,第一層輸入有關資料(如洪水流量或雨量等),采用有關的學習法則進行訓練,輸出的結果作為下一層的輸入,繼續向前傳播;將最后一層輸出結果與實際結果進行比較,得出誤差(一般采用均方誤差);接著運用鏈式法則和雅可比矩陣推求敏感性,將敏感性從最后一層通過網絡逐層被往回傳播到第一層;然后采用有關方法更新每一層的權值和偏置值;反復迭代訓練,最終使實際輸出結果與模型計算的結果之差足夠小,其誤差最小的模型就是所要建立的模型。
1.1 信息傳播過程
反向傳播網絡(簡稱BP網絡)是一種多層前向的神經網絡,其中某一層的輸出表示為[11]
am+1=fm+1(wm+1am+bm+1),m=0,1,…,M-1
(1)
式中,w、b、M分別為網絡的權值向量、偏置值向量和層數。
第一層從外部接收輸入:a0=p。其中,p為輸入向量。最后一層輸出為整個網絡的輸出:a=aM。
1.2 性能指數和敏感性


(2)

第m層網絡輸入是該層權值和偏置值的函數
(3)

1.3 最速下降動量反向傳播法
該算法是最速下降反向傳播算法的變形,表示為[11]
Δwm(k)=γΔwm(k-1)-(1-γ)αsm(am-1)T
(4)
Δbm(k)=γΔbm(k-1)-(1-γ)αsm
(5)
式中,α為學習速度;γ為動量系數(0≤γ<1);Δw、Δb分別為權值和偏置值矩陣的變化量。由于使用了動量項,可以在保證算法穩定前提下提高學習速度,同時可以加速收斂進程。
BP網絡不同層的敏感度之間存在如下關系
(6)
式中,n為第m+1層網絡輸入矩陣。最后一層,即當m=M時
(7)
因此,各層各個元素的敏感度均可以從t與a間的誤差通過網絡一步一步反向遞推至第一層。即
(t-a)→sM→…→s2→s1
(8)
算法過程主要包括:①信息正向傳播過程。運用式(1)通過網絡將輸入向前傳播。②誤差反向傳播過程。運用式(7)和式(6)計算各層各個元素的敏感度、并通過網絡將敏感性反向傳播,運用式(4)和式(5)更新權值和偏置值。③完成訓練和收斂過程。重復以上步驟進行反復訓練,直到網絡輸出的誤差小于給定的值ε,或迭代運算達到規定的次數,訓練便終止,最終確定的權值和偏置值等參數就可用于模型的模擬。
2.1 流域概況
崇陽溪為閩江上游建溪流域的主要支流,建陽水文站為其主要控制站,位于建陽市城區,站址以上流域面積4 848 km2,其洪水流量主要由崇陽溪、麻陽溪兩條支流洪水組合而成,上游設有武夷山水文站、麻沙水文站,集水面積分別為1 078、787 km2(見圖1)。建陽水文站多年平均流量188 m3/s,實測最大流量8 380 m3/s(出現時間1998年6月22日)。每年汛期由于北方冷空氣南下與西南暖濕氣流相遇,往往產生雨區廣、雨量多、強度大、歷時長的鋒面大暴雨,造成洪澇災害。20世紀80年代以來相繼發生了9場大暴雨洪水。

圖1 崇陽溪流域水系示意
2.2 模型的構建
崇陽溪干流的洪水流量主要由崇陽溪、麻陽溪兩條支流洪水組合而成,相對來講崇陽溪干流的洪水流量與崇陽溪支流的洪水流量相關系數較大,與麻沙溪支流的洪水流量相關系數較小。由于缺乏支流站點到干流站點的區間入流量資料,此次分析時考慮了建陽站前期流量的自回歸影響,以彌補缺乏區間入流可能造成計算結果誤差偏大的不足。因此,以上游崇陽溪支流武夷山水文站前τ1小時洪水流量Q1(t-τ1)、麻沙溪支流麻沙水文站前τ2小時洪水流量Q2(t-τ2)、下游崇陽溪干流建陽水文站前T小時洪水流量Q(t-T)作為模型的輸入,下游崇陽溪干流建陽水文站相應洪水流量Q(t)為輸出,采用最速下降動量反向傳播算法建立崇陽溪流域洪水流量預報模型,其中網絡的有關參數通過試算優化得出。用簡化的河道洪水流量預報模型[12]表示為
Q(t)=f[Q1(t-τ1),Q2(t-τ2),Q(t-T)]+ε(t)
(9)
式中,Q(t)、Q(t-T)分別為建陽站t、t-T時刻的洪水流量,m3/s;Q1(t-τ1)為武夷山站t-τ1時刻的洪水流量,m3/s;Q2(t-τ2)為麻沙站t-τ2時刻的洪水流量,m3/s;τ1、τ2分別為武夷山站、麻沙站至建陽站的洪水傳播時間;T為考慮建陽站流量自回歸影響的某一時間間隔,一般T>τ1且T>τ2;ε為模型誤差;f為從輸入空間到輸出空間的非線性映射。
依據反向傳播算法原理及其在水文水資源應用的有關研究表明:對于一個三層網絡,如果在第二層(即隱含層)采用S形傳輸函數、在第三層(輸出層)采用線性傳輸函數,只要第二層中設置了足夠的神經元,就幾乎能以任意精度逼近任何非線性映射[13-14]。因此網絡采用三層結構(輸入層、隱含層和輸出層)。輸入層包括三個節點:Q1(t-τ1)、Q2(t-τ2)、Q(t-T);輸入層至隱含層函數采用雙曲正切S型函數,隱含層至輸出層采用線性函數;輸出層一個節點Q(t)。
2.3 樣本數據處理
選取1959年至2012年間崇陽溪流域建陽水文站及其支流崇陽溪武夷山站、麻沙溪麻沙站42場洪水流量過程資料進行分析。其中,1959年至2002年36場洪水過程資料作為訓練樣本,2005年至2012年6場洪水過程資料作為檢驗樣本進行驗證。
由于不同站點的流量變化幅度不一樣,為了取得比較好的收斂效果,常對訓練樣本中的流量資料進行標準規格化。即分別將三個水文站點的洪水流量數據轉變成[-1,1]范圍的值
y=2×(Q-Qmin)/(Qmax-Qmin)-1
(10)
式中,Q、Qmax、Qmin分別為訓練樣本各站的流量值、最大值、最小值;y為標準規格化后的值。
最后對網絡輸出的結果采用式(11)進行反歸一化處理求得建陽站的相應洪水流量
Q=0.5×(y+1)×(Qmax-Qmin)+Qmin
(11)
2.4 模型參數的計算
由于輸入層節點、輸出層節點以及網絡層數均可依據實際情況確定,因此模型結構取決于隱含層節點數。本次采用試錯法確定。首先確定隱含層節點數的大致范圍,構建不同節點數的反向傳播網絡,分別進行調試計算,并對所有網絡計算結果進行分析比較,從中選取最佳的節點數。本次隱含層節點數分別采用3、4、5、6、7、8、9七種方案進行試算,經對比發現采用6個節點數的方案最優,因此最終確定建陽水文站最速下降動量反向傳播洪水流量預報模型采用3- 6-1的結構。此外經過調試,網絡的學習速率取0.02,動量系數取0.6,訓練90000次后訓練樣本的平均均方誤差為0.0023。最后得到各層間連接的權值及偏置值。
輸入層至隱含層權值

輸入層至隱含層偏置值

隱含層至輸出層權值[0.058 0 -0.330 3 0.223 8 0.213 2 -0.629 6 -0.669 6];隱含層至輸出層偏置值[0.483 1]。

圖2 建陽站各場次洪水流量預報過程線
2.5 模型預報結果
采用2005年至2012年的6場洪水資料作為檢驗樣本模擬預測建陽水文站的洪水流量過程,各場次實測和預測洪水流量過程線見圖2。
對于每場洪水,采用洪水過程線中所有流量數據點絕對誤差絕對值的平均值和相對誤差絕對值的平均值、以及模型的確定性系數評價洪水流量預報模型的精度,詳見洪水流量預報過程誤差統計表1。同時,對每場洪水的洪峰流量預報誤差進行統計分析,詳見表2。

表1 建陽水文站最速下降動量反向傳播洪水流量過程預報誤差統計

表2 建陽水文站最速下降動量反向傳播洪峰流量預報誤差統計
從表1可看出,建陽站6場洪水過程預報的平均相對誤差在10%以內,確定性系數均在0.9以上;從表2可看出,各次洪峰流量預測值與實測值相對誤差也在10%以內,說明模型預測的精度符合要求。
選取系列較長且具有代表性、可靠性和一致性的流量資料,綜合分析網絡模型的結構,采用試錯法確定模型的隱含層節點數,率定和計算模型的相關參數,并加入動量項進行濾波處理,建立了建陽水文站最速下降動量反向傳播洪水流量預報模型。應用結果表明,該模型所需求的輸入數據為上游有關水文站點的流量資料、下游水文站的前期流量,操作靈活簡便,計算速度快,預報準確度較好,是一種比較實用的洪水預報方法。如果能夠收集到流域上下游水文站點區間洪水流量資料和雨量資料,代替下游水文站的前期流量,其預報精度和實效性會更好。在實際工作中,可以充分利用流域內洪水預警系統中的測報資料作為輸入,采用上述模型進行預報,將預報輸出與其他洪水預報方法的結果進行比較,互為驗證;然后根據雨情水情的發展,適時修正預報,為流域防洪減災服務。
[1]范磊, 張運陶, 程正軍. 基于MATLAB的改進BP神經網絡及其應用[J]. 西華師范大學學報, 2005, 26(1): 70- 73.
[2]徐敬, 王秀坤, 胡家升. 基于神經網絡的無源多傳感屬性數據關聯[J]. 系統仿真學報, 2003, 15(1): 127- 129.
[3]蘇高利, 鄧芳萍. 論基于MATLAB語言的BP神經網絡的改進算法[J]. 科技通報, 2003, 19(2): 130- 135.
[4]郭軍. BP神經網絡算法研究[D]. 武漢: 華中科技大學, 2005.
[5]戴會超, 何文社, 曹叔尤. 基于誤差修正的BP神經網絡模型在河道洪水預報中的應用[J]. 水電能源科學, 2006, 24(1): 69- 71.
[6]QING Hualan, YAO Cheng, ZHA Xinima. Test on flood prediction-model using artificial neural network for Shiilian Hydrologic Station on Minchiang, China[J]. Applied Mechanics and Materials, 2011, 39: 555- 561.
[7]陳田慶, 解建倉, 張剛, 等. 基于BP神經網絡的馬斯京根模型參數動態估計[J]. 水力發電學報, 2012, 31(3): 32- 38.
[8]胡健偉, 周玉良, 金菊良. BP神經網絡洪水預報模型在洪水預報系統中的應用[J]. 水文, 2015, 35(1): 22- 25.
[9]韓通, 李致家, 劉開磊, 等. 山區小流域洪水預報實時校正研究[J]. 河海大學學報: 自然科學版, 2015(3): 208- 213.
[10]LIU Wencheng, CHUNG Chuanen. Enhancing the predicting accuracy of the water stage using a physical-based model and an artificial neural network-genetic algorithm in a river system[J]. Water (Switzerland), 2014, 6(6): 1642- 1661.
[11]HAGAN M T, DEMUTH H B, BEALE M H. 神經網絡設計[M]. 戴葵, 等譯. 北京: 機械工業出版社, 2002.
[12]金保明. BP神經網絡在閩江十里庵流量預測中的應用[J]. 水電能源科學, 2010, 28(9): 12- 14
[13]MINNS A W, HALL M J. Artificial neural networks as rainfall-runoff models[J]. Hydrological Sciences Journal, 1996, 40(1): 399- 417.
[14]HORNJK K M, STINCHCOMBE M, WHITE H. Multilayer feedforward networks are universal approximators[J]. Neural Networks, 1989, 2(5): 359- 366.
(責任編輯 陳 萍)
Research on Flood Flow Forecast of Chongyang River Watershed Based on Back Propagation Algorithm
JIN Baoming1, LI Yun2, ZHANG Xuan1, GAO Lanlan1, ZHOU Chuanzheng1, FU Xiaolei1
(1. College of Civil Engineering, Fuzhou University, Fuzhou 350116, Fujian, China;2. Hydrology and Water Resources Bureau of Yunnan Province, Kuiming 650106, Yunnan, China)
Based on the principle of Back Propagation algorithm, the number of hidden layer nodes of BP model is determined by trial and error method and the momentum item is added, the steepest descent momentum Back Propagation Neural Network forecast model is established for the flood flow process of Jianyang Hydrological Gauging Station in Chongyang River Watershed. The model uses corresponding flood flow processes of two hydrological gauging stations in the branches of Chongyang River, which are Masha Station in Masha River and Wuyishan Station in Chongyang River, and at the same time, the autoregressive flood flow of Jianyang Hydrological Station is also considered. The results show that the forecast accuracy of model meets application requirements. The forecast model could be used as one of flood flow prediction method and the scientific basis for flood control and flood preparation of watershed.
flood forecasting; flow; Back Propagation algorithm; neural network
2017- 02- 13
福建省自然科學基金資助項目(2016J01734);河海大學水文水資源與水利工程科學國家重點實驗室開放基金面上項目(2015490311)
金保明(1970—),男,福建浦城人,高級工程師,博士,主要從事水文水資源等方面的研究.
TV124;P338
A
0559- 9342(2017)08- 0022- 04