徑流預報是根據徑流形成和運動的規律, 利用過去和實時水文氣象資料, 對未來一定時段的洪水發展情況的預測。徑流預報的方法可以分為過程驅動模型方法和數據驅動模型方法兩大類。人工神經網絡(Artificial Neural Networks - ANN)是一種典型的數據驅動模型, 它的應用不需詳細考慮水文過程的物理機制,具有很好的并行處理、自組織、自學習、自適應能力,能處理復雜的非線性問題,因而被廣泛應用于徑流預報。
根據連接的拓撲結構,ANN 模型可以分為: 前向傳播網絡和反饋網絡[1]。其中的前向傳播網絡在結構上符合流域降雨-徑流物理過程中水流的單向傳播特征, 并且在理論上能夠模擬任意非線性系統至任意精度[2-3],因而被應用于本文的研究。傳統的訓練前向傳播網絡中的參數的算法是反向傳播(Back-Propagation- BP)算法。BP 算法是基于梯度下降的尋優算法,容易陷入局部最優,收斂速度緩慢。為了解決這一問題,本文使用了粒子群(Particle Swarm Optimization - PSO)算法來訓練優化ANN 的參數。PSO 算法通過個體間的協作和競爭實現全局搜索, 降低了陷于局部最優解的風險。但是,Angeline 的研究表明[4],基本PSO 算法局部搜索能力較差,收斂速度不快。為克服這一缺陷本文試圖對基本PSO 算法進行改進,以提高其尋優能力和速度。
本文將BP、基本PSO 和改進PSO 三種算法用于訓練ANN,并將訓練后的ANN 用于徑流預報,以比較它們在尋優能力和徑流預報精度方面的優劣。采用的數據是三峽水庫的入庫徑流數據, 以歷史入庫徑流數據預報將來入庫徑流量,以2002~2004 年的日平均入庫徑流數據集作為訓練樣本,以2005 年的日平均入庫流量數據集作為檢驗樣本。 |