基于数据挖掘的灾害预警云计算平台设计
2019-04-26李岚
李 岚
(湖北职业技术学院,湖北 孝感 432000)
我国是一个灾害发生较为频繁的国家[1],各种因地质灾害、气候灾害、水文灾害等引发的山体滑坡、泥石流、洪水、严重干旱等给人民的日常生活带来了极大的隐患,严重威胁着人民的生命与财产安全[2]。以往对灾害进行预警大多以广播、报纸、天气预报等方式,因传播范围小、强度低而收效甚微。
随着科技的进步,国内外相关研究人员开始研究不同的灾害预警方法,但都存在着一定的缺陷。例如CHEN等[3]设计了一种基于无线传感器网络的灾害预警平台,其通过ZigBee无线传感器网络实时采集环境数据,数据由GPRS网关节点传输到远程监控中心,并进行数据分析与预警。但该平台未对数据进行汇聚处理,无法解决数据间的规约问题,预警效率差;陈蓓青等[4]设计了基于三维网络地理信息系统的地质灾害监测预警平台,运用地理信息技术、虚拟仿真技术和基于多用户并发的WEB异步服务技术,构建融合三维地理信息功能与地质灾害预警预报业务功能的网络决策支持系统。但构建系统的过程较为复杂,实用性能较差;高姗姗等[5]针对乐山市山洪监测预警系统实施设计与建设,只对山洪灾害进行检测与预警,并且系统构建时所需数据量较大,构建时间较长,误差较大;陈香等[6]依据自然灾害风险管理理论,结合致灾因子危险性和承灾体易损性,构建简易的福建省滑坡灾害风险评估模型,建模过程中资源占用率较高。
为解决传统方法中存在的预警效率和准确率低、稳定性差、资源占用率高的问题,本文设计了基于数据挖掘的灾害预警云计算平台。通过各地的检测站实时获取监测数据,将数据传输至云计算平台进行处理,再通过手机、网站等现代通讯方式进行灾害预警,为人民生命财产安全提供可靠的保障。
1 基于数据挖掘的灾害预警云计算平台设计
平台整体架构设计包括:感知层、网络层和应用层,整体结构图如图1所示。
(1)感知层。感知层中主要通过在不同地区建立地质、水文、气象等各种灾害监控站[7],实现对不同自然环境情况的实时获取;利用数据传输单元将采集到的串口数据或IP数据进行相互转换后经由无线通信网络的通用分组无线服务功能发送到云计算平台内,距离较远、条件较差的环境信息监测站实施数据传输时可采用远程终端单元。
(2)网络层。云计算平台利用GPRS DTU(General Packet Radio Service Data Transfer unit)无线数据终端接收由感知层发送的数据,并将之导入云服务器,通过服务器内的各模块对获取的环境信息实施数据管理、分析,参照标准数据对环境实时数据实施灾害预警分析,对分析结果实施可视化显示并生成Web Service,在分析结果达到预警临界点的情况下,自主进行预警提示。
(3)应用层。应用层通过手机、网站等将灾害预警情况生成的Web Service显示出来。普通公民可以通过短信、网站、电视广播等方式获取灾害预警情况的基础信息,进行灾害躲避;内部预警人员可以通过网络、智能手机调用Web Service随时随地的了解灾害的最新情况,以便于进行灾害预防和灾后处理。
图1 基于数据挖掘的灾害预警云计算平台整体结构图
1.1 数据汇集调度模块设计
数据汇集调度模块结构如图2所示,其具体功能是汇集云计算平台获取的实时环境信息数据,解决不同数据间的规约情况[8]。此模块应用了模板化设计方法,能够实现新数据同元数据间的配置,进行不同环境数据的统一获取及规约处理。同时此模块中能够并存不同的源数据格式,例如:环境情况采集数据、环境情况分析处理数据、以往标准数据等。数据汇集调度中心模块中还包含各种数据同步方法[9],例如:数据库实时同步、文件传输协议同步等。
图2 数据汇集调度模块结构图
1.2 灾害事件触发模块设计
灾害事件触发模块中根据各环境信息监测站获取的实施环境信息对比标准信息得到的灾害情况,对灾害预警进行分级(表1)。灾害事件触发模块将灾害预警等级划分为五级:一、二级为提醒级,表示灾害发生概率小;三级为注意级,表示灾害发生概率较大;四级为预警级,表示灾害发生的概率大;五级为警报级,表示灾害发生的概率极大。灾害等级信息在应用层的网站、手机等工具上实时显示,方便查询。
表1 灾害预警等级的划分
1.3 软件设计
1.3.1 平台整体工作流程
基于数据挖掘的灾害预警云计算平台采用无线传感器技术[10]、数据挖掘技术和云计算技术,显示灾害隐患点人员分布、设施分布情况,实现对灾害隐患点附近环境的不同参数(温度、适度、风速、雨量、震级、震源等)的实时获取,并对参数信息进行分析,预警灾害隐患点数据异常情况。确定灾害发生点的精确位置、形成原因和灾害来临时灾害发生点人员、设施等信息,为抗险救灾工作提供有价值的参考[11]。基于数据挖掘的灾害预警云计算平台工作流程如图3所示。
1.3.2 灾害事件触发检验流程设计
灾害预警平台的主要功能就是通过环境信息分析灾害情况[12],在最短的时间内获取精确的灾害信息,这两点关系到灾害预警的时间。灾害突发情况预测的功能是为了在实时数据流中通过运算得到环境信息监测站数据,如温度、湿度、风速、雨量、震级、震源等,其时效性对灾害预警整体性的影响较大[13]。为了减少环境信息监测站数据的运算时间,在灾害突发情况预测流程设计中采用了Java多线程、扩散式云计算方法[14]。此流程设计分为管理线程和判断计算线程,它们的功能分别是:管理线程负责对关联数据的初始化、连续询问环境信息监测站数据和对运算线程的设计运行;计算线程是对环境信息监测站获取的数据进行扩散式云计算研究[15],并将研究结果进行回报和预警。具体灾害事件触发检验流程设计如图4所示。
1.3.3 数据挖掘算法并行化技术
根据云计算平台的基础能力,本文采用数据挖掘算法并行化技术,通过K-mears聚类算法并行化和Map Reduce并行计算框架缩短数据挖掘时间,提升灾害预警时效性。
将聚类性能指标最小化是K-means聚类算法的基础。算法的具体过程为:①任意选取个目标,一个目标表示一个簇的初始均值及中心;②对于未被选取的目标,按照其同不同簇间的均值距离分配至最雷同的簇;③对各簇的新均值实施运算;④重复①至③至准则函数收敛。准则函数多数情况下采用平方误差准则:
(1)
式中:E、p、mi分别表示数据集内全部目标的平方误差和、给定的目标和簇Ci的均值。
K-means算法是根据聚类中心实现聚类的划分,因此,通过并行更新聚类中心能够缩短聚类时间。对任意k个聚类中心实施初始化后,每执行一次新的任务都会使这k个聚类中心的值变化。在映射过程中,对各样本Os同最近的聚类中心Oi(0≤i≤K-1)进行运算,得到键值对。在化简过程中,相同键的值聚集在Map Reduce框架内,即离聚类中心Oi(0≤i≤K-1)最近的样本会聚集在Map Reduce框架内。因此,在educer内根据聚集的样本能够再次获取k个聚类中心,即:
(2)
通过式(1)和式(2)能够得到新的聚类中心。将新的聚类中心同上一轮聚类中心进行差异度比较,可知算法是否收敛。
2 模型实验分析
为了验证本文设计的基于数据挖掘的灾害预警云计算平台的实用性能,设计实验模拟灾害发生环境并使用本文平台进行灾害预警分析。
(1)有效性检验
实验模拟某省地震发生环境,分别采用本文平台和经验公式对地震位移数据进行获取并进行对比,结果如图5所示。对图5进行分析可知,使用本文平台获取的地震位移数据和通过经验获取的地震位移数据误差较小,控制在2 mm以下,说明本文平台能够有效进行灾害预警。
图3 灾害预警平台整体工作流程图
图4 灾害事件触发检测管理线程流程图
图5 本文平台和经验公式获取的地震位移数据对比结果
(2)灾害预警效率检验
实验为测试本文平台的灾害预警效率,在实验环境一致的条件下,使用本文平台、基于三维网络地理信息系统的地质灾害监测预警平台和基于无线传感器网络的灾害预警平台分别从平均传输速度以及传输时延两方面进行测试,并比较不同平台的平均传输速率和传输时延,结果如表2和表3所示。对表2进行分析能够得到,使用本文平台进行灾害预警监测的传输速度在7.06~8.31 byte/s之间波动,平均传输速度为7.97 byte/s;使用基于三维网络地理信息系统的地质灾害监测预警平台进行灾害预警监测的平均传输速度在3.14 ~5.09 byte/s之间波动,平均传输速度为3.96 byte/s;使用基于无线传感器网络的灾害预警平台进行灾害预警监测的平均传输速度在4.24 ~6.21 byte/s之间波动,平均传输速度为5.10 byte/s。对表3进行分析能够得到,使用本文平台进行灾害预警监测的传输时延在10.02~16.85 ms之间波动,平均传输时延为13.13 ms;使用基于三维网络地理信息系统的地质灾害监测预警平台进行灾害预警监测的传输时延在18.97~54.28 ms之间波动,平均传输时延为31.25 ms;使用基于无线传感器网络的灾害预警平台进行灾害预警监测的传输时延在16.57~40.10 ms之间波动,平均传输时延为28.06 ms。综合分析表2及表3的数据可知,与其他两个灾害预警平台相比较,本文平台的传输速度变化较平稳,平均传输速度较高;传输时延波动幅度较小,平均传输时延较低,说明使用本文平台进行灾害预警时具有较高的效率。
(3)稳定性检验
实验对本文平台的稳定性实施测试。针对不同信息量,使用本文平台、基于三维网络地理信息系统的地质灾害监测预警平台和基于无线传感器网络的灾害预警平台分别进行处理,并对比不同灾害预警平台的处理结果,具体情况如表4所示。对表4进行分析可知,使用本文平台进行灾害预警的准确率、召回率和Y值随着信息量的不断提升呈线性平缓提升,最高值分别为97.93%、97.88%和98.02%,同时,使用本文平台获取的结果均高于两外两个灾害预警平台。而基于三维网络地理信息系统的地质灾害监测预警平台和基于无线传感器网络的灾害预警平台获取的准确率、召回率和Y值随着信息量的增加出现了明显的波动状态。实验结果说明使用本文平台进行灾害预警具有较好的稳定性。
表2 不同灾害预警平台的平均传输速度对比
表3 不同灾害预警平台的传输时延
(4)资源占用率检验
实验为测试本文平台的资源占用率,分别从环境信息采集,数据挖掘、云计算等不同方面对本文平台、基于三维网络地理信息系统的地质灾害监测预警平台和基于无线传感器网络的灾害预警平台的CUP占用率以及内存占用率进行对比,结果如表5所示。通过对表5的分析能够得到,使用本文平台进行灾害预警时的CPU占用率和内存占用率分别在28%~34%、9%~19%之间波动;使用基于三维网络地理信息系统的地质灾害监测预警平台进行灾害预警时的CPU占用率和内存占用率分别在60%~70%、29%~43%之间波动;使用基基于无线传感器网络的灾害预警平台进行灾害预警时的CPU占用率和内存占用率分别在49%~63%、25%~39%之间波动。实验结果表明使用本文平台进行灾害预警时的资源占用率较低。
表4 不同灾害预警平台稳定性测试
注:Y值为不同灾害预警平台对灾害预警水平的预测值
表5 不同灾情预警平台的资源占用率对比结果
3 结 论
本文设计基于数据挖掘的灾害预警云计算平台,其整体架构包括获取环境信息的感知层、以云计算平台为主的网络层和用于显示、查询的应用层。针对传统平台因没有汇聚数据进行统一传输处理、构建系统的过程较为复杂等原因,导致的预警效率较差、资源占用率高等问题,本文平台采用数据汇集调度模块,对实时环境信息数据进行汇聚,解决不同数据间的规约情况,通过灾害事件触发模块,根据灾害发生概率的大小将灾害划分为五级。平台的软件通过数据挖掘算法并行化技术短数据挖掘时间,提升灾害预警时效性。经实验证明,所设计平台能够有效进行灾害预警,平均传输速度为7.97 byte/s,平均传输时延为13.13 ms;准确率保持在97%左右,召回率在93%到98%之间波动,灾害预警水平预测值最高可达98.02%;CPU占用率为28%~34%,内存占用率为9%~19%。实验数据表明,本文设计的灾害预警云计算平台的传输效率较高,准确性与稳定性较好,资源占用率较低,整体更具优势。