馮 琨,張永麗,戴沂伽
(1.四川大學建筑與環境學院,成都 610065;2.西南財經大學財政稅務學院,成都 610031)
水資源是人類文明的源泉,與人類的生存、發展和一切經濟活動密切相關。水資源形成與演化及開發和可持續利用不僅僅指水資源在人類的代際間公平分配,同時還指當代人群之間、流域的上中下游之間和跨流域之間的合理分配[1]。一般而言,一個區域的水資源承載能力主要是由水資源的需求量和供給量構成,而相比較之下,供給量在一定時期內穩定性較大,那么在區域水資源承載力的預測中,對需求量的預測具有重要意義[2]。
在成都市各區市縣《水資源綜合規劃》的編制過程中,河道外需水量預測一直是整個項目的核心內容同時也是難點,該預測對整個規劃起著基礎指導作用。規劃水平年內河道外需水量的大小決定著水資源配置的方式,如果需水量預測值大于實際用水量則會出現水資源的浪費現象,還會影響到政府相關部門在節水型社會建設上的工作進度;如果需水量預測值小于實際的用水量則會出現用水缺口,導致該地區國民經濟的發展和人民的生活受到影響。因此如何準確有效地進行河道外需水量的預測,就顯得尤為重要了。
本文將利用主成分分析及BP人工神經網絡模型這兩個工具來對成都市未來需水量進行定量預測,從而對水資源規劃的編制起到參考作用。
成都市地處成都平原,是四川省省會所在地。其西部為龍門山和邛崍山山區,中部為成都平原,東部為龍泉山低山深丘區和金堂縣沱江以東丘陵區,全市幅員面積 12390平 km2。全市地表水資源量 58.56億m3,折合年徑流深 472.65mm。全市地下水資源量 23.90億 m3,扣除重復計算部分后水資源總量為 61.06億 m3。平均產水模數 49.28萬m3/km3,區域內人均占有本地水資源量 553.38m3(未計過境水資源)。
影響一個城市 (包括區縣)需水量的因素有很多,一般可以從社會因素和自然因素兩方面來考慮。水資源需求量可以通過若干特征變量來反映,把這些特征變量定為評價指標,那么這些指標就成為預測水資源需求量的指示器,為水資源的優化配置奠定基礎[3]。
根據可靠性、充分性和可測性的原則,結合《成都市統計年鑒》(1990~2009),選定以下 9個指標作為影響因子:X1為人口,萬人;X2為第一產業增加值,萬元;X3為第二產業增加值,萬元;X4為第三產業增加值,萬元;X5耕地面積,萬 hm2;X6為城市建成區面積,km2;X7為給水管道長度,km;X8為工業廢水排放量,萬 t;X9為排水管道長度,km。然后以年份(1990~2009年)作為時間序列,列出各個因子所含的數據,現將部分年份的因子列于表 1。

表1 部分年份成都市需水量影響因子統計Tab.1 Affecting factors ofwater consumption for some years in Chengdu
為了消除所選擇因子的量綱對數據分析產生的影響,故需對它們進行標準化處理。本文采用 SPSS軟件提供的 zscore函數對原始數據進行處理。則有:

由于可供參考的影響因子多達 9個,因此需要采取降維的方法來減少因子數量,提取出主成分。本文采用主成分分析的方式來抽取合理數量的主要影響因子,利用 SPSS軟件的因子分析功能對表 2的數據進行運算得出各因子間的相關系數矩陣,并列出各因子的初始特征值和對總方差的貢獻率,見表3。

表2 部分年份經標準化處理后的因子數據Tab.2 Data bank of nor malized factors for some years

表3 方差分解主成分提取分析Tab.3 Principal components extraction of variance decomposition
根據表 3的結果可以看出:最初選取的 9個因子是合理且充分的 (貢獻率均≥85%),經過抽取(主成分法抽取)的因子 1和因子 2可以解釋全部所有因子的 97.770%,他們的特征值分別為 7.708和 1.091均大于 1符合因子分析原理,因此提取這兩個主成分(即m=2),列出主成分因子載荷矩陣,見表4。

表4 主成分因子載荷矩陣Tab.4 Componentmatrix of principal factors
通過表 4可知主成分因子1在除了 ZX8外的其他因子上均有很高的載荷,可以根據它們的現實意義歸納總結為“經濟社會發展因素 (F1)”。而主成分因子 2只在 ZX8和 ZX6上有較高載荷,根據其實際意義歸納為“環境因素 (F2)”。令主成分因子 1和因子 2分別為向量 B1、B2,為了得到主成分表達式,將表 4的載荷矩陣進行運算求出表達式中的各項系數。首先求主成分特征值 (抽取后)對應的特征向量,令其分別為A1、A2,則有:

將向量A1、A2分別與標準化處理后的因子數據做內積,即可得到主成分表達式。
根據統計界的最新理論,在主成分分析中一般不采用綜合主成分進行后續分析,因為其結果不唯一。本文在之后的建模過程中將以貢獻率大于85%的因子做數據樣本。
人工神經網絡(Back Propagation,BP)模型具有以任意精度逼近任意非線性函數的映射能力,在水利、電力、化工等領域得到了廣泛的應用[4]。天津大學化工研究所的霍金仙[5]、哈爾濱市水利工程建設監理站的崔仰彬[6]等先后研究了 BP神經網絡在河道外需水量預測中的運用,并驗證了預測結果的合理性。
BP神經網絡由三部分組成:輸入層、隱含層和輸出層。輸入層和輸出層都為單層,隱含層可以為單層,也可以為多層[7]。其學習過程分為信息的正向傳播過程和誤差的反向傳播過程兩個階段,外部輸入的信號經輸入層 、隱含層的神經元逐層處理 ,向前傳播到輸出層 ,給出結果 。如果在輸出層得不到期望輸出,則轉入逆向傳播過程,將實際值與網絡輸出之間的誤差沿原連接通路返回 ,通過修改各層神經元的連接權值,減少誤差 ,然后再轉入正向傳播過程,反復迭代,直到誤差小于給定的值為止[8]。本文擬采用較通用的三層 BP神經網絡,其拓撲結構如圖 1所示。
用美國 MathWorks公司開發的 MATLAB R2010b作為模型的計算平臺。因為 BP神經網絡采用“有教師”的方式訓練學習,樣本由輸入和輸出組成[9]。首先對所有樣本數據進行標準化處理,令Y為儲存各年份需水量的變量 (單位:萬噸),ZY為標準化處理之后的變量,見表 5。

表5 基于時間序列的部分年份需水量Tab.5 Water consumption for some years based on time sequence
(1)訓練樣本確定:將1995年至 2006年的數據作為訓練樣本,2007年和 2008年的數據作為測試樣本。根據前文的主成分分析,查看 ZY與 ZXi(1≤i≤9)的相關系數矩陣,并就各因子對于 ZY的作用大小進行排序:ZX2>ZX7>ZX9>ZX4>ZX1>ZX3>ZX5>ZX6>ZX8,選取前5個因子:ZX2、ZX7、ZX9、ZX4、ZX1作為數據樣本,見表 6。

表6 樣本數據Tab.6 The data of samples
(2)模型參數:訓練函數為 TRA INLM;學習函數為LEARNDM;性能函數為MSE;隱層傳遞函數為TANSIG;輸出層傳遞函數為 PUREL IN。輸入層節點數為 5,輸出層節點數為 1,迭代次數為 1000,慣量因子 0.5,訓練目標誤差 0.001,學習系數為 0.05。
(3)隱含層神經元數目的確定:該層神經元數目采用試算法確定,即以 5為初值向上遞增,檢驗模型的訓練誤差,直到找到誤差最小的值,經驗證隱含層神經元數為 10時,訓練效果最佳,其結構見圖 2。

圖2 構建的BP網絡結構圖Fig.2 Created BP neural ne twork
(1)利用MATLAB的 newff函數創建一個前向型BP神經網絡,格式如下[10]:
net=newff(P,T,[S1 S2…S(N-i)],{TF1TF2…TFNi})
其中:P為輸入樣本向量,即 F1、F2;T為期望響應即輸出;Si為神經網絡各層的神經元數目; N為神經網絡的層數;TFi表示對應網絡層的傳遞函數類型,本例將建立一個 3層的BP神經網絡。
(2)訓練過程經過 17次迭代后,誤差達到容許范圍,見圖 3。

圖3 訓練誤差曲線圖Fig.3 Training error curve
現將測試樣本向量輸入做預測,并將結果作反歸一化處理,得到 2007年和 2008年的需水量分別為 52045萬m3、59105萬m3,與實測值 52127萬m3、59462萬m3的誤差分別為 -0.16%和 -0.60%,具有很高的精度,完全可以滿足實際工程的需要,現將各年份的模型擬合值及實測值列出,并繪出需水量年際變化曲線,見表 7、圖 4。

表7 部分年份期望輸出與實際輸出值Tab.7 Expected outputs and actual outputs for some fears

圖4 模型曲線圖Fig.4 Model curve
從圖 4可以看出,利用BP神經網絡算法能夠很好地逼近希望得到的函數,故而由此建立的水量預測模型是合理可用的。該模型很好的反應了成都市需水量與主要影響因素的函數關系,在進行未來需水量的預測時,只需確定主成分分析中的 5個主要影響因素:人口、農業增加值、第三產業增加值、給水管道長度、排水管道長度,即可計算出需水量。其中前 3個因素取值可以根據相關的社會發展和國民經濟規劃來確定;后兩個因素則可以再次通過建立基于時間序列的BP神經網絡模型,預測出規劃年份的值。本文通過此種方式預測出成都市2010年需水量約為 63727萬m3。
BP神經網絡具有很強的非線性映射能力,因此對于非線性關系的樣本數據它能夠很好的找出其內在聯系,適于處理具有復雜變量的現實問題。在建模前進行的主成分分析則簡化了輸入的樣本,減少了輸入的節點數,極大地提高了程序的運行效率。
值得關注的是,對樣本數據進行預處理可以有效地提高網絡的學習能力和預測精度,在今后的水資源規劃中可以考慮推廣使用該方法對需水量進行定量預測,并結合定額法等傳統方法使得水資源的規劃工作更加科學、更加具有指導意義。
[1] 劉昌明,王紅瑞 .淺析水資源與人口、經濟和社會環境的關系[J].自然資源學報,2003,18(4):635-642.
[2] 劉丹丹,馮利華,王 寧,石 磊 .基于BP神經網絡的義烏市水資源需求量預測[J].水資源與水工程學報,2010,1 (3):114-117.
[3] 傅 湘,紀昌明 .區域水資源承載能力綜合評價—主成分分析法的應用[J].長江流域資源與環境,1999,8(2):168-173.
[4] 郭 默 .基于BP神經網絡的施工揚塵量化建模研究[D].蘭州大學,2010.
[5] 霍金仙,郭 永,劉文先 .基于BP網絡的全國需水量預測研究[J].人民黃河,2009,31(9):54-56.
[6] 崔仰彬,董珊珊,楊 曦 .人工神經網絡在城市需水量預測中的應用[J].水利科技與經濟,2009,15(11):988-990.
[7] 魏海坤 .神經網絡結構設計的理論與方法[M].Beijing:NationalDefence Industry Pres,200525-36.
[8] 王 旭.人工神經元網絡原理與應用[M].沈陽:東北大學出版社,2002.
[9] 朱 凱,王正林.精通MATLAB神經網絡[M].北京:電子工業出版社,2010.193-224.
[10] 陳小強,胡向紅,袁鐵柱,張 建 .BP神經網絡在灌區需水量預測中的應用[J].地下水,2009,31(6):174-176.