时空过程网络可视化模拟与分析服务——以溃坝洪水为例

  • 朱军 , 1, 2, 3, * ,
  • 尹灵芝 1, 2 ,
  • 曹振宇 3 ,
  • 张翔 1, 2 ,
  • 徐柱 1, 2, 4 ,
  • 龚竞 3
展开
  • 1. 西南交通大学地球科学与环境工程学院,成都 611756
  • 2. 西南交通大学高速铁路运营安全空间信息技术国家地方联合工程实验室,成都 610031
  • 3. 四川省应急测绘与防灾减灾工程技术研究中心,成都 610041
  • 4. 轨道交通安全协同创新中心,成都 610031

作者简介:朱 军(1976-),男,博士,副教授,博导,主要从事虚拟地理环境与时空过程建模方面的研究。E-mail:

收稿日期: 2014-11-12

  要求修回日期: 2014-12-08

  网络出版日期: 2015-02-10

基金资助

国家自然科学基金项目(41271389、41001252)

长江学者和创新团队发展计划(IRT13092)

测绘地理信息公益性行业科研专项项目(201412010)

国家基础测绘科技项目“省级应急测绘指挥平台研究与开发”

四川省测绘地理信息局科技支撑项目“自然灾害地理信息发布平台关键技术研究”

Network Simulation and Visual Analysis of Spatiotemporal Process: A Case Study of Dam-break Flood Routing

  • ZHU Jun , 1, 2, 3, * ,
  • YIN Lingzhi 1, 2 ,
  • CAO Zhenyu 3 ,
  • ZHANG Xiang 1, 2 ,
  • XU Zhu 1, 2, 4 ,
  • GONG Jing 3
Expand
  • 1. Faculty of Geosciences and Environmental Engineering, Southwest Jiaotong University, Chengdu 611756, China
  • 2. State-province Joint Engineering Laboratory of Spatial Information Technology for High-speed Railway Safety, Chengdu 610031, China
  • 3. Sichuan Engineering Research Center for Emergency Mapping & Disaster Reduction, Chengdu 610041, China
  • 4. Collaborative Innovation Center for Rail Transportation Safety,Chengdu 610031, China
*Corresponding author: ZHU Jun, E-mail:

Received date: 2014-11-12

  Request revised date: 2014-12-08

  Online published: 2015-02-10

Copyright

《地球信息科学学报》编辑部 所有

摘要

洪水溃坝等复杂灾害现象的时空过程模拟分析,是当前国际地理信息科学热点研究方向之一。随着网络的普及化,公众对GIS时空分析模型的网络实时集成和可视化分析提出了迫切的需求。本文以溃坝洪水为例开展了时空过程网络可视化模拟与分析服务研究,利用WebGL、HTML5、Ajax、Web Service、GPU并行计算等技术手段,通过探讨溃坝洪水时空模型计算优化、网络三维可视化模拟与动态交互分析等关键技术,研发了原型系统并进行应用实验。实验结果表明,本文研究成果有助于实现时空过程信息的网络发布,在线影响分析及动态可视化服务,可为分布式网络环境下溃坝洪水等时空过程信息管理和应急决策提供科学依据和技术支持。

本文引用格式

朱军 , 尹灵芝 , 曹振宇 , 张翔 , 徐柱 , 龚竞 . 时空过程网络可视化模拟与分析服务——以溃坝洪水为例[J]. 地球信息科学学报, 2015 , 17(2) : 215 -221 . DOI: 10.3724/SP.J.1047.2015.00215

Abstract

Many complicated geographic phenomena such as dam-break flood were complex giant systems, and the dynamic development of their spatiotemporal process is more important than the final formation of the spatial pattern. Therefore, the simulation and analysis of spatiotemporal process and the disaster forecasting warning have become a hot research direction in the field of geographic information science. Meanwhile, with the popularization of Web-GIS technology, the integration of real-time content on web and the visual expression of geographic spatiotemporal process simulation are also demanded by the public urgently. With the rapid development of web service, network technology and their applications in GIS, it is possible to realize the visualization analysis, share and manage distributed spatial data on different clients. After analyzing the latest Web-GIS technology, this paper focuses on the simulation and visual analysis of dam-break flooding spatiotemporal process in the network environment, which can be implemented by applying HTML5, WebGL, Ajax, Web Service technology and other technologies. Some key technologies, which include rapid computing of spatiotemporal process model, B/S network architecture construction, three-dimensional scene rendering optimization, and dynamic interaction analysis, are also discussed in details. Finally, a prototype system was constructed and an experiment of the network simulation and visual analysis of a dam-break flood spatiotemporal process case was conducted on a study region. Experimental results showed that the methods addressed in this paper could successfully publish spatiotemporal process information, conduct online impact analysis and realize the three-dimensional visualization representation under the network environment, which could meet different requirements of browsing, querying and analyzing. It can provide an efficient support to dam-break management and emergency decision-making.

1 引言

洪水溃坝等灾害现象具有多主体、多因素、多尺度、多变性的特征,其时空动态发展过程往往比其最终形成的空间格局更为重要,故时空发展过程模拟分析及预测预警,一直是国际地理信息科学热点研究方向之一[1-2]。同时,随着网络的普及化,公众对GIS时空分析模型的网络实时集成和可视化分析提出了迫切的需求[3-5]。实际上,由于网络服务和网络技术的快速发展及其与网络GIS的有机结合,使得众多分布异构的空间数据和过程模型实时动态网络可视化共享与发布成为可能[6-7]。因此,将网络GIS技术和三维可视化技术相结合,开展时空过程网络可视化模拟与分析研究,对时空信息模拟、预测及决策分析等具有重要意义及应用价值。
当前主流的Web交互式可视化是由浏览器插件调用DirectX、OpenGL等操作系统图形接口实现图形渲染,虽然这种方案实现了硬件加速,但是客户端必须下载插件。随着HTML5和WebGL的不断发展,三维网络GIS也取得了突飞猛进的发展,其具有跨平台且无需安装插件的优势,通过浏览器端(Graphics Processing Unit, GPU)为HTML Canvas提供三维硬件加速,在浏览器端顺畅地渲染3D场景和模型。在异步B/S结构模式下,用户不是直接与服务器进行交互,而是通过浏览器与服务器进行交互,其中只有少部分对象在客户端实现,而大部分对象都在服务器端完成。利用Ajax技术实现客户端用户操作与服务器端响应的异步化,减轻了服务器端负担,从而提高数据处理效率[8]。近几年,随着GPU的性能提高,可编程性和功能都得到极大的扩展,能够支持更复杂的运算,并出现了可将GPU 作为数据并行计算设备的通用并行计算架构(Compute Unified Device Architecture, CUDA)[9]。目前,GPU的并行算法已经被广泛用于土地利用模拟[10]、图像处理[11]、水文模型[12]、地球物理[13]、天文计算[14]等领域,并在大多数应用中获得了几倍、几十倍乃至上百倍的加速比[15]。上述技术与方法有助于实现高效便捷的网络可视化交互分析与时空过程模型快速求解。
因此,本文在分析网络GIS最新发展趋势的基础上,利用WebGL、HTML5、Ajax、Web Service和高性能计算等技术手段,基于标准规范接口与通讯协议,在分布式网络环境下以溃坝洪水为例,开展了时空过程网络可视化模拟与分析服务构建研究。

2 网络环境下时空过程的动态模拟与可视化分析方法

2.1 系统总体框架设计

与传统的桌面或局域网的GIS应用相比,面向互联网的GIS应用程序,在数据渲染、传输等方面有很多不同,系统总体框架设计如图1所示。其基于Browser/Server(B/S)结构,在服务器端进行并行加速的溃坝洪水演进计算,在客户端利用WebGL技术进行三维场景实时渲染与交互分析,浏览器与服务器通信基于HTTP和Socket通信协议实现,从而实现网络环境下的溃坝洪水演进时空过程的模拟与可视化分析。
Fig. 1 System framework based on Browser/Server (B/S)

图1 基于B/S的系统总体框架

2.2 服务器端溃坝洪水演进模型设计

2.2.1 溃坝洪水演进计算模型
溃坝洪水计算采用离散的圣维南方程组[16-17],整个演进过程分为2步:(1)由t时刻的水深计算 t + 1 时刻的单宽流量,计算方法如式(1)所示;(2)由 t + 1 时刻的单宽流量计算 t + 2 时刻的水深,计算方法如式(2)所示。
M i , j t + 1 = M i , j t - g Δt ( h i + 1 , j t + h i , j t ) ( z i + 1 , j t - z i , j t ) Δx - g n i , j 2 u ̅ i , j Δt ( u i , j t ) 2 + ( v i , j t ) 2 ( h i + 1 , j t + h i , j t ) / 2 1 3 N i , j t + 1 = N i , j t - g Δt ( h i + 1 , j t + h i , j t ) ( z i , j + 1 t - z i , j t ) Δy - g n i , j 2 v ̅ i , j Δt ( u i , j t ) 2 + ( v i , j t ) 2 ( h i + 1 , j t + h i , j t ) / 2 1 3 (1)
h i , j t + 1 = h i , j t - Δt ( M i + 1 , j t + 1 - M i , j t + 1 ) Δx - Δt ( N i , j + 1 t + 1 - M i , j t + 1 ) Δy (2)
式中, M i , j t N i , j t 为元胞 ( i , j ) t时刻在XY方向上的单宽流量(m2/s); h i , j t 为元胞 ( i , j ) t时刻的水深(m); u i , j t v i , j t 分别表示元胞 ( i , j ) t时刻在XY方向上的流速(m/s); n 2 i , j 为元胞 ( i , j ) 的糙率(m-1/3s); Δt 表示时空比; Δx Δy 分别表示XY方向上的尺度大小(m)。
2.2.2 溃坝洪水演进计算模型优化
现有溃坝洪水模型[5,16,18]主要采用CPU(Central Process Unit)串行的计算方式,进行溃坝洪水演进过程模拟与分析,导致模型的计算效率偏低,尤其在使用高分辨率DEM(Digital Elevation Model)数据进行精细模拟与分析时,系统响应和交互效率低。为了高效地完成客户提交的模型计算任务,本文采用了文献[16]的溃坝洪水演进模型,基于元胞自动机(Cellular Automata, CA)的局部并行计算特性和面向GPU的通用并行计算架构存在天然的相似性,提出了GPU-CA的溃坝洪水演进计算模型,计算流程如图2所示。首先,在CPU端即host端进行任务的初始化,包括内存和GPU显存分配、数据初始化等;然后,将原来基于CPU串行的元胞自动机模型进行任务划分,得到串行计算部分和并行计算部分的任务,其并行计算部分映射到GPU中,基于CUDA并行计算构架,通过采用功能和数据分解、线程映射等并行计算方法,以及存储器访问优化、通信优化等优化策略,进行某一时刻下基于GPU的溃坝洪水演进模型并行计算;最后,将GPU计算结果映射回CPU内存并进行结果统计,对每个元胞状态进行相应调整,循环进行下一时刻的溃坝洪水演进模拟计算。
Fig. 2 Dam-break flood routing computating model based on GPU-CA

图2 基于GPU-CA的溃坝洪水演进计算模型

2.3 客户端溃坝洪水演进模拟与可视化分析

2.3.1 客户端三维场景构建方法
客户端三维场景主要包括地形和洪水场景,如ReadyMap、OSGEarth.js、OSG.js等WebGL、JavaScript API被用于客户端三维场景可视化。对于大规模的地形,利用ReadyMap提供的工具(build_elevation.py& ElevationLayer.py),对DEM进行切片(切片数据存储为json格式),通过WebServer(IIS)进行发布,在ReadyMap中作为TMSElevationLayer节点加载。对于遥感影像,利用TMSImageLayer调用ArcGIS Server发布的WMTS服务进行加载。
洪水表面的三维模型主要利用元胞自动机的溃坝洪水演进计算结果进行构建,其计算结果为元胞单元组成的二维数组,由于并非每个元胞单元都为有水状态,因此,在数组中存在大量的“无效”数据。若将二维数组直接传输给客户端进行绘制,必然会导致网络数据传输量大、客户端数据解析复杂、计算量大等问题。因此,本文将计算得到的二维数组中有水状态的元胞单元组织成三角网结构,并将水深、流速等计算结果作为属性,以json文件的形式进行存储和传输。浏览器接受到json数据后,对其进行解析,并进行坐标变换、几何构建、颜色赋予等操作以便可视化展示。
2.3.2 客户端溃坝洪水演进的展示方法与交互设计
为了实现对不同情况下的溃坝洪水模拟与分析,需要浏览器和服务器之间具有相互通信的功能,浏览器能迅速将相关参数传输至服务器端进行计算,而服务器端将每一次迭代计算的结果“实时”地“推送”至浏览器进行可视化。
HTML5标准中的WebSocket通信定义了握手协议和基于帧的数据传输协议,基于TCP实现了服务器和浏览器之间的双向通信,从而使得利用WebSocket构建实时WebGIS成为可能[18-20]。用户在输入Socket服务器的IP地址提交后,在客户端创建了一个WebSocket实例,并通过onopen()方法建立与远程服务器的连接。用户输入洪水计算的相关参数提交后,调用send()方法向服务器传输溃坝参数,并在服务端进行洪水演进计算的参数初始化。用户在播放控制面板中进行开始/暂停/终止操作,调用send()方法向服务器发送消息,控制洪水的计算线程。客户端通过onMessage事件监听服务器返回的计算数据并在ReadyMap中进行可视化渲染,当计算结束时关闭网络连接。总体流程如图3所示。
Fig. 3 Implementing flowchart of dam-break flood routing on the client

图3 网络端溃坝洪水演进总体流程

3 原型系统研发与案例实验分析

3.1 原型系统研发

本文实验硬件环境为DELL T7610图形工作站,CPU的处理器为2×Intel Xeon(至强) E5-2670 2.5 GHz CPU,64 G主机内存,显卡为NVIDIA公司的Quadro K4000,显存为3 G,操作系统为Windows 7 64位专业版。GPU计算环境为CUDA5.5,开发环境为Microsoft Visual C++2012,研发了网络环境下用于溃坝洪水演进模拟和风险评估的虚拟地理环境系统,系统主界面如图4所示。系统的主要功能包括:(1)集成天地图在线地图,提供基础的地理信息服务;(2)提供基础的在线空间分析功能;(3)提供在线溃坝洪水演进计算和可视化分析。
Fig. 4 Simulation and analysis interface of dam-break flood routing based on the network environment

图4 网络环境下溃坝洪水演进模拟与分析系统界面

3.2 网络环境下溃坝洪水演进模拟与实验分析

3.2.1 服务器端溃坝洪水模型计算性能优化分析
原始地形格网大小为10 m,为了进行计算效率的比较,将其进行重采样为10、20、40和60 m格网大小的栅格数据,并分别在CPU和GPU上进行溃坝洪水演进的模拟计算。并行计算的性能分析通常采用加速比的概念[10],即通过并行计算时间与CPU串行计算时间的比值来体现加速性能。对CPU-CA模型和GPU-CA模型的计算时间进行记录,每完成一次计算记录一次时间。从表1可看到,使用GPU-CA模型的计算效率得到了显著提升,尤其是当在元胞网格分辨率精细时更为明显。当元胞大小为10 m的时候,加速比为15.9倍。当元胞格网大小较大时加速比较小是因为数据传输时间与计算时间相比占了比较大的比例,因此,GPU-CA 在大数据量情况下能获得更好的并行加速效果,进而可支持网络环境下溃坝洪水演进模型实时求解。
Tab. 1 The comparison of computing time between GPU-CA model and CPU-CA model

表1 GPU-CA模型和CPU-CA模型的计算时间对比

元胞大小(m) 元胞个数(个) CPU-CA模型(ms) GPU-CA(ms) 加速比
10 2100×815 127 8 15.9
20 1050×408 32.8 2.35 14.0
40 525×204 7.9 0.8 9.9
60 350×136 3.4 0.5 6.8
3.2.2 溃坝洪水演进动态可视化分析
以安县肖家桥堰塞湖为案例[5],进行全溃情形下的溃坝洪水模拟实验。系统提供了可视化参数界面进行溃坝相关参数的设置,包括溃坝相关库容、河谷宽度、坝前水深、溃坝模式、溃口形态等参数,作为洪水各时段所应承担的分洪流量的初始条件,如图5所示。
Fig. 5 Parameter setting of dam-break flood routing on the client

图5 客户端溃坝洪水演进参数的设置界面

在多种溃坝情形下的参数设置后,以服务器端实时的溃坝洪水模型计算结果,进行网络传输后可在虚拟地理环境中作可视化的动态模拟,立体地展现出溃坝洪水的时空发展过程和未来可能发展趋势。这样,用户可直观自然地获取溃坝洪水的淹没范围、淹没面积等信息,同时,可用不同颜色显示实时水深、淹没面积、剩余容量等。在进行溃坝洪水的演进模拟后,可对演进计算的结果进行进一步分析。溃坝洪水演进模拟计算结果如图6所示,其溃坝洪水主要影响区域为下游晓坝和桑枣镇的各个乡村,洪水到达各个村镇的时间、淹没面积和受灾人数如表2所示。溃坝洪水经过香溪村之后,洪水主要在河道里面进行演进,因此,对坝址下游的安昌镇、黄土镇、花荄、界牌4个城镇的影响相对较小。
Fig. 6 Real-time display of water depth\inundation area\rest volume

图6 水深、淹没面积及剩余流量等实时显示

Tab.2 Arrival time\ inundation area and disaster population

表2 溃坝洪水的到达时间、淹没面积和受灾人口

到达时间(min) 淹没面积(m2 受灾人口(人)
五福村 12.4 1 056 000 1269
黄羊村 18.6 1 283 600 1591
晓坝镇 29.1 1 943 200 3579
上清村 44.4 3 487 200 6344
桑枣镇 56.9 5 560 800 8634
香溪村 61.8 6 467 200 10553

4 结论

本文以溃坝洪水为例,开展了网络环境下时空过程模拟与分析服务构建研究。重点讨论了服务端GPU-CA模型的溃坝洪水计算模型优化、客户端无插件三维场景建设方法等关键技术,并研发了原型系统,开展案例测试与分析。测试结果表明,在服务端通过使用GPU-CA溃坝洪水演进模拟计算进行加速与传输优化,能更快捷地支持溃坝洪水演进时空过程求解、网络发布与可视化展示,减少用户等待时间;并且由于在客户端使用了WebGL和HTML5技术,用户无需安装任何插件就可在浏览器上,对溃坝洪水信息进行浏览、查询与分析。因此,本文方案可实现时空过程信息的网络发布,过程的在线影响分析及其时空动态可视化,满足多用户并发浏览、查询和分析的需要,可为溃坝管理和应急决策提供了科学依据和技术支持。当前的实验与分析都是在局域网内完成,在未来的工作将考虑在广域网内实现溃坝洪水模拟与分析。另外,云计算也是未来的工作重点,利用云计算技术实现对分散的数据资源进行集成,并引入多种溃坝洪水模型和空间分析方法,实现溃坝洪水快速、准确的模拟分析。

The authors have declared that no competing interests exist.

[1]
范维澄. 国家突发公共事件应急管理中科学问题的思考和建议[J].中国科学基金,2007(2):71-76.

[2]
黎夏,李丹,刘小平,等.地理模拟优化系统GeoSOS及前沿研究[J].地球科学进展,2009,24(8):899-907.

[3]
Lin H, Zhu J, Gong J H, et al.A grid-based collaborative virtual geographic environment for the planning of silt dam systems[J]. International Journal of Geographical Information Science, 2010,24(4):607-621.

[4]
朱军,胡亚,曹云刚,等.基于移动智能体的空间信息共享服务设计与实现[J].西南交通大学学报. 2011,46(3):427-433.

[5]
Zhu J, Yin L Z, Wang J H, et al.Dam-break flood routing simulation and scale effect analysis based on virtual geographic environment[J]. IEEE Journal of Selected In Applied Earth Observations and Remote Sensing, 2014,99:2340399.

[6]
Zhu J, Gong J H, Liu W G.A collaborative virtual geographic environment based on P2P and grid technologies[J]. Information sciences, 2007,177(21):4621-4633.

[7]
朱军,胡亚,李毅,等.基于虚拟地理环境的堰塞湖溃决风险评估[J].高技术通讯,2012,22(3):276-281.

[8]
Feng L, Wang C L, Li C R, et al.A research for 3D WebGIS based on WebGL[C]. International Conference on Computer Science and Network Technology, IEEE, 2011,1:348-351.

[9]
卢风顺,宋君强,银福康,等.CPU/GPU协同并行计算研究综述[J].计算机科学,2011,38(3):5-9.

[10]
李丹,黎夏,刘小平,等. GPU-CA模型及大尺度土地利用变化模拟[J].科学通报,2012,57(11):959-969.

[11]
肖汉. 基于CPU+GPU的影像匹配高效能异构并行计算研究[D].武汉:武汉大学,2011.

[12]
刘军志,朱阿兴,秦承志,等.分布式水文模型的并行计算研究进展[J].地理科学进展,2013,32(4):538-547.

[13]
陈召曦,孟小红,郭良辉,等.基于GPU并行的重力、重力梯度三维正演快速计算及反演策略[J].地球物理学报,2013,55(12):4069-4077.

[14]
杨沐津,于策,孙济洲,等.GAISP:一种GPU加速的天文图像相减测光算法倡[J].计算机应用研究,2011,28(10):3940-3943.

[15]
张舒,褚艳利.GPU高性能运算之CUDA[M].北京:中国水利水电出版社,2009.

[16]
Li Y, Gong J H, Zhu J, et al.Spatiotemporal simulation and risk analysis of dam-break flooding based on cellular automata[J]. International Journal of Geographical Information Science, 2013,27(10):2043-2059.

[17]
Gallegos H A, Schubert J E, Sanders B F, et al.Two-dimensional, high-resolution modeling of urban dam-break flooding: A case study of Baldwin Hills, California[J]. Advances in Water Resources, 2009,32(8):1323-1335.

[18]
Wang V, Salim F, Moskovits P.The definitive guide to HTML5 WebSocket[M]. New York: Apress, 2013.

[19]
Pimentel V, Nickerson B G.Web display of real-time wind sensor data[R]. report TR11-214, New Brunswick: Faculty of Computer Science, University of New Brunswick, 2011.

[20]
刘华星,杨庚.HTML5——下一代Web开发标准研究[J].计算机技术与发展, 2011,21(8):56-62.

文章导航

/