本發(fā)明屬于水文預(yù)報(bào)技術(shù)領(lǐng)域,更具體地,涉及一種耦合神經(jīng)網(wǎng)絡(luò)和分布式vic模型的水文預(yù)報(bào)方法及系統(tǒng)。
背景技術(shù):
傳統(tǒng)的可變下滲能力(variableinfiltrationcapacity,vic)水文模型能夠考慮流域內(nèi)降雨、蒸發(fā)、植被覆蓋、土壤等自然條件的空間變化情況,但其簡(jiǎn)單的線性疊加匯流模塊很難反映河道匯流過(guò)程中人類活動(dòng)對(duì)其造成的影響。神經(jīng)網(wǎng)絡(luò)模型能夠?qū)Χ嗑S非線性問(wèn)題進(jìn)行辨識(shí)和模擬,但在相同的參數(shù)配置下其優(yōu)化結(jié)果存在浮動(dòng),存在一定的不確定性和不可重復(fù)性。
綜上,現(xiàn)有水文預(yù)報(bào)方法很難反映河道匯流過(guò)程中人類活動(dòng)對(duì)其造成的影響,且現(xiàn)有水文預(yù)報(bào)方法簡(jiǎn)單結(jié)合神經(jīng)網(wǎng)絡(luò)模型也存在不確定性和不可重復(fù)性。
技術(shù)實(shí)現(xiàn)要素:
針對(duì)現(xiàn)有技術(shù)的缺陷,本發(fā)明的目的在于現(xiàn)有水文預(yù)報(bào)方法很難反映河道匯流過(guò)程中人類活動(dòng)對(duì)其造成的影響,且現(xiàn)有水文預(yù)報(bào)方法簡(jiǎn)單結(jié)合神經(jīng)網(wǎng)絡(luò)模型也存在不確定性和不可重復(fù)性的技術(shù)問(wèn)題。
為實(shí)現(xiàn)上述目的,第一方面,本發(fā)明實(shí)施例提供了一種耦合神經(jīng)網(wǎng)絡(luò)和分布式vic模型的水文預(yù)報(bào)方法,包括:根據(jù)當(dāng)前流域降雨量量、溫度、地形、植被覆蓋以及土壤品種信息,建立流域內(nèi)各子流域的vic模型,所述vic模型用于模擬各子流域當(dāng)前徑流序列;分析每個(gè)子流域前期實(shí)測(cè)徑流序列與每個(gè)子流域當(dāng)前實(shí)測(cè)徑流序列的相關(guān)性,依據(jù)赤池信息準(zhǔn)則(akaikeinformationcriterion,aic)準(zhǔn)則從每個(gè)子流域前期實(shí)測(cè)徑流序列中選取與每個(gè)子流域當(dāng)前徑流序列的相關(guān)性高于相關(guān)性閾值的序列集;將為每個(gè)子流域當(dāng)前徑流序列選取的序列集作為輸入構(gòu)建三層神經(jīng)網(wǎng)絡(luò)模型,對(duì)所述vic模型模擬的每個(gè)子流域當(dāng)前徑流序列進(jìn)行校正;將校正后的各子流域的當(dāng)前徑流序列作為輸入構(gòu)建三層神經(jīng)網(wǎng)絡(luò)模型,對(duì)各子流域的徑流序列進(jìn)行匯流并校正得到流域出流序列;其中,三層神經(jīng)網(wǎng)絡(luò)獨(dú)立運(yùn)行多次,取區(qū)間值作為最終校正結(jié)果,三層神經(jīng)網(wǎng)絡(luò)用于概化大壩、水庫(kù)或農(nóng)業(yè)對(duì)流域的調(diào)蓄作用,提高水文預(yù)報(bào)精度。
其中,相關(guān)性閾值可取經(jīng)驗(yàn)值,也可根據(jù)實(shí)際需要選擇,例如可取0.9。
本發(fā)明引入aic準(zhǔn)則與互相關(guān)性方法,先使用神經(jīng)網(wǎng)絡(luò)模型對(duì)子流域的模擬誤差進(jìn)行校正,再輸入神經(jīng)網(wǎng)絡(luò)匯流模型中,極大的減小了vic模型模擬誤差,可以概化大壩、水庫(kù)或農(nóng)業(yè)對(duì)流域的調(diào)蓄作用,提高水文預(yù)報(bào)精度。本發(fā)明使用神經(jīng)網(wǎng)絡(luò)區(qū)間預(yù)報(bào)均值法,獨(dú)立運(yùn)行多次神經(jīng)網(wǎng)絡(luò),取平均值作為最終模擬結(jié)果,能夠減少不確定性,均化模擬值,提高適用性。
可選地,每個(gè)子流域校正后的當(dāng)前徑流序列為:
其中,
可選地,當(dāng)子流域?yàn)槿齻€(gè)時(shí),流域出流序列為:
其中,qall(t)表示在t時(shí)刻的流域出流序列,
可選地,該方法還包括:使用最速下降法對(duì)三層神經(jīng)網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練。
可選地,該方法還包括:根據(jù)率定與校驗(yàn)期數(shù)據(jù),運(yùn)用嘗試錯(cuò)誤法(tryanderror)確定三層神經(jīng)網(wǎng)絡(luò)隱含層的節(jié)點(diǎn)數(shù)。
第二方面,本發(fā)明實(shí)施例提供了一種耦合神經(jīng)網(wǎng)絡(luò)和分布式vic模型的水文預(yù)報(bào)系統(tǒng),包括:vic模型建立模塊、前期序列集選取模塊、徑流序列校正模塊以及流域出流序列校正模塊。
vic模型建立模塊,用于根據(jù)當(dāng)前流域降雨量量、溫度、地形、植被覆蓋以及土壤品種信息,建立流域內(nèi)各子流域的vic模型,所述vic模型用于模擬各子流域當(dāng)前徑流序列。
前期序列集選取模塊,用于分析每個(gè)子流域前期實(shí)測(cè)徑流序列、vic模型模擬的每個(gè)子流域當(dāng)前徑流序列以及每個(gè)子流域當(dāng)前實(shí)測(cè)徑流序列的互相關(guān)性,依據(jù)aic準(zhǔn)則從每個(gè)子流域前期實(shí)測(cè)徑流序列中選取與每個(gè)子流域當(dāng)前徑流序列的相關(guān)性高于相關(guān)性閾值的序列集。
徑流序列校正模塊,用于將為每個(gè)子流域當(dāng)前徑流序列選取的序列集作為輸入構(gòu)建三層神經(jīng)網(wǎng)絡(luò)模型,對(duì)所述vic模型模擬的每個(gè)子流域當(dāng)前徑流序列進(jìn)行校正。
流域出流序列校正模塊,用于將校正后的各子流域的當(dāng)前徑流序列作為輸入構(gòu)建三層神經(jīng)網(wǎng)絡(luò)模型,對(duì)各子流域的徑流序列進(jìn)行匯流并校正得到流域出流序列。
其中,三層神經(jīng)網(wǎng)絡(luò)獨(dú)立運(yùn)行多次,取區(qū)間值作為最終校正結(jié)果,三層神經(jīng)網(wǎng)絡(luò)用于概化大壩、水庫(kù)或農(nóng)業(yè)對(duì)流域的調(diào)蓄作用,提高水文預(yù)報(bào)精度。
可選地,徑流序列校正模塊得到的每個(gè)子流域校正后的當(dāng)前徑流序列為:
其中,
可選地,當(dāng)子流域?yàn)槿齻€(gè)時(shí),所述流域出流序列校正模塊得到的流域出流序列為:
其中,qall(t)表示在t時(shí)刻的流域出流序列,
可選地,徑流序列校正模塊和流域出流序列校正模塊使用最速下降法對(duì)三層神經(jīng)網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練。
可選地,徑流序列校正模塊和流域出流序列校正模塊根據(jù)率定與校驗(yàn)期數(shù)據(jù),運(yùn)用嘗試錯(cuò)誤法確定三層神經(jīng)網(wǎng)絡(luò)隱含層的節(jié)點(diǎn)數(shù)。
總體而言,通過(guò)本發(fā)明所構(gòu)思的以上技術(shù)方案與現(xiàn)有技術(shù)相比,具有以下有益效果:
1、現(xiàn)有vic模型只能適用于不受人類活動(dòng)影響的理想流域,而本發(fā)明通過(guò)結(jié)合神經(jīng)網(wǎng)絡(luò)模型考慮人類活動(dòng)對(duì)出流的影響,可模擬大壩、水庫(kù)、農(nóng)業(yè)、工業(yè)用水對(duì)河道的影響。
2、現(xiàn)有適用于子流域的vic模型模擬結(jié)果存在一定誤差,vic模型直接用于輸入神經(jīng)網(wǎng)絡(luò)匯流模型,會(huì)影響匯流結(jié)果。本發(fā)明引入aic準(zhǔn)則與互相關(guān)性方法,先使用神經(jīng)網(wǎng)絡(luò)模型對(duì)子流域的模擬誤差進(jìn)行校正,再輸入神經(jīng)網(wǎng)絡(luò)匯流模型中,極大的減小了vic模型模擬誤差。
3、現(xiàn)有技術(shù)中神經(jīng)網(wǎng)絡(luò)在相同的結(jié)構(gòu)下運(yùn)行的結(jié)果存在一定的隨機(jī)性,結(jié)果存在浮動(dòng)。本發(fā)明使用神經(jīng)網(wǎng)絡(luò)區(qū)間預(yù)報(bào)均值法,獨(dú)立運(yùn)行多次神經(jīng)網(wǎng)絡(luò),取平均值作為最終模擬結(jié)果,能夠減少不確定性,均化模擬值,提高適用性。
附圖說(shuō)明
圖1為本發(fā)明實(shí)施例提供的一種耦合神經(jīng)網(wǎng)絡(luò)和分布式vic模型的水文預(yù)報(bào)方法流程示意圖;
圖2為本發(fā)明實(shí)施例提供的各子流域徑流與總流域出流相關(guān)性示意圖;
圖3為本發(fā)明實(shí)施例提供的一種耦合神經(jīng)網(wǎng)絡(luò)和分布式vic模型的架構(gòu)示意圖;
圖4為本發(fā)明實(shí)施例提供的一種耦合神經(jīng)網(wǎng)絡(luò)和分布式vic模型的水文預(yù)報(bào)系統(tǒng)結(jié)構(gòu)示意圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
圖1為本發(fā)明實(shí)施例提供的一種耦合神經(jīng)網(wǎng)絡(luò)和分布式vic模型的水文預(yù)報(bào)方法流程示意圖,如圖1所示,包括步驟s101至步驟s104。
s101,根據(jù)當(dāng)前流域降雨量量、溫度、地形、植被覆蓋以及土壤品種信息,建立流域內(nèi)各子流域的vic模型,所述vic模型用于模擬各子流域當(dāng)前徑流序列。
s102,分析每個(gè)子流域前期實(shí)測(cè)徑流序列、vic模型模擬的每個(gè)子流域當(dāng)前徑流序列以及每個(gè)子流域當(dāng)前實(shí)測(cè)徑流序列的互相關(guān)性,依據(jù)aic準(zhǔn)則從每個(gè)子流域前期實(shí)測(cè)徑流序列中選取與每個(gè)子流域當(dāng)前徑流序列的相關(guān)性高于相關(guān)性閾值的序列集。
s103,將為每個(gè)子流域當(dāng)前徑流序列選取的序列集作為輸入構(gòu)建三層神經(jīng)網(wǎng)絡(luò)模型,對(duì)所述vic模型模擬的每個(gè)子流域當(dāng)前徑流序列進(jìn)行校正。
s104,將校正后的各子流域的當(dāng)前徑流序列作為輸入構(gòu)建三層神經(jīng)網(wǎng)絡(luò)模型,對(duì)各子流域的徑流序列進(jìn)行匯流并校正得到流域出流序列;其中,三層神經(jīng)網(wǎng)絡(luò)獨(dú)立運(yùn)行多次,取區(qū)間值作為最終校正結(jié)果,三層神經(jīng)網(wǎng)絡(luò)用于概化大壩、水庫(kù)或農(nóng)業(yè)對(duì)流域的調(diào)蓄作用,提高水文預(yù)報(bào)精度。
可選地,每個(gè)子流域校正后的當(dāng)前徑流序列為:
其中,
可選地,當(dāng)子流域?yàn)槿齻€(gè)時(shí),計(jì)算子流域序列與總流域序列的相關(guān)性,如圖2所示為各子流域徑流與總流域出流相關(guān)性示意圖,選取每個(gè)子流域輸入序列個(gè)數(shù)分別為r、m和n。
流域出流序列為:
其中,qall(t)表示在t時(shí)刻的流域出流序列,
可選地,該方法還包括:使用最速下降法對(duì)三層神經(jīng)網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練。
可選地,該方法還包括:根據(jù)率定與校驗(yàn)期數(shù)據(jù),運(yùn)用嘗試錯(cuò)誤法確定三層神經(jīng)網(wǎng)絡(luò)隱含層的節(jié)點(diǎn)數(shù)。
圖3本發(fā)明實(shí)施例提供的一種耦合神經(jīng)網(wǎng)絡(luò)和分布式vic模型的架構(gòu)示意圖。
如圖3所示,以一個(gè)流域包括三個(gè)子流域?yàn)槔紫确謩e建立各個(gè)子流域的vic模型,詳細(xì)步驟如下:
在獲取流域降雨、溫度、地形、植被覆蓋、土壤等數(shù)據(jù)的基礎(chǔ)上,從上至下分別建立流域內(nèi)各子流域的vic模型。該模型通過(guò)計(jì)算能量平衡、植被蒸騰和土壤蒸發(fā)、冠層水量平衡、地表徑流、基流以及產(chǎn)匯流過(guò)程得到各子流域的出流過(guò)程。
vic模型的能力平衡計(jì)算主要包括地表溫度、感熱通量、潛熱通量以及地?zé)嶙兓?,其中感熱通量、潛熱通量以及地?zé)嶙兓傻乇頊囟却_定,潛熱通量是水量平衡和能力平衡的連接因子。地表覆蓋的能量由下式計(jì)算:
rn=h+ρwlee+g
rn=(1-α)rs+ε(rl-σts4)
其中rn是凈輻射,h是感熱通量,ρw是水密度,le是水的蒸發(fā)潛熱,ρwlee是潛熱通量,e包括植被蒸發(fā)、蒸騰以及裸土蒸發(fā),g是地表熱通量。α是某類植被覆蓋類型的地表反射率,rs是向下的短波輻射,ε是比輻射率,rl是向下的長(zhǎng)波輻射,σ是stefan-boltzmann常數(shù)。ts是地表溫度,ta是大氣溫度,rh是熱通量的空氣動(dòng)力學(xué)阻抗。地表熱通量g通過(guò)對(duì)兩層土壤的熱量估計(jì)來(lái)計(jì)算:cs是土壤熱傳導(dǎo)能力系數(shù),t1-是d1處在時(shí)段末土壤溫度,t2是d2深度的恒溫度,κ是土壤的熱傳導(dǎo)系數(shù)。
vic模型規(guī)定流域按網(wǎng)格劃分,在每個(gè)計(jì)算網(wǎng)格內(nèi),地表假定有n+1種類型,第1到第n種地表為植被,第n+1種地表為裸土。對(duì)于每個(gè)網(wǎng)格內(nèi)土層間的水分交換、蒸發(fā)及產(chǎn)流,是由不同的植被類型決定的,最終是通過(guò)每種植被類型的葉面積指數(shù)、植被阻抗和植被根系在上下層土壤中的比例來(lái)計(jì)算的,這些植被參數(shù)根據(jù)植被的蒸散發(fā)潛力以及空氣動(dòng)力學(xué)阻抗、地表蒸發(fā)阻抗和葉面氣孔阻抗等屬性分別確定的。
vic模型中的土壤分為三層,第一層表示有很小降雨發(fā)生時(shí),立即會(huì)有裸土蒸發(fā),第二層土壤產(chǎn)生直接徑流,第三層控制基流的發(fā)生。對(duì)于土壤飽和容量分布不均勻?qū)χ苯訌搅鞯挠绊懀瑅ic模型引進(jìn)流域飽和容量曲線的思想,且只針對(duì)上層土壤。基于大尺度的考慮,忽略不透水面積上的計(jì)算。
根據(jù)前期各子流域?qū)崪y(cè)流量自相關(guān)信息,運(yùn)用互相關(guān)方法結(jié)合aic準(zhǔn)則,選取各子流域的前期流量值作為輸入分別構(gòu)建三層神經(jīng)網(wǎng)絡(luò)模型,對(duì)子流域模擬結(jié)果進(jìn)行校正,使用最速下降法對(duì)模型進(jìn)行訓(xùn)練,各子流域神經(jīng)網(wǎng)絡(luò)模型獨(dú)立運(yùn)行多次,例如100次,取其區(qū)間均值作為最終校正結(jié)果。分析每個(gè)子流域輸入變量的自相關(guān)性,相關(guān)性分析公式如下所示:
其中,r表示相關(guān)性系數(shù),n表示序列時(shí)序個(gè)數(shù),j表示子流域的編號(hào),xi,j表示第j個(gè)子流域i時(shí)刻序列值,xi+1,j表示第j子流域第i+1時(shí)刻序列值,
再使用aic準(zhǔn)則,優(yōu)選出出最優(yōu)的前期輸入變量。aic準(zhǔn)則是赤池信息準(zhǔn)則,它建立在熵的概念基礎(chǔ)上,可以權(quán)衡所估計(jì)模型的復(fù)雜度和此模型擬合數(shù)據(jù)的優(yōu)良性。在一般的情況下,aic可以表示為:aic=2k-2ln(l),其中:k是參數(shù)的數(shù)量,l是似然函數(shù)。假設(shè)條件是模型的誤差服從獨(dú)立正態(tài)分布。為使n轉(zhuǎn)為觀察數(shù),引入rss(剩余平方和),那么aic變?yōu)椋篴ic=2k+nln(rss/n)。各子流域根據(jù)所選出的輸入序列,輸入神經(jīng)網(wǎng)絡(luò)模型:
其中
研究神經(jīng)網(wǎng)絡(luò)校正后的各子流域流量與流域總出流的互相關(guān)關(guān)系,互相關(guān)方法結(jié)合aic準(zhǔn)則,選取各子流域的前期輸入序列作為神經(jīng)網(wǎng)絡(luò)匯流模型的輸入,率定期與檢驗(yàn)期數(shù)據(jù)同時(shí)運(yùn)用tryanderror方法獲取隱含層的節(jié)點(diǎn)數(shù),模型獨(dú)立運(yùn)行多次,例如100次,取其區(qū)間均值作為最終校正結(jié)果,該方法概化大壩、水庫(kù)、農(nóng)業(yè)等對(duì)河道的調(diào)蓄作用,可提高水文模擬精度。應(yīng)用互相關(guān)方法結(jié)合aic準(zhǔn)則,選取每個(gè)子流域不同前期輸入量作為輸入,驅(qū)動(dòng)神經(jīng)網(wǎng)絡(luò)匯流模型。
其中qall(t)是流域總出流量,
圖4為本發(fā)明實(shí)施例提供的一種耦合神經(jīng)網(wǎng)絡(luò)和分布式vic模型的水文預(yù)報(bào)系統(tǒng)結(jié)構(gòu)示意圖,如圖4所示,包括:vic模型建立模塊、前期序列集選取模塊、徑流序列校正模塊以及流域出流序列校正模塊。
vic模型建立模塊,用于根據(jù)當(dāng)前流域降雨量量、溫度、地形、植被覆蓋以及土壤品種信息,建立流域內(nèi)各子流域的vic模型,所述vic模型用于模擬各子流域當(dāng)前徑流序列。
前期序列集選取模塊,用于分析每個(gè)子流域前期實(shí)測(cè)徑流序列與每個(gè)子流域當(dāng)前實(shí)測(cè)徑流序列的相關(guān)性,依據(jù)aic準(zhǔn)則從每個(gè)子流域前期實(shí)測(cè)徑流序列中選取與每個(gè)子流域當(dāng)前徑流序列的相關(guān)性高于相關(guān)性閾值的序列集。
徑流序列校正模塊,用于將為每個(gè)子流域當(dāng)前徑流序列選取的序列集作為輸入構(gòu)建三層神經(jīng)網(wǎng)絡(luò)模型,對(duì)所述vic模型模擬的每個(gè)子流域當(dāng)前徑流序列進(jìn)行校正。
流域出流序列校正模塊,用于將校正后的各子流域的當(dāng)前徑流序列作為輸入構(gòu)建三層神經(jīng)網(wǎng)絡(luò)模型,對(duì)各子流域的徑流序列進(jìn)行匯流并校正得到流域出流序列。
其中,三層神經(jīng)網(wǎng)絡(luò)獨(dú)立運(yùn)行多次,取區(qū)間值作為最終校正結(jié)果,三層神經(jīng)網(wǎng)絡(luò)用于概化大壩、水庫(kù)或農(nóng)業(yè)對(duì)流域的調(diào)蓄作用,提高水文預(yù)報(bào)精度。
可選地,徑流序列校正模塊得到的每個(gè)子流域校正后的當(dāng)前徑流序列為:
其中,
可選地,當(dāng)子流域?yàn)槿齻€(gè)時(shí),所述流域出流序列校正模塊得到的流域出流序列為:
其中,qall(t)表示在t時(shí)刻的流域出流序列,
可選地,徑流序列校正模塊和流域出流序列校正模塊使用最速下降法對(duì)三層神經(jīng)網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練。
可選地,徑流序列校正模塊和流域出流序列校正模塊根據(jù)率定與校驗(yàn)期數(shù)據(jù),運(yùn)用嘗試錯(cuò)誤法確定三層神經(jīng)網(wǎng)絡(luò)隱含層的節(jié)點(diǎn)數(shù)。
需要說(shuō)明的是,圖4還可包括更多或者更少的部件,各部件的功能具體可參見(jiàn)前述圖1、圖2和圖3所示的具體實(shí)施例,在此不做贅述。
以上,僅為本申請(qǐng)較佳的具體實(shí)施方式,但本申請(qǐng)的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本申請(qǐng)揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本申請(qǐng)的保護(hù)范圍之內(nèi)。因此,本申請(qǐng)的保護(hù)范圍應(yīng)該以權(quán)利要求的保護(hù)范圍為準(zhǔn)。