本发明涉及智能推荐领域,尤其涉及智能推送环境监测数据的方法、装置、设备及存储介质。
背景技术:
随着科技与经济的发展,环境污染对人类的生存环境所造成的威胁已越来越严峻。常见的环境污染如:二氧化碳排放过量导致的温室效应;二氧化硫排放过量生成的酸雨;污水的胡乱排放导致的水体水质变差、水体功能破坏和土壤结构破坏。控制污染源的排放已刻不容缓。
目前,主要通过环保监测系统监测各个监测点的污染物排放情况,得到各个监测点对应的监控数据,在环保监测系统的客户端应用上选中目标监控地点,服务器获取并返回客户端目标监控地点对应的目标监控数据。这种方式的缺陷在于:每次都需要重新选择距离所处位置最近的目标环境监测点和进行多项手动操作以获取目标环境监测数据,无法自动返回目标环境监测数据。
技术实现要素:
本发明提供了一种智能推送环境监测数据的方法、装置、设备及存储介质,旨在智能判断目标环境监测点以及返回目标环境监测数据。
本发明实施例的第一方面提供一种智能推送环境监测数据的方法,包括:
获取终端的经纬度数据,并生成所述终端的经纬度数据对应的希尔伯特曲线图;
对所述希尔伯特曲线图进行四叉树求最近公共祖先分析,获得所述希尔伯特曲线图的预置区域中的候选环境监测点,以及所述预置区域的四个子节点区域中的候选环境监测点;
计算所述终端与所述候选环境监测点之间的距离,获得多个距离值;
获取所述多个距离值中最小距离值对应的候选环境监测点,得到目标环境监测点;
获取所述终端基于历史环境监测点和所述目标环境监测点的操作数据,对所述操作数据进行特征提取,得到数据特征,并通过所述数据特征构建决策树,所述历史环境监测点用于指示在所述目标环境监测点之前所述终端所获取的环境监测点;
通过所述决策树对所述操作数据进行预测分析,得到待推送的环境监测点,获取所述待推送的环境监测点对应的环境监测数据,将所述待推送的环境监测点对应的环境监测数据推送至所述终端。
可选的,在本发明实施例第一方面的第一种实现方式中,所述获取终端的经纬度数据,并生成所述终端的经纬度数据对应的希尔伯特曲线图,包括:
通过全球定位系统获取终端的经纬度数据;
对所述终端的经纬度数据进行球面坐标转换处理,得到第一坐标数据;
将所述第一坐标数据转换成平面坐标数据,得到第二坐标数据;
基于富勒fuller投影算法对所述第二坐标数据进行球面投影六边形处理,并基于修正贝塞尔函数对经过球面投影六边形处理的第二坐标数据进行值域修正处理,得到第三坐标数据;
将所述第三坐标数据映射到预置区域层级对应的正方形上,得到坐标轴点数据;
根据所述坐标轴点数据生成所述终端的经纬度数据对应的希尔伯特曲线图。
可选的,在本发明实施例第一方面的第二种实现方式中,所述对所述希尔伯特曲线图进行四叉树求最近公共祖先分析,获得所述希尔伯特曲线图的预置区域中的候选环境监测点,以及所述预置区域的四个子节点区域中的候选环境监测点,包括:
基于预置四叉树求最近公共祖先算法,得到所述希尔伯特曲线图的预置区域的四个子节点区域;
检测所述预置区域和所述四个子节点区域内是否存在环境监测点;
若所述预置区域和/或所述四个子节点区域内存在环境监测点,则将检测到的所述环境监测点作为候选环境监测点。
可选的,在本发明实施例第一方面的第三种实现方式中,所述检测所述预置区域和所述四个子节点区域内是否存在环境监测点的步骤之后,所述智能推送环境监测数据的方法还包括:
若所述预置区域和所述四个子节点区域内均不存在环境监测点,则查找所述希尔伯特曲线图中所述预置区域的父级区域;
基于所述预置四叉树求最近公共祖先算法,得到所述父级区域对应的四个目标子节点区域;
检测所述父级区域和所述父级区域对应的四个目标子节点区域内是否存在环境监测点;
若所述父级区域和所述父级区域对应的四个目标子节点区域内存在环境监测点,则将检测到的所述环境监测点作为候选环境监测点。
可选的,在本发明实施例第一方面的第四种实现方式中,所述计算所述终端的与所述候选监测点之间的距离,获得多个距离值,包括:
将所述终端的经纬度数据转换为全球定位系统坐标clatlng数据,获得所述终端的坐标数据;
获取所述候选环境监测点的经纬度数据,将所述候选环境监测点的经纬度数据转换为候选全球定位系统坐标mlatlng数据,获得所述候选环境监测点的坐标数据;
通过预置公式对所述终端的坐标数据和所述候选环境监测点的坐标数据进行计算,得到所述终端与所述候选环境监测点之间的多个距离值。
可选的,在本发明实施例第一方面的第五种实现方式中,所述对所述操作数据进行特征提取,得到数据特征,并通过所述数据特征构建决策树,包括:
通过主成分分析算法对所述操作数据进行特征提取,获得数据特征;
计算每个所述数据特征的信息增益,得到多个信息增益值;
获取所述多个信息增益值对应的候选数据特征,并按照值从大到小的顺序对所述多个信息增益值对应的候选数据特征进行排序,得到排序后的目标数据特征;
将所述排序后的目标数据特征作为结点,获取所述排序后的目标数据特征的类别以及所述类别对应的预设判断条件,并将所述预设判断条件作为分支条件,构建决策树。
可选的,在本发明实施例第一方面的第六种实现方式中,所述通过所述决策树对所述操作数据进行预测分析,得到待推送的环境监测点,获取所述待推送的环境监测点对应的环境监测数据,将所述待推送的环境监测点对应的环境监测数据推送至所述终端之后,所述智能推送环境监测数据的方法还包括:
识别预设范围内的环境监测点得到预警分析环境监测点,所述预设范围用于指示以所述待推送的环境监测点为中心的范围;
通过预置预警条件分析所述预警分析环境监测点的实时环境监控数据,得到与所述预警分析环境监测点对应的实时预警信息;
将所述实时预警信息推送至所述终端。
本发明实施例的第二方面提供一种用于智能推送环境监测数据的装置,具有实现对应于上述第一方面提供的智能推送环境监测数据的方法的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块,所述单元可以是软件和/或硬件。
所述智能推送环境监测数据的装置包括:
生成模块,用于获取终端的经纬度数据,并生成所述终端的经纬度数据对应的希尔伯特曲线图;
第一分析模块,用于对所述希尔伯特曲线图进行四叉树求最近公共祖先分析,获得所述希尔伯特曲线图的预置区域中的候选环境监测点,以及所述预置区域的四个子节点区域中的候选环境监测点;
计算模块,用于计算所述终端与所述候选环境监测点之间的距离,获得多个距离值;
获取模块,用于获取所述多个距离值中最小距离值对应的候选环境监测点,得到目标环境监测点;
构建模块,用于获取所述终端基于历史环境监测点和所述目标环境监测点的操作数据,对所述操作数据进行特征提取,得到数据特征,并通过所述数据特征构建决策树,所述历史环境监测点用于指示所述目标监测点之前所述终端所获取的环境监测点;
第二分析模块,用于通过所述决策树对所述操作数据进行预测分析,得到待推送的环境监测点,获取所述待推送的环境监测点对应的环境监测数据,将所述待推送的环境监测点对应的环境监测数据推送至所述终端。
可选的,在本发明实施例第二方面的第一种实现方式中,所述生成模块具体用于:
通过全球定位系统获取终端的经纬度数据;
对所述终端的经纬度数据进行球面坐标转换处理,得到第一坐标数据;
将所述第一坐标数据转换成平面坐标数据,得到第二坐标数据;
基于富勒fuller投影算法对所述第二坐标数据进行球面投影六边形处理,并基于修正贝塞尔函数对经过球面投影六边形处理的第二坐标数据进行值域修正处理,得到第三坐标数据;
将所述第三坐标数据映射到预置区域层级对应的正方形上,得到坐标轴点数据;
根据所述坐标轴点数据生成所述终端的经纬度数据对应的希尔伯特曲线图。
可选的,在本发明实施例第二方面的第二种实现方式中,所述第一分析模块具体用于:
基于预置四叉树求最近公共祖先算法,得到所述希尔伯特曲线图的预置区域的四个子节点区域;
检测所述预置区域和所述四个子节点区域内是否存在环境监测点;
若所述预置区域和/或所述四个子节点区域内存在环境监测点,则将检测到的所述环境监测点作为候选环境监测点。
可选的,在本发明实施例第二方面的第三种实现方式中,所述第一分析模块执行检测所述预置区域和所述四个子节点区域内是否存在环境监测点之后,具体还用于:
若所述预置区域和所述四个子节点区域内均不存在环境监测点,则查找所述希尔伯特曲线图中所述预置区域的父级区域;
基于所述预置四叉树求最近公共祖先算法,得到所述父级区域对应的四个目标子节点区域;
检测所述父级区域和所述父级区域对应的四个目标子节点区域内是否存在环境监测点;
若所述父级区域和所述父级区域对应的四个目标子节点区域内存在环境监测点,则将检测到的所述环境监测点作为候选环境监测点。
可选的,在本发明实施例第二方面的第四种实现方式中,所述计算模块具体用于:
将所述终端的经纬度数据转换为全球定位系统坐标clatlng数据,获得所述终端的坐标数据;
获取所述候选环境监测点的经纬度数据,将所述候选环境监测点的经纬度数据转换为候选全球定位系统坐标mlatlng数据,获得所述候选环境监测点的坐标数据;
通过预置公式对所述终端的坐标数据和所述候选环境监测点的坐标数据进行计算,得到所述终端与所述候选环境监测点之间的多个距离值。
可选的,在本发明实施例第二方面的第五种实现方式中,所述构建模块具体用于:
通过主成分分析算法对所述操作数据进行特征提取,获得数据特征;
计算每个所述数据特征的信息增益,得到多个信息增益值;
获取所述多个信息增益值对应的候选数据特征,并按照值从大到小的顺序对所述多个信息增益值对应的候选数据特征进行排序,得到排序后的目标数据特征;
将所述排序后的目标数据特征作为结点,获取所述排序后的目标数据特征的类别以及所述类别对应的预设判断条件,并将所述预设判断条件作为分支条件,构建决策树。
可选的,在本发明实施例第二方面的第六种实现方式中,所述智能推送环境监测数据的装置还包括:
待推送获取模块,用于识别预设范围内的环境监测点得到预警分析环境监测点,所述预设范围用于指示以所述待推送的环境监测点为中心的范围;
第三分析模块,用于通过预置预警条件分析所述预警分析环境监测点的实时环境监控数据,得到与所述预警分析环境监测点对应的实时预警信息;
推送模块,用于将所述实时预警信息推送至所述终端。
本发明实施例的第三方面提供了一种智能推送环境监测数据的设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一实施方式所述智能推送环境监测数据的方法。
本发明实施例的第四方面提供了一种计算机可读存储介质,包括计算机可读指令,当所述计算机可读指令在计算机上运行时,使得计算机执行上述任一实施方式所述的智能推送环境监测数据的方法。
相较于现有技术,本发明实施例提供的技术方案中,通过获取终端的经纬度数据,并生成终端的经纬度数据对应的希尔伯特曲线图;对希尔伯特曲线图进行四叉树求最近公共祖先分析,获得候选环境监测点;计算终端与候选环境监测点之间的距离,获得多个距离值;获取多个距离值中最小距离值对应的候选环境监测点,得到目标环境监测点;获取操作数据,对操作数据进行特征提取,得到数据特征,并通过数据特征构建决策树;通过决策树对操作数据进行预测分析,得到待推送的环境监测点,将待推送的环境监测点对应的环境监测数据推送至终端。本发明实施例,采用空间点索引算法获取最佳环境监测点,根据区域覆盖进行位置查找,提高检索效率,并且记录终端的操作轨迹和总结出操作轨迹的历史数据特征信息,进而采用决策树模型分析推断下次终端需要获取的最佳环境监测点数据,实现智能化推送,避免终端输出最佳环境监测点的选择界面的流程操作,减少终端与服务器之间的交互,提高用户的使用体验以及终端与服务器的工作效率,能够智能判断目标环境监测点以及返回目标环境监测数据。
附图说明
图1为本发明实施例中智能推送环境监测数据的方法的一个实施例示意图;
图2为本发明实施例中智能推送环境监测数据的方法的另一个实施例示意图;
图3为本发明实施例中智能推送环境监测数据的装置的一个实施例示意图;
图4为本发明实施例中智能推送环境监测数据的装置的另一个实施例示意图;
图5为本发明实施例中智能推送环境监测数据的设备的一个实施例示意图。
具体实施方式
本发明实施例提供了一种智能推送环境监测数据的方法、装置、设备及存储介质,用于采用空间点索引算法获取最佳环境监测点,根据区域覆盖进行位置查找,提高检索效率,并且记录终端的操作轨迹和总结出操作轨迹的历史数据特征信息,进而采用决策树模型分析推断下次终端需要获取的最佳环境监测数据,实现智能化推送,避免终端输出最佳环境监测点的选择界面的流程操作,减少终端与服务器之间的交互,提高用户的使用体验以及终端与服务器的工作效率,能够智能判断目标环境监测点以及返回目标环境监测数据。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例进行描述。
应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块,本发明中所出现的模块的划分,仅仅是一种逻辑上的划分,实际应用中实现时可以有另外的划分方式,例如多个模块可以结合成或集成在另一个系统中,或一些特征可以忽略,或不执行。
请参阅图1,本发明实施例提供的一种智能推送环境监测数据的方法的流程图,以下对本发明提供一种智能推送环境监测数据的方法进行举例说明,该方法由计算机设备执行,计算机设备可为服务器或者终端,本发明不对执行主体的类型作限制,具体包括:
101、获取终端的经纬度数据,并生成终端的经纬度数据对应的希尔伯特曲线图。
在终端点击相关应用,触发定位指令,终端根据定位指令启动全球定位系统或其他定位工具获取终端所处位置的经纬度(即终端的经纬度数据),终端将经纬度数据发送到服务器,服务器接收该终端的经纬度数据,通过预置的多维空间点索引s2算法将终端的经纬度数据转换为全球定位系统(globalpositioningsystem,gps)坐标s2latlng,转换坐标s2latln的实现方式为:s2latlngs2latlng=s2latlng.fromdegrees(lat,lng),根据坐标s2latlng获取终端的经纬度数据对应的区域识别码cellid数据,终端的经纬度数据对应的cellid数据的获取可通过以下方式实现:cellidcid=s2cellid.fromlatlng(s2latlng)。
parent(level)。通过采用googles2的多维空间点索引算法,根据区域覆盖进行位置查找,提高检索效率。
进一步地,上述步骤101可以包括:通过全球定位系统获取终端的经纬度数据;对终端的经纬度数据进行球面坐标转换处理,得到第一坐标数据;将第一坐标数据转换成平面坐标数据,得到第二坐标数据;基于富勒fuller投影算法对第二坐标数据进行球面投影六边形处理,并基于修正贝塞尔函数对经过球面投影六边形处理的第二坐标数据进行值域修正处理,得到第三坐标数据;将第三坐标数据映射到预置区域层级对应的正方形上,得到坐标轴点数据;根据坐标轴点数据生成终端的经纬度数据对应的希尔伯特曲线图。
通过预置的多维空间点索引s2算法对终端的经纬度数据进行球面坐标转换处理、平面坐标数据转换和映射到预置区域层级对应的正方形上等的处理,该预置区域层级为预置区域在希尔伯特曲线图中对应的层级。通过采用富勒fuller投影算法实现对第二坐标数据的球面六边形投影;由于六边形的菱角较少,其六个边也能相互衔接其他的六边形,且六边形个数越多越好,粒度越细,就越贴近球体,能够提高球面投影修正的精确度,因而对第二坐标数据进行球面投影六边形处理,通过基于富勒fuller投影算法对所述第二坐标数据进行球面投影六边形处理,以对预置的多维空间点索引s2算法进行优化。通过修正贝塞尔函数对经过球面六边形投影的第二坐标数据进行修正,以保证不影响计算性能的情况下提高修正的操作效率。
102、对希尔伯特曲线图进行四叉树求最近公共祖先分析,获得所述希尔伯特曲线图的预置区域中的候选环境监测点,以及所述预置区域的四个子节点区域中的候选环境监测点候选环境监测点。
服务器通过预置的多维空间点索引s2算法中的四叉树求最近公共祖先算法检索到与终端处于同一个区域cell的候选环境监测点以及和终端处于同一个区域cell在四叉树上的四个子节点区域cell的四个环境候选监测点,得到候选环境监测点,候选环境监测点的数量包括一个或一个以上。可通过以下方式实现:s2latlngs2latlng=s2latlng.fromdegrees(lat,lng);cellidcid=s2cellid.fromlatlng(s2latlng).parent(level);s2cellid[]output=news2cellid[4];cid.getedgeneighbors(output)。通过四叉树求最近公共祖先算法便捷、快速而准确地获取候选环境监测点。其中,候选环境监测点的数量包括一个或一个以上。
进一步地,上述步骤102可以包括:基于预置四叉树求最近公共祖先算法,得到希尔伯特曲线图的预置区域的四个子节点区域;检测预置区域和四个子节点区域内是否存在环境监测点;若预置区域和/或四个子节点区域内存在环境监测点,则将检测到的环境监测点作为候选环境监测点。
例如:用findnode()函数查找待查询节点是否存在,若待查询节点是存在,用lca()函数查找最近公共祖先。获取四叉树上同一分支的两个节点的两个区域标识cellid(终端信号覆盖区域的的编码),对该两个cellid进行异或,得到不同的二进制位表示的所处位置信息;判断不同的二进制位表示的所处位置信息对应的候选节点之间是否存在祖先关系,若存在祖先关系,则获取候选节点的左边最高位不同的位置,判断候选节点的左边最高位不同的位置对应的msbpos是否符合预设规则,若符合,则输出最近公共祖先的等级level值,根据最近公共祖先的level值获得在预置区域层级中预置区域cell所处的位置和方向;根据在预置区域层级中预置区域cell所处的位置和方向获取预置区域cell的四个子节点区域cell,检测预置区域cell和四个子节点区域cell内是否存在环境监测点,若预置区域cell和/或四个子节点区域cell内存在环境监测点,则获取预置区域cell和/或四个子节点区域cell的环境监测点,得到候选环境监测点。
进一步地,上述的检测预置区域和四个子节点区域内是否存在环境监测点之后,可以包括:若预置区域和四个子节点区域内均不存在环境监测点,则查找希尔伯特曲线图中预置区域的父级区域;基于预置四叉树求最近公共祖先算法,得到父级区域对应的四个目标子节点区域;检测父级区域和父级区域对应的四个目标子节点区域内是否存在环境监测点;若父级区域和父级区域对应的四个目标子节点区域内存在环境监测点,则将检测到的环境监测点作为候选环境监测点。
服务器可通过识别环保监测传感器识别环境监测点,服务器识别预置区域或四个子节点区域内是否存在环保监测传感器,当在预置区域cell和四个子节点区域cell中均检测不到环境监测传感器时,可通过父级区域cell,根据所述父级区域cell获取父级区域cell对应的四个目标子节点区域cell,检测父级区域和父级区域对应的四个目标子节点区域内是否存在环境监测点,进而获取候选环境监测点。其中,可通过把level修改成level-1获得父级区域cell。
103、计算终端与候选环境监测点之间的距离,获得多个距离值。
服务器获得候选环境监测点后,获取候选环境监测点各自对应的经纬度,将候选环境监测点的经纬度转换成一维数组或二维数组,并将终端的经纬度数据转换为一维数组或二维数组,通过计算终端的一维数组(或二维数组)与候选监测点的一维数组(或二维数组),得到多个距离值(一个候选监测点与终端之间的距离对应一个距离值),即候选环境监测点的所在位置与终端的所在位置之间的距离。通过进一步计算距离值以便于后续能准确地获取目标环境监测点。
进一步地,上述步骤103可以包括:将终端的经纬度数据转换为全球定位系统坐标clatlng数据,获得终端的坐标数据;获取候选环境监测点的经纬度数据,将候选环境监测点的经纬度数据转换为多个候选全球定位系统坐标mlatlng数据,获得候选环境监测点的坐标数据;通过预置公式对终端的坐标数据和候选环境监测点的坐标数据进行计算,得到终端与候选环境监测点之间的多个距离值。
服务器获取候选环境监测点各自对应的经纬度,将候选环境监测点各自对应的经纬度转换成gps坐标mlatlng,得到多个第二坐标,实现方式为:s2latlngmlatlng=s2latlng.fromdegrees(lat,lng),将终端的经纬度转换为gps坐标clatlng,得第一坐标,实现方式为:s2latlngclatlng=s2latlng.fromdegrees(lat,lng),通过预置公式分别计算第一坐标与多个第二坐标之间的距离值,得到终端所在的位置与候选环境监测点所在的位置之间的多个距离值。其中,预置公式可为半正矢haversine公式:
104、获取多个距离值中最小距离值对应的候选环境监测点,得到目标环境监测点。
服务器通过比较多个距离值的大小,将距离值最小的候选环境监测点作为目标环境监测点,获取目标环境监测点的环境监测数据,并分析环境监测数据中的环境类型,例如:污水排放,调用相应的环保分析系统对该环境监测数据进行分析,生成可视化图表或分析报告。将该可视化图表或分析报告作为当前返回的当前环境监测数据返回到终端,在终端上显示该次操作获得的目标环境监测点的当前环境监测数据。获取当前环境监测数据以便于在终端呈现该次获取目标环境监测点的环境监测数据。
105、获取终端基于历史环境监测点和目标环境监测点的操作数据,对操作数据进行特征提取,得到数据特征,并通过数据特征构建决策树,历史环境监测点用于指示在目标环境监测点之前终端所获取的环境监测点。
服务器检测目标环境监测点获取的时间段,根据该时间段检索对终端存储的所有环境监测点进行筛选,得到初始环境监测点,在所有环境监测点中删除初始环境监测点得到历史环境监测点,并读取历史环境监测点的历史环境监测点数据和目标监测点的目标环境监测点数据,该历史环境监测点数据为在终端中对历史环境监测点的获取、检测和分析等操作的日志信息,以及该历史环境监测点与终端的距离信息,该目标环境监测点数据为在终端中对目标环境监测点的获取、检测和分析等操作的日志信息,以及该目标环境监测点与终端的距离信息,历史环境监测点数据和目标环境监测点数据为终端基于历史环境监测点和目标环境监测点的操作数据,通过线性判别式分析算法或奇异值分解算法或其他特征提取算法对操作数据进行特征提取,得到数据特征,该数据特征包括但不限于使用频率和地理位置信息。根据数据特征中的地理位置信息是否与终端位置处于同一预置区域创建决策树的第一层;根据使用频次是否大于预设阈值构建决策树的第二层;根据数据特征中的地理位置信息与终端位置之间的距离值是否为最小构建决策树的第三层,得到决策树。通过构建决策树能够清晰明了且快速地历史环境监测点和目标环境监测点进行分类和预测。
106、通过决策树对操作数据进行预测分析,得到待推送的环境监测点,获取待推送的环境监测点对应的环境监测数据,将待推送的环境监测点对应的环境监测数据推送至终端。
服务器通过创建的决策树对操作数据进行分析和预测,得到用户使用习惯对应或者最有可能进行查阅的环境监测点与及该环境监测点对应的操作数据和环境监测数据。当用户在当前终端所处的位置打开终端,终端即时显示距离当前终端所处的位置最近的待推送的环境监测点以及该待推送的环境监测点对应的环境监测数据,不需要再获取当前终端所处的位置的经纬度数据,再根据经纬度数据计算cellid及附近cellid以获取距离当前终端所处的位置最近的环境监测点,可直接从数据库中存储的通过决策树进行分析和预测所得的待推送的环境监测点对应的操作数据中获取。记录终端的操作轨迹,总结出历史数据特征信息,进而采用决策树模型分析推断下次终端需要获取的最佳环境监测点以及该最佳环境监测点对应的环境监测数据,做到智能化推送,避免终端端应用向用户输出环境监测点地点的选择界面的流程操作,减少终端与服务器之间的交互,提高用户的使用体验以及终端和服务器的工作效率。
进一步地,上述步骤106之后,可以包括:识别预设范围内的环境监测点得到预警分析环境监测点,预设范围用于指示以待推送的环境监测点为中心的范围;通过预置预警条件分析预警分析环境监测点的实时环境监控数据,得到与预警分析环境监测点对应的实时预警信息;将实时预警信息推送至终端。
其中,预设范围为以所述待推送的环境监测点为中心在一定半径的呈圆形的范围,或以所述待推送的环境监测点为中心呈椭圆形的范围,或以所述待推送的环境监测点为中心呈正多边形的范围;预置预警条件可为各个环境监测类型对应的制定的指标阈值范围。服务器通过对在预设范围内的环境监测点(即预警分析环境监测点)的实时环境监控数据进行分析和将实时预警监控数据和实时预警监控数据对应的预警分析环境监测点(即实时预警信息,实时预警信息包括实时预警监控数据和实时预警监控数据对应的预警分析环境监测点)推送到终端上,以便于及时知悉预警分析环境监测点出现的异常和预警分析环境监测点对实时环境监控数据的关联和影响。
本发明实施例,通过采用空间点索引算法获取最佳环境监测点,根据区域覆盖进行位置查找,提高检索效率,并且记录终端的操作轨迹和总结出操作轨迹的历史数据特征信息,进而采用决策树模型分析推断下次终端需要获取的最佳环境监测数据,实现智能化推送,避免终端输出最佳环境监测点的选择界面的流程操作,减少终端与服务器之间的交互,提高用户的使用体验以及终端与服务器的工作效率,能够智能判断目标环境监测点以及返回目标环境监测数据。
请参阅图2,本发明实施例中智能推送环境监测数据的方法的另一个实施例包括:
201、获取终端的经纬度数据,并生成终端的经纬度数据对应的希尔伯特曲线图。
202、对希尔伯特曲线图进行四叉树求最近公共祖先分析,获得希尔伯特曲线图的预置区域中的候选环境监测点,以及预置区域的四个子节点区域中的候选环境监测点。
203、计算终端与候选环境监测点之间的距离,获得多个距离值。
204、获取多个距离值中最小距离值对应的候选环境监测点,得到目标环境监测点。
本发明实施例中,201至204的方法可参见101至104,此处不再赘述。
205、获取终端基于历史环境监测点和目标环境监测点的操作数据,历史环境监测点用于指示在目标环境监测点之前终端所获取的环境监测点。
服务器获取终端中存储的所有环境监测点以及所有环境监测点对应的操作日志信息,识别目标监测点获取以及被操作的时间段,获取该时间段的起始时间以及时刻点在该起始时间前的时间信息,根据该时间信息遍历操作日志信息或者通过哈希值检索由操作日志信息构建的哈希表,获取该时间信息对应的历史环境监测点和该历史环境监测点的历史环境监测点数据,并获取目标环境监测点的目标环境监测点数据,历史环境监测点数据和目标环境监测点数据为终端基于历史环境监测点和目标环境监测点的操作数据,操作数据包括操作日志信息与及历史环境监测点和目标环境监测点的基本信息与距离信息。通过获取操作数据,以便于后续对操作数据进行分析以获取待推送的环境监测点以及待推送的环境监测点对应的环境监测数据。
206、通过主成分分析算法对操作数据进行特征提取,获得数据特征。
服务器结合主成分分析算法的使得数据集更易使用、降低算法的计算开销、去除噪声、使得结果容易理解和完全无参数限制的特性对操作数据进行特征提取,以提高特征提取的操作效率和准确性。其中,数据特征包括但不限于操作频率和环境监测点的所处的位置信息。
207、计算每个数据特征的信息增益,得到多个信息增益值。
服务器获得数据特征之后,通过信息增益c4.5算法对每个数据特征进行信息增益值的求值计算,通过根据信息增益值大小表示数据特征往到达纯度更高的子集合方向发展的速度,纯度用于指示使用数据特征进行划分得到的子集的不确定程度的大小。
208、获取多个信息增益值对应的候选数据特征,并按照值从大到小的顺序对多个信息增益值对应的候选数据特征进行排序,得到排序后的目标数据特征。
由于信息增益值大小表示数据特征往到达纯度更高的子集合方向发展的速度,因而,服务器按照信息增益值从大到小的顺序对候选数据特征进行排序,能够快速而准确地对排序后的目标数据特征进行分析,从而获得符合条件的待推送的环境监测点。
209、将排序后的目标数据特征作为结点,获取排序后的目标数据特征的类别以及类别对应的预设判断条件,并将预设判断条件作为分支条件,构建决策树。
服务器将排在第一的排序后的目标数据特征作为根结点,由根结点的排序后的目标数据特征的类别对应的特征和类别对应的预设判断条件建立子结点,再对该子结点的排序后的目标数据特征的类别对应的特征和类别对应的预设判断条件建立子结点,以此类推,直到目标数据特征符合预设条件,预设条件为排序后的目标数据特征的信息增益小于或等于预设值,或者若排序后的目标数据特征的信息增益大于预设值,则以排序后的目标数据特征中排序最后的排序后的目标数据特征作为最后的子结点,得到决策树。通过构建决策树分析推断下次终端获取最佳监测点数据,实现智能化推送。例如:经过对信息增益排序之后的目标数据特征为与终端是否同在一个区域cell、使用频次是否大于预设阈值和与终端的距离是否最近,则以与终端是否同在一个区域cell作为根结点,以使用频次是否大于预设阈值作为第二层的子结点,以与终端的距离是否最近作为第三层的子结点,以是或否作为分支条件,得到初始决策树,对初始决策树进行剪枝处理、连续值处理和缺失值处理,得到最终的决策树。
210、通过决策树对操作数据进行预测分析,得到待推送的环境监测点,获取待推送的环境监测点对应的环境监测数据,将待推送的环境监测点对应的环境监测数据推送至终端。
本发明实施例中,210的方法可参见106,此处不再赘述。
本发明实施例,通过按照信息增益值从大到小对候选数据特征进行排序得到排序后的目标数据特征,并根据排序后的目标数据特征构建决策树,不仅能够智能判断目标环境监测点以及返回目标环境监测数据,还能够提高操作效率和快速有效地进行分类和预测。
上面对本发明实施例中智能推送环境监测数据的方法进行了描述,下面对本发明实施例中智能推送环境监测数据的装置进行描述,请参阅图3,本发明实施例中智能推送环境监测数据的装置的一个实施例包括:
生成模块301,用于获取终端的经纬度数据,并生成终端的经纬度数据对应的希尔伯特曲线图;
第一分析模块302,用于对希尔伯特曲线图进行四叉树求最近公共祖先分析,获得所述希尔伯特曲线图的预置区域中的候选环境监测点,以及所述预置区域的四个子节点区域中的候选环境监测点候选环境监测点;
计算模块303,用于计算终端与候选环境监测点之间的距离,获得多个距离值;
获取模块304,用于获取多个距离值中最小距离值对应的候选环境监测点,得到目标环境监测点;
构建模块305,用于获取终端基于历史环境监测点和目标环境监测点的操作数据,对操作数据进行特征提取,得到数据特征,并通过数据特征构建决策树,历史环境监测点用于指示在目标环境监测点之前终端所获取的环境监测点;
第二分析模块306,用于通过决策树对操作数据进行预测分析,得到待推送的环境监测点,获取待推送的环境监测点对应的环境监测数据,将待推送的环境监测点对应的环境监测数据推送至终端。
上述智能推送环境监测数据的装置中各个模块的功能实现与上述智能推送环境监测数据的方法实施例中各步骤相对应,其功能和实现过程在此处不再一一赘述。
本发明实施例,通过根据区域覆盖进行位置查找,提高检索效率,并且记录终端的操作轨迹和总结出操作轨迹的历史数据特征信息,进而采用决策树模型分析推断下次终端需要获取的最佳环境监测数据,实现智能化推送,避免终端输出最佳环境监测点的选择界面的流程操作,减少终端与服务器之间的交互,提高用户的使用体验以及终端与服务器的工作效率,能够智能判断目标环境监测点以及返回目标环境监测数据。
请参阅图4,本发明实施例中智能推送环境监测数据的装置的另一个实施例包括:
生成模块301,用于获取终端的经纬度数据,并生成终端的经纬度数据对应的希尔伯特曲线图;
第一分析模块302,用于对希尔伯特曲线图进行四叉树求最近公共祖先分析,获得希尔伯特曲线图的预置区域中的候选环境监测点,以及预置区域的四个子节点区域中的候选环境监测点;
计算模块303,用于计算终端与候选环境监测点之间的距离,获得多个距离值;
获取模块304,用于获取多个距离值中最小距离值对应的候选环境监测点,得到目标环境监测点;
操作数据获取模块3051,用于获取终端基于历史环境监测点和目标环境监测点的操作数据,历史环境监测点用于指示在目标环境监测点之前终端所获取的环境监测点;
提取模块3052、用于通过主成分分析算法对操作数据进行特征提取,获得数据特征;
信息增益计算模块3053,用于计算每个数据特征的信息增益,得到多个信息增益值;
排序模块3054,用于获取多个信息增益值对应的候选数据特征,并按照值从大到小的顺序对多个信息增益值对应的候选数据特征进行排序,得到排序后的目标数据特征;
创建模块3055,用于将排序后的目标数据特征作为结点,获取排序后的目标数据特征的类别以及类别对应的预设判断条件,并将预设判断条件作为分支条件,构建决策树;
第二分析模块306,用于通过决策树对操作数据进行预测分析,得到待推送的环境监测点,获取待推送的环境监测点对应的环境监测数据,将待推送的环境监测点对应的环境监测数据推送至终端。
可选的,生成模块301具体用于:
通过全球定位系统获取终端的经纬度数据;对终端的经纬度数据进行球面坐标转换处理,得到第一坐标数据;
将第一坐标数据转换成平面坐标数据,得到第二坐标数据;
基于富勒fuller投影算法对第二坐标数据进行球面投影六边形处理,并基于修正贝塞尔函数对经过球面投影六边形处理的第二坐标数据进行值域修正处理,得到第三坐标数据;
将第三坐标数据映射到预置区域层级对应的正方形上,得到坐标轴点数据;
根据坐标轴点数据生成终端的经纬度数据对应的希尔伯特曲线图。
可选的,第一分析模块302具体用于:
基于预置四叉树求最近公共祖先算法,得到希尔伯特曲线图的预置区域的四个子节点区域;
检测预置区域和四个子节点区域内是否存在环境监测点;
若预置区域和/或四个子节点区域内存在环境监测点,则将检测到的环境监测点作为候选环境监测点。
可选的,第一分析模块302执行检测预置区域和四个子节点区域内是否存在环境监测点之后,具体还用于:
若预置区域和四个子节点区域内均不存在环境监测点,则查找希尔伯特曲线图中预置区域的父级区域;
基于预置四叉树求最近公共祖先算法,得到父级区域对应的四个目标子节点区域;
检测父级区域和父级区域对应的四个目标子节点区域内是否存在环境监测点;
若父级区域和父级区域对应的四个目标子节点区域内存在环境监测点,则将检测到的环境监测点作为候选环境监测点。
可选的,计算模块303具体用于:
将终端的经纬度数据转换为全球定位系统坐标clatlng数据,获得终端的坐标数据;
获取候选环境监测点的经纬度数据,将候选环境监测点的经纬度数据转换为候选全球定位系统坐标mlatlng数据,获得候选环境监测点的坐标数据;
通过预置公式对终端的坐标数据和候选环境监测点的坐标数据进行计算,得到终端与候选环境监测点之间的多个距离值。
可选的,智能推送环境监测数据的装置还包括:
待推送获取模块,用于识别预设范围内的环境监测点得到预警分析环境监测点,预设范围用于指示以待推送的环境监测点为中心的范围;
第三分析模块,用于通过预置预警条件分析预警分析环境监测点的实时环境监控数据,得到与预警分析环境监测点对应的实时预警信息;
推送模块,用于将实时预警信息推送至终端。
上述智能推送环境监测数据的装置中各个模块的功能实现与上述智能推送环境监测数据的方法实施例中各步骤相对应,其功能和实现过程在此处不再一一赘述。
本发明实施例,通过根据区域覆盖进行位置查找,提高检索效率,并且记录终端的操作轨迹和总结出操作轨迹的历史数据特征信息,进而采用决策树模型分析推断下次终端需要获取的最佳环境监测数据,实现智能化推送,避免终端输出最佳环境监测点的选择界面的流程操作,减少终端与服务器之间的交互,提高用户的使用体验以及终端与服务器的工作效率,能够智能判断目标环境监测点以及返回目标环境监测数据。
上面图3至图4从模块化功能实体的角度对本发明实施例中的智能推送环境监测数据的装置进行详细描述,下面从硬件处理的角度对本发明实施例中智能推送环境监测数据的设备进行详细描述。
图5是本发明实施例提供的一种智能推送环境监测数据的设备的结构示意图,该智能推送环境监测数据的设备500可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(centralprocessingunits,cpu)501(例如,一个或一个以上处理器)和存储器509,一个或一个以上存储应用程序507或数据506的存储介质508(例如一个或一个以上海量存储装置)。其中,存储器509和存储介质508可以是短暂存储或持久存储。存储在存储介质508的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对签到管理设备中的一系列指令操作。更进一步地,处理器501可以设置为与存储介质508通信,在智能推送环境监测数据的设备500上执行存储介质508中的一系列指令操作。
智能推送环境监测数据的设备500还可以包括一个或一个以上电源502,一个或一个以上有线或无线网络接口503,一个或一个以上输入输出接口504,和/或,一个或一个以上操作系统505,例如windowsserve,macosx,unix,linux,freebsd等等。本领域技术人员可以理解,图5中示出的智能推送环境监测数据的设备结构并不构成对智能推送环境监测数据的设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。处理器501可以执行上述实施例中生成模块301、第一分析模块302、计算模块303、获取模块304、构建模块305、操作数据获取模块3051、提取模块3052、信息增益计算模块3053、排序模块3054、构建模块3055和第二分析模块306的功能。
下面结合图5对智能推送环境监测数据的设备的各个构成部件进行具体的介绍:
处理器501是智能推送环境监测数据的设备的控制中心,可以按照智能推送环境监测数据的方法进行处理。处理器501利用各种接口和线路连接整个智能推送环境监测数据的设备的各个部分,通过运行或执行存储在存储器509内的软件程序和/或模块,以及调用存储在存储器509内的数据,执行智能推送环境监测数据的设备的各种功能和处理数据,从而实现智能判断目标环境监测以及返回目标环境监测数据的功能。存储介质508和存储器509都是存储数据的载体,本发明实施例中,存储介质508可以是指储存容量较小,但速度快的内存储器,而存储器509可以是储存容量大,但储存速度慢的外存储器。
存储器509可用于存储软件程序以及模块,处理器501通过运行存储在存储器509的软件程序以及模块,从而执行智能推送环境监测数据的设备500的各种功能应用以及数据处理。存储器509可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(获取终端的经纬度数据等)等;存储数据区可存储根据签到管理设备的使用所创建的数据(对希尔伯特曲线图进行四叉树求最近公共祖先分析,获得候选环境监测点等)等。此外,存储器509可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在本发明实施例中提供的智能推送环境监测数据的方法程序和接收到的数据流存储在存储器中,当需要使用时,处理器501从存储器509中调用。
在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、双绞线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,光盘)、或者半导体介质(例如固态硬盘(solidstatedisk,ssd))等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。