崔東文
(云南省文山州水務局,云南 文山 663000)
河川徑流受多種因素的影響和制約,表現出復雜、隨機、多維等特性,探尋能夠表征徑流特性、預測精度高的模型對河川徑流預測具有重要的現實意義和應用價值[1].目前,徑流的預測方法主要有時間序列、回歸分析、模糊模式、小波分析、集對分析等,均在徑流預測預報中取得了一定的成效.人工神經網絡(Artifical Neural Network,ANN)具有較強的非線性映射能力、魯棒性、容錯性和自適應、自組織、自學習等許多特性,適宜解決高維、非線性系統(tǒng)問題,在這類智能算法中運用最為廣泛;BP網絡(Back-Propagation Network,BP)是ANN常用的神經網絡模型之一,廣泛運用于徑流預測[2-6].然而,BP神經網絡是一種靜態(tài)的前向型網絡,將其運用于與時間序列有關的徑流預測中存在著關鍵性缺陷,且BP網絡存在著學習收斂速度慢、易陷入局部極值等不足,極大地制約了BP網絡在徑流預測中的精度和泛化能力.Elman網絡是一種典型的動態(tài)神經網絡,它是在BP網絡的基礎上,結構單元引入固定反饋環(huán)節(jié),從而使系統(tǒng)具有適應時變特性的能力,使預測性能優(yōu)于BP網絡,進而改善系統(tǒng)的動態(tài)性能[7-8],但由于Elman網絡是在BP網絡的基礎上改進而來,也采用BP算法進行權值修正,因此同樣存在著學習速度較慢、易陷入局部極小值等缺點.為此,本文提出一種基于遺傳算法(Genetic Algorithm,GA)優(yōu)化Elman神經網絡連接權值的GA-Elman多元變量年徑流預測模型,以新疆伊犁河雅馬渡站徑流預測為例進行實例分析,并構建傳統(tǒng)Elman,傳統(tǒng)BP和GA-BP多元變量年徑流預測模型作為對比模型,預測結果與文獻IEA-BP網絡模型預測結果對比,旨在為GA-Elman模型在水文預測預報中的應用提供參考.
動態(tài)遞歸神經網絡是一種極具潛力系統(tǒng)預測工具,而Elman網絡是動態(tài)遞歸神經網絡中結構最為簡單、運算量小、適合實時系統(tǒng)辨識的動態(tài)遞歸網絡.Elman神經網絡是Elman于1990年提出的,該模型是在前饋式網絡的隱含層中增加了一個承接層,作為延時算子以達到記憶的目的,從而使系統(tǒng)具有適應時變特性的能力,能夠更生動、更直接地反映系統(tǒng)的動態(tài)特性.與BP網絡本質上的區(qū)別是Elman網絡既有前饋連接,又有反饋連接,能有效克服BP網絡不具備動態(tài)特性的缺點[7-10].Elman網絡結構見圖1.
Elman神經網絡一般分4層:輸入層,隱含層(中間層),承接層和輸出層,如圖1所示,輸入層、隱含層、輸出層的連接類似于前饋式網絡,輸入層單元僅起信號傳輸作用,輸出層單元起線性加權作用.隱含層單元的傳遞函數可采用線性或非線性函數,承接層用來記憶隱含層單元前一時刻的輸出值并返回網絡輸入,可以認為一步延時算子.Elman神經網絡的特點是隱含層的輸出通過承接層的延遲與存儲,自聯到隱含層的輸入,使其對歷史狀態(tài)數據具有敏感性,增加了網絡處理動態(tài)信息的能力,達到動態(tài)建模的目的.Elman網絡同樣可以以任意精度逼近任意非線性映射,工程中主要用于動態(tài)預測[11-12],但在函數逼近、模式識別等方面均有應用[7].Elman網絡的非線性狀態(tài)空間表達式為:
圖1 Elman神經網絡模型結構Fig.1 Elman neural network model structure
式中:y為m維輸出結點向量;x為n維中間層結點單元向量;u為r維輸入向量;xc為n維反饋狀態(tài)向量;w3為中間層到輸出層連接權值;w2為輸入層到中間層連接權值;w1為承接層到中間層的連接權值;g()為輸出神經元的傳遞函數,是中間層輸出的線性組合;f()為中間層神經元的傳遞函數,常采用S函數.
Elman神經網絡也采用BP算法進行權值修正,學習指標函數采用誤差平方和函數.表達式為
遺傳算法是由美國Michigan大學的John Holland教授在20世紀60年代提出,它是模擬生物在自然環(huán)境中的遺傳和進化過程而形成的一種自適應全局優(yōu)化概率搜索算法.遺傳算法是將問題的求解表示成“染色體”,將其置于問題的“環(huán)境”中,根據適者生存的原則,從中選擇出適應環(huán)境的“染色體”進行復制,即再生(reproduction,selection),通過交叉(crossover)、變異(mutation)兩種基因操作產生出新一代更適合環(huán)境的“染色體”群,這樣不斷改進,最后收斂到一個最適合環(huán)境的個體上,求得問題的最佳解.由于最好的染色體不一定出現在最后一代,開始時保留最好的染色體,如果在新的種群又發(fā)現更好的染色體,則用它代替原來的染色體,進化完成后,這個染色體可看作是最優(yōu)化的結果.遺傳算法可歸納為遺傳運算(交叉與變異)和進化運算(選擇)兩種運算過程[13].GA 與 Elman神經網絡均具有極強的解決問題的能力,二者相結合,形成GA-Elman算法,該算法將遺傳算法的全局尋優(yōu)能力與Elman算法的指導性搜索思想相結合,既克服了尋優(yōu)中的盲目性,又避免了局部收斂情況的發(fā)生,使網絡性能得到極大的改善[14].遺傳算法優(yōu)化Elman神經網絡算法流程[15]如圖2 所示.
圖2 GA優(yōu)化Elman神經網絡算法流程Fig.2 GA optimization Elman neural network algorithm
GA-Elman算法的具體實現步驟如下:
(1)初始化種群P,包括交叉規(guī)模、交叉概率(Pc)、突變概率(Pm)以及對網絡權值和閾值初始化,進行實數編碼,初始種群n(視實際應用選擇數值大小).
(2)計算每個個體評價函數,并將其排序,按下式概率值選擇網絡個體:
式中:fi為個體i的適配值,用誤差平方和E來衡量,即
式中:i為染色體數,i=1,2,…,n;o 為輸出結點數,o=1,2,…,q;k 為學習樣本數,k=1,2,…,m;γo 為網絡實際輸出;d為期望輸出.
(3)以交叉概率Pc對個體Gi和Gi+1進行交叉操作,產生新個體G'i和G'i+1,沒有進行交叉操作的個體直接進行復制.
(4)利用變異概率Pm突變產生Gj的新個體G'j.
(5)將新個體插入到種群P中,并計算新個體的評價函數.
(6)判斷評價函數是否滿足結束條件.如果找到滿意個體,則結束;否則轉到(3)進入下一輪運算.
(7)算法結束,達到預先設定的性能指標后,將最終群體中的最優(yōu)個體解碼即可得到優(yōu)化后的網絡連接權值系數.
(8)將優(yōu)化得到的網絡連接權值系數賦值給Elman網絡進行訓練及預測輸出.
為驗證GA-Elman網絡模型的有效性,以新疆伊犁河雅馬渡站的流量預測為例.數據來源參見表1[16].
表1 新疆伊犁河雅馬渡站實測流量及預報因子Tab.1 The measured flow and prediction factors of Yamadu hydrometric station in Ili River in the Xinjiang
(續(xù)表)
影響徑流預測的4個預報因子特征值中,X1為前一年11月至當年3月伊犁氣象站的總降雨量;X2為前一年8月歐亞地區(qū)月平均緯向環(huán)流指數;X3為前一年6月歐亞地區(qū)月平均徑向環(huán)流指數;X4為前一年6月2 800 MHz太陽射電流量.
為便于與文獻[16]比較,將表1中前16年的資料作為GA-Elman,傳統(tǒng)Elman,傳統(tǒng)BP以及GA-BP網絡模型的訓練樣本,后7年資料進行預測檢驗.
2.2.1 數據處理 采用以下方法將各指標數據無量綱化到[0.1,0.9]之間,有利于網絡訓練.公式如下:
2.2.2 網絡訓練 本文基于MATLAB軟件環(huán)境和謝菲爾德(Sheffield)遺傳算法工具箱,創(chuàng)建及訓練GAElman,傳統(tǒng)Elman,傳統(tǒng)BP以及GA-BP網絡模型進行年徑流預測.以表1中的4個預測因子作為網絡輸入向量;以流量實測值作為輸出向量,構建4輸入1輸出的預測模型.本例兼顧擬合精度和預測精度,經反復調試,在下述參數設置條件下,GA-Elman,傳統(tǒng)Elman,傳統(tǒng)BP以及GA-BP模型具有較好的預測效果.
傳統(tǒng)BP模型:由于目前BP網絡隱含層神經元數的選取沒有統(tǒng)一原則,本文采用較為普遍的Kolmogorv定理確定隱層單元數,最終確定BP網絡結構為4-4-1,隱含層和輸出層傳遞函數分別采用tansig和purelin,訓練函數采用traingdx(該算法具有附加動量和自適應調整算法的優(yōu)點,在一定程度上能有效避免收斂速度慢、陷入局部極值),學習速率為0.1,設定期望誤差為0.03,最大訓練輪回為200次.
傳統(tǒng)Elman模型:由于Elman網絡是在BP網絡的基礎上改進而來,本文兼顧模型間的公平比較原則及預測精度,最終確定Elman模型結構、隱含層和輸出層傳遞函數、訓練函數、學習速率與最大訓練輪回均與上述傳統(tǒng)BP模型相同,設定期望誤差為0.017.
GA-BP模型:同樣基于公平原則,GA-BP模型的網絡結構、隱含層和輸出層傳遞函數、期望誤差、最大訓練輪回數等均與上述傳統(tǒng)BP模型相同,在此條件下運用GA來優(yōu)化BP神經網絡的初始權值和閾值.GA參數設置為:種群規(guī)模為5,進化次數為100次,交叉概率為0.1,變異概率為0.05.
GA-Elman模型:基于模型間的公平比較原則及預測效果,GA-Elman模型的網絡結構以及傳遞函數等所有參數設置均與上述GA-BP模型參數設置相同.
2.2.3 性能評價 選取平均相對誤差eMRE和最大相對誤差eMaxRE作為模型的評價指標.評價指標計算公式如下:
利用訓練好的GA-Elman,傳統(tǒng)Elman,傳統(tǒng)BP以及GA-BP模型對新疆伊犁河雅馬渡站進行年徑流擬合及預測,結果見表2和3.
表2 新疆伊犁河雅馬渡站流量擬合結果及其比較Tab.2 Flow fitting results and their comparison with the measured data at Yamadu hydrometric station in Ili River in the Xinjiang
表3 新疆伊犁河雅馬渡站流量預測結果及其比較Tab.3 Flow prediction results and their comparison with the measured data at Yamadu hydrometric station in Ili River in the Xinjiang
分析表2和3可以得出以下結論:
(1)在相同網絡結構、傳遞函數、訓練函數等條件下,GA-Elman網絡模型的擬合平均相對誤差、擬合最大相對誤差、預測平均相對誤差以及預測最大相對誤差均優(yōu)于傳統(tǒng)Elman、傳統(tǒng)BP以及GA-BP模型,模型精度由高到低依次是:GA-Elman模型、GA-BP模型、傳統(tǒng)Elman模型、傳統(tǒng)BP模型,表明遺傳算法能有效優(yōu)化Elman和BP網絡的初始權值和閾值.
(2)與文獻[16]提出的IEA-BP模型預測結果相比,GA-Elman模型的擬合平均相對誤差為6.78%,略高于IEA-BP模型的6.62%,擬合最大相對誤差為18.51%,小于IEA-BP模型的22.19%;GA-Elman模型的預測平均相對誤差為4.83%,小于IEA-BP模型的5.14%,預測最大相對誤差為11.92%,略大于IEA-BP模型的10.66%;(2個模型)總體平均相對誤差為5.80%,總體最大相對誤差為18.51%,均優(yōu)于IEA-BP模型的5.88%,22.19%;綜合比較而言,GA-Elman模型預測效果略優(yōu)于IEA-BP模型,表明本文提出的GA-Elman模型用于多元變量年徑流預測是合理可行的,模型具有較高的預測精度和較好的泛化能力.
(3)由于BP是一種前向靜態(tài)映射神經網絡,在對與時間有關的年徑流預測時效果往往不如Elman反饋動態(tài)遞歸網絡.Elman是在BP神經網絡的基礎上,結構單元引入固定反饋環(huán)節(jié),從而使系統(tǒng)具有適應時變特性的能力,使預測性能比BP網絡更好,進而改善系統(tǒng)的動態(tài)性能.從本實例可以看出,Elman網絡模型無論是擬合平均相對誤差、擬合最大相對誤差,還是預測平均相對誤差、預測最大相對誤差均優(yōu)于BP網絡模型.
目前,將GA用于優(yōu)化BP神經網絡結構和參數的研究較多,但用于動態(tài)網絡優(yōu)化的研究較少.本文基于Elman神經網絡基本原理,針對Elman神經網絡采用BP算法進行權值修正時,同樣存在著學習速度較慢,易陷入局部極小值等固有缺陷,提出一種基于GA優(yōu)化Elman神經網絡連接權值的GA-Elman多元變量年徑流預測模型,以新疆伊犁河雅馬渡站徑流預測為例進行實例分析,結果表明GA-Elman模型用于多元變量年徑流預測是合理可行的,模型具有較高的預測精度和較好的泛化能力.但由于GA算法在處理復雜優(yōu)化問題上可能存在著早熟收斂、易陷入局部極值等缺點和不足,改進的GA算法,如多種群遺傳算法、量子遺傳算法和免疫遺傳算法等可以有效避免其早熟收斂、易陷入局部極值等現象[17-18],進一步提高Elman模型的預測精度和泛化能力.
[1]張楠,夏自強,江紅.基于多因子量化指標的支持向量機徑流預測[J].水利學報,2010,41(11):1318-1323.(ZHANG Nan,XIA Zi-qiang,JIANG Hong.Prediction of runoff based on the multiple quantity index of SVM[J].Journal of Hydraulic Engineering,2010,41(11):1318-1323.(in Chinese))
[2]谷曉平,王長耀,王汶,等.應用于水文預報的優(yōu)化BP神經網絡研究[J].生態(tài)環(huán)境,2004,13(4):524-527.(GU Xiaoping,WANG Chang-yao,WANG Wen,et al.Research on the optimization neural network model for hydrologic forecast[J].Ecology and Environment,2004,13(4):524-527.(in Chinese))
[3]龐博,郭生練,熊立華,等.改進的人工神經網絡水文預報模型及應用[J].武漢大學學報:工學版,2007,40(1):33-36.(PANG Bo,GUO Sheng-lian,XIONG Li-hua,et al.A modified artificial neural network model and its application to flood forecasting[J].Journal of Wuhan University(Engineering Science),2007,40(1):33-36.(in Chinese))
[4]藍永超,康爾泗,徐中民,等.BP神經網絡在徑流長期預測中的應用[J].中國沙漠,2001,21(1):97-100.(LAN Yong-chao,KANG Er-si,XU Zhong-min,et al.Long-term runoff forecasting with BP neural network model[J].Desert in China,2001,21(1):97-100.(in Chinese))
[5]尹嘩,梁川.改進的BP網絡模型及其在日徑流預測中的應用[J].云南水力發(fā)電,2005,21(3):15-17.(YIN Ye,LIANG Chuan.Application of modified BP model to daily runoff forecasting[J].Yunnan Water Power,2005,21(3):15-17.(in Chinese))
[6]鄧霞,董曉華,薄會娟.基于BP網絡的河道徑流預報方法與應用[J].人民長江,2010,41(2):56-59.(DENG Xia,DONG Xiao-hua,BO Hui-juan.River runoff forecasting method based on BP network and its application[J].Yangtze River,2010,41(2):56-59.(in Chinese))
[7]傅薈璇,趙紅.MATLAB神經網絡應用設計[M].北京:機械工業(yè)出版社,2009.(FU Hui-xuan,ZHAO Hong.Application of MATLAB neural network design[M].Beijing:Mechanical Industry Press,2009.(in Chinese))
[8]叢爽.面向MATLAB工具箱的神經網絡理論與應用[M].合肥:中國科學技術大學出版社,2009.(CONG Shuang.Toolbox for MATLAB neural network theory and application[M].Hefei:China University of Science and Technology Press,2009.(in Chinese))
[9]張德豐.MATLAB神經網絡應用設計[M].北京:機械工業(yè)出版社,2009.(ZHANG De-feng.MATLAB neural network design[M].Beijing:Mechanical Industry Press,2009.(in Chinese))
[10]董長虹.Matlab神經網絡與應用[M].北京:國防工業(yè)出版社,2002.(DONG Chang-hong.Matlab neural network and application[M].Beijing:National Defense Industry Press,2002.(in Chinese))
[11]劉永霞,馮仲科,杜鵬志.Elman動態(tài)遞歸神經網絡在樹木生長預測中的應用[J].北京林業(yè)大學學報,2007,29(6):99-103.(LIU Yong-xia,FENG Zhong-ke,DU Peng-zhi.Application of Elman dynamic recurrent neural network to forecast tree growth[J].Journal of Beijing Forestry University,2007,29(6):99-103.(in Chinese))
[12]符利勇,何錚,劉應安.基于改進Elman神經網絡的林隙大小預測模型[J].南京林業(yè)大學學報,2011,35(3):28-32.(FU Li-yong,HE Zheng,LIU Ying-an.Model based on modified Elman neural network for forecasting forest gap size[J].Journal of Nanjing Forestry University,2011,35(3):28-32.(in Chinese))
[13]苑希民,李鴻雁,劉樹坤,等.神經網絡和遺傳算法在水科學領域的應用[M].北京:中國水利水電出版社,2002.(YUAN Xi-min,LI Hong-yan,LIU Shu-kun,et al.Neural networks and genetic algorithms in water science applications[M].Beijing:China Water Power Press,2002.(in Chinese))
[14]汪金良,盧宏,曾青云.GA-BP算法及其在冰銅品位神經網絡模型中的應用[J].江西有色金屬,2003,17(3):39-41.(WANG Jin-liang,LU Hong,ZENG Qing-yun.Application of GA-BP to the matte grade model based on neural network[J].Jiangxi Nonferrous Metals,2003,17(3):39-41.(in Chinese))
[15]MATLAB中文論壇.MATLAB神經網絡30個案例分析[M].北京:北京航空航天大學出版社,2010.(MATLAB Chinese Forum.MATLAB neural network analysis of 30 cases[M].Beijing:Beihang University Press,2010.(in Chinese))
[16]郭淳,李祚泳,黨嬡.基于免疫進化算法的BP網絡模型在徑流預測中的應用[J].水資源保護,2009,25(5):1-4.(GUO Chun,LI Zuo-yong,DANG Yuan.Runoff prediction application of BP neural network model based on immune evolutionary algorithm[J].Water Resource Protection,2009,25(5):1-4.(in Chinese))
[17]史峰.MATLAB智能算法30個案例分析[M].北京:北京航空航天大學出版社,2011.(SHI Feng.MATLAB intelligent algorithm 30 case analysis[M].Beijing:Beihang University Press,2011.(in Chinese))
[18]雷德明,嚴新平.多目標智能優(yōu)化算法及其應用[M].北京:科學出版社,2009.(LEI De-ming,YAN Xin-ping.Multiobjective intelligent optimization algorithm and its application[M].Beijing:Science Press,2009.(in Chinese))