[发明专利]路网中移动对象查询方法有效
申请号: | 201710446636.2 | 申请日: | 2017-06-14 |
公开(公告)号: | CN107341193B | 公开(公告)日: | 2021-02-02 |
发明(设计)人: | 薛忠斌;何宁;晋世仲;刘明洋;李艾宸;王长周;汤杰 | 申请(专利权)人: | 中国神华能源股份有限公司;北京国华电力有限责任公司;神华国华(北京)电力研究院有限公司 |
主分类号: | G06F16/29 | 分类号: | G06F16/29;G06F16/9537 |
代理公司: | 北京润平知识产权代理有限公司 11283 | 代理人: | 金旭鹏;肖冰滨 |
地址: | 100011 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 路网 移动 对象 查询 方法 | ||
1.一种路网中移动对象查询方法,用于服务器端,其特征在于,所述路网中移动对象查询方法包括:
获取移动对象更新数据和用户输入的查询数据;
采用多核CPU,基于移动对象在路网中所在的节点对所获取的移动对象更新数据进行聚集索引以及基于查询数据在路网中所在的边来对所获取的查询数据进行聚集索引;以及
多核CPU以单元格为单位将构建完成的格网索引的数据输送至GPU,GPU对相同单元格中的移动对象更新数据和查询数据进行基于最近邻KNN算法的计算,以获得查询结果,其中各个单元格之间相互独立并能够并行执行;
其中,采用多核CPU进行的聚集索引是格网索引,且所述格网索引包括:将各移动对象更新数据索引至格网中与该移动对象更新数据的二维欧式空间坐标相对应的单元格中;以及将各查询数据索引至格网中与该查询数据相匹配的移动对象更新数据所在的单元格中;
其中,当格网中的单元格中所聚集的数据的量超出设定阈值时,在GPU端将该单元格划分为至少两个子单元格,并将各数据相应存储至对应的子单元格。
2.根据权利要求1所述的路网中移动对象查询方法,其特征在于,所述获取移动对象更新数据和用户输入的查询数据包括:
周期性采集移动对象更新数据,该移动对象更新数据包括移动对象识别号及移动对象坐标;
实时接收用户输入的查询数据;以及
采用缓存器缓存所述移动对象更新数据及所述查询数据,并按照需要使用的线程数划分所述缓存器中的数据,其中每个线程处理一块移动对象更新数据或查询数据。
3.根据权利要求2所述的路网中的移动对象查询方法,其特征在于,采用快照的方式将所述移动对象更新数据和所述查询数据存储到所述缓存器中。
4.根据权利要求1所述的路网中移动对象查询方法,其特征在于,基于移动对象在路网中所在的节点对所获取的移动对象更新数据进行聚集索引包括:
计算移动对象与其所在路径中的两个端点处的节点的距离;
将与端点处的节点距离不超过其路径长度一半的移动对象的移动对象更新数据聚集在该节点;以及
将聚集完成的移动对象更新数据放入一个对象表结构中。
5.根据权利要求1所述的路网中移动对象查询方法,其特征在于,基于查询数据在路网中所在的边来对所获取的查询数据进行聚集索引包括:
将所有查询数据按照所在路径进行聚集,并将同一条路径上的查询数据放入一个查询表结构的相邻存储位置。
6.根据权利要求1所述的路网中移动对象查询方法,其特征在于,将聚集索引后的数据放入GPU中进行基于KNN算法的计算包括:
基于聚集索引后的数据,计算路径中的任意一个节点所在路径的两个端点的KNN结果集;
基于聚集索引后的数据,计算路径中的移动对象集合;以及
从所述KNN结果集和所述移动对象集合的合集中查询出所选定的节点的KNN结果集。
7.根据权利要求1至6中任意一项所述的路网中移动对象查询方法,其特征在于,所述路网中移动对象查询方法还包括:
将所述查询结果分发给用户,并删除进行计算的过程中所产生的中间结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国神华能源股份有限公司;北京国华电力有限责任公司;神华国华(北京)电力研究院有限公司,未经中国神华能源股份有限公司;北京国华电力有限责任公司;神华国华(北京)电力研究院有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710446636.2/1.html,转载请声明来源钻瓜专利网。