李恒麗 李保珠



摘 要:位于云南省麗江市古城區的黑龍潭泉群,在降雨偏少時會發生季節性斷流,特別是近年來由于降雨減少,人為活動增多,泉群斷流情況越來越嚴重,斷流次數逐漸增多、時長也增長,以致麗江市從“高原姑蘇”變成嚴重缺水的城市,直接影響了麗江市的形象,制約其社會經濟的發展。因此對黑龍潭泉群進行動態研究與斷流分析預測,對于麗江市的發展、地下水資源的利用具有重要意義。本文采用人工神經網絡方法分析黑龍潭泉群降雨量與流量的變化,應用python語言及相關庫分析,計算黑龍潭降雨量與流量的相關性系數,利用matlab人工神經網絡方法預測黑龍潭泉群的出水量及判斷是否斷流。模型模擬及預測結果較好,與實際值相差無幾,能較好地預測流量的變化趨勢及斷流結果。
關鍵詞:人工神經網絡;流量預測;斷流預測
中圖分類號:TP183 ? ? ? ? ? ? ? ? ?文獻標識碼:A ? ? ? ? ? ?文章編號:1006—7973(2020)07-0149-04
1 引言
黑龍潭泉群位于麗江盆地東北部的象山山麓,九子海復向斜南部翹起端,泉群出露于三疊系北衙組中上段裂隙發育的灰巖、白云質灰巖中。泉群地下水類型為炭酸鹽巖裂隙水,補給來源主要是大氣降水,其次還有冰雪融水、基巖地下水、河流渠道水等,地下水補給來源十分豐富,使黑龍潭泉群擁有較大的出水量[1~4]。黑龍潭泉群為麗江古城提供生活、景觀及服務業用水,其流量的變化直接關系到麗江市民的生活狀況。但上世紀八十年代以來,其發生過多次斷流,給麗江的生產、生活各方面造成了巨大的影響,所以其流量的穩定性及提前預測具有重要意義[5,6]。
目前研究發現,對黑龍潭泉群流量的主要影響因素為:水源補給區域的降雨量、城市用水量、植被退化與地下水開采。其中降雨量為最主要因素,降雨量減少導致滲入地下的水流減少,最終造成黑龍潭斷流[7]。目前對黑龍潭流量的研究論文也有很多,但主要仍停留在定性分析上,只是研究了大體的影響因素及如何作用還有一些統計學數據;對流量的定量研究仍處于初步階段,很多模型都沒有嘗試過,當然,對其進行定量研究時,整個系統的周期性可能不是按整月的,而數據統計時都按整月統計,造成了變化不一致等;還有整個系統的響應并不是線性的,自變量較多及存在很多潛在因素的影響等造成系統建模難度增大。而利用傳統的GMS進行建模分析時,需要鉆孔鉆探試驗確認地下含水層的厚度、頂底板,各處的滲透系數等,而這些數據因為各方面的原因都沒進行實驗采集,所以該方法也很難進行。
在這種模糊條件過多,響應為非線性,各因素的影響系數未知的系統中,最合適的研究方法為人工神經網絡。該方法在確定主要影響因素的情況下,可以將所有影響因素作為自變量導入,將要研究的對象作為因變量,讓計算機自動尋找規律,而且如果對結果不滿意可以多次訓練模型或者調整參數、自變量等,使結果最終符合預期目標,達到良好的預測效果。利用python先分析出各月降雨量、井水位與流量的相關性,確定主要影響因素,然后用matlab的神經網絡工具箱,代入所有影響因素跟是否斷流后,訓練模型,再用新數據檢驗模型,不斷調整參數,當效果達到預期后最終導出模型。
2 主要影響因素的確定
當前能為建模提供建模基礎的數據主要參考為麗江站1988~2018年每月降雨量,九子海2000~2017年每月降雨量,麗江站1992~2018年每月井水位,黑龍潭1990~2012年每月流量。由于九子海降雨量太小,為間接影響黑龍潭流量因素且與黑龍潭流量數據的時間重合度太低,暫時不作為因素考慮。為了宏觀地觀察麗江站降雨量、麗江井水位與黑龍潭流量的關系,先繪制出重合時間內三者的趨勢圖。由于井水位的數據級別太小,為方便觀察,將其擴大400倍與降雨量跟流量比較。
圖1明顯表明:流量與井水位保持同步變化,當井水位上升時流量隨之上升,且時間刻度上保持一致,未見滯后性。而降雨量與流量整體趨勢也相同,但圖上也很明顯有時間差,當降雨量到達最大值時,往往過二至三個月,流量才達到最大值,由此猜測本月麗江降雨量并不會對本月流量產生影響,而是影響兩到三月后黑龍潭的流量。
為了驗證以上猜想,需要計算降雨量與流量的相關性系數。
經計算,本月流量與本月降雨量相關性系數為-0.166067,與往前一個月為0.110125,與往前兩個月為0.333704,與往前三個月為0.449788,與往前四個月為0.456936,本月流量與本月井水位的相關性系數為0.938674。很明顯,相關性系數的計算結果與假設相符。
由于表中所有數據都是基于時間序列的離散型數據,且流量與本月降雨,前月降雨相關性系數太低,由此利用傳統的分析方法,假設流量的變化量與前2、3、4月降雨量存在相關性。將本月流量與前月流量作差,得到流量的變化量。由于多元自變量不方便分析,同時為了均衡多個月份降雨量對流量的影響,現計算多個月流量的平均值與流量的相關性,然后選取相關性最大的作為單一自變量。
經計算,本月流量與前2、3月降雨量平均值的相關性系數為0.435440,與前3、4月份為0.503288,與前2、3、4月為0.503063。因此此處選擇相關性系數最大值作為自變量,即前3、4月份的平均降水量。由此,將前3、4月份的平均降雨量作為自變量,將流量的變化量作為因變量進行線性分析并繪制出分布散點圖。
圖2中縱坐標為本月相對于上月的流量變化量,橫坐標為本月前3、4月的平均降雨量,圖中直線為基于最小二乘法的線性回歸線。很明顯,分布呈現很大的離散性,即表明相同或相近的降雨量所導致的流量變化差異很大,如前3、4月平均降雨量在1500mm左右時,本月流量的變化可能幾乎不變,也可能上升800mm。另外,點的分布也并未與任何規律曲線(二次或三次曲線)相符,由此,并不能基于此建模。
由以上推論,降雨量不能作為影響流量的單一變量,而井水位與流量的相關性系數比較大,所以可以將上個月的井水位作為一個影響因素。另外,從原理上分析,也是在降雨后,雨水滲入地下,三個月以后才影響黑龍潭泉群流量,而雨水降落后滲入地下,優先會作用表現在井水位上,然后井水位上升后,再體現在流量的變化上。且井水位可以看成是降雨量與流量雙重作用下長期累積的結果,其承擔著降雨量轉化為黑龍潭流量的樞紐關系,所以應將其看成是影響流量的重要因素。另外,前一個月流量也必然影響著本月的流量,因為流量都是基于前一個月的流量在變化著的,例如,上月流量很大,但前幾個月降雨量都很小,流量必然會降低,這種降低是基于前個月的流量下的,卻不會因為降雨量減少而突然斷流。上個月流量較大時,即使降雨量很小,斷流的幾率也幾乎為零。最后,由于每年降雨量,蒸發量,農業灌溉等也是周期性的,所以將月份納入到影響因素也很有必要。由此,初步確認了所有的自變量即影響流量的所有因素:前月流量,前月井水位,月份,往前三個月,往前四個月與往前五個月的降雨量。
3 ?MATLAB神經網絡分析
人工神經網絡是模仿人腦工作原理設計的計算模型,它由多個節點互相連接組成,能對數據的復雜關系進行建模。節點間的連接都被賦予不同的權重,權重的含義是一個節點對另一個節點的影響大小。每個節點表示一個特定的函數,其他節點傳來的數據到達該節點后會進行相應的權重計算,輸入到一個激活函數中并計算新的值。從系統的角度上看,人工神經網絡是由大量的神經元經過復雜的連接構成的自適應非線性動態系統。一個兩層的神經網絡就可以逼近任意函數,所以,只要有足夠的神經元和訓練數據,人工神經網絡可以學到很多復雜的函數。
流量的預測是一個復雜的非線性系統,這個系統的真正狀態方程必然是由很多微分方程組成,同時系統又包含了很多的未知情況,有很多隱藏的因素作用在系統上,而且支持整個系統的理論也有很多需要深究之處。綜上,要想用數學方法準確建模是十分困難的,因此,可以嘗試用神經網絡來表達這個復雜的非線性系統。
將整個系統看成是一個黑箱,所有影響因素作為系統輸入,把是否斷流作為輸出,最終整個系統也就是成為了一個二分類問題。通過所有的統計數據神經網絡,不斷地調整優化后,使得該網絡有了能表達該未知系統的能力,這個神經網絡也就能預測系統輸出了。
此處使用MATLAB的神經網絡工具箱對其進行分析,該神經網絡是一種多層前饋神經網絡,該網絡最大的特點就是信號前向傳播,誤差反向傳播,每層的神經元狀態只會影響下一層的,如果輸出層達不到期望的輸出,就會把誤差進行反向傳播,調整神經網絡的權值與閾值,最終使神經網絡的輸出不斷逼近預期值。神經網絡的訓練過程包含以下幾個步驟:
(1)初始化神經網絡:根據系統的輸入輸出值(X,Y)大致推出網絡輸入層節點數n、隱含層節點數 ? ,輸出層節點數m,初始化輸入層、隱含層和輸出層神經元之間的連接權值ωij,ωjk,初始化隱含層閾值α,輸出層閾值b,給定學習速率和神經元激勵函數。
對于預測斷流,將是否斷流看成是一個二分類問題,將斷流定義為0,未斷流定義為1,而神經網絡所有的預測并不會完全確定各月是否斷流,而是計算出一個概率,該概率值介于0與1之間,預測結果的數據越接近1就表示越不會斷流,越接近0,即表示斷流的概率越大。
將麗江站降雨量,月份,黑龍潭上月流量,上月井水位作為自變量,設置神經網絡的隱藏層深度為8層,設置訓練集為90%的總體樣本數,驗證集為5%的總體樣本數,測試集為5%的總體樣本數,對本月是否斷流進行分析。在對神經網絡進行多次調整并重新學習后,訓練出了預測準確率較高的模型。用該模型重新預測全部月份的斷流情況,總數據量為237個,預測斷流的準確次數為227次,準確率達到了95.78%,而且在預測會斷流而實際未發生斷流時,該月實際流量也已經很低了,接近于斷流狀態。實際發生了斷流卻未預測成功的只有一次。截取所有數據中1995年的情況,表1中列出了該年每月的實際流量,實際是否斷流,預測的斷流情況。
表1對1995年6、7兩月的斷流已經準確地預測出來了,但對5月的預測有誤差,預測該月斷流的概率較大,但實際還有流量。從實際情況來看,卻也不能認為預測錯誤,因為從流量來說,該月的流量已經很低了,可能該月月底也已經斷流了,實際也需要采取補水措施。綜上,該模型已經能對斷流提供良好的預測能力,能夠指導進行提前預防控制了。
4 結論
(1)經計算得出,黑龍潭泉群流量與降雨量的相關性系數最大的月份為本月往前三、四月:與往前三個月降雨量為0.449788,與往前四個月為0.456936,另外本月流量與本月井水位的相關性系數為0.938674。由此得出:①流量與井水位基本保持同步變化,當井水位上升時流量隨之上升,未見滯后性;②本月麗江降雨量并不會對本月流量產生影響,而是影響三到四月后黑龍潭的流量。
(2)前幾月平均降雨量與本月流量相關性系數計算中,得出前3、4月份平均降雨量相關性最大,為0.503288。而將前3、4月份的平均降雨量與流量的變化量進行線性分析,發現準確性太差,從而得出降雨量不能作為影響流量的單一影響因素,并且綜合分析初步確認了所有的影響流量的所有因素:前月流量,前月井水位,月份,往前三個月,往前四個月與往前五個月的降雨量。
(3)通過人工神經網絡建立的模型已經能較準確地預測是否斷流,能使用MATLAB中建好的模型對是否斷流進行指導性的預測;本文通過選取黑龍潭泉群1992年到2011年降雨量與出水量數據的90%搭建人工神經網絡,用該模型預測剩余10%的情況,結果與預期目標相符。
(4)通過人工神經網絡模型如果有更多的數據進行訓練,預測的準確性和通用性將會大大提高,所以可以將以后統計的實際數據納入到訓練樣本中,從而提高生產力。對于預測到斷流,該給黑龍潭補多少水的問題,由于沒有補水對流量影響的試驗數據,所以很難給出參考,需要進行相關實驗及相關的地質考察后,才有條件模擬出。
參考文獻:
[1] 康曉波,張華,王波. 麗江黑龍潭泉群水文地質特征及斷流的影響因素分析(云南省地質環境監測院)[C].巖溶水文地質研討會暨第十八屆全國洞穴學術會議,2012.
[2] 周友妹.麗江古城黑龍潭泉水斷流原因分析[J].人民珠江.2015(01):54-58.
[3] 和菊芳,方金鑫.麗江黑龍潭泉水動態變化與降水關系初探[J].中國農村水利水電. 2019(08): 26-27.
[4] 譚乃元,張麗芳.麗江黑龍潭泉水斷流初探[J].城市建設, 2012(17).
[5] 李豫馨,許模,高偉,漆繼紅. 基于時間序列方法預測麗江黑龍潭泉域流量[J].人民珠江, 2016(3):6-9.
[6] 李豫馨.基于時間序列分析的麗江黑龍潭泉域動態研究[J].成都理工大學,2016.
[7] 曾成,楊睿,楊明明,胡君春,武貴華,樊宇紅 .麗江市黑龍潭泉群斷流的人工神經網絡模擬[J].中國巖溶, 2013(04) P391-397.
[8]王小川,史峰,郁磊,李洋編著. MATLAP神經網絡43個案例分析[Z]. MATLAP 技術論壇.
[9] 陳明編著.MATLAP神經網絡原理與實例精講[Z].