文章信息
- 杨东方, 刘善伟, 汪小琪, 万剑华. 2021.
- YANG Dong-fang, LIU Shan-wei, WANG Xiao-qi, WAN Jian-hua. 2021.
- 海洋环境航行安全保障决策支持系统设计
- Design of decision support system for marine environment navigation security
- 海洋科学, 45(5): 137-144
- Marina Sciences, 45(5): 137-144.
- http://dx.doi.org/10.11759/hykx20201108002
-
文章历史
- 收稿日期:2020-11-08
- 修回日期:2021-01-31
作为世界第一大进出口贸易国, 中国外贸进出口货运量的90%以上是通过海运完成[1]。保障海上环境安全, 是涉及国家经济、军事和能源运输安全等重大战略问题。海面风场、海浪、海流、海雾、降雨、内波与海底地形等海洋自然环境因素极大影响海上航行与运输安全, 故针对复杂多变的海洋自然环境因素, 有必要开展相关海洋环境航行安全保障工作。海洋航行安全保障决策支持离不开我国“数字海洋”建设发展, 虽然“数字海洋”促使海洋信息化程度不断加深, 但目前也存在一些问题: 海洋环境大数据在体量、数据格式、存储组织以及语义上差别较大, 缺少对海洋环境大数据统一的组织、处理、管理与分析[2]; 海洋信息融合应用能力较低, 信息分发支持能力薄弱[3]; 海洋数据获取与交互不够方便、共享和交换手段不够先进; 数据挖掘与可视化海洋数据相对较为欠缺, 故对海洋自然规律认知和海洋决策支撑力度不够[4]; 当前以海洋数据的分析处理为主, 而轻视了决策模拟在国家海洋战略中的重要作用[5]。
海洋强国战略的提出要求海洋环境保障应扩大保障范围, 拓展服务对象, 构建新型海洋环境信息综合保障模式, 加快向多样化、精细化与全球化的海洋环境信息综合保障转变[3]。为顺应海洋强国战略与“21世纪海上丝绸之路”的发展要求, 本文设计了海洋环境航行安全保障决策支持系统, 聚焦航行安全保障主题, 针对船舶航行前、航行中与船舶事故发生后等方面, 提供了一套包括卫星成像规划、航行动态风险评价、应急救援路径规划与海上溢油漂移预测的较为完整的决策支持流程。系统也包括海洋数据高频监测更新、数据组织与存储、海洋数据共享、海洋环境大数据可视化等内容, 为我国海上活动与环境安全保障提供技术支撑与参考依据。
1 系统总体设计系统总体设计包括系统需求分析、系统架构设计、系统功能设计以及服务设计与调用四个方面。
1.1 系统需求分析围绕海洋环境航行安全保障决策支持主题, 系统主要需求如下。
1) 确保海洋环境数据时效性。海洋环境数据特别是气象数据在短时间内可能会有较大变化。故系统应尽量提高系统数据的更新频率, 确保海洋环境数据的时效性与系统服务的准确性。
2) 评估海洋航行风险。复杂多变的海洋自然环境因素对船舶航行威胁极大。动态准确地计算海洋自然因素对航行过程中的风险影响是系统重要需求。
3) 规划紧急事故救援路径。提高突发船舶事故处理方式, 实现科学的应急救援办法, 尽可能提高救援效率。如参考遥感卫星图像, 结合海洋要素数据计算最优救援路径。
4) 预测船舶溢油事件。船舶事故发生不仅可造成重大的人身伤亡和经济损失, 同时也会对海洋环境造成巨大危害, 这其中影响较大的是溢油事故。高效准确处理溢油事件也是系统的需求之一。
5) 可视化表达海洋要素与决策支持。利用前台可视化技术展示海洋自然要素与决策支持计算结果, 同时生成决策报告文档, 可准确且直观生动地提供决策支持。
1.2 系统架构设计海洋环境航行安全保障决策支持系统设计基于面向服务架构(service-oriented architecture, SOA)。利用web service技术, 数据和功能模型会进行集成与封装, 并发布为与平台无关的符合统一标准的服务, 在网络条件下实现数据交互与功能模型的调用, 实现浏览器与服务器之间、服务器与服务器之间灵活高效的数据传输与交互。这一套流程提高了海洋大数据的共享能力, 方便其他系统调用海洋决策支持服务及其他功能模块, 减少冗余开发。
系统采用B/S(browser/server)模式, 浏览器端只需进行少量运算, 而主要的计算与事务逻辑依靠服务器端实现。B/S模式与SOA架构结合的模式能够降低客户端负载, 减轻系统维护与升级的成本和工作量, 同时实现各层之间的松耦合, 使系统功能易扩展与维护[6]。
系统架构具体如图 1所示, 由下而上依次为: 数据层、服务层、事务层、应用层及用户层。
1) 数据层主要实现海洋环境多源数据的存储与管理, 作为可视化模块及决策支持模块的数据层。数据层中数据存储服务器高频监测自动下载获取与处理数据生产系统与外部系统的最新数据, 确保系统数据的时效性。同时数据层基于NAS(network attached storage)为不同模块分配不同的存取权限, 实现多源异构数据的统一管理调配。
2) 服务层包括数据服务与决策支持服务。将数据层中的多源海洋数据按类型设计为RESTful风格的数据服务接口并发布, 为整个系统提供基础数据支撑。决策支持服务是将后台决策支持算法模型封装并发布, 支持响应前台浏览器的决策支持服务请求。
3) 事务层构建统一的服务中心, 负责整个系统中服务的注册、发现、调用以及管理。后台服务发布前服务中心记录有关信息, 再进行服务注册与服务发布。浏览器请求服务时, 由服务中心代理请求调用服务, 方便了系统服务的维护与管理。
4) 应用层集成海洋数据可视化、卫星成像规划、溢油漂移扩散预测、航行风险评价与应急救援路径规划等功能。用户在浏览器的交互界面中可设置不同的参数, 以实现在不同情况下的决策模拟。
5) 用户层中可依据不同的用户类型设置不同的系统操作权限, 满足不同层次的用户服务需求, 提高了系统的安全性。
1.3 系统功能设计海洋环境航行安全保障决策支持系统由海洋数据管理子系统、海洋数据可视化子系统与航行安全决策支持子系统构成, 功能设计框图如图 2所示。
1.3.1 海洋数据管理子系统海洋数据种类繁多、数据量巨大, 同时具有多源、多维、动态、异构的特点[7], 对海洋环境数据进行有效的组织管理是系统设计必须考虑的问题。
数据管理分为后台管理与前台管理。后台数据管理主要包括全天候高频监测获取、处理、更新多源数据。后台可将不同数据类型设置不同的更新频率。例如基于SAR卫星的风、浪、流等海洋监测与预报数据每天更新一次, 基于MODIS遥感影像卫星的海雾数据每12 h更新一次。管理员也可以手动更新获取当前最新数据。后台数据管理同时包括数据自动解析处理以及服务的发布与管理, 保证数据及数据服务的时效性。前台数据管理包括系统用户权限数据、静态信息数据与动态信息数据。从数据的类型与内容上, 数据的组织和管理主要涵盖了海洋基础地理数据、海洋观测监测预报类数据、静态信息数据、动态信息数据与用户权限管理数据。具体数据类型与对应内容如表 1所示。
数据类型 | 数据内容 |
基础地理数据 | 地形数据、遥感影像数据、矢量数据(海岸线、航线、行政区划、行政界线等)、地名(海域)标注数据等 |
静态信息数据 | 港口数据、船只数据、海盗事件、航道等 |
监测预报数据 | 海风、海浪、海流、海温、海水盐度、海雾、内波等 |
动态信息数据 | 溢油预测记录、风险评价记录、路径规划记录、船只轨迹等 |
用户权限数据 | 系统用户类型、用户数据、登录信息、权限范围等 |
海洋数据可视化子系统在统一时空框架下, 针对多源、多维、动态的海洋数据建立一致的表征模型, 实现多维多时空的海洋数据在前台静态与动态的可视化表达。海洋数据可视化子系统包括功能模块如下。
1) 地图操作模块, 包括所有与地图相关的操作, 是其他功能模块的基础, 主要包含地图测距测面、标注、截图快照以及基础底图切换等基本操作。
2) 海洋环境要素可视化模块, 包括反演、探测、预报等海洋环境要素数据的可视化。标量数据包括海水温度、盐度、海雾等, 以等值面的形式对标量数据进行插值、渲染; 矢量数据包括海表面风场、海流、海浪以及内波数据等, 不同与以往的箭头法, 而是以流线法进行动态模拟与可视化[8]。
3) 海洋目标可视化模块, 包括对探测海洋目标的可视化、船只信息的可视化、以及港口和岸线等静态海洋海岸目标的可视化。
4) 决策支持可视化模块, 实现前台渲染航行安全决策支持子系统中服务返回的计算结果, 在浏览器地图中渲染绘制卫星成像规划图、航行风险图、溢油漂移预测图与应急救援路径图, 为决策的制定提供直观的参考。
1.3.3 航行安全决策支持子系统针对恶劣海况影响航行、海上溢油环境危害和海上事故应急救援等问题, 航行安全决策支持子系统包括功能模块如下。
1) 卫星成像规划。获取指定区域的遥感光学卫星与SAR卫星的成像记录, 为航行风险评估与海上事故紧急救援提供第一手的参考资料。
2) 航行风险评价。依据复杂的海洋环境因素数据, 动态评估船舶航行风险变化过程, 并在前台可视化表达。
3) 应急救援路径规划。针对海洋突发紧急事件, 依据多种海洋环境数据与地理空间信息, 规划最优救援路径。
4) 溢油漂移预测。可视化表达船舶事故后溢油的时空变化过程, 为准确高效处理溢油事件提供参考。
决策支持相关算法模型在后台服务器中封装发布为标准服务, 供前台海洋数据可视化子系统调用, 实现对决策支持计算结果的可视化与动态模拟仿真。
1.3.4 服务设计与调用海洋数据管理子系统中的数据服务是以RSET (representational state transfer)为标准设计RESTful API风格的网络服务。RESTful服务接口轻量级、易访问、无状态、面向资源[9], 其轻量与易访问的特性有利于大体积海洋数据的传输交互, 无状态性降低了海洋数据服务调用的复杂度, 面向资源的特性使得多源海洋数据服务在统一资源标志符(uniform resource identifier, URI) 上具有语义自解释性, 有利于系统管理多个海洋数据服务。
决策支持模型按照OGC(open geospatial consortium)的网络处理服务WPS(web processing server)标准建立服务, 有利于对地理要素的交互操作与地理处理分析[10], 实现在浏览器中决策支持的地理空间处理与前台可视化。
海洋数据管理子系统作为系统的基础平台, 为海洋数据可视化子系统与航行安全决策支持子系统提供基础数据服务支持。通过后台数据库更新模块高频监测自动获取来自外部系统与多源数据服务的海洋数据的更新, 保证数据的时效性, 同时也接收海洋数据可视化子系统与航行安全决策支持子系统的标准参数请求。海洋数据可视化子系统请求调用航行安全决策支持子系统的WPS标准服务接口, 在浏览器处理返回数据, 进行可视化展示。系统主要的服务调用关系如图 3所示。
2 航行安全决策支持与流程为保障海洋船舶航行安全以及提高紧急突发事故的处理效率, 航行安全决策支持主要包括以下内容。
2.1 卫星成像规划在大范围海域的探测搜救任务中, 对地观测卫星获取的海上遥感图像凭借其幅面大、光谱分辨率高、空间分辨率高等优势, 可为大范围事故海域的海上搜救目标判断提供直接的参考。卫星成像规划模块中, 依次选择成像时间、成像区域、卫星种类等条件, 系统请求后台服务接口查询, 前台可视化展示符合条件的SAR卫星与光学卫星的遥感图像成像记录信息, 为遇到应急事件时快速调出卫星图像提供指引, 为决策支持提供依据。
2.2 航行风险评价多变的海洋气象与环境因素使得船舶的航行安全随着时间演变具有较高的不确定性, 动态评估船舶航行风险有利于海上船舶航行安全。在航行风险评价中, 选定海上区域、时间等参数, 利用风场、洋流、海浪、海雾等海洋环境数据以及航道等航行相关数据, 利用贝叶斯算法计算航行风险结果, 并以热力图的形式对航行风险进行前台展示, 系统流程如图 4所示。
2.3 应急救援路径规划应急救援路径规划有利于提高海上突发紧急事件的应对能力, 保障救援船舶安全高效到达救援区域。在应急救援路径规划中, 选择事故地点、救援事件到参数, 基于多种海洋环境因素影响, 结合航行风险计算结果, 计算寻优救援路径, 并在前台地图中动态绘制。应急救援路径规划流程图如图 5所示。
2.4 溢油漂移预测海上溢油灾害会严重破坏我国海洋环境及生态系统, 开展溢油漂移预测预警技术研究能为海上溢油应急响应提供技术支撑[11]。在溢油漂移预测中, 选择时间、地点、初始溢油面积、流场类别与预警时长等参数, 前台以动画的方式对漂移扩散模型预测的溢油粒子进行动态模拟。
3 系统开发与部署系统前端开发基于MVVM模式的轻量级响应式框架Vue.js开发, 可以有效简化Web前端开发流程, 降低开发难度, 实现了Web系统前、后端开发完全分离, 提高了系统的灵活性和可扩展性[12]。在Vue.js框架内利用JavaScript、HTML5与CSS3实现用户操作界面、交互流程与基础功能。利用OpenLayers.js实现对于二维地图的基本操作以及基础地理数据的展示。在用户层中通过WebGL引擎技术实现在浏览器中海洋数据的静态与动态渲染[13], 实现海洋环境要素的二维可视化、船舶轨迹数据的可视化、决策支持模型结果的仿真。
在数据服务器中, 使用多源数据接口请求获取原始数据, 建立文件型数据库(MongoDB)组织数据, 实现对各类环境要素数据的动态更新和维护。利用网络存储实现对遥感影像数据文件和海洋环境要素文件的分级存储并建立索引方便快速查找, 采用基于SpringBoot框架的SpringCloud发布RESTful风格数据服务接口。
业务服务器集群由决策支持服务器、GIS地图服务器、业务逻辑服务器三部分组成。决策支持服务器中的模型算法利用Python脚本编写并对其封装, SpringCloud将其调用并发布为WebAPI服务接口。GIS地图服务器选择GeoServer软件, 实现海图数据及基础底图数据发布为OGC形式的接口服务。后台业务服务器基于SpringBoot的MVC模式(模型-视图-控制)开发, 将输入、处理、输出流程按照模型、视图、控制的方式进行分离[14]。每个核心业务功能都以服务的形式供后续子系统或功能模块调用, 实现多个数据功能之间的松耦合, 易于管理与维护。
服务器之间的调用通过TCP/IP互相通信, 在客户端, 用户只需在Web浏览器中发送HTTP请求, Web浏览器便可快速接收服务器返回的数据。系统部署架构如图 6所示。
系统界面如图 7, 包括地图基本操作区域、可视化功能目录树、地图切换区域、决策支持区域等, 其中决策支持区域包括卫星成像规划、航行风险评价、溢油漂移预测与应急路径救援规划四个Tab子页面。
4 结论围绕海洋环境航行安全保障主题, 本文从系统框架、系统功能与服务调用关系等方面, 设计了海洋环境航行安全保障决策支持系统, 并介绍了一种可行的系统开发与部署的实现流程。系统集成海量、多源、多维及动态的海洋环境大数据, 涵盖海洋数据管理、共享服务、可视化表达与决策支持等内容, 为保障海洋环境安全提供了卫星成像规划、航行风险评价、溢油漂移预测与应急救援路径规划的决策支持方案, 在海洋信息应用与功能融合、海洋安全决策支持保障等方面具有较好应用前景。
[1] |
蔡亮. 南海问题: 中日深层次结构性战略矛盾的第四表象探析[J]. 亚太安全与海洋研究, 2019(6): 54-68. CAI Liang. The South China Sea issue: Analysis of the fourth representation of deep-level structural strategic contradiction between China and Japan[J]. Asia-Pacific Security and Maritime Affairs, 2019(6): 54-68. |
[2] |
黄冬梅, 徐宸弋轩, 郑霞, 等. 面向海洋预报任务的大数据可视化系统研究[J]. 计算机工程与应用, 2019, 55(7): 87-94, 193. HUANG Dongmei, XU Chenyixuan, ZHENG Xia, et al. Research on big data visualization system for marine forecast missions[J]. Computer Engineering and Applications, 2019, 55(7): 87-94, 193. |
[3] |
牛红光, 陆毅, 陈超, 等. 数字海洋环境信息应用保障系统设计与实现[J]. 海洋测绘, 2018, 38(4): 75-79. NIU Hongguang, LU Yi, CHEN Chao, et al. Design and implementation of digital ocean environment information application guarantee system[J]. Hydrographic Surveying and Charting, 2018, 38(4): 75-79. DOI:10.3969/j.issn.1671-3044.2018.04.016 |
[4] |
康林冲, 姜晓轶, 吕憧憬, 等. 数字海洋应用服务系统构建及关键技术研究[J]. 应用海洋学学报, 2016, 35(4): 585-592. KANG Linchong, JIANG Xiaoyi, LV Chongjing, et al. Study on the construction of digital ocean application & service system and key technologies[J]. Journal of Applied Oceanography, 2016, 35(4): 585-592. DOI:10.3969/J.ISSN.2095-4972.2016.04.018 |
[5] |
张宇, 吴文周, 王琦, 等. 面向服务架构的南海地理信息决策模拟系统功能设计与实现[J]. 海洋环境科学, 2018, 37(1): 137-142. ZHANG Yu, WU Wenzhou, WANG Qi, et al. Functions design and implementation of South China Sea geographical information decision making simulation system based on service-oriented architecture[J]. Marine Environmental Science, 2018, 37(1): 137-142. |
[6] |
杨扬, 贾君君, 李晨. 面向服务架构的云计算平台[J]. 计算机应用, 2015, 35(S1): 35-36, 46. YANG Yang, JIA Junjun, LI Chen. Cloud computing platform based on service oriented architecture[J]. Journal of Computer Applications, 2015, 35(S1): 35-36, 46. |
[7] |
LIU Y, QIU M, LIU C, et al. Big data challenges in ocean observation: a survey[J]. Personal and Ubiquitous Computing, 2017, 21(1): 55-65. DOI:10.1007/s00779-016-0980-2 |
[8] |
MAO B, WU Z, CAO J. A framework for online spatio-temporal data visualization based on HTML5[J]. International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences, 2012, 39: B2. |
[9] |
李莹, 柳生鹏, 赵朗, 等. 自适应RESTful Web API进化模型的研究[J]. 计算机集成制造系统, 2017, 23(5): 1020-1030. LI Ying, LIU Shengpeng, ZHAO Lang, et al. Self-Adapted RESTful Web API evolution model[J]. Computer Integrated Manufacturing Systems, 2017, 23(5): 1020-1030. |
[10] |
HERLE Stefan, BLANKENBACH Jörg. Enhancing the OGC WPS interface with GeoPipes support for real-time geoprocessing[J]. International Journal of Digital Earth, 2017, 11(1): 48-63. |
[11] |
李欢, 邵伟增, 李程, 等. 溢油扩展、漂移及扩散预测技术研究进展[J]. 海洋通报, 2017, 36(4): 379-384. LI Huan, SHAO Weizeng, LI Cheng, et al. Research on numerical prediction technology of oil spill spreading, drift and diffusion[J]. Marine Science Bulletin, 2017, 36(4): 379-384. |
[12] |
肖文娟, 王加胜. 基于Vue和Spring Boot的校园记录管理Web App的设计与实现[J]. 计算机应用与软件, 2020, 37(4): 25-30, 88. XIAO Wenjuan, WANG Jiasheng. Design and implementation of campus records management web app based on vue and spring boot[J]. Computer Applications and Software, 2020, 37(4): 25-30, 88. |
[13] |
RESCH Bernd, WOHLFAHRT Ralf, WOSNIOK Christoph. Web-based 4D visualization of marine geo-data using WebGL[J]. Cartography and Geographic Information Science, 2014, 41(3): 235-247. |
[14] |
邵健伟, 梁忠民, 王军, 等. 基于SpringBoot框架的中长期水文预报系统设计与开发[J]. 水电能源科学, 2020, 38(4): 5-9. SHAO Jianwei, LIANG Zhongmin, WANG Jun, et al. Design and development of medium and long-term hydrological forecasting system based on SpringBoot framework[J]. Water Resources and Power, 2020, 38(4): 5-9. |