邱 琴,孫 偉,, 李建貴,古麗米拉·克孜爾別克, 曹姍姍
(1.新疆農(nóng)業(yè)大學(xué) 計算機與信息工程學(xué)院,烏魯木齊 830052; 2.中國農(nóng)業(yè)科學(xué)院 農(nóng)業(yè)信息研究所,北京 100081;3.新疆農(nóng)業(yè)大學(xué) 林業(yè)研究所,烏魯木齊 830052)
生態(tài)水文模型是研究水碳循環(huán)過程及其相互影響的一種有效途徑[1-2],涌現(xiàn)了諸如SWAT[3-4]、VIC[5-6]、SHE[7]、SWIM[8]、EcoHAT[9]和新安江[10]等多種模型。目前,采用多模型集成法構(gòu)建水碳耦合模型已成為主流趨勢,主要有適合較大尺度生態(tài)服務(wù)功能評估的InVEST模型[11-13]、模擬水在土壤-植被-大氣連續(xù)統(tǒng)一體中流動的Terrain Lab模型[14]和月尺度區(qū)域水碳動態(tài)循環(huán)過程模擬的WaSSI-C模型[15-19]等,均具有計算效率高、模擬動態(tài)化和綜合性強等特點。但是,由于多模型集成法的算法復(fù)雜度高、時空數(shù)據(jù)量大、計算能力要求高[20],而且多是基于傳統(tǒng)的命令行模式和文本數(shù)據(jù)實現(xiàn)模型運算,影響了模型的區(qū)域化應(yīng)用、迭代優(yōu)化升級和適應(yīng)性改進。
近年來,應(yīng)用模塊化和可視化方法提升生態(tài)水文模型應(yīng)用能力已成為現(xiàn)代水文模擬技術(shù)的研究熱點。在國際上,主要有基于軟件模塊化思想和組件化方法開發(fā)的MMS[21]、OMS[22]、WARSMP等系統(tǒng),以及結(jié)合GIS可視化方法實現(xiàn)的MODFLOW[23-24]、ArcSWAT[25]、AVTOP[26]等模型工具,提升了生態(tài)水文過程模擬和分析功能的復(fù)用性和便捷性;在國內(nèi),主要是采用面向?qū)ο筌浖椒ńY(jié)合GIS平臺接口實現(xiàn)的HIMS[27-28]、WIM[29]、BTOPMC/SCAU[30]等系統(tǒng),以及融合遙感平臺接口的EcoHAT[9]系統(tǒng),實現(xiàn)了流域水系統(tǒng)綜合管理與時空模擬。上述研究均是綜合應(yīng)用計算機、地理信息系統(tǒng)(GIS)和遙感等信息技術(shù)實現(xiàn)生態(tài)水文模型的可視化應(yīng)用,有效克服了部分生態(tài)學(xué)模型機理不易掌握、計算過程復(fù)雜、人機交互困難等問題,提升了模型易用性和可推廣性。
目前,區(qū)域水碳耦合過程模擬的經(jīng)典模型WaSSI-C在我國部分區(qū)域得到良好的應(yīng)用,劉寧等[31]成功將模型應(yīng)用于雜谷腦河流域,侯曉臣等[32-33]在塔里木河干流上游區(qū)和焉耆盆地對模型進行了適用性改進和應(yīng)用。而且WaSSI-C模型構(gòu)建團隊開發(fā)了WaSSI Web系統(tǒng),能夠在線展示美國、墨西哥和盧旺達3個地區(qū)中的水、碳動態(tài)循環(huán)過程模擬效果[15,17],但是,該系統(tǒng)僅僅是一個模型應(yīng)用案例展示系統(tǒng),不能輸入其他區(qū)域數(shù)據(jù)實現(xiàn)模型的真實動態(tài)運行,限制了模型的應(yīng)用和改進。因此,本研究在應(yīng)用軟件模塊化方法對WaSSI-C模型運行過程進行系統(tǒng)分解的基礎(chǔ)上,設(shè)計并實現(xiàn)簡單易用、計算效率高、普適性強的GIS可視化模擬系統(tǒng),并以焉耆盆地為例驗證系統(tǒng)應(yīng)用效果,以期為區(qū)域水碳資源分析和模擬決策提供模型工具,也為生態(tài)學(xué)模型可視化研究提供參考。
WaSSI-C模型是一個綜合的分布式水文模型,以月為時間尺度、水文響應(yīng)單元為空間尺度,旨在模擬多尺度、大區(qū)域中水、碳循環(huán)的動態(tài)變化及其耦合過程,其核心部分由水平衡過程和生態(tài)系統(tǒng)生產(chǎn)力過程組成[34]。水循環(huán)模塊又稱為水平衡模塊,主要反映水資源循環(huán)中輸入、輸出數(shù)據(jù)的動態(tài)變化過程,用于模擬流域生態(tài)系統(tǒng)的降水、蒸散、滲透、積雪和徑流的過程,包含蒸散量計算過程、冰雪累積與融化過程、土壤水分及滲透計算過程、徑流計算過程等。碳循環(huán)模塊又稱為生態(tài)系統(tǒng)生產(chǎn)力模塊,受到蒸散模塊和水平衡模塊的高度控制,它主要反映水、碳循環(huán)間的緊密耦合過程,旨在模擬流域內(nèi)碳交換的動態(tài)過程,如生態(tài)系統(tǒng)總生產(chǎn)力和凈生態(tài)系統(tǒng)交換過程。陸垂裕等[35]、劉昌軍等[36]分別在水量平衡分析模型MODCYCLE和小流域暴雨洪水分析模型FFMS基礎(chǔ)上,進行軟件模塊化開發(fā),界面操作簡單、可視化功能強大,可實現(xiàn)水文模擬的并行運算,大幅提高了模型的計算速度。本文基于對WaSSI-C模型運行機理過程的分析,采用軟件模塊化思想對WaSSI-C模型的計算過程進行劃分和解析,主要包括1個文本和圖形數(shù)據(jù)輸入模塊、1個結(jié)果集輸出模塊以及蒸散模塊、水循環(huán)模塊、碳循環(huán)模塊等3個計算模塊,見圖1。
圖1 WaSSI-C模型的模塊化解析結(jié)構(gòu)Fig.1 Modular analytical structure of WaSSI-C model
采用客戶端/服務(wù)器(C/S)架構(gòu)模式設(shè)計系統(tǒng)的三層體系結(jié)構(gòu),即應(yīng)用層、業(yè)務(wù)邏輯層和數(shù)據(jù)層,見圖2。與瀏覽器/服務(wù)器(B/S)架構(gòu)模式相比,C/S架構(gòu)模式具有響應(yīng)速度快、數(shù)據(jù)處理量大、用戶界面友好、交互性強等特點[37],而且單機運行時不受限于網(wǎng)絡(luò)速度,安全性更高。周買春等[30]、鄧仕虎等[38]、強德霞等[39]分別采用C/S多層級架構(gòu)和數(shù)據(jù)庫技術(shù)進行了BTOPMC/SCAU分布式流域水文系統(tǒng)、水環(huán)境模型系統(tǒng)、洪水預(yù)報系統(tǒng)的設(shè)計與實現(xiàn)。
圖2 系統(tǒng)體系架構(gòu)設(shè)計Fig.2 Design of system architecture
應(yīng)用層即客戶端界面,是用戶與系統(tǒng)交互的窗口,用戶通過客戶端交互界面完成數(shù)據(jù)加載、查詢、計算、模擬和結(jié)果輸出等功能,支持Excel表格的文本格式和Shapefile矢量圖層的空間數(shù)據(jù)輸入和展示輸出;業(yè)務(wù)邏輯層可有效降低應(yīng)用層與數(shù)據(jù)層之間復(fù)雜的耦合關(guān)系,獲取應(yīng)用層業(yè)務(wù)處理請求和輸入數(shù)據(jù),同時從數(shù)據(jù)層讀取相關(guān)數(shù)據(jù),然后利用算法進行模擬運算,最終將結(jié)果整合后發(fā)給數(shù)據(jù)層對數(shù)據(jù)庫進行更新;數(shù)據(jù)層實現(xiàn)數(shù)據(jù)采集、存儲、訪問及優(yōu)化等功能。基于C/S模式的三層架構(gòu)設(shè)計可以實現(xiàn)各層之間的獨立性,進而確保系統(tǒng)的穩(wěn)定性、實用性和擴展性。
WaSSI-C模型基于不同研究區(qū)域的特點進行劃分,以水文響應(yīng)單元作為空間響應(yīng)尺度,傳統(tǒng)的關(guān)系型數(shù)據(jù)庫無法滿足空間屬性數(shù)據(jù)的存儲需求。Geodatabase是面向?qū)ο蟮目臻g數(shù)據(jù)存儲模型,支持存儲和管理空間地理信息,空間數(shù)據(jù)引擎(SDE)作為橋梁可將關(guān)系型數(shù)據(jù)庫管理系統(tǒng)(DBMS)與GIS充分集成,提供對時間屬性的支持,具有海量數(shù)據(jù)存儲、多用戶并發(fā)操作、數(shù)據(jù)共享等優(yōu)點[40]。本文將焉耆盆地空間幾何信息以面要素Shapefile格式存儲在Geodatabase數(shù)據(jù)庫中,模型運行數(shù)據(jù)、模擬時間和用戶信息以Excel格式存儲在SQLite數(shù)據(jù)庫,在空間、屬性、時間之間建立相關(guān)聯(lián)系。通過將焉耆盆地區(qū)域的自然地理空間位置、氣候環(huán)境特征緊密結(jié)合,為空間層面實現(xiàn)區(qū)域性和綜合性的水碳耦合時空分析提供技術(shù)支撐。
WaSSI-C模型需要大量輸入數(shù)據(jù)和驗證數(shù)據(jù),輸入數(shù)據(jù)包括氣象數(shù)據(jù)(溫度、降水量)、地形數(shù)據(jù)(高程、經(jīng)緯度)、葉面積指數(shù)(LAI)和土地覆被等,驗證數(shù)據(jù)包括蒸散(ET)、徑流(RUNOFF)和總生態(tài)系統(tǒng)生產(chǎn)力(GEP),見表1。
表1 WaSSI-C模型數(shù)據(jù)集的來源Table 1 Sources of WaSSI-C model dataset
由于WaSSI-C模型既存在空間數(shù)據(jù)也包含屬性數(shù)據(jù),而且數(shù)據(jù)來源多樣、分辨率各異、處理過程復(fù)雜,本研究根據(jù)模型數(shù)據(jù)的時空特征、數(shù)據(jù)結(jié)構(gòu)和運算需求,基于時空數(shù)據(jù)庫理論方法,設(shè)計了系統(tǒng)的實體-聯(lián)系模型(E-R模型,Entity-Relationship Model)(見圖3)。
圖3 系統(tǒng)的E-R模型Fig.3 E-R model of the system
圖3中WaSSI-C模型數(shù)據(jù)包含13個實體集(用戶表、時間表、高程、緯度、溫度、降水、土壤不透水率、土地面積占比、土壤濕度、葉面積指數(shù)、蒸散、徑流、總生態(tài)系統(tǒng)生產(chǎn)力)。每個實體集(一個實體集類似于數(shù)據(jù)表)用矩陣表示,在框內(nèi)寫上實體名和屬性,帶*的屬性為主鍵(唯一標(biāo)識屬性)。箭頭表示數(shù)據(jù)集與實體之間的聯(lián)系,箭頭上的1、N表示一對多,M、N表示多對多,1、1表示一對一的關(guān)系。用戶表箭頭指向WaSSI-C模型數(shù)據(jù),其中的1、管理、N表示每一個用戶都可以管理多個WaSSI-C模型數(shù)據(jù);例如:WaSSI-C模型數(shù)據(jù)箭頭指向地形數(shù)據(jù)箭頭指向高程,表示多個WaSSI-C模型數(shù)據(jù)擁有多張地形數(shù)據(jù)(多對多用M和N表示),而一個地形數(shù)據(jù)同時包含多個高程數(shù)據(jù)(一對多用1和N表示)。
WaSSI-C模型需要大量輸入數(shù)據(jù)和驗證數(shù)據(jù),輸入數(shù)據(jù)包括氣象數(shù)據(jù)(溫度、降水量)、地形數(shù)據(jù)(高程、緯度)、葉面積指數(shù)和土地類型等,見表2。驗證數(shù)據(jù)包括蒸散、徑流和總生態(tài)系統(tǒng)生產(chǎn)力,見表3。
表2 輸入數(shù)據(jù)Table 2 Input data
表3 驗證數(shù)據(jù)Table 3 Validation data
WaSSI-C模型以傳統(tǒng)的MatLab命令行方式運行,能夠發(fā)揮MatLab強大的數(shù)值運算能力,可以高效完成大量復(fù)雜的氣象和環(huán)境數(shù)據(jù)計算。Scilab是一款與MatLab類似的開源科學(xué)工程計算軟件,可以實現(xiàn)科學(xué)計算、數(shù)學(xué)建模、信號處理、決策優(yōu)化等功能[41]。系統(tǒng)使用Scilab提供的語言轉(zhuǎn)換函數(shù)把WaSSI-C模型原來的 MatLab語言編寫的程序轉(zhuǎn)換為Scilab語言,進而脫離MatLab限制。.Net語言具有面向?qū)ο蟆OM組件、跨平臺等優(yōu)點,能夠開發(fā)出人機界面友好、操作靈活、執(zhí)行效率高、可移植性強的應(yīng)用軟件。因此,本研究采用Scilab.Net混合編程的方法,既可以利用C#良好的應(yīng)用程序界面開發(fā)能力,又可以發(fā)揮Scilab強大的數(shù)值運算能力,還能有效縮短開發(fā)周期。
組件式GIS是地理信息系統(tǒng)開發(fā)的潮流之一,將原有GIS功能適當(dāng)?shù)爻橄?,基于組件對象平臺,實現(xiàn)GIS應(yīng)用的不同需求。ArcGIS Engine是一個獨立存在的開發(fā)包和運行時環(huán)境構(gòu)成的模塊化、組件式的基礎(chǔ)類庫集合,提供了許多功能強大的應(yīng)用程序接口,通過二次開發(fā)能夠迅速實現(xiàn)自定義需求的GIS系統(tǒng)[42]。采用C#編程語言實現(xiàn)WaSSI-C模型與ArcGIS Engine組件的無縫耦合,通過統(tǒng)一的應(yīng)用程序窗體實現(xiàn)時空數(shù)據(jù)的無障礙交互處理,并充分發(fā)揮各自優(yōu)勢。GIS組件可在應(yīng)用窗口實現(xiàn)Shapefile矢量圖層的加載、導(dǎo)出、瀏覽、渲染以及字段編輯等操作,同時將數(shù)據(jù)集轉(zhuǎn)換成WaSSI-C模型的輸入數(shù)據(jù)進行模擬計算,運行結(jié)果返回至應(yīng)用窗體中進行下一步模塊計算。通過集成WaSSI-C模型與ArcGIS Engine,不僅可開發(fā)出完善的功能模塊,實現(xiàn)WaSSI-C模型的可視化模擬,同時還減少成本、縮短周期以及增強系統(tǒng)的擴展性。
系統(tǒng)在.Net開發(fā)環(huán)境下,基于ArcGIS Engine二次開發(fā)組件,使用C#語言進行Scilab.Net混合編程,實現(xiàn)WaSSI-C模型GIS可視化模擬系統(tǒng)的功能,其結(jié)構(gòu)見圖4。
圖4 系統(tǒng)關(guān)鍵技術(shù)結(jié)構(gòu)Fig.4 Structure of system’s key technologies
基于已獲取的焉耆盆地實測徑流數(shù)據(jù)和MODIS的蒸散 (ET) 數(shù)據(jù)以及總生態(tài)系統(tǒng)生產(chǎn)力(GEP)數(shù)據(jù)進行系統(tǒng)功能測試和應(yīng)用驗證,利用決定系數(shù) (R2) 和效率系數(shù) (NS) 分別對模型的輸出結(jié)果進行相應(yīng)的驗證,進而分析WaSSI-C模型系統(tǒng)在研究區(qū)的適用性。首先需要用戶對系統(tǒng)中的模型參數(shù)進行設(shè)置(見圖5),提供水文響應(yīng)單元、區(qū)域數(shù)量值、土地類型值和模型模擬的時間區(qū)間。其中,水文響應(yīng)單元、區(qū)域數(shù)量值和土地類型可通過下拉菜單選擇或手動輸入,在時間跨度中可自行選擇模型模擬的起始和終止時間。
圖5 系統(tǒng)參數(shù)設(shè)置Fig.5 Setting of system parameters
系統(tǒng)以潛在蒸散量(PET)計算為例,需上傳氣溫數(shù)據(jù)、上傳緯度數(shù)據(jù)、輸入月份值和校準(zhǔn)系數(shù)。在文本模擬界面主要針對文本數(shù)據(jù),輸入輸出數(shù)據(jù)保存為表格形式,在模擬過程始終為非可視化形式(見圖6);空間數(shù)據(jù)界面主要針對空間可視化數(shù)據(jù),其輸入輸出數(shù)據(jù)均為.shp格式的矢量數(shù)據(jù),模擬過程始終以地圖形式顯示,其中屬性表模塊可實現(xiàn)查詢要素、刪除數(shù)據(jù)、修改數(shù)據(jù)、顯示選中要素、將屬性表導(dǎo)出為Excel表格等功能。查詢字段時將會在地圖中以藍色高亮顯示結(jié)果,并且可以實現(xiàn)對目標(biāo)圖層的字段添加或刪除等操作。其界面布局及其功能與ArcGIS Map相似,使用戶更容易操作(見圖7)。圖層渲染工具可選取不同顏色的色帶對地圖顯示效果進行調(diào)整,利用不同的渲染方式對字段值進行渲染,不同區(qū)域顏色的深淺代表值的大小(見圖8)。通過提供種類豐富的渲染方式,便于用戶根據(jù)需求對輸出結(jié)果進行直觀的分析。
圖6 文本模擬PET計算Fig.6 PET calculation of text simulation
圖7 空間模擬PET計算Fig.7 PET calculation of space simulation
圖8 4種渲染方式效果Fig.8 Result of four rendering methods
系統(tǒng)將2000—2009年作為WaSSI-C模型的率定期,2010—2015年作為驗證期,通過對系統(tǒng)模擬結(jié)果和觀測數(shù)據(jù)的對比驗證,利用決定系數(shù)(R2)和效率系數(shù)(NS)分別對2個時期的模擬效果進行定量評價,進而分析WaSSI-C模型在焉耆盆地的適用性,見表4。系統(tǒng)的蒸散、徑流和總生態(tài)系統(tǒng)生產(chǎn)力與實測值在率定期和驗證期的R2和NS較為理想,其中率定期R2和NS均值分別為0.83和0.81,驗證期2個評價指標(biāo)均值為0.8和0.76,率定期略優(yōu)于驗證期,總體上顯示出良好的模擬效果,因此可以確定WaSSI-C模型系統(tǒng)在焉耆盆地具有較好的適用性。
表4 率定期和驗證期評價指標(biāo)值Table 4 Evaluation index values in calibrationperiod and verification period
本研究綜合應(yīng)用軟件模塊化方法、GIS可視化方法和時空數(shù)據(jù)模型等技術(shù),設(shè)計并實現(xiàn)了WaSSI-C模型的可視化模擬系統(tǒng),并將焉耆盆地2000—2009年作為率定期,2010—2015年作為驗證期對系統(tǒng)模擬效果進行對比驗證,主要結(jié)論如下:
(1)通過軟件模塊化思想解析生態(tài)學(xué)模型是有效的,從軟件設(shè)計的角度對模型運算過程進行分析和劃分,可以把模型復(fù)雜的機理過程轉(zhuǎn)化為軟件模塊設(shè)計。本研究把WaSSI-C模型的水平衡過程和生態(tài)系統(tǒng)生產(chǎn)力過程解析為蒸散模塊、水循環(huán)模塊、碳循環(huán)模塊共3個核心計算模塊,并理清了模塊之間的邏輯關(guān)系,便于程序功能設(shè)計和實現(xiàn)。研究結(jié)果證明軟件模塊化開發(fā)對時空變源分布式水文模型具有較大的推廣應(yīng)用價值,可為相關(guān)領(lǐng)域研究人員提供一定參考。
(2)采用C/S架構(gòu)模式和時空數(shù)據(jù)庫E-R模型開發(fā)生態(tài)學(xué)模型可視化軟件系統(tǒng)是可行的,根據(jù)多層級、時空數(shù)據(jù)庫理論的方法對模型軟件的架構(gòu)和數(shù)據(jù)庫進行分析和設(shè)計,可以將復(fù)雜的水文模型可視化系統(tǒng)分解為多層次結(jié)構(gòu)。本研究將WaSSI-C模型GIS可視化模擬系統(tǒng)架構(gòu)分解成應(yīng)用層、業(yè)務(wù)邏輯層和數(shù)據(jù)層,根據(jù)WaSSI-C模型的時空特征、數(shù)據(jù)結(jié)構(gòu)設(shè)計了E-R模型圖,不受限于網(wǎng)絡(luò)速度,安全性更高,保障了模型軟件的獨立性、穩(wěn)定性和可擴展性。本研究具有較高的實用性,提高了系統(tǒng)結(jié)構(gòu)與層次的清晰度,對分布式水文模型系統(tǒng)設(shè)計與開發(fā)奠定了良好的基礎(chǔ)。
(3)綜合集成GIS組件和Scilab.Net混合編程開發(fā)的模型可視化系統(tǒng)具有簡單易用、運算效率高、普適性強、移植性強等特點。系統(tǒng)采用組件式GIS技術(shù)進行二次開發(fā),以C#為中間紐帶將Scilab與ArcGIS Engine結(jié)合起來,可為相關(guān)領(lǐng)域研究提供有力工具支撐,提升WaSSI-C模型應(yīng)用效率。利用.NET環(huán)境搭建平臺,通過Scilab.Net混合編程的方法實現(xiàn)數(shù)值復(fù)雜的運算處理功能,極大提高了模型的運算效率,完成文本和空間可視化的模擬。C#和ArcGIS Engine的結(jié)合開發(fā)實現(xiàn)模型數(shù)據(jù)的可視化、圖像渲染、屬性查詢等功能,使得空間可視化模擬能夠更加直觀顯示、快速有效查詢信息,不僅繼承了模型的文本處理功能,還首次實現(xiàn)了模型在空間數(shù)據(jù)下的模擬。系統(tǒng)憑借使用方便、良好的可視化界面和模擬結(jié)果精準(zhǔn)的優(yōu)點,彌補了WaSSI-C模型在可視化領(lǐng)域的不足,有助于WaSSI-C模型模擬和評價工作的開展與推廣,實現(xiàn)水、碳資源的可持續(xù)利用和有效管理?;旌暇幊涕_發(fā)技術(shù)可為相關(guān)領(lǐng)域研究提供有力工具支撐,也可為生態(tài)學(xué)、水文學(xué)等專業(yè)領(lǐng)域模型可視化研究提供借鑒思路。