CN109271467A - 一种方向感知的路网移动对象k近邻查询方法 - Google Patents
一种方向感知的路网移动对象k近邻查询方法 Download PDFInfo
- Publication number
- CN109271467A CN109271467A CN201811003131.XA CN201811003131A CN109271467A CN 109271467 A CN109271467 A CN 109271467A CN 201811003131 A CN201811003131 A CN 201811003131A CN 109271467 A CN109271467 A CN 109271467A
- Authority
- CN
- China
- Prior art keywords
- mobile object
- road network
- query
- road
- grid
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Navigation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明的方向感知的路网移动对象k近邻查询方法,包括如下步骤:步骤1.评估查询范围;步骤2.构建局部路网;步骤3.扩展方向感知的路网;步骤4.迭代扩张查询范围;本发明从路网中加载出一个局部路网,并预计算局部路网节点到查询点的路网距离,实现了算法的高效性;本发明考虑了路网相对稳定的“静态”特性和移动对象频繁更新的“动态”特性,结合R‑tree高效稳定的查询性能以及网格索引更新不敏感的特点,合理利用R‑tree索引路网数据,简单网格索引移动对象,双索引结构达到了快速更新和高效查询的目的。
Description
技术领域
本发明涉及一种路网移动对象k近邻查询方法。
背景技术
随着智能移动设备的广泛流行和基于位置服务(Location-based Services,LBS)的快速发展,越来越多的应用通过空间数据库技术来满足人们的各种需求。k近邻查询作为空间数据库中最基础的查询类型之一,在现实生活中有着广泛的应用。例如用户通过打车软件搜索最近的k辆车租车就是典型的k近邻查询技术的应用。
K近邻查询经历了从简单的基于欧氏距离的静态对象查询到复杂的基于路网距离的移动对象查询。但现有的k近邻查询大多是以距离作为近邻对象的唯一选择标准,而没有考虑移动对象在路网中的运动方向。在为数不多的考虑了移动对象运动方向的查询方法中,大多是基于欧式距离的查询处理,不能在大规模复杂路往下判断移动对象是否朝向查询点运动。
发明内容
本发明要克服现有技术的上述缺点,提出一种关注移动对象运动方向的方向感知的路网移动对象k近邻查询方法。
本发明是设计一种准确高效查找朝向查询点运动的k近邻移动对象的方法,首先确定一个合适的局部查询范围,在此基础之上构建局部路网,并预计算局部路网中各路网节点到查询点的距离。然后根据路网节点到查询点的距离由近及远扩展路网,在路网扩展过程中完成朝向查询点的判定,获得朝向查询点的k个目标对象。若在局部路网中未获得K个移动对象,则进行查询范围的迭代扩张,获得一个更大的查询范围。
本发明的方向感知的路网移动对象k近邻查询方法,包括如下步骤:
1评估查询范围;
方向感知的路网移动对象k近邻查询首先确定一个合适的查询范围,其中包括了k近邻的候选对象。在查询范围内执行方向感知的路网移动对象k近邻查询方法提升了算法的查询效率,步骤如下:
(11)利用网格索引定位查询点所在的网格,然后统计网格内的移动对象的数量num。设定探测系数μ=2,如果num大于等于μ*k,得到该网格所覆盖的范围。
(12)若num小于μ*k,以当前网格为中心,向周围外扩一层网格,得到一个较大的网格,然后统计这个大网格内移动对象的数量,如此反复进行,直到移动对象的数量大于等于μ*k为止,以网格边界作为查询范围。
(13)把网格边界确定的查询范围之内移动对象到查询点的最大距离定义查询半径e。
2构建局部路网;
根据查询范围评估阶段确定的查询范围构建局部路网,并预计算局部路网中各节点到查询点的距离。
(21)在简单网格上执行欧式距离的范围查询,排除所有路网距离大于查询半径e的移动对象,获得方向感知的路网移动对象范围查询的候选对象。
(22)在R-tree上执行欧式距离的范围查询从全局路网中获得局部路网的信息。R-tree中是对全局路网的索引,保存了所有的道路信息,可以在R-tree上进行一次查询,将半径为e的查询窗口作为输入,输出被查询范围覆盖的路段。最后根据获得的局部路网信息在内存中重构局部路网。
(23)使用Dijkstra最短路径算法预计算局部路网中各节点到查询点的距离,一方面为接下来方向感知的路网扩展提供服务,另一方面可以加速计算移动对象到查询点的路网距离。
3扩展方向感知的路网;
根据路网节点到查询点的距离由近及远扩展路网,当扩展到某个路段时,要获得路段上的移动对象。本发明采用双索引结构,路网与移动对象分开索引导致从R-tree只能检索路网信息,从简单网格只能检索移动对象信息,若想获得指定路段上的移动对象就必须关联两者信息,具体步骤如下:
(31)首先根据给定的路段利用简单网格索引获取该路段覆盖的有效网格,然后获取有效网格内的移动对象。
(32)判断有效网格内的移动对象是否处于指定路段。一个移动对象在某个路段上的必要条件是该对象在路段的最小边界矩形中,借助R-tree索引递归地自顶向下搜索,获取最小边界矩形包含了该移动对象的所有候选路段。计算移动点到候选路段之间的垂直距离,若移动点到指定路段的垂直距离最小,则说明该移动对象处于指定路段。
(33)对有效网格内所有移动对象进行过滤之后,便获得指定路段上的移动对象。
在取得指定路段上的移动对象之后要判断对象的运动方向是否朝向查询点。本发明利用方位角来表征移动对象与路网扩展方向,方位角是从当前节点的指北方向线起,依顺时针方向到目标方向线之间的水平夹角,假定移动对象移动方向的方位角为α,路网扩展方向的方位角为β。朝向查询点的路网移动对象的判定准则为:逆着路网节点扩展方向运动的移动对象就是朝向查询点的移动对象,即α=(β+180)mod360时,当前移动对象是朝向查询点运动的。
完成朝向查询点的判定之后,若移动对象朝向查询点运动则将当前移动对象加入候选集。若候选集中对象个数达到k个,需要判断是否继续扩展,只有当下一个路网节点到查询点的距离比候选集中距离最大的移动对象更近时,才需要继续扩展,否则算法在返回候选集中top-k个移动对象后直接退出。
4迭代扩张查询范围;
若候选集中的移动对象个数为x(x<k)个,则说明查询范围过小,需要进一步扩大查询范围。查询范围的迭代扩张阶段以查询点q为中心,第top-x个移动对象到查询点的路网距离为新的查询半径,重新计算查询范围,然后继续进行局部路网构建和后续的步骤。
本发明的优点是:
(1)本方法从路网中加载出一个局部路网,并预计算局部路网节点到查询点的路网距离,实现了算法的高效性。
(2)本方法利用空间数据库的方位信息,以“方位角”表示移动对象和路网的扩展方向,提出了一种高效的朝向查询点的判定方法。
(3)本方法考虑了路网相对稳定的“静态”特性和移动对象频繁更新的“动态”特性,结合R-tree高效稳定的查询性能以及网格索引更新不敏感的特点,合理利用R-tree索引路网数据,简单网格索引移动对象,双索引结构达到了快速更新和高效查询的目的。
(4)填补了路网环境下方向感知的空白。
附图说明
图1是本发明的方法流程图。
具体实施方式
下面结合附图进一步说明本发明的技术方案。
本发明的方向感知的路网移动对象k近邻查询方法,包括如下步骤:
1评估查询范围;
方向感知的路网移动对象k近邻查询首先确定一个合适的查询范围,其中包括了k近邻的候选对象。在查询范围内执行方向感知的路网移动对象k近邻查询方法提升了算法的查询效率,步骤如下:
(11)利用网格索引定位查询点所在的网格,然后统计网格内的移动对象的数量num。设定探测系数μ=2,如果num大于等于μ*k,得到该网格所覆盖的范围。
(12)若num小于μ*k,以当前网格为中心,向周围外扩一层网格,得到一个较大的网格,然后统计这个大网格内移动对象的数量,如此反复进行,直到移动对象的数量大于等于μ*k为止,以网格边界作为查询范围。
(13)把网格边界确定的查询范围之内移动对象到查询点的最大距离定义查询半径e。
2构建局部路网;
根据查询范围评估阶段确定的查询范围构建局部路网,并预计算局部路网中各节点到查询点的距离。
(21)在简单网格上执行欧式距离的范围查询,排除所有路网距离大于查询半径e的移动对象,获得方向感知的路网移动对象范围查询的候选对象。
(22)在R-tree上执行欧式距离的范围查询从全局路网中获得局部路网的信息。R-tree中是对全局路网的索引,保存了所有的道路信息,可以在R-tree上进行一次查询,将半径为e的查询窗口作为输入,输出被查询范围覆盖的路段。最后根据获得的局部路网信息在内存中重构局部路网。
(23)使用Dijkstra最短路径算法预计算局部路网中各节点到查询点的距离,一方面为接下来方向感知的路网扩展提供服务,另一方面可以加速计算移动对象到查询点的路网距离。
3扩展方向感知的路网;
根据路网节点到查询点的距离由近及远扩展路网,当扩展到某个路段时,要获得路段上的移动对象。本发明采用双索引结构,路网与移动对象分开索引导致从R-tree只能检索路网信息,从简单网格只能检索移动对象信息,若想获得指定路段上的移动对象就必须关联两者信息,具体步骤如下:
(31)首先根据给定的路段利用简单网格索引获取该路段覆盖的有效网格,然后获取有效网格内的移动对象。
(32)判断有效网格内的移动对象是否处于指定路段。一个移动对象在某个路段上的必要条件是该对象在路段的最小边界矩形中,借助R-tree索引递归地自顶向下搜索,获取最小边界矩形包含了该移动对象的所有候选路段。计算移动点到候选路段之间的垂直距离,若移动点到指定路段的垂直距离最小,则说明该移动对象处于指定路段。
(33)对有效网格内所有移动对象进行过滤之后,便获得指定路段上的移动对象。
在取得指定路段上的移动对象之后要判断对象的运动方向是否朝向查询点。本发明利用方位角来表征移动对象与路网扩展方向,方位角是从当前节点的指北方向线起,依顺时针方向到目标方向线之间的水平夹角,假定移动对象移动方向的方位角为α,路网扩展方向的方位角为β。朝向查询点的路网移动对象的判定准则为:逆着路网节点扩展方向运动的移动对象就是朝向查询点的移动对象,即α=(β+180)mod360时,当前移动对象是朝向查询点运动的。
完成朝向查询点的判定之后,若移动对象朝向查询点运动则将当前移动对象加入候选集。若候选集中对象个数达到k个,需要判断是否继续扩展,只有当下一个路网节点到查询点的距离比候选集中距离最大的移动对象更近时,才需要继续扩展,否则算法在返回候选集中top-k个移动对象后直接退出。
4迭代扩张查询范围;
若候选集中的移动对象个数为x(x<k)个,则说明查询范围过小,需要进一步扩大查询范围。查询范围的迭代扩张阶段以查询点q为中心,第top-x个移动对象到查询点的路网距离为新的查询半径,重新计算查询范围,然后继续进行局部路网构建和后续的步骤。
本说明书实施例所述的内容仅仅是对发明构思的实现形式的列举,本发明的保护范围不应当被视为仅限于实施例所陈述的具体形式,本发明的保护范围也及于本领域技术人员根据本发明构思所能够想到的等同技术手段。
Claims (1)
1.一种方向感知的路网移动对象k近邻查询方法,包括如下步骤:
步骤1.评估查询范围;
方向感知的路网移动对象k近邻查询首先确定一个合适的查询范围,其中包括了k近邻的候选对象;在查询范围内执行方向感知的路网移动对象k近邻查询方法提升查询效率,步骤如下:
(11)利用网格索引定位查询点所在的网格,然后统计网格内的移动对象的数量num;设定探测系数μ=2,如果num大于等于μ*k,得到该网格所覆盖的范围;
(12)若num小于μ*k,以当前网格为中心,向周围外扩一层网格,得到一个较大的网格,然后统计这个大网格内移动对象的数量,如此反复进行,直到移动对象的数量大于等于μ*k为止,以网格边界作为查询范围;
(13)把网格边界确定的查询范围之内移动对象到查询点的最大距离定义查询半径e;
步骤2.构建局部路网;
根据查询范围评估阶段确定的查询范围构建局部路网,并预计算局部路网中各节点到查询点的距离;
(21)在简单网格上执行欧式距离的范围查询,排除所有路网距离大于查询半径e的移动对象,获得方向感知的路网移动对象范围查询的候选对象;
(22)在R-tree上执行欧式距离的范围查询从全局路网中获得局部路网的信息;R-tree中是对全局路网的索引,保存了所有的道路信息,可以在R-tree上进行一次查询,将半径为e的查询窗口作为输入,输出被查询范围覆盖的路段;最后根据获得的局部路网信息在内存中重构局部路网;
(23)使用Dijkstra最短路径算法预计算局部路网中各节点到查询点的距离,一方面为接下来方向感知的路网扩展提供服务,另一方面可以加速计算移动对象到查询点的路网距离;
步骤3.扩展方向感知的路网;
根据路网节点到查询点的距离由近及远扩展路网,当扩展到某个路段时,要获得路段上的移动对象;本发明采用双索引结构,路网与移动对象分开索引导致从R-tree只能检索路网信息,从简单网格只能检索移动对象信息,若想获得指定路段上的移动对象就必须关联两者信息,具体步骤如下:
(31)首先根据给定的路段利用简单网格索引获取该路段覆盖的有效网格,然后获取有效网格内的移动对象;
(32)判断有效网格内的移动对象是否处于指定路段;一个移动对象在某个路段上的必要条件是该对象在路段的最小边界矩形中,借助R-tree索引递归地自顶向下搜索,获取最小边界矩形包含了该移动对象的所有候选路段;计算移动点到候选路段之间的垂直距离,若移动点到指定路段的垂直距离最小,则说明该移动对象处于指定路段;
(33)对有效网格内所有移动对象进行过滤之后,便获得指定路段上的移动对象;
在取得指定路段上的移动对象之后要判断对象的运动方向是否朝向查询点;本发明利用方位角来表征移动对象与路网扩展方向,方位角是从当前节点的指北方向线起,依顺时针方向到目标方向线之间的水平夹角,假定移动对象移动方向的方位角为α,路网扩展方向的方位角为β;朝向查询点的路网移动对象的判定准则为:逆着路网节点扩展方向运动的移动对象就是朝向查询点的移动对象,即α=(β+180)mod360时,当前移动对象是朝向查询点运动的;
完成朝向查询点的判定之后,若移动对象朝向查询点运动则将当前移动对象加入候选集;若候选集中对象个数达到k个,需要判断是否继续扩展,只有当下一个路网节点到查询点的距离比候选集中距离最大的移动对象更近时,才需要继续扩展,否则算法在返回候选集中top-k个移动对象后直接退出;
步骤4.迭代扩张查询范围;
若候选集中的移动对象个数为x个,x<k,则说明查询范围过小,需要进一步扩大查询范围;查询范围的迭代扩张阶段以查询点q为中心,第top-x个移动对象到查询点的路网距离为新的查询半径,重新计算查询范围,然后继续进行局部路网构建和后续的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811003131.XA CN109271467B (zh) | 2018-08-30 | 2018-08-30 | 一种方向感知的路网移动对象k近邻查询方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811003131.XA CN109271467B (zh) | 2018-08-30 | 2018-08-30 | 一种方向感知的路网移动对象k近邻查询方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109271467A true CN109271467A (zh) | 2019-01-25 |
CN109271467B CN109271467B (zh) | 2022-07-22 |
Family
ID=65154635
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811003131.XA Active CN109271467B (zh) | 2018-08-30 | 2018-08-30 | 一种方向感知的路网移动对象k近邻查询方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109271467B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110442624A (zh) * | 2019-08-09 | 2019-11-12 | 沈阳航空航天大学 | 一种时间依赖路网中服务时间受限的聚合近邻查询方法 |
CN110647693A (zh) * | 2019-09-23 | 2020-01-03 | 京东城市(北京)数字科技有限公司 | 路径推荐的方法和装置 |
CN110737657A (zh) * | 2019-08-29 | 2020-01-31 | 浙江工业大学 | 基于路网的移动对象k近邻查询验证方法 |
CN110750853A (zh) * | 2019-08-29 | 2020-02-04 | 浙江工业大学 | 基于方向约束的路网连续k近邻查询方法 |
CN112183589A (zh) * | 2020-09-14 | 2021-01-05 | 西北工业大学 | 一种低采样率下的实时车辆k近邻查询方法 |
CN113377782A (zh) * | 2021-08-12 | 2021-09-10 | 深圳市数字城市工程研究中心 | 一种城市空间移动对象查询方法、装置及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090282056A1 (en) * | 2008-05-09 | 2009-11-12 | Locomatix Inc. | Location tracking framework |
CN102810118A (zh) * | 2012-07-05 | 2012-12-05 | 上海电力学院 | 一种变权网k近邻搜索方法 |
CN103473248A (zh) * | 2012-12-17 | 2013-12-25 | 东北大学 | 一种路网环境下的连续移动k近邻查询方法 |
-
2018
- 2018-08-30 CN CN201811003131.XA patent/CN109271467B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090282056A1 (en) * | 2008-05-09 | 2009-11-12 | Locomatix Inc. | Location tracking framework |
CN102810118A (zh) * | 2012-07-05 | 2012-12-05 | 上海电力学院 | 一种变权网k近邻搜索方法 |
CN103473248A (zh) * | 2012-12-17 | 2013-12-25 | 东北大学 | 一种路网环境下的连续移动k近邻查询方法 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110442624A (zh) * | 2019-08-09 | 2019-11-12 | 沈阳航空航天大学 | 一种时间依赖路网中服务时间受限的聚合近邻查询方法 |
CN110442624B (zh) * | 2019-08-09 | 2022-12-27 | 沈阳航空航天大学 | 一种时间依赖路网中服务时间受限的聚合近邻查询方法 |
CN110737657A (zh) * | 2019-08-29 | 2020-01-31 | 浙江工业大学 | 基于路网的移动对象k近邻查询验证方法 |
CN110750853A (zh) * | 2019-08-29 | 2020-02-04 | 浙江工业大学 | 基于方向约束的路网连续k近邻查询方法 |
CN110737657B (zh) * | 2019-08-29 | 2022-05-24 | 浙江工业大学 | 基于路网的移动对象k近邻查询验证方法 |
CN110750853B (zh) * | 2019-08-29 | 2024-03-29 | 浙江工业大学 | 基于方向约束的路网连续k近邻查询方法 |
CN110647693A (zh) * | 2019-09-23 | 2020-01-03 | 京东城市(北京)数字科技有限公司 | 路径推荐的方法和装置 |
CN112183589A (zh) * | 2020-09-14 | 2021-01-05 | 西北工业大学 | 一种低采样率下的实时车辆k近邻查询方法 |
CN112183589B (zh) * | 2020-09-14 | 2022-04-22 | 西北工业大学 | 一种低采样率下的实时车辆k近邻查询方法 |
CN113377782A (zh) * | 2021-08-12 | 2021-09-10 | 深圳市数字城市工程研究中心 | 一种城市空间移动对象查询方法、装置及存储介质 |
CN113377782B (zh) * | 2021-08-12 | 2021-11-16 | 深圳市数字城市工程研究中心 | 一种城市空间移动对象查询方法、装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109271467B (zh) | 2022-07-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109271467A (zh) | 一种方向感知的路网移动对象k近邻查询方法 | |
KR102041449B1 (ko) | 사용자의 위치를 획득하는 방법 및 장치 | |
Zuo et al. | Multi-phase fingerprint map based on interpolation for indoor localization using iBeacons | |
CN102810118B (zh) | 一种变权网k近邻搜索方法 | |
KR101323043B1 (ko) | 모바일 장치의 위치를 결정하기 위한 시스템 및 방법 | |
CN103533501A (zh) | 一种地理围栏生成方法 | |
CN110267206B (zh) | 用户位置预测方法及装置 | |
CN101821732A (zh) | 最近邻域地理搜索 | |
CN106658704A (zh) | 一种室内定位的起点位置的定位方法和系统 | |
CN101900565A (zh) | 路径确定方法和装置 | |
Guo et al. | WiMag: Multimode fusion localization system based on Magnetic/WiFi/PDR | |
CN109413661B (zh) | 一种计算站距的方法及装置 | |
CN109661030A (zh) | 无线传感器网络中基于动态网格的未知目标定位算法 | |
CN111405461B (zh) | 一种优化等间隔指纹采样个数的无线室内定位方法 | |
CN106204719A (zh) | 基于二维邻域检索的三维场景中海量模型实时调度方法 | |
Chen et al. | Local path searching based map matching algorithm for floating car data | |
Jia et al. | An indoor and outdoor seamless positioning system based on android platform | |
CN114173281B (zh) | 室内nlos环境下基于toa的定位系统信标节点的优化布局方法 | |
CN110691336A (zh) | 一种基于集成学习和相对定位的双尺度定位算法 | |
Lee et al. | QRLoc: User-involved calibration using quick response codes for Wi-Fi based indoor localization | |
Li et al. | A novel fingerprinting method of WiFi indoor positioning based on Weibull signal model | |
CN113139032A (zh) | 地理位置的搜索方法、装置、电子设备及存储介质 | |
Shin et al. | Adaptive cell-based index for moving objects in indoor | |
CN113626731A (zh) | 基于人工智能的位置预测的方法及装置 | |
CN108981713B (zh) | 一种混合无线自适应导航方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |