陈文龙,张 煜,曹 波,沈定涛,叶 松
(长江科学院 空间信息技术应用研究所,武汉 430010)
分布式水文模型与网络GIS技术集成的研究
陈文龙,张 煜,曹 波,沈定涛,叶 松
(长江科学院 空间信息技术应用研究所,武汉 430010)
分布式水文模型是目前流域模型方面的研究热点。为此,将分布式水文模型与网络GIS技术相集成,探讨了分布式水文模型在网络GIS框架下的数据存储、物理实现和消息通信方式,设计了完整的分布式水文模型与网络GIS框架集成方案,并根据集成方案实现了CREST模型的网络计算服务实例。实例结果表明,分布式水文模型与网络GIS技术集成具有良好的应用效果,能够拓展分布式水文模型的应用范围。
分布式水文模型;网络GIS技术;框架集成;网络计算服务;CREST
流域水文模型是对流域上的水文过程进行模拟所建立的数值计算模型,其本质是利用一定的数学方法对自然界复杂的水文循环过程近似模拟的概化工具[1],按照模型的结构和参数的物理完善性,现有的水文模型可分为概念性模型和分布式模型[2],分布式水文模型由于考虑到流域表面水力学特征的非均匀性,能够较为准确地反映出下垫面因子空间分布对降雨径流的影响,所以已经成为了现在流域模型方面的研究和应用的热点[3-5]。与集中式水文模型相比,分布式水文模型将要分析的流域范围划分为相当多的计算单元,计算量相对较大,而且分布式模型一般参数众多,算法复杂[6],这在一定程度上增加了分布式模型的计算复杂度和运行时间,阻碍了分布式水文模型的应用和推广。
地理信息系统(GIS)技术的发展为分布式水文模型的发展提供了新的契机,GIS强大的空间数据管理能力可以为分布式模型的数据管理和处理提供技术支撑,所以将GIS技术与分布式水文模型结合起来,以GIS技术为框架支撑,在此基础上融合入分布式水文模型作为功能逻辑,已经成为了许多研究者的重点研究方向[7-11]。但是分布式水文模型和GIS技术侧重点各有不同,将两者有机结合起来是个不小的挑战,而且对于试图充分利用其优点的研究者都需要自己构建相应的软硬件平台,这也是对资源的重复浪费。流域水文模型的计算过程其实可以看作是一个“服务”过程,用户提供模型所需的参数,模型经过计算后返回用户计算结果,最终用户往往并不关心模型结果的计算方式和获取方式,这和网络GIS计算服务[12]的内涵是基本一致的。
本文旨在充分利用网络GIS技术的优势,将其与分布式水文模型集合,构建分布式水文模型计算网络服务,挖掘分布式水文模型的应用潜力。
分布式水文模型利用水循环的动力学机制来模拟研究流域的水文过程。不同于集中式水文模型,分布式水文模型将下垫面和气候因子的空间分布不均匀性作为模型的一个重要考虑因素,同时分布式水文模型一般有着更加明确的物理意义,所以可以使用严格的数学物理方程描述模型的各个状态过程,总的来说分布式水文模型有如下几个突出特点:
(1) 流域根据实际需要被离散划分为多个独立的计算单元,每个计算单位内的性质差别相对较小,离散的计算单元越多,模型计算的精度相对越大,计算量也相应增加。
(2) 分布式水文模型结构一般较复杂,通常被划分为诸多功能相对独立的子模块,所以模型所需的输入数据及过程参数种类和数量都较为繁杂,输入和过程数据的管理是模型使用的一项重要内容。
(3) 分布式水文模型采用可推导的数学公式来数值模拟水文循环中的各个物理过程,同时也考虑这些水文过程之间的相互作用和水量传导,所以模型使用了大量复杂的偏微分方程或者其他数学方程来进行计算,以求得到确定的数值解,这使得分布式水文模型的计算过程涉及到相当大的计算量,对水文模型的迅速响应构成阻碍。
由以上分布式水文模型的特点可见,分布式水文模型的应用涉及大规模多类型数据管理、计算参数和结果转换,以及计算过程的较快速运行,这些都是分布式水文模型与其他框架平台集成的关键结合点和突破点。
GIS是以空间数据为基础,结合分析计算模型,对各种地理信息执行存储管理、分析处理和输出表达等一系列功能,是一种在计算机软硬件支持下为空间分析和地理决策服务的空间信息系统技术。网络地理信息系统(Web GIS)是将网络技术和GIS相结合的产物,能够在网络环境下为各种应用提供GIS的分析和表达功能,其本质是一个基于网络的分布式空间信息管理和服务系统,能够将原来单独计算机的GIS服务,通过网络技术的支持,提供给任意用户使用[13]。网络GIS不但拥有传统GIS系统强大的空间分析功能,还有一些在网络条件支持下的独有特点:
几声长音过去。静了片刻,风中便传来飘渺空灵、凄清孤高的曲调。寒风在窗外呼呼作响,西风再凛冽,此刻也只能当箫音的陪衬。
(1) 数据存储和分析应用工具都可以是分布式的管理,并不一定存放在同一个服务器上,用户直接通过网络即可访问所有的数据和分析工具,服务端的结构和处理方式对于客户端是完全透明的。
(2) 客户端与服务端通过规定的网络通信协议进行数据的传输和请求通信,其基本过程是客户端通过网络向服务器发出请求,服务端收到特定请求后进行数据的处理和分析,然后将分析和结果返回给用户。
(3) 客户端与服务端具有各自的平台独立性,客户端可以采用任意的操作系统,只要安装有浏览器即可,服务器和客户端之间没有任何的硬件关联,只需要满足特定的通信协议和接口。
网络GIS以上这些特点使得分布式水文模型的具体实现必须满足一定的条件才能集成至网络GIS平台框架上面,水文模型的服务端实现必须满足网络GIS数据结构组织、服务调用响应、计算结果返回等一系列要求。
4.1 分布式水文模型的数据组织管理
分布式水文模型的输入参数和过程参数不但类型较多,数据量也普遍较大,单纯数据存储文件的形式对于网络GIS多任务处理的要求是很难满足的。分布式水文模型计算所要求的数据类型主要包括栅格数据和单独的数值参数,针对这2种数据类型的特点,可以采用数据库和数据文件相结合的形式,统一进行管理和使用(图1)。
图1 数据组织管理示意图
对于栅格数据集,将其以特定的栅格文件格式在服务器上数据存储,同时在数据库中建立相应的数据集索引,实现逻辑上的层次结构管理,物理上的任意位置存储,而对于单独的数值参数,则根据分布式水文模型的所需参数的特点,在数据库中设计相应的表结构直接存储数值。
4.2 分布式水文模型的物理实现
图2 分布式水文模型管理框架示意图Fig.2 Diagram of management framework of distributed hydrologic model
针对这些对分布式水文模型与网络GIS框架集成的要求,在对分布式水文模型进行具体的计算机物理实现时,设计一套负责具体调用和管理水文模型的模型管理框架(见图2)。对水文模型的计算调用通过这个管理框架来实现,水文模型的计算结果也由管理框架进行相应的返回输出,总的来说,模型管理框架的主要作用为:
(1) 接受所有的模型计算请求,为计算请求调用相应的分布式水文模型,并分配计算机线程和内存资源,将每个模型计算任务加入框架的任务列表。
(2) 对于多个模型任务竞争使用的数据等资源,管理框架将竞争的计算任务维护为有序队列,确保资源的任务唯一占有,并将使用完资源的任务移出队列。
(3) 接受来自网络GIS框架的参数数据并传递给计算模型,同样将模型计算的结果返回至网络GIS框架平台,对于已经完成的分布式水文模型计算,回收相应的内存和数据资源。
4.3 分布式水文模型在网络GIS平台下的集成与交互
用户的数据浏览和模型计算请求都是提交给服务端上的网络GIS平台,分析处理后的结果也是通过网络GIS平台返回给请求用户。在网络环境下,用户直接面向的对象是网络GIS平台,而不是单独的分布式水文模型,所以在构建出模型管理框架的基础上,还要考虑网络GIS平台与模型的指令交互问题,以及将模型计算结果提取至网络GIS平台,经服务端处理成适合网络传输的数据,再呈现给用户。
本文采用的解决方式是利用网络GIS平台自有的运行组件和程序构建语言,在网络GIS平台和模型管理框架之间建立一个通信的中间层,中间层满足网络GIS平台功能组件的所有接口,同时将GIS平台的调用指令转换为模型管理框架可以接受的形式进行传递,这样网络GIS就通过接口调用中间层间接使用分布式水文模型的所有计算功能。对于模型计算的结果,中间层将其转换为网络GIS平台可以接受的数据结构以供GIS平台进一步处理。尽管分布式水文模型与GIS平台之间的计算机实现语言和运行方式可能不同,但是通过这个通信中间层,可以实现网络GIS平台与分布式水文模型的紧密集成与方便交互。
根据本文对分布式水文模型与网络GIS技术集成的设计方案,将CREST水文模型与网络GIS平台结合,实现CREST模型计算的网络服务功能,以及与GIS其他地图服务的相互融合。
CREST(Coupled Routing and Excess Storage)水文模型是一个基于流域的河道汇流和蓄满产流原理的分布式水文模型[14],目前已经得到比较广泛的应用。CREST与ArcGIS Server集成结构如图3所示。
图3 CREST与ArcGIS Server集成结构Fig.3 Structure of the integration of CREST and ArcGIS Server
在本实例中使用C++程序语言将模型管理框架和CREST模型编写为动态链接库程序,以供通信中间层调用。网络GIS平台使用ArcGIS Server平台,ArcGIS Server是目前功能最为强大的网络GIS平台,提供了在分布式环境下进行地理数据管理、浏览、地理处理和分析等GIS功能[15]。ArcGIS Server除了提供已有的功能外,还能利用其自有的ArcObject组件扩展更多的功能。这里使用ArcObject .Net进行通信中间件的编写,实现CREST模型与ArcGIS Server的调用通信和数据传输,ArcGIS Server将CREST计算发布为REST类型[16]的网络Geoprocessing服务(GP服务),凡是能够连接网络服务器的客户端应用,只需根据CREST模型GP服务的URL(网络地址)即可调用CREST计算服务。CREST模型计算的输入数据和其他参数使用服务器数据库进行存储,并利用ArcGIS提供的空间数据引擎[17]提供空间数据库的支持。
图4 CREST模型网络计算和计算结果展示Fig.4 Network computing and display of calculation result of CREST model
图5 CREST模型时间序列计算结果Fig.5 Time sequence results of CREST model computing
本实例在客户端利用JavaScript在浏览器中实现CREST的计算界面,计算的地理范围为CREST模型发表时的测试区域——肯尼亚恩佐亚河流域[14],任何用户通过该网络页面即可提交计算,计算完毕后会将结果实时返回至浏览器,并且计算结果都包含地理坐标信息,能与原有的地图服务很好的融合(图4),也能对一个时间序列进行计算,展示CREST模型计算结果随着时间和参数的动态变化过程(图5)。
对下垫面因素空间分布的考虑是分布式水文模型一个突出的特点,使得分布式水文模型成为目前水文模型方面的热点,但是这也使得分布式水文模型存在数据搜集与管理的不便,以及计算复杂度较大的问题,而网络GIS技术的空间数据管理和地理服务功能为解决分布式水文模型的应用困境提供了很好的契机。
本文根据分布式水文模型和网络GIS技术的特点,设计了分布式水文模型与网络GIS平台的集成方案,该集成方案考虑到了分布式水文模型的物理实现和管理,以及与网络GIS平台的通信和数据传输,并将分布式水文模型和网络GIS集成方案实现为具体实例。由实例可见,基于网络GIS技术的分布式水文模型计算服务具有方便的访问方式和快速的计算过程,可供任意用户同时并发使用,并且不需要客户端额外安装任何插件和程序,说明了网络GIS技术与分布式水文模型集成具有很好的应用潜力,能够将分布式水文模型的使用推往更多的领域。
[1] 赵人俊. 流域水文模拟[M]. 北京:水利电力出版社,1984.
[2] 万洪涛,周成虎,万 庆,等, 地理信息系统与水文模型集成研究述评[J]. 水科学进展, 2001, 12(4): 560-568.
[3] AJAMI N K,GUPTA H,WAGENER T,etal. Calibration of a Semi-distributed Hydrologic Model for Stream Flow Estimation along a River System[J]. Journal of Hydrology, 2004, 298(1/4): 112-135.
[4] DUTTA D, HERATH S,MUSIAKE K. Flood Inundation Simulation in a River Basin Using a Physically based Distributed Hydrologic Model[J]. Hydrological Processes, 2000,14(14): 497-519.
[5]CARPENTER T M,GEORGAKAKOS K P. Impacts of Parametric and Radar Rainfall Uncertainty on the Ensemble Stream flow Simulations of a Distributed Hydrologic Model[J]. Journal of Hydrology, 2004,298(1/4): 202-221.
[6] 芮孝芳,黄国如. 分布式水文模型的现状与未来[J]. 水利水电科技进展, 2004,24(2):55-58.
[7] SUI D Z,MAGGIO R C. Integrating GIS with Hydrological Modeling: Practices, Problems, and Prospects[J]. Computers, Environment and Urban Systems, 1999,23(1): 33-51.
[8] 张 东,张万昌,朱 利,等. SWAT分布式流域水文物理模型的改进及应用研究[J]. 地理科学, 2005,25(4):52-58.
[9] 许继军, 杨大文,蔡治国. 分布式水文模型结合雷达测雨用于三峡区间的洪水预报[J]. 长江科学院院报, 2007,25(6):42-48.
[10]刘昌明,夏 军,郭生练,等. 黄河流域分布式水文模型初步研究与进展[J]. 水科学进展, 2004,15(4): 495-500.
[11]王中根, 刘昌明,吴险峰. 基于DEM的分布式水文模型研究综述[J]. 自然资源学报, 2003,18(2): 168-173.
[12]DRAGICEVIC S. The Potential of Web-based GIS[J]. Journal of Geographical Systems, 2004,6(2): 79-81.
[13]胡圣武,朱燕霞. 网络GIS的发展及其应用[J]. 测绘工程, 2007,16(4): 5-9.
[14]WANG Jia-hu, HONG Yang, LI Li,etal. The Coupled Routing and Excess Storage (CREST) Distributed Hydrological Model[J]. Hydrological Sciences Journal, 2011, 56(1): 84-98.
[15]康 玲,傅俊锋,王怀清,等. 基于 ArcGIS Server 的 WebGIS 应用系统开发[J]. 水电能源科学, 2007, 25(1): 26-29.
[16]LI L,CHOU W. Design and Describe REST API without Violating REST: A Petri Net Based Approach[C]∥Proceedings of the 9th IEEE International Conference on Web Services(ICWS 2011). Washington. Dc. USA, July 5-10,2011:508-515.
[17]李满春,陈 奇,周炎坤,等. 基于空间数据引擎的企业化GIS数据组织与处理[J]. 中国图象图形学报, 2000, 5(3): 179-185.
(编辑:黄 玲)
An Integration of Distributed Hydrologic Model andWeb-based GIS Technology
CHEN Wen-long,ZHANG Yu,CAO Bo,SHEN Ding-tao,YE Song
(Spatial Information Technology Application Department, Yangtze River Scientific Research Institute, Wuhan 430010, China)
Distributed hydrological model is currently the hotspot of watershed model research. In this research, the data storage, physical realization and message communication of distributed hydrological model in Web-based GISframework are discussed through integrating distributed hydrological model with Web-based GIS technology. A complete scheme of integrating distributed hydrological model with Web-based GIS is designed, based on which the network computing service of CREST (Coupled Routing and Excess Storage) model is accomplished. The results suggest that the integration of distributed hydrological model and Web-based GIS technology expands the scope of the application of distributed hydrological model.
distributed hydrological model; Web-based GIS technology; framework integration; network computing service; CREST
2016-08-20
国家自然科学基金青年基金项目(41501558);云南省省级水资源费项目(CKSK2015720/KJ);云南省水利重大科技项目(CKSK2015852/KJ)
陈文龙(1989-),男,四川绵阳人,硕士研究生,研究方向为空间信息技术,(电话)027-82926497(电子信箱)Cowerling@163.com。
张 煜(1971-),男,山东阳谷人,高级工程师,博士,研究方向为摄影测量与遥感,(电话)18986061273(电子信箱)zhangyu_1999@126.com。
10.11988/ckyyb.20160853
2016,33(11):49-53
P333;P208
A
1001-5485(2016)11-0049-05