陳佳袁,閆 杰
(1.桐鄉(xiāng)市水利局,浙江 桐鄉(xiāng) 314500;2.中國電力工程顧問集團西北電力設計院有限公司,陜西 西安 710075)
基于ARMA模型的水文數據預測
陳佳袁1,閆 杰2
(1.桐鄉(xiāng)市水利局,浙江 桐鄉(xiāng) 314500;2.中國電力工程顧問集團西北電力設計院有限公司,陜西 西安 710075)
針對小樣本水文數據序列難以準確預測的特點,將時間序列分析運用于水文數據的預測分析,研究基于AIC定階準則和遺傳算法定階的ARMA模型,并將其運用于周期性水文數據的預測。根據模型建立的需要及數據周期性的特點,對原始數據進行季節(jié)差分等優(yōu)化處理,并將建立的模型運用于某水文站流量數據的預測。結果表明,基于ARMA模型對流量數據的預測精度遠遠高于傳統(tǒng)的神經網路模型,其中基于AIC準則定階的模型比遺傳算法定階的模型精度高2.96%,從而為小樣本水文數據的預測分析提供一種新的思路。
水文數據;ARMA ;定階準則;AIC;遺傳算法
時間序列是按時間順序排列的、隨時間變化且相互關聯(lián)的數據序列。時間序列分析是根據相鄰實測點之間的相互依賴性的特點,建立數學模型來擬合時間序列,準確地實現相關信息的有效預測。時間序列分析在經濟領域的研究和應用較多。然而,隨著研究的深入,逐漸擴展到氣象、交通、水利等領域。
水文計算中經常需要長時間序列的水文資料,但是由于歷史,資金等客觀原因,在實際工作中常常無法保證水文資料的完整性,因此水文數據時間序列的擬合與預測是水文計算中十分關注的重要課題。隨著計算機技術以及人工智能的發(fā)展,神經網絡及遺傳算法等智能算法不斷發(fā)展,也越來越廣泛地被運用到水文計算當中。如胡軍劃、唐德善等采用BP神經網絡編寫程序,根據塔里木河源流葉爾羌河卡群控制水文站歷年水文資料,對徑流流量進行了預測,并對模型進行了驗證分析[1]。吳媛、劉國東等針對水文資料的插補和水文資料的延長問題進行了系統(tǒng)研究,并結合紫坪鋪流量資料插補延長資料驗證了人工神經網絡模型的可行性[2]。余開華結合了神經網絡與小波分析分解在函數逼近上的優(yōu)點,分析了小波神經網絡用于河道流量水位預測的可行性與有效性[3]。段青青、陳曉楠等人將遺傳程序的水位流量關系模型同基于最小二乘法、遺傳算法以及蟻群算法的模型進行了詳細比較,表明基于遺傳程序設計的水位流量關系模型適應性強,擬合精度較高[4]。
但是,神經網絡預測需要大量的數據,對小樣本數據的預測能力相對較差,模型訓練時間不確定,且會造成局部最優(yōu)解而非全局最優(yōu)解;而遺傳算法并不能直接運用于模型的預測,往往需要與其他模型相結合使用。鑒于上述問題,本文將時間序列分析法運用于水文數據的預測,基于水文數據具有的周期性特點,結合遺傳算法將自回歸滑動模型(ARMA)應用于水文數據的預測,為水文數據規(guī)律性分析提供了一種新的思路。
時間序列分析方法起源于數學家耶爾,最初提出的自回歸模型(AR)主要用于市場變化規(guī)律的預測,在此基礎上,數學家瓦格爾又提出了滑動平均模型(MA)和自回歸滑動平均模型(ARMA),這3個模型奠定了時間序列分析法理論基礎[5]。
2.1 A R MA模型定義
一個系統(tǒng),如果時刻t時的響應為Xt,其值的大小不僅與其之前時刻的值存在關系,還與之前時刻進入系統(tǒng)的相應擾動存在相關關系,則這個系統(tǒng)就稱為自回歸滑動平均系統(tǒng),其數學模型為:
式中:φ1為自回歸系數;θi為滑動平均系數;{εt}為白噪聲系列。
引入后移算子B,用Bk表示k步線性推移算子,即,BkXt= Xt-kBkεt= εt-k令
則式(1)簡寫為:
該模型稱為p階自回歸- q階滑動平均混合模型,記為模型ARMA(p,q),特殊地,若時p = 0為純滑動平均模型,記為MA(q);若q = 0時為純自回歸模型,記為AR(p),若 p = q = 0時,則模型為 Xt= εt,即{εt}白噪聲系列。
2.2 A R MA模型應用過程
一般來說,針對動態(tài)數據采用ARMA模型識別和預測,其建模過程和相應的方法見圖1。
圖1 A R MA模型建模過程及相應方法圖
從圖1可知,ARMA模型建模過程主要包括數據預處理、模型定階、參數估計和模型檢驗4個步驟:
(1)數據預處理:ARMA模型構建時需要對數據進行預處理,主要包括野點剔除和序列平穩(wěn)化處理。野點剔除的基本思想為:先從序列中產生一個曲線的平滑估計,然后把它從數據序列減去,從而根據設定的值剔除范圍之外的點,根據線性內插補足剔除位置的數據點。序列的平穩(wěn)化分析可以通過計算樣本數據的自相關函數與樣本的偏相關函數。如果是截尾或者拖尾的,則說明數據已經服從ARMA模型了。若樣本數據不是平穩(wěn)的,可以通過差分使數據平穩(wěn);
(2)模型定階:確定ARMA模型的階數,即p和q的值。階數的確定可以采用日本統(tǒng)計學家Akaike于1974年提出的AIC準則,亦可以采用遺傳算法定階[6];
(3)參數估計:確定自回歸系數φ和滑動平均系數θ的值。參數估計的初步估計方法包括矩估計法和逆函數法,精確估計的方法包括最小二乘法和極大似然估計法。本文采用極大似然估計法,利用Matlab工具箱中的Garchf i t函數確定相應參數表;
(4)模型檢驗:模型檢驗的方法包括x2檢驗法和實測檢驗法。x2檢驗法的基本思想是:給定相應的顯著性水平,檢驗模型的殘差序列是否為白噪聲序列;實測數據檢驗法的基本思想是:隨著實測數據的增加,將模型預測值與實測數據對比,計算相應的誤差,從而進一步修改及完善模型。
由于水文數據易受氣象,人為等諸多不確定因素的影響,具有較強的隨機性,因此,有些水文數據的時間關聯(lián)性較差,很難預測。為了更好的分析時間序列分析方法在水文數據中的預測,本文選取某水文站連續(xù)5a的實測月平均流量數據,該水文站流量變化規(guī)律明顯,時間關聯(lián)性較強,根據Tukey提出的方法剔除野點后得到的流量數據時間序列{Xt}。剔除野點后水文站實測流量數據見圖2。
圖2剔除野點后水文站實測流量數據圖
圖2 顯示了該水文站連續(xù)5a實測的月平均流量變化過程,由圖2可知,該流量數據具有明顯的周期性特征且峰值流量呈逐年遞減的趨勢,故對流量數據進行季節(jié)差分和一階差分差分運算。季節(jié)差分的格式為:
式中:T為相應時間序列的周期(月),當T = 1時即為一階差分格式。故通過季節(jié)差分和一階差分后得到的新的時間序列為:
式中:Xt為實測流量時間序列;ΔT為季節(jié)差分;本例中取T = 12。
經過差分運算后的數據序列已經滿足了零均值與平穩(wěn)性的特點,差分處理后的實測流量數據見圖3;且該序列的自相關函數與偏相關函數具有明顯的拖尾性,表示該數據已滿足使用ARMA模型的要求(見圖4)。
圖3 差分處理后的實測流量數據圖
圖4 自相關函數和偏相關函數圖
本文建立的ARMA模型分別采用AIC準則和遺傳算法定階。
(1)采用AIC準則定價,取p的范圍為0~ 14,q的范圍為0~ 14,經過循環(huán)計算后AIC的最小值為,此時對應的(p,q) = (1,1),運用Garchf i t函數得到ARMA(1,1)模型參數為:
(2)采用遺傳算法定階定階,將原始流量數據序列分為樣本序列和預測序列,其中前4a的數據為樣本數據序列,第五年的數據為預測數據序列,取p的范圍為0~ 14,q的范圍為0~ 14,根據樣本數據建立模型后,通過神經網絡算法定階,運用模型預測第5年流量,并與實測結果比較,根據誤差最小確定最終的優(yōu)化結果,最終得到模型的(p,q) =(2,3),經參數估計后得到ARMA(2,3)的參數為:
通過上述不同的定階方式和模型參數估計后,分別建立了基于AIC定階準則的ARMA(1,1)模型和基于遺傳算法定階的ARMA(2,3)模型。
將上述模型運用于上述水文站第6年的流量預測,模型預測結果見圖5,并與傳統(tǒng)的BP神經網絡模型預測做相應的比較得到,BP神經網絡建立的模型為:
式中:Xt為預測值(m3/s);T為周期(月);本例中取T = 12。
不同預測模型的預測結果見圖5。
圖5 不同預測模型的預測結果圖
并根據下述誤差公式計算預測結果的相應誤差。得到的誤差見表1。
式中:Xi為流量的實測值(m3/s);為流量的預測值(m3/s);N為預測數據的總數。
表1 模型預測誤差對比表
研究表明,采用ARMA模型對流量周期性流量序列的預測具有較高的精度,由圖5可知,ARMA模在小樣本時對流量時間序列的預測能很好的反映的了流量豐枯變化,比傳統(tǒng)的BP神經網絡預測效果更好。由表1可知,基于AIC準則定階的ARMA(1,1)模型預測精度比基于遺傳算法定階的ARMA(2,3)模型精度更高,其預測相對誤差分別為10.93%,13.89%,遠遠小于傳統(tǒng)BP神經網絡預測的誤差26.51%,結果表明,在小樣本的周期性水文數據預測中,ARMA模型的適用性更好。
本文分別基于AIC準則和遺傳算法建立時間序列分析ARMA模型,并將該模型運用于某水文站流量數據的預測,并與傳統(tǒng)的BP神經網絡預測模型對比,得到以下結論:
(1)根據流量數據的周期性特定,可以通過采用特定的季節(jié)差分將原始數據處理為零均值平穩(wěn)序列,從而滿足ARMA模型的建模的要求。
(2)本文提供了2種ARMA模型的定階方法,基于AIC定階準則和基于遺傳算法定階,從而建立了ARMA(1,1)模型和ARMA(2,3)模型,兩者定階建立的模型均具有較高的預測精度,其中ARMA(1,1)模型比ARMA(2,3)模型預測誤差小2.96%。
(3)小樣本時間序列的預測中,通過與傳統(tǒng)BP神經網路預測模型對比,ARMA模型預測精度更高,預測時間更短,因而更具實用意義。
[1] 胡軍華,唐德善,胡慶和.人工神經網絡在徑流長期預報中的應用[J].人民黃河,2005(9):26- 27.
[2] 吳媛,劉國東,余姝萍,等.人工神經網絡在水文資料插補延長中的應用[J].貴州地質,2005(3):68- 71.
[3] 余開華.小波神經網絡模型在河道流量水位預測中的應用[J].水資源與水工程學報,2013(2):204- 208.
[4] 段春青,陳曉楠,韓黎明.遺傳程序在水位流量關系擬合中的應用[J].中國農村水利水電,2009(6):54- 55.
[5] 梁妍,夏樂天.時間序列ARMA模型的應用[J].重慶理工大學學報(自然科學),2012(8):106- 109.
[6] 崔建國,趙云龍,董世良,等.基于遺傳算法和ARMA模型的航空發(fā)電機壽命預測[J].航空學報,2011(8):1506- 1511.
The Prediction of Hydrological Data Based on ARMA Model
CHEN Jia - yuan1,YAN Jie2
(1.Tongxiang Water Conservancy Bureau,Tongxiang 314500,Zhejiang,China;2.Northwest Electric Power Design Institute Co.,Ltd. of China Power Engineering Consulting Group,Xi’an 710075,Shanxi,China)
Because of the difficulty in the prediction of hydrological data for small samples,the article put forward a ARMA model which is used to analyze the periodic hydrological data based on AIC order selection criteria and genetic algorithm.According to the need of the model and the characteristics of data periodicity,the original data were optimized by the seasonal difference,and the model was applied to forecast the discharge data of a hydrological station.Results show that the accuracy of ARMA model is more higher than that of the traditional BP neural networks model,Furthermore,the accuracy of model based on AIC order selection criteria is 2.96% higher than that of the model based on genetic algorithm. Therefore,the article provides a new idea for the analysis of the hydrological data for small samples.
hydrological data;ARMA;order selection criteria;AIC;genetic algorithm
P333
A
1008- 701X(2017)06- 0027- 04
10.13641/j.cnki.33- 1162/tv.2017.06.007
2017-05-25
陳佳袁(1991- ),男,工程師,碩士,主要從事水利工程管理工作。
(責任編輯 姚小槐)