焦國梅
(甘肅省武威水文水資源勘測局,甘肅 武威 733000)
由于我國水資源短缺的現(xiàn)狀,現(xiàn)如今國內(nèi)相關(guān)用水管理部門急需找出合理的方法對水文變量進(jìn)行模擬,以期為水資源管理辦法及相關(guān)政策制定提供依據(jù)[1- 2]。徑流作為水資源優(yōu)化配置、防旱減災(zāi)措施制定的主要依據(jù)之一,其精確預(yù)報對區(qū)域水資源供需平衡發(fā)展具有十分重要的意義。已有研究表明,影響徑流變化的主要因素包括氣象因素、人類活動和下墊面變化3大類[3- 4],可將長時間徑流序列看作是由不同頻率組成的非線性非平穩(wěn)序列[5- 6]。傳統(tǒng)的水文模擬方法主要包括時間序列法[7]、多元線性回歸法[8]、組合回歸法[9]等,這些方法操作簡單,在一定條件下可對徑流進(jìn)行模擬,但由于要求的條件過高,導(dǎo)致精度無法滿足日常工作的需要。
隨著計算機(jī)技術(shù)的不斷發(fā)展,神經(jīng)網(wǎng)絡(luò)模型能從復(fù)雜的數(shù)據(jù)中自動發(fā)現(xiàn)規(guī)律、學(xué)習(xí)規(guī)律,并通過數(shù)據(jù)訓(xùn)練對數(shù)據(jù)進(jìn)行模擬,已被逐漸廣泛應(yīng)用于數(shù)據(jù)模擬與預(yù)測中。常用的神經(jīng)網(wǎng)絡(luò)模型包括BP神經(jīng)網(wǎng)絡(luò)模型、小波神經(jīng)網(wǎng)絡(luò)模型、廣義回歸神經(jīng)網(wǎng)絡(luò)模型等[10],不同模型在不同區(qū)域的精度及訓(xùn)練時間不同,因此需找出合理的方法對傳統(tǒng)神經(jīng)網(wǎng)絡(luò)模型進(jìn)行優(yōu)化,進(jìn)一步提高模型精度。崔東文[11]基于多組群教學(xué)優(yōu)化神經(jīng)網(wǎng)絡(luò)算法建立了水文預(yù)測模型,指出該模型的計算精度優(yōu)于傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)模型;何國棟等[12]基于陰陽對算法優(yōu)化的隨機(jī)森林及支持向量機(jī)的組合模型建立了徑流預(yù)測模型,指出該模型對數(shù)據(jù)訓(xùn)練、檢驗和預(yù)測的平均相對誤差分別為2.76%、4.64%、3.02%,精度較高;李文敬等[13]基于IQPSO優(yōu)化SVM模型構(gòu)建了徑流預(yù)測模型,指出該算法能夠有效提高月徑流預(yù)報精度。
誤差反向神經(jīng)網(wǎng)絡(luò)模型(BPNN)是神經(jīng)網(wǎng)絡(luò)算法的基本模型之一,該算法存在收斂速度慢且易產(chǎn)生局部極值的缺點(diǎn),限制了該模型的應(yīng)用。思維進(jìn)化算法(MEA)和遺傳算法(GA)均可用于優(yōu)化BPNN神經(jīng)網(wǎng)絡(luò)模型,已在數(shù)據(jù)預(yù)測領(lǐng)域得到了廣泛的應(yīng)用[14- 15],但是在徑流模擬中的應(yīng)用較少。本文基于思維進(jìn)化算法(MEA-BPNN)及遺傳算法(GA-BPNN)分別優(yōu)化BPNN模型,采用EEMD 方法將入庫徑流序列逐級分解成多個不同頻率的IMF本征模態(tài)函數(shù),建立徑流預(yù)報模型。
BPNN神經(jīng)網(wǎng)絡(luò)模型是一種多層反饋的模型,其主要組成部分包括輸入層、隱含層和輸出層3部分,具體原理圖如圖1所示。該模型通過輸入層將變量輸入模型中,通過隱含層確定變量最優(yōu)解,若初始解不滿足要求,則重新進(jìn)行運(yùn)算,直至滿足要求為止。BPNN模型可通過訓(xùn)練變量,得出變量的潛在規(guī)律,從而實現(xiàn)對數(shù)據(jù)的模擬及預(yù)測,具體步驟如下。
(1)模型初始化。根據(jù)圖1中的基本原理,確定模型結(jié)構(gòu)的主要參數(shù),其中主要包括:輸入層節(jié)點(diǎn)數(shù)p,輸出層節(jié)點(diǎn)數(shù)m,隱含層節(jié)點(diǎn)數(shù)l及不同數(shù)據(jù)層之間的權(quán)重Wij和Wjk。初始化隱含層閾值a,輸出層閾值b,給定學(xué)習(xí)速率η和神經(jīng)元激勵函數(shù)f。
(2)輸出計算。根據(jù)隱含層輸出結(jié)果,確定最終輸出層結(jié)果,具體公式如下:

(1)
式中,Ok—輸出結(jié)果;Hj—隱含層輸出結(jié)果;bk—輸出層閾值。
(3)誤差計算。根據(jù)模型輸出值與期望輸出值對比,算出誤差,若誤差滿足要求,則計算結(jié)束,不滿足要求則重新進(jìn)行計算。誤差計算公式如下:
ek=Yk-Ok,k=1,2,……m
(2)
式中,ek—計算誤差,Yk—期望輸出值。

圖1 BPNN模型原理圖
由于傳統(tǒng)的BPNN模型具有收斂速度慢且易發(fā)生局部極值的缺點(diǎn),導(dǎo)致當(dāng)訓(xùn)練樣本數(shù)量較多時,該模型的精度較低,這極大程度上限制了BPNN模型的使用。GA算法可通過群體搜索技術(shù),基于適者生存的原則找出最優(yōu)解,加快運(yùn)算速率,因此,基于遺傳算法對BPNN模型進(jìn)行優(yōu)化,可在一定程度上解決BPNN存在的問題,主要流程可分為BPNN模型結(jié)構(gòu)確定、GA算法優(yōu)化計算權(quán)重及模型輸出3個部分,具體步驟可見文獻(xiàn)[15]。
隨著研究的逐漸深入,發(fā)現(xiàn)GA算法在運(yùn)算過程中對變量的輸入具有一定的依賴性,這使得GA算法運(yùn)算效率逐漸無法滿足要求。MEA算法可彌補(bǔ)GA算法的缺點(diǎn),在GA算法的基礎(chǔ)上提出了“趨同”和“異化”的步驟,使得MEA-BPNN模型具有了良好的擴(kuò)充性、移植性和極強(qiáng)的全局優(yōu)化能力,MEA-BPNN模型具體步驟可見文獻(xiàn)[14]。
由于徑流是一個由不同頻率數(shù)據(jù)組合成的長時間序列,因此在預(yù)測時需對數(shù)據(jù)進(jìn)行去噪處理,保證模型計算精度。EEMD算法可對輸入數(shù)據(jù)進(jìn)行平滑處理,將復(fù)雜頻率的信號分解成不同級別頻率的信號,具體步驟如下。
(1)針對原始信號x(t),加入空白信號y(t),形成新的序列s(t)。
(2)應(yīng)用EEMD算法分解s(t) 序列,最終可得出不同IMF分解層zij(t)和殘余項R(t),具體公式如下:
(3)
(3)重復(fù)上述步驟,得出最大迭代次數(shù)N,計算IMF分解層均值,消除空白信號的影響,得出最終分解結(jié)果,具體公式如下:
(4)
(5)
將EEMD算法分解的不同IMF分解層,帶入MEA-BPNN模型及GA-BPNN模型中,分別對不同時期徑流進(jìn)行預(yù)測,模型計算精度指標(biāo)可采用以均方根誤差(RMSE),相對均方根誤差(RRMSE),確定系數(shù)(R2),平均絕對誤差(MAE)和效率系數(shù)(Ens)5種指標(biāo)形成評價指標(biāo)體系來評判不同模型的精度,具體公式如下:
(6)
(7)
(8)
(9)
(10)

基于EEMD法對實測徑流量長時間序列進(jìn)行分解,可得到IMF分量共7項,7項分量由高頻到低頻依次排序,包括1項殘差項,結(jié)果如圖2所示。其中,殘差項表示徑流量長時間序列的時間變化趨勢,由殘差項圖可知,徑流量隨時間的變化呈現(xiàn)逐漸降低的趨勢,這與實際相符,可將不同IMF分量代入模型中,用于訓(xùn)練與模擬徑流。
對EEMD方法分解出的8個徑流序列分量分別使用MEA-BPNN模型、GA-BPNN模型和BPNN模型進(jìn)行模擬,不同分量模擬精度見表1。由表1可以看出,不同模型不同分量的模擬結(jié)果有所不同,其中,隨著IMF分量頻率的降低,不同模型的模擬精度均出現(xiàn)升高的趨勢,同時MEA-BPNN模型的精度最高,整體精度在訓(xùn)練期RMSE為0.280m3/s,RRMSE為12.56%,R2為0.960,Ens為0.958,MAE為0.210m3/s,預(yù)測期RMSE為0.330m3/s,RRMSE為15.41%,R2為0.932,Ens為0.931,MAE為0.261m3/s,誤差指標(biāo)最低而一致性指標(biāo)最高,該模型精度最高。

圖2 EEMD分解結(jié)果
圖3為不同模型模擬結(jié)果與徑流量實測值月值擬合結(jié)果對比。由圖3可以看出,不同模型計算精度雖有所差異,但模擬結(jié)果的變化趨勢基本一致,在全年內(nèi)均呈現(xiàn)了先升高后降低的豐枯水期交替變化趨勢。不同模型在汛期計算結(jié)果要明顯優(yōu)于枯水期,同時MEA-BPNN模型模擬結(jié)果與實測值的擬合性最好。
綜上所述,該模型可作為徑流預(yù)測的標(biāo)準(zhǔn)模型使用。

表1 BPNN模型 IMF分量及預(yù)報結(jié)果

表2 GA-BPNN模型 IMF分量及預(yù)報結(jié)果

表3 MEA-BPNN模型 IMF分量及預(yù)報結(jié)果

表4 MEA-BPNN模型不同月份不同預(yù)報方式精度對比

圖3 不同模型模擬徑流結(jié)果對比
已有研究表明,不同時期采用連續(xù)滾動預(yù)報和同期預(yù)報2種方式所得模擬結(jié)果的精度不同,為找出不同時期MEA-BPNN模型的最優(yōu)預(yù)報方式,本文分別對該模型2種預(yù)報方式下不同月份的徑流預(yù)測精度進(jìn)行了對比,結(jié)果見表4。由表4可以看出,MEA-BPNN模型在不同預(yù)報方式下均呈現(xiàn)5—10月的豐水期精度高于枯水期,在豐水期,連續(xù)滾動預(yù)報的精度優(yōu)于同期預(yù)報,而11月—次年4月的枯水期同期預(yù)報精度較優(yōu)。這可能是由于徑流量在豐水期的取值較大,連續(xù)滾動預(yù)報在追求豐水期的精度的同時忽略了枯水期的貢獻(xiàn)率,同時豐水期年內(nèi)變化趨勢較劇烈,而枯水期變化趨勢較緩。因此,采用MEA-BPNN模型預(yù)測徑流時,在豐水期采用連續(xù)滾動預(yù)報,而在枯水期采用同期預(yù)報,可保證模型擁有最高的精度。
本文基于MEA-BPNN模型構(gòu)建了水文預(yù)測模型,并與GA-BPNN模型與BPNN模型精度進(jìn)行了對比,得出以下結(jié)論。
(1)采用EEMD方法對徑流實測序列進(jìn)行分解,得出8項IMF分量,對不同分量預(yù)測結(jié)果進(jìn)行對比,指出頻率越低的分量精度越高,該方法可為模型訓(xùn)練提供數(shù)據(jù)基礎(chǔ)。
(2)不同模型模擬結(jié)果變化趨勢與實測值基本一致,其中MEA-BPNN模型精度最高,同時在豐水期的預(yù)測精度要高于枯水期。
(3)不同時期基于連續(xù)滾動預(yù)報和同期預(yù)報2種方式的MEA-BPNN模型預(yù)測精度有所區(qū)別,其中在豐水期采用連續(xù)滾動預(yù)報,而在枯水期采用同期預(yù)報可保證MEA-BPNN模型精度最高。
(4)本文基于思維進(jìn)化算法優(yōu)化BPNN神經(jīng)網(wǎng)絡(luò)模型,構(gòu)建了MEA-BPNN模型在月徑流的預(yù)測中取得了較高的精度,在今后的研究中,可基于該模型分析日尺度、旬尺度不同時間尺度的徑流預(yù)測精度。