CN108204820B - 一种快速导航路径推测方法 - Google Patents
一种快速导航路径推测方法 Download PDFInfo
- Publication number
- CN108204820B CN108204820B CN201711135804.2A CN201711135804A CN108204820B CN 108204820 B CN108204820 B CN 108204820B CN 201711135804 A CN201711135804 A CN 201711135804A CN 108204820 B CN108204820 B CN 108204820B
- Authority
- CN
- China
- Prior art keywords
- link
- sub
- tree
- road
- node
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/3446—Details of route searching algorithms, e.g. Dijkstra, A*, arc-flags, using precalculated routes
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Automation & Control Theory (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Navigation (AREA)
- Traffic Control Systems (AREA)
Abstract
本发明公开了一种快速导航路径推测方法,通过预先计算某一范围内的路链行驶树,快速推测一定范围内两条路链之间的行驶路径。该方法首先生成路链行驶树;缓存查找启发式查找,输入要查找的起始路链和终止路链。在所有路链树map中查找以起始路链为根路链的路链树;判断终止路链是否在此路链树的子路链中,如果在,则从终点路链回溯到根路链,逆序,获取起始路链到终止路链之间的路径。如果终止路链不在此路链树的子路链中,则进入扩展查找模式。直到在某一层找到多条路径,选取其中最短的路径,回溯到原始的起始路链,将各段路链进行拼接,形成完整的路径。本发明取得了较好的时间和空间平衡。
Description
技术领域
本发明涉及一种路径推测的快速方法,通过预先计算某一范围内的路链行驶树,快速推测一定范围内两条路链之间的行驶路径的方法。
背景技术
在公交GPS推测公交线路,及浮动车GPS推测路况拥堵情况等场景中,往往需要快速推测两个连续GPS点所经过的路链,由于采集频率的问题,两个连续GPS点中间往往跨越了较长距离,可能经过了多条路链。采用普通方法,需要实时进行计算,所需时间和内存都较大。
为了解决上述问题,发明了快速导航路径推测方法,使用缓存技术,可快速、准确地推测出两个短时间内GPS点所经过的路链,提供给其它系统使用。
发明内容
针对现有技术中存在的上述问题,本发明提供一种快速导航路径推测的方法。
为实现上述目的,本发明采用以下技术方案。
一种快速导航路径的推测方法,从每条路链起始,生成500米范围内的路链行驶树(RouteTree),路链行驶树的每个节点(RouteLinkNode)即是一条路链;路链行驶树保存了从根路链到此路链的行驶距离,路链行驶树的父节点id及在此路链上的行驶方向,是否是叶子节点信息。
该方法包括以下步骤:
步骤1:路链行驶树生成;
循环所有路链,针对其中一条路链,生成根节点。
获取根节点所能行驶到的所有路链作为子路链,生成子节点,存入以路链id为key的子节点map中。
循环所有子路链,获取每个子路链所能行驶到的路链作为二层子路链,如果存在通过不同子路链抵达的同一个二层子路链,则只保存距离短的路链。如果距离已超过500米范围,则不追加子路链。
递归加载所有层级的子路链到子节点map,直到所有500米范围内能抵达的路链都加入到子节点map中。
循环子节点map,生成子节点list和父节点list,子节点list和父节点list做集合相减,得到不是任何节点的父节点,即叶子节点list,设置到相应节点中。
将此路链行驶树存入以根节点id为key的所有路链树map中。
步骤2:缓存查找
输入要查找的起始路链和终止路链。在所有路链树map中查找以起始路链为根路链的路链树。
判断终止路链是否在此路链树的子路链中,如果在,则从终点路链回溯到根路链,逆序,获取起始路链到终止路链之间的路径。如果终止路链不在此路链树的子路链中,则进入扩展查找模式。
步骤3:启发式查找
如果终止路链不在此路链树的子路链中,则认为终止路链距起始路链较远,采用启发式算法思维,获取此路链树的所有叶子节点,筛选出直线距离终止路链最近的4个叶子节点。
循环4个叶子节点,以每个叶子节点作为新的起始路链,查找是否有到终止路链的路径。
递归进行查找,直到在某一层找到多条路径,选取其中最短的路径,回溯到原始的起始路链,将各段路链进行拼接,形成完整的路径。
与现有技术相比,本发明具有以下明显的优势:
在500米范围内,以武汉市为里,一个城市的所有路链行驶树大小在300MB左右,查找速度基本在常数时间复杂度范围内,在500米范围外,也能取得较短的查找时间,尤其是对于上文提到的背景应用,绝大多数连续的两个GPS点,距离不会超过500米,用此方法取得了较好的时间和空间平衡。
具体实施方式
下面结合具体实施方式对本发明做进一步说明。
具体实施方式以武汉市公交行业综合业务管理系统中的公交线路管理平台为例。
武汉市公交行业综合业务管理系统是武汉市公交办为管理武汉市1万余辆公交车、2万公交车司乘人员、700多条线路、近6000个站点即其它相关附属设施而专门建设的管理系统。主要的功能是显示全市公交线路、站点的分布情况,新增、修改公交线路,查看公交车的实时地理位置、按区域或公交线路、站点分析运营速度、驻站时间、准点率、兑现率、查找定位单个公交车、查看单个公交车历史轨迹、历史轨迹模糊搜索等。该系统由应用服务器、GIS服务器、数据库服务器组成。其中服务器型号为浪潮英信NF8460M4服务器,2个2.1GHz CPU,内存64G,300G存储。系统的主要数据,来源于数据中心发送的全市1万辆公交车GPS及刷卡数据。公交车GPS及刷卡数据由安装在公交车上的移动设备发出,一般一分钟发送3-4次。系统从行业数据中心接收到的GPS数据1500条左右每秒。
本发明所述的方法包括以下步骤:
步骤1:路链行驶树缓存生成,包括以下步骤:
步骤1.1循环所有路链,针对其中一条路链,生成根节点。
从地铁线路库中读取地铁线路基本信息。
步骤1.2获取根节点所能行驶到的所有路链作为子路链,生成子节点,存入以路链id为key的子节点map中。
步骤1.3循环所有子路链,获取每个子路链所能行驶到的路链作为二层子路链,如果存在通过不同子路链抵达的同一个二层子路链,则只保存距离较短的那个方向。如果距离已超过500米范围,则不追加此子路链。
步骤1.4递归加载所有层级的子路链到子节点map,直到所有500米范围内能抵达的路链都加入到子节点map中。
步骤1.5循环子节点map,生成子节点list和父节点list,两者做集合相减,得到不是任何节点的父节点,即叶子节点list,设置到相应节点中。
步骤1.6将此路链行驶树存入以根节点id为key的所有路链树map中。
步骤2:缓存查找,包括以下步骤:
步骤2.1输入要查找的起始路链和终止路链。在所有路链树map中查找以起始路链为根路链的路链树。
步骤2.2判断终止路链是否在此路链树的子路链中,如果在,则从终点路链回溯到根路链,逆序,获取起始路链到终止路链之间的路径。
步骤2.3如果终止路链不在此路链树的子路链中,则进入扩展查找模式。
步骤3:启发式查找包括以下步骤:
步骤3.1获取此路链树的所有叶子节点
步骤3.2计算所有叶子节点到终止路链的直线距离
步骤3.3排序并筛选出直线距离最短的4个叶子节点。
步骤3.4循环4个叶子节点,以每个叶子节点作为新的起始路链。
步骤3.5递归进行查找,直到在某一层找到多条路径。
步骤3.6选取其中最短的路径,回溯并拼接每一段路链,直到原始的起始路链,形成完整的路径。
Claims (1)
1.一种快速导航路径推测方法,从每条路链起始,生成500米范围内的路链行驶树RouteTree,路链行驶树的每个节点RouteLinkNode即是一条路链;路链行驶树保存了从根路链到此路链的行驶距离,路链行驶树的父节点id及在此路链上的行驶方向,是否是叶子节点信息;
其特征在于:该方法包括以下步骤:
步骤1:路链行驶树生成;
循环所有路链,针对其中一条路链,生成根节点;
获取根节点所能行驶到的所有路链作为子路链,生成子节点,存入以路链id为key的子节点map中;
循环所有子路链,获取每个子路链所能行驶到的路链作为二层子路链,如果存在通过不同子路链抵达的同一个二层子路链,则只保存距离短的路链;如果距离已超过500米范围,则不追加子路链;
递归加载所有层级的子路链到子节点map,直到所有500米范围内能抵达的路链都加入到子节点map中;
循环子节点map,生成子节点list和父节点list,子节点list和父节点list做集合相减,得到不是任何节点的父节点,即叶子节点list,设置到相应节点中;
将此路链行驶树存入以根节点id为key的所有路链树map中;
步骤2:缓存查找
输入要查找的起始路链和终止路链;在所有路链树map中查找以起始路链为根路链的路链树;
判断终止路链是否在此路链树的子路链中,如果在,则从终点路链回溯到根路链,逆序,获取起始路链到终止路链之间的路径;如果终止路链不在此路链树的子路链中,则进入扩展查找模式;
步骤3:启发式查找
如果终止路链不在此路链树的子路链中,则认为终止路链距起始路链较远,采用启发式算法思维,获取此路链树的所有叶子节点,筛选出直线距离终止路链最近的4个叶子节点;
循环4个叶子节点,以每个叶子节点作为新的起始路链,查找是否有到终止路链的路径;
递归进行查找,直到在某一层找到多条路径,选取其中最短的路径,回溯到原始的起始路链,将各段路链进行拼接,形成完整的路径。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711135804.2A CN108204820B (zh) | 2017-11-15 | 2017-11-15 | 一种快速导航路径推测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711135804.2A CN108204820B (zh) | 2017-11-15 | 2017-11-15 | 一种快速导航路径推测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108204820A CN108204820A (zh) | 2018-06-26 |
CN108204820B true CN108204820B (zh) | 2021-06-04 |
Family
ID=62603775
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711135804.2A Active CN108204820B (zh) | 2017-11-15 | 2017-11-15 | 一种快速导航路径推测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108204820B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11164372B2 (en) * | 2019-12-10 | 2021-11-02 | Nvidia Corporation | Polar stroking for vector graphics |
CN117558147B (zh) * | 2024-01-11 | 2024-03-26 | 上海伯镭智能科技有限公司 | 一种矿区无人驾驶车辆路权分配远程管控方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1948913A (zh) * | 2006-08-25 | 2007-04-18 | 北京航空航天大学 | 用于处理大规模浮动车数据的启发式路径推测方法 |
CN101408428A (zh) * | 2007-10-11 | 2009-04-15 | 北京灵图软件技术有限公司 | 一种计算最佳导航路径的方法和一种通讯导航装置 |
CN101409011A (zh) * | 2008-10-28 | 2009-04-15 | 北京世纪高通科技有限公司 | 一种地图匹配和路径推测方法、装置和系统 |
KR20100011277A (ko) * | 2008-07-24 | 2010-02-03 | 주식회사 어니언텍 | 재탐색 이동경로 예측하는 네비게이션 및 그 동작 방법 |
CN101694749A (zh) * | 2009-08-25 | 2010-04-14 | 北京世纪高通科技有限公司 | 一种路径推测方法及装置 |
CN102200446A (zh) * | 2010-03-23 | 2011-09-28 | 日电(中国)有限公司 | 基于交通数据的连续路径探测装置和方法 |
CN102809384A (zh) * | 2012-08-22 | 2012-12-05 | 北京世纪高通科技有限公司 | 一种路链提取方法及装置 |
CN105547316A (zh) * | 2015-12-28 | 2016-05-04 | 北京握奇智能科技有限公司 | 一种浮动车车载终端的路径搜索方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090088965A1 (en) * | 2007-10-02 | 2009-04-02 | International Business Machines Corporation | Enhancement for navigation systems for using weather information when predicting a quickest travel path |
-
2017
- 2017-11-15 CN CN201711135804.2A patent/CN108204820B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1948913A (zh) * | 2006-08-25 | 2007-04-18 | 北京航空航天大学 | 用于处理大规模浮动车数据的启发式路径推测方法 |
CN101408428A (zh) * | 2007-10-11 | 2009-04-15 | 北京灵图软件技术有限公司 | 一种计算最佳导航路径的方法和一种通讯导航装置 |
KR20100011277A (ko) * | 2008-07-24 | 2010-02-03 | 주식회사 어니언텍 | 재탐색 이동경로 예측하는 네비게이션 및 그 동작 방법 |
CN101409011A (zh) * | 2008-10-28 | 2009-04-15 | 北京世纪高通科技有限公司 | 一种地图匹配和路径推测方法、装置和系统 |
CN101694749A (zh) * | 2009-08-25 | 2010-04-14 | 北京世纪高通科技有限公司 | 一种路径推测方法及装置 |
CN102200446A (zh) * | 2010-03-23 | 2011-09-28 | 日电(中国)有限公司 | 基于交通数据的连续路径探测装置和方法 |
CN102809384A (zh) * | 2012-08-22 | 2012-12-05 | 北京世纪高通科技有限公司 | 一种路链提取方法及装置 |
CN105547316A (zh) * | 2015-12-28 | 2016-05-04 | 北京握奇智能科技有限公司 | 一种浮动车车载终端的路径搜索方法及系统 |
Non-Patent Citations (2)
Title |
---|
一种基于格网划分的浮动车数据自适应地图匹配方法研究;陶华超等;《地理与地理信息科学》;20150515;第31卷(第03期);第22-25、37页 * |
基于低频浮动车数据的实时地图匹配算法;姚恩建等;《北京工业大学学报》;20130610;第39卷(第06期);第909-913页 * |
Also Published As
Publication number | Publication date |
---|---|
CN108204820A (zh) | 2018-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9513134B1 (en) | Management of evacuation with mobile objects | |
CN105205196B (zh) | 用于生成路网的方法和系统 | |
US8670937B2 (en) | Path searching method and path search device | |
CN108196280B (zh) | 一种通过gps推断公交线路方法 | |
JP2013545078A (ja) | ルート設計デジタル地図を最適化するための方法、システム、およびコンピュータ・プログラム製品 | |
CN105091890A (zh) | 用于推荐候选路径的方法和装置 | |
CN104683405A (zh) | 在车联网中集群服务器分发地图匹配任务的方法和装置 | |
CN105203116A (zh) | 一种基于条件随机场和低采样频率浮动车数据的地图匹配方法 | |
CN113763700A (zh) | 信息处理方法、装置、计算机设备及存储介质 | |
CN115585816B (zh) | 车道级地图匹配方法和装置 | |
CN110232470B (zh) | 一种确定车辆行驶路径的方法及装置 | |
CN114090642A (zh) | 地图路网匹配方法、装置、设备和介质 | |
CN108204820B (zh) | 一种快速导航路径推测方法 | |
US20170178268A1 (en) | Management of mobile objects and resources | |
CN115079701A (zh) | 一种无人车与无人机协同的路径规划方法 | |
CN112686466A (zh) | 地铁乘客的路径确认方法及装置 | |
CN101807348B (zh) | 一种动态网络导航系统及方法 | |
CN106855878A (zh) | 基于电子地图的历史行车轨迹显示方法和装置 | |
CN110659752B (zh) | 用于确定移动路径的方法和装置 | |
CN113008246B (zh) | 地图匹配方法和装置 | |
CN112699202B (zh) | 禁行道路的识别方法、装置、电子设备及存储介质 | |
CN105448044B (zh) | 一种确定司机疲劳状态的方法与设备 | |
CN113761397A (zh) | 一种定制客运路线的推荐方法、系统、设备及存储介质 | |
CN114264313A (zh) | 基于势能的车道级路径规划方法、系统、设备及存储介质 | |
Zhang et al. | A new path optimization method in dynamic adverse weathers |
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 |