李 宏 亮
(廣西壯族自治區(qū)水利電力勘測設計研究院,南寧 530023)
中長期徑流預報對于開展水庫優(yōu)化調度、洪水管理、河道航運管理和河流取用水規(guī)劃等工作具有重要作用。中長期徑流預報是指根據(jù)水文現(xiàn)象所具有的客觀規(guī)律,利用有效的水文氣象資料,采用某些數(shù)學方法或者其他方法,對預見期大于流域最大匯流時間且在一年以內的徑流預報方式。由于水文系統(tǒng)十分復雜,系統(tǒng)的影響因素眾多,影響方式與影響程度難以精確度量,造成了中長期徑流預報很難取得精確結果。但是國內外的科研工作者對中長期徑流預報進行了大量研究并取得了大量成果,給予后來者很多寶貴的經(jīng)驗,有力地推動了中長期徑流預報的發(fā)展。Hamlet[1]利用成因分析法研究了尼爾尼諾和太平洋濤動現(xiàn)象與哥倫比亞河流之間的旱澇關系。Foufoular Gegious[2]通過小波分解技術,在降水序列-頻率尺度的基礎上進行能量分解,從而為研究降水形成機制開辟了新路徑。楊道輝[3]通過探求發(fā)現(xiàn)基于粒子群算法的人工神經(jīng)網(wǎng)絡預報模型能夠加快收斂速度,可以有效減小徑流預報結果的誤差。丁濤[4]提出了一種基于混沌水文時間序列的區(qū)間預測法,并結合模糊聚類算法計算對于區(qū)間風險度下的預測區(qū)間。Box等[5]提出自回歸滑動平均模型(ARMA)由于其直觀的時間相依形式,其參數(shù)具有現(xiàn)實的物理意義并能反映水文序列的統(tǒng)計特征,從而被廣泛地應用在中長期預報中。因此,本文通過加權平均法集合三種不同預報模型的優(yōu)點建立集合預報模型,更精確無誤地進行中長期徑流預報。
漓江桂林水文站以上流域集雨面積為2 762 km2,漓江桂林水文站多年平均流量為133 m3/s,多年最小月平均流量實測值為10.8 m3/s,最小月平均流量為5.9 m3/s,最枯日流量僅為3.8 m3/s。近年來,隨著經(jīng)濟發(fā)展,桂林市市區(qū)人口急增,桂林城市用水每天向漓江取用的水總量達60 萬m3,相當于7 m3/s,城市用水已經(jīng)超過漓江最小月平均流量5.9 m3/s,桂林市及沿江兩岸群眾的引水安全受到嚴重威脅。由于枯水期水量較少,漓江風景名勝區(qū)旅游通航受到嚴重影響,在冬季,百里漓江有時僅能通航10~20 km,大大減少了旅游通航里程甚至斷航,極大地影響了漓江的山水自然景觀和旅游形象。因此,開展漓江桂林斷面的中長期徑流預報模型工作刻不容緩。
BP(BackPropagation)神經(jīng)網(wǎng)絡模型是人工神經(jīng)網(wǎng)絡模型的一種,模型在1986年被首次提出并在全世界范圍內迅速成為應用最廣泛的神經(jīng)網(wǎng)絡模型之一。該模型屬于誤差反饋模型,即輸入值經(jīng)過模型計算,在輸出端進行結果輸出,如果輸出的結果精度達不到預期的要求,則將計算結果的誤差逆向反饋到網(wǎng)絡層中的每一個元素中,以此作為調節(jié)連接節(jié)點權重的依據(jù)。之后不斷重復該過程,直到計算結果精度滿足要求或者計算次數(shù)達到預定值為止。BP神經(jīng)網(wǎng)絡模型算法的學習規(guī)則是采用了數(shù)學中的最速下降法,通過正向計算和誤差反向傳播來不斷地調整連接的權值和閾值,從而使模型計算出來的結果誤差平方和最小。BP神經(jīng)網(wǎng)絡模型是一種典型的前饋神經(jīng)網(wǎng)絡,模型具有三層結構,即模型輸入層、模型隱含層和模型輸出層,其中相鄰兩層的全部神經(jīng)元互相連接,同一層之間的神經(jīng)元沒有聯(lián)系,模型結構如圖1所示。
圖1 BP神經(jīng)網(wǎng)絡結構圖
BP 神經(jīng)網(wǎng)絡模型算法主要由兩部分組成,即數(shù)據(jù)的前向計算和計算誤差的反向傳播。前向計算時,數(shù)據(jù)經(jīng)過輸入層→隱含層→輸出層計算得到模型結果,在計算過程中,每層神經(jīng)元只會影響下一層的神經(jīng)元,與本層神經(jīng)元和前層神經(jīng)元沒有關聯(lián)。當模型計算結果達不到預期時,則需要進行誤差的反向傳播計算。通過前向計算和誤差反向傳播這兩個過程不斷的交替進行, 使用最速下降法不斷尋求更加合理的權向量,從而使模型計算結果誤差函數(shù)達到最小值。
多元線性回歸方程的建立方法為:經(jīng)過分析,對已經(jīng)挑選到的k個預報因子X1,X2,…,Xk通過回歸分析,建立這些因子與預報對象y的關系,其數(shù)學模型為:
(1)
式中:β0,β1,…,βk等為回歸方程中的回歸系數(shù),同時也被稱為預報系數(shù),y=[y1,y2,…,yn]T是y的n次觀測值,Xi=[x1i,x2i,…,xni]T為多元線性回歸方程實測預報因子的值,ε=[ε1,ε2,…,εn]T為多元線性回歸方程的殘差項。
將上式應用最小二乘法可導出如下方程組:
(2)
(3)
(4)
(5)
根據(jù)最小二乘估計法可得:β=(XTX)-1XTy與β0,β1,…,βk確定后,對預報時段進行預報,同時可以對訓練樣本進行模擬并統(tǒng)計合格率。
Elman 神經(jīng)網(wǎng)絡包含信息的延時和反饋,是一種非常典型的動態(tài)遞歸神經(jīng)網(wǎng)絡,該網(wǎng)絡模型自 1990 年被J.L.Elman提出之后,已經(jīng)在全世界范圍內得到了廣泛的應用。遞歸神經(jīng)的動態(tài)特性主要體現(xiàn)在網(wǎng)絡信號的延時遞歸,即模型某時刻的輸出結果不僅僅與該時刻的模型輸入值有關,同時也與該時刻以前的輸入值有關,這就是網(wǎng)絡系統(tǒng)動態(tài)性的體現(xiàn)。動態(tài)系統(tǒng)不僅有優(yōu)勢,同時也存在一些問題:系統(tǒng)中的遞歸信號會隨時間不斷變化,因此系統(tǒng)在運行過程中存在穩(wěn)定性問題。所以在神經(jīng)網(wǎng)絡模型權值賦值時需要考慮其合理性,否則神經(jīng)網(wǎng)絡在運行過程中容易崩潰。因此在遞歸型神經(jīng)網(wǎng)絡模型的設計和應用中需要關注網(wǎng)絡系統(tǒng)的穩(wěn)定性,以保證遞歸神經(jīng)網(wǎng)絡模型能夠正常的運行。
Elman神經(jīng)網(wǎng)絡作為一種動態(tài)反饋模型,不僅僅具有該類模型都有的輸入層、隱含層和輸出單元,同時還有一個特殊的聯(lián)系單元。這個單元的作用是用來記錄隱含層之前的輸出值,也可以稱它為延時算子,由于這個延時算子的存在,才使Elman 神經(jīng)網(wǎng)絡具有動態(tài)記憶的能力。Elman神經(jīng)網(wǎng)絡的結構如圖2所示。
圖2 Elman神經(jīng)網(wǎng)絡結構圖
本文使用了BP神經(jīng)網(wǎng)絡模型、多元線性回歸模型和Elman神經(jīng)網(wǎng)絡模型進行徑流中長期預報,為了集合上述模型各自的優(yōu)勢,減少模型計算誤差,提高中長期徑流預報的精度,現(xiàn)采用加權平均法對以上多個模型進行綜合分析。在建立多模型集合預報方法時,最重要的是確定各個模型的權重,而對權重分配影響最大的兩個因素分別是預報精度和穩(wěn)定性[18]。基于上述理論,建立多模型集合預報的過程如下所示。
(1)多模型權重確定。模型穩(wěn)定性主要表現(xiàn)在兩個方面,即波動幅度和整體波動性。其中波動幅度由最大誤差值和最小誤差值的差值進行表示,其計算方法如下所示:
Eb=Dmax-Dmin
(6)
式中:Eb為波動幅度;Dmax、Dmin分別為最大、最小相對誤差。
整體波動性則體現(xiàn)在多數(shù)預報結果相對變化的大小,預報模型的整體波動性計算如下式:
(7)
式中:Ez為整體波動幅度;Di,j為預測的第i,j個預測月份的相對誤差;n為預報樣本數(shù)量。
模型精度則用相對誤差的均方根表示,計算公式如下:
(8)
多模型集合預報首先要保證預報結果的精度不降低,其次要考慮整體的波動性和波動幅度[18]。設共有m個預報模型,第i個(i≤3)預報模型的權重計算如下所示:
(9)
(2)上述權重分配的過程中主要是考慮了穩(wěn)定度和精度,該分配方法能使加權平均值與真實值更加接近,同時也會使計算誤差趨于穩(wěn)定,因此可以采用最小二乘法集合模型架構。設集合模型每個月份的預報結果為p,則有:
(10)
式中:a′、b′為任意的實數(shù);ak為各個中長期徑流預報模型的預報結果。
預報因子是影響預報對象的前期因素,在多元回歸方程中是作為自變量,因此對它的正確挑選是預報結果好壞的關鍵因素。在挑選徑流中長期預報因子時,最先需要考慮的因素是預報因子與徑流之間的物理聯(lián)系[19];其次要對預報因子及徑流數(shù)據(jù)進行處理,為了能夠挑選出和預報對象有密切聯(lián)系的預報因子,同時要保證各預報因子之間的相關性最小,避免選取的預報因子相互重復。由于漓江流域歷史資料不全,所掌握的降雨資料有限且缺測漏測時間長,因此本模型中預報因子的挑選考慮僅局限在流量因子范圍內。
統(tǒng)計分析漓江流域桂林(三)水文站1958-2016年的實測年徑流序列,計算得桂林站多年平均徑流量為128.09 m3/s。根據(jù)實測徑流資料,采用差積曲線法,進行徑流系列代表性分析,桂林站年徑流差積曲線圖見圖3。
從差積曲線計算結果可以看出,桂林站年徑流系列豐枯交替變化明顯,具有連豐連枯、豐枯交替的規(guī)律,整個系列為完整的豐平枯周期,具有比較好的代表性。
本文采用了4種方法進行中長期預報,用4種模型對2016年流量數(shù)據(jù)分別進行月、旬尺度預報計算。其中月預報是對2016年一整年以月尺度進行預報,旬預報是指2016年1月上旬到2016年3月下旬。以上述3種時間尺度預報結果對模型進行檢驗。
采用的BP和ELMAN神經(jīng)網(wǎng)絡模型輸入層、隱含層和輸出層神經(jīng)元個數(shù)分別為t、8和1個,t為輸入層神經(jīng)元個數(shù),視各時間尺度的具體情況而不同。BP神經(jīng)網(wǎng)絡模型的學習率為0.77,沖量因子為0.95,誤差精度為0.05,最大訓練次數(shù)為10 000 次。ELMAN神經(jīng)網(wǎng)絡模型的學習率為0.48,誤差精度為0.001,最大迭代次數(shù)為10 000 次。
當一次水文預報的誤差在許可范圍內時,即預報的誤差值小于許可誤差,預報則被認為是合格預報,合格預報的次數(shù)和總預報次數(shù)的百分比稱為預報合格率[20,21]。許可誤差采用《水文情報預報規(guī)范》(GB/T22482-2008)規(guī)定的實測流量的20%[20]。合格率的計算公式[20]如下所示,其中QR為合格率,n為合格預報的次數(shù),m為總預報的次數(shù)。
(11)
按照預報合格率的大小不同可以將預報項目精度分為不同的等級。當預報精度達到乙級及以上時可以作為正式預報進行預報結果發(fā)布,精度達到丙等級時,由于預報精度不高,僅能作為參考預報。精度評定等級如表1所示[20]。
表1 預報項目精度等級表
4種模型的月預報結果如表2所示,可以看出:對2016全年的月尺度徑流預測中,BP神經(jīng)網(wǎng)絡模型和ELMAN神經(jīng)網(wǎng)絡模型預報合格率均為83.3%;多元線性回歸模型預報合格率為75%;集合預報模型預報合格率為91.7%。因此,上述4種模型均能較為準確的預報月平均流量,但僅有集合預報模型可以達到甲級預報精度。月預報徑流過程曲線圖如圖4所示,對比實測值與各模型結果來看,BP神經(jīng)網(wǎng)絡模型和ELMAN神經(jīng)網(wǎng)絡模型的模擬結果與實測值的過程趨勢擬合度最高,且對于峰值的預報也最接近于實測值。通過計算可以得到月徑流預報總量表如表3所示,可以看出ELMAN神經(jīng)網(wǎng)絡模型的預報徑流總量最接近實測值。
表2 4種模型2016年月預報流量誤差統(tǒng)計
圖4 2016年月預報過程曲線圖
表3 月徑流預報總量表
旬預報結果如表4所示,可以看出:對2016年1月上旬到2016年3月下旬的旬尺度徑流預測中,BP神經(jīng)網(wǎng)絡模型和ELMAN神經(jīng)網(wǎng)絡模型預報合格率都為66.7%,預報精度僅能達到丙級;多元線性回歸模型預報合格率為77.8%,達到了乙級預報精度;而集合預報模型預報合格率為88.9%,達到了甲級預報精度。旬預報徑流過程曲線圖如圖5所示,對比實測值與各模型結果來看,多元線性回歸模型和集合預報模型的模擬結果與實測值的過程趨勢擬合度較好,且對于峰值的預報也最接近于實測值。通過計算可以得到旬徑流預報總量表如表5所示,可以看出多元線性回歸模型、BP神經(jīng)網(wǎng)絡模型與ELMAN神經(jīng)網(wǎng)絡模型的預報徑流總量均很接近于實測值。對于旬均流量,3種單獨模型中僅有多元線性回歸可以達到預報精度要求,而集合了其他3種模型優(yōu)點的集合預報模型可以將大部分旬的徑流預報相對誤差控制在20%以內,可作為正式預報結果發(fā)布。
表4 4種模型2016年旬預報流量誤差統(tǒng)計
圖5 2016年旬預報過程曲線圖
表5 旬徑流預報總量表
本文采用BP神經(jīng)網(wǎng)絡、多元線性回歸、Elman神經(jīng)網(wǎng)絡與集合預報模型對漓江桂林斷面進行月、旬尺度的中長期徑流預報,結果表明:在進行月尺度預報時,三種模型與集合預報模型均能較為準確的預報桂林斷面流量,可以應用于工程實際。在進行旬尺度預報時,僅有集合預報模型可以達到甲級預報精度要求。對比分析四種模型預報結果得出結論。
(1)對比三種單獨模型與集合預報模型預報結果,ELMAN神經(jīng)網(wǎng)絡模型在月尺度的預報效果要優(yōu)于其余獨立模型。這說明神經(jīng)網(wǎng)絡模型不僅簡化了徑流預報過程,而且預報精度較高,可用于解決實際應用中非線性水文問題。此外,Elman神經(jīng)網(wǎng)絡模型預報效果較BP神經(jīng)網(wǎng)路模型預報精度更高,這說明Elman模型在結構中承接層的設置加強了模型對動態(tài)信息的處理能力,具有適應時變特性的能力[22]。而多元線性回歸模型在旬尺度的預報效果較優(yōu)于其余獨立模型,但僅有集合預報能夠對桂林站中長期徑流預報進行作業(yè)預報,這說明集合預報有效地減小了模型誤差。
(2)集合預報模型在月、旬尺度的預報效果均遠遠高于其余三種模型。這說明不同中長期徑流預報模型具有不同特點,集合預報模型集合了三種模型各自的優(yōu)勢,有效地減小了模型計算誤差,使誤差趨于穩(wěn)定,增加了預報模型的穩(wěn)定性,具有相當高的工程實用性。
(3)受限于原始輸入資料的匱乏,模型預報因子較少,導致在進行精度要求較高的旬尺度預報時,BP神經(jīng)網(wǎng)絡模型、Elman神經(jīng)網(wǎng)絡模型預報效果較差。未來可考慮引入更多預報因子如大氣環(huán)流指標進行篩選,可以進一步提升桂林斷面的中長期徑流預報模型精度。