王建輝,冉金鑫,沈瑩瑩,韓振中,崔遠來,羅玉峰
(1.武漢大學水資源與水電工程科學國家重點實驗室,武漢 430072;2.中國灌溉排水發(fā)展中心,北京 100054)
2019年,黃河流域農(nóng)業(yè)用水量約為流域用水總量的68.8%[1]。然而,黃河以占全國2%的徑流量,向占全國15%的耕地和12%的人口供水[2]。目前國內(nèi)的農(nóng)業(yè)灌溉用水量統(tǒng)計資料主要來自每年發(fā)布的水資源公報,均為年尺度數(shù)據(jù),對于月尺度數(shù)據(jù),需要由各級灌區(qū)逐一統(tǒng)計上報,統(tǒng)計難度較大[3]。同時,加上黃河流域內(nèi)各地區(qū)種植結(jié)構(gòu)不同,其用水規(guī)律不一致,月尺度灌溉用水量對于區(qū)域農(nóng)業(yè)水土資源管理和農(nóng)業(yè)生產(chǎn)用水高效管理具有重要意義。
過去國內(nèi)外學者對灌溉用水量推算采用基于數(shù)理統(tǒng)計規(guī)律的方法。Satti[4]等提出了非線性回歸模型,考慮了降雨和氣溫的變化對灌溉用水量的影響;劉小花[5]等建立了含周期項、趨勢項和隨機項的ARMA(p,q)模型,對開封市水資源的利用進行了預(yù)測,結(jié)果合理可行。但這類方法需要長系列的資料來建立模型,所需參數(shù)單一,適用于參數(shù)變化較小的預(yù)測[6,7]。目前國內(nèi)外學者多采用啟發(fā)式算法。Zhang[8]等引入非線性協(xié)整理論和小波神經(jīng)網(wǎng)絡(luò)方法,建立了灌溉水量小波非線性協(xié)整預(yù)測模型。遲道才[9]等提出了把人工神經(jīng)網(wǎng)絡(luò)和灰色預(yù)測方法結(jié)合成并聯(lián)型灰色神經(jīng)網(wǎng)絡(luò)預(yù)測方法。劉玲[10]等提出了基于改進BP神經(jīng)網(wǎng)絡(luò)的農(nóng)業(yè)灌水量預(yù)測模型,對天津市里自沽灌區(qū)的年灌水量進行預(yù)測,取得較好的效果。以往學者所建立的灌溉用水預(yù)測模型大都針對典型灌區(qū)的單一作物的年灌水量預(yù)測,并未探究作物生育期內(nèi)的用水動態(tài)變化,對年內(nèi)用水分配管理指導意義不強。本文以黃河流域為研究對象,基于TensorFlow 架構(gòu)分區(qū)分作物構(gòu)建BP 神經(jīng)網(wǎng)絡(luò)模型,推算灌溉分區(qū)不同作物生育期內(nèi)的月灌溉用水量,探究月尺度灌溉用水量的時空變異規(guī)律。
黃河流域面積總計約79.5 萬km2(含內(nèi)流區(qū)面積約4.3 萬km2),占全國土地總面積的8.3%。從西到東橫跨青藏高原、內(nèi)蒙古高原、黃土高原和黃淮海平原4 個地貌單元,地勢西高東低,包含了青海、甘肅、寧夏、內(nèi)蒙古、陜西、山西、四川、河南及山東在內(nèi)的9 個?。▍^(qū)),如圖1 所示。流域年平均氣溫在-4~14 ℃之間,總的趨勢是由東南向西北遞減。流域內(nèi)大部分地區(qū)年降水量在200~650 mm 之間,總的趨勢是由東南向西北遞減。
灌溉分區(qū)資料來自流域內(nèi)各省(區(qū))發(fā)布的《用水定額》,作物種植面積、灌溉面積來源于國家統(tǒng)計局(http://www.stats.gov.cn/)、各省(區(qū))統(tǒng)計年鑒、《中國農(nóng)業(yè)統(tǒng)計年鑒》以及《黃河統(tǒng)計年鑒》等。氣象資料包括黃河流域內(nèi)122 個氣象站點(見圖1)的2015年1月1日-2018年12月31日的逐日氣象數(shù)據(jù),數(shù)據(jù)來源于中國氣象數(shù)據(jù)網(wǎng)(http://data.cma.cn/)。作物實測灌水資料(2015-2018年)和灌溉水有效利用系數(shù)(2018年)來自各灌區(qū)管理部門。
圖1 黃河流域地理位置概況圖Fig.1 Overview of geographical location of the Yellow River Basin
本文結(jié)合各省出臺的灌溉定額分區(qū)情況及黃河流域界限,將黃河流域劃分為24 個灌溉分區(qū)。研究區(qū)域灌溉分區(qū)情況如圖2所示。
圖2 黃河流域灌溉分區(qū)圖Fig.2 Irrigation zoning map of the Yellow River Basin
BP(Back Propagation)神經(jīng)網(wǎng)絡(luò)是一種按誤差逆?zhèn)鞑ニ惴ㄓ柧毜亩鄬忧梆伨W(wǎng)絡(luò)。模型包括正向傳播和誤差反向傳播兩部分:①正向傳播過程,與所有前饋神經(jīng)網(wǎng)絡(luò)一樣,數(shù)據(jù)傳播方向為輸入層→隱藏層→輸出層,最后計算出網(wǎng)絡(luò)產(chǎn)生的總誤差。②誤差反向傳播過程,從輸出層到輸入層反向遍歷所有層,逐層計算網(wǎng)絡(luò)內(nèi)部各層誤差,作為修正各層神經(jīng)元權(quán)值的依據(jù)[12]。
TensorFlow 是一個采用數(shù)據(jù)流圖進行數(shù)值計算的開源智能軟件庫,里面內(nèi)置了很多神經(jīng)網(wǎng)絡(luò)的優(yōu)化算法,常用于機器學習和神經(jīng)網(wǎng)絡(luò)方面的研究[13]。TensorFlow 具有高度的靈活性、可移植性、可視化等優(yōu)點,同時可使用Python 語言實現(xiàn)其庫功能。本文使用TensorFlow 深度學習框架實現(xiàn)BP 神經(jīng)網(wǎng)絡(luò)模型算法,用于黃河流域月灌溉用水量的推算。
本文按照灌溉分區(qū)不同作物類型進行建模。選取的模型數(shù)據(jù)集包括各灌溉分區(qū)內(nèi)不同作物生育期內(nèi)的月份、月降雨量、月ET0以及實測月灌溉定額?;?000-2014年黃河流域長系列的降雨資料,計算黃河流域不同頻率水文年:25%豐水年、50%平水年、75%枯水年的平均年降雨量,分別為:554.89、514.19 以及489.73 mm,2015-2018年流域年平均降雨量分別為:535.3、612.1、564.6、616.0 mm,可見2015年屬于平水年,2016-2018年均屬于豐水年。因此,以2016-2017年的數(shù)據(jù)為主、2015年數(shù)據(jù)為輔,作為模型的訓練集,以2018年的數(shù)據(jù)作為測試集。模型訓練結(jié)果可代表豐水年類型的月灌水量推算。在24 個灌溉分區(qū)中,共有11 個灌溉分區(qū)的25 種作物有歷史實測灌溉定額數(shù)據(jù),利用這11 個灌溉分區(qū)的實測數(shù)據(jù)構(gòu)建BP 神經(jīng)網(wǎng)絡(luò)模型。剩下13個無實測歷史資料的灌溉分區(qū),利用相鄰灌溉分區(qū)訓練好的BP神經(jīng)網(wǎng)絡(luò)模型進行推算。
月降雨量、月ET0能夠從水量平衡機理層面解釋灌水量的變化,使模型具有較好的解釋性和精確性。此處建立的模型是一種灌水量推算模型,因此不考慮未來灌水量的預(yù)測,只考慮典型年全流域的灌水量推求。月份m代表模型輸入的時間序列,降雨P(guān)來源于氣象站點的逐日降雨量,ET0值采用Penman-Monteith公式計算[14]:
式中:ET0,PM為參考作物蒸散量,mm;Rn為凈輻射量,MJ/(m2·d);G為土壤熱通量,MJ/(m2·d);T為日平均溫度,℃;u2為距地面2 m 高處風速,m/s;es為飽和水汽壓,kPa;ea為實際水汽壓,kPa;Δ為飽和水汽壓與氣溫關(guān)系曲線上的斜率,kPa/℃;γ 為干濕溫度計常數(shù),kPa/℃。
模型輸出數(shù)據(jù)集為灌溉分區(qū)的月灌溉定額。根據(jù)樣點灌區(qū)各典型田塊歷次灌水記錄,可計算出樣點灌區(qū)不同作物灌溉定額,對每一種作物在樣點灌區(qū)測算的灌溉定額進行算術(shù)平均,作為灌溉分區(qū)該種作物的月灌溉定額,按下式計算:
式中:Ii,j,k表示灌溉分區(qū)i的第j種作物生育期內(nèi)第k個月的灌溉定額;Tj,k、Aj,k分別表示某樣點灌區(qū)第j種作物田塊第k月的灌溉用水量、實灌面積。
模型的隱含層節(jié)點數(shù)取值范圍為3~13。將分區(qū)分作物模型不斷進行調(diào)試,選取最優(yōu)的隱含層層數(shù)及節(jié)點數(shù),如表1 所示。模型的隱含層層數(shù)大多數(shù)均為1 層,每層的節(jié)點數(shù)最少為8,最多為12,均在設(shè)定的3~13的范圍內(nèi)。
表1 模型隱含層最優(yōu)參數(shù)設(shè)定Tab.1 Optimal parameter setting of model hidden layer
誤差函數(shù)采用均方誤差MSE評價模型訓練的精度。TensorFlow 里面還提供了很多參數(shù)初始化的方法。本文對權(quán)重w、偏差b、訓練次數(shù)、學習率有如下設(shè)置:初始權(quán)重w設(shè)為一個服從標準正態(tài)分布的隨機數(shù),初始偏差b設(shè)為0.5,訓練次數(shù)設(shè)為5 000,學習率設(shè)為0.005。最后模型在session中啟動,開始訓練網(wǎng)絡(luò)。
利用模型推算出的灌溉分區(qū)月凈灌溉定額,結(jié)合灌溉水有效利用系數(shù)和作物有效灌溉面積,按定額法計算得到各灌溉分區(qū)逐月毛灌溉用水量,具體計算公式如下:
式中:Wi,灌為某灌溉分區(qū)第i月的灌溉用水量,億m3;wij為分區(qū)內(nèi)作物j的有效灌溉面積,hm2;wij為作物j當月的灌溉凈定額,m3/hm2;η表示分區(qū)灌溉水有效利用系數(shù);δ為單位換算系數(shù):1 × 10-8。
按式(3)計算得到2018年黃河流域各灌溉分區(qū)全年的逐月毛灌溉用水量,將同一月份灌溉用水量相加,得到流域逐月灌溉用水量,如圖3 所示。全年1-12月的毛灌溉用水量分別為3.18 億、1.52 億、6.97 億、22.80 億、37.27 億、46.91 億、42.60 億、35.48 億、17.21 億、4.54 億、0.46 億及1.34 億m3,總計220.28 億m3,實際灌溉用水量為226.98 億m3。
圖3 流域逐月毛灌溉用水量Fig.3 Monthly irrigation water consumption of the basin
表2統(tǒng)計了不同?。▍^(qū))的實際灌溉用水量與推算灌溉用水量的對比,由表可知,8 個省份中,寧夏回族自治區(qū)的灌水量仿真誤差最大,為18.30%,陜西省的灌水量仿真誤差最小,為2.25%,總體誤差平均值為2.96%。結(jié)果說明本文所構(gòu)建的模型仿真精度較好,可用于該流域的灌溉用水量推算。
表2 灌溉用水量仿真值與實測值對比Tab.2 Comparison between simulated and measured irrigation water consumption
流域內(nèi)各灌溉分區(qū)2018年的逐月毛灌溉用水量分布如圖4 所示。可以發(fā)現(xiàn)各灌溉分區(qū)1月、2月、3月及10月、11月、12月的毛灌溉用水量未見明顯差異,多數(shù)集中在0~0.1 億m3。從4月開始,各灌溉分區(qū)的毛灌溉用水量開始顯示差異,5-9月差異最為明顯。各灌溉分區(qū)的毛灌溉用水量均呈現(xiàn)隨著時間的變化,先增加后減小的趨勢。不同灌溉分區(qū)各月毛灌溉用水量的均值,在6月達到峰值,為1.73 億m3。
圖4 不同灌溉分區(qū)逐月毛灌溉用水量Fig.4 Monthly gross irrigation water consumption in different irrigation zones
不同作物的總毛灌溉用水量如圖5(a)所示,可以看出小麥和玉米的灌溉用水量最大,分別為58.04 和83.67 億m3,占總灌溉用水量的26.35%和37.98%。其余作物灌溉用水總量從大到小分別為蔬菜>油料>薯類>水稻>大豆>棉花,分別占總灌溉用水量的9.83%、8.90%、7.92%、6.73%、2.08%及0.21%。
不同作物的逐月毛灌溉用水量變化圖如圖5(b)所示,隨著生育期的變化,不同作物毛灌溉用水量均呈現(xiàn)先增加、后減少的趨勢。其中小麥在5月達到灌水頂峰,為14.73 億m3;薯類和蔬菜在6月達到灌水頂峰,分別為4.14 和4.32 億m3;玉米和油料作物在7月達到灌水頂峰,分別為19.60 和6.74 億m3;水稻和大豆在8月達到灌水頂峰,分別為5.47和1.55 億m3;棉花在9月達到灌水頂峰,為0.16 億m3。由前面作物種植結(jié)構(gòu)分析可知,小麥和玉米是流域內(nèi)分布最廣、種植最多的作物,因此其灌溉需水量也最大,毛灌溉用水量也相應(yīng)最多。
圖5 不同作物生育期內(nèi)毛灌水量對比圖Fig.5 Comparison of gross irrigation amount in different crop growth periods
將推算得到的全流域各灌溉分區(qū)2018年的灌溉用水量數(shù)據(jù)導入ArcGIS,采用反距離加權(quán)插值方法,分別繪制流域全年總灌溉用水量和逐月灌溉用水量的空間分布圖。
圖6 為黃河流域2018年總灌溉用水量的空間分布圖。各灌溉分區(qū)的年灌溉用水量介于0.13~47.55 億m3之間。對于不同灌溉分區(qū)而言,灌水量空間分布的總體趨勢為從西北部至中部、再到東西部逐漸遞減。西北部灌溉用水量值較大,如內(nèi)蒙古溫暖干旱農(nóng)業(yè)區(qū)、寧夏北部引黃灌區(qū);位于中南部的陜西關(guān)中、中東部的山西晉南區(qū)灌溉用水量次之;東西部地區(qū)灌水量最小,如青海省內(nèi)的灌溉分區(qū)及山東省的魯中。從不同省(區(qū))來看,內(nèi)蒙古、寧夏、山西以及陜西的灌溉用水量較大,河南和甘肅灌溉用水量次之,山東及青海的灌溉用水量最小。
圖6 黃河流域2018年總灌溉用水量分布圖Fig.6 Distribution of total irrigation water consumption in the Yellow River Basin in 2018
圖7 所示為2018年1-12月逐月各灌溉分區(qū)的灌溉用水量分布圖??偟膩砜戳饔騼?nèi)灌水集中區(qū)隨著時間的變化而不斷遷移。1-2月份,流域灌水集中區(qū)域位于河南豫北平原區(qū)、豫北山丘區(qū)以及陜西關(guān)中區(qū);3-4月份,灌水集中區(qū)為陜西關(guān)中區(qū)和陜西晉南區(qū);5-9月份,灌水集中區(qū)遷移至內(nèi)蒙古溫暖干旱農(nóng)業(yè)區(qū)、溫涼農(nóng)業(yè)區(qū)以及寧夏北部引黃灌區(qū);10-12月份,流域灌水集中區(qū)再次遷移至陜西晉南區(qū)、陜西關(guān)中區(qū)和河南豫北平原區(qū)。從灌水量分布范圍來看,可明顯看出1-2月和10-12月份流域內(nèi)灌水量較少,而該時間段內(nèi)的主要作物只有冬小麥,由此可知冬小麥種植的主要區(qū)域位于陜西晉南區(qū)、陜西關(guān)中區(qū)和河南豫北山丘區(qū),這與各省統(tǒng)計年鑒數(shù)據(jù)相符。
圖7 黃河流域2018年逐月毛灌溉用水量空間分布圖Fig.7 Spatial distribution of monthly gross irrigation water consumption in the Yellow River Basin in 2018
以黃河流域為例,借助Tensorflow 架構(gòu)的BP 神經(jīng)網(wǎng)絡(luò),對流域內(nèi)月灌溉用水量進行推算,并運用ArcGIS 對黃河流域2018年逐月灌溉用水量的時空變異規(guī)律進行了分析。主要結(jié)論有:
(1)通過BPNN 預(yù)測的黃河流域灌溉用水量與實際值的總體誤差平均值為2.96%,模型的驗證精度在可接受的范圍內(nèi)。
(2)從種植結(jié)構(gòu)來看,小麥和玉米的灌溉用水量最多,占總灌溉用水量的26.35%和37.98%。其余作物灌溉用水總量從大到小分別為蔬菜>油料>薯類>水稻>大豆>棉花。
(3)從時間上看,各灌溉分區(qū)的灌溉用水量均呈現(xiàn)隨著時間的變化,先增加后減小的趨勢。黃河流域2018年月灌溉用水量在6月達到用水峰值,從4月開始,各灌溉分區(qū)的毛灌溉用水量開始顯示差異,5-9月差異最為明顯。
(4)從空間上看,各灌溉分區(qū)的2018年灌溉用水量介于0.13~47.55 億m3之間。灌水量空間分布的總體趨勢為從西北部至中部、再到東西部逐漸遞減。流域內(nèi)灌水集中區(qū)隨著時間的變化而不斷遷移,遷移趨勢為由河南、陜西和山西遷移至內(nèi)蒙古、寧夏,最后再到陜西、山西和河南。