CN102081658A - 基于分层路网的路径搜索方法和装置 - Google Patents
基于分层路网的路径搜索方法和装置 Download PDFInfo
- Publication number
- CN102081658A CN102081658A CN 201110006188 CN201110006188A CN102081658A CN 102081658 A CN102081658 A CN 102081658A CN 201110006188 CN201110006188 CN 201110006188 CN 201110006188 A CN201110006188 A CN 201110006188A CN 102081658 A CN102081658 A CN 102081658A
- Authority
- CN
- China
- Prior art keywords
- node
- kms
- road network
- path
- search
- 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
Images
Landscapes
- Navigation (AREA)
Abstract
本发明提供了一种基于分层路网的路径搜索方法和装置,所述方法包括:在下层路网分别在预设范围内搜索起点S的局部最优路径RSJ=(S...Ji)和终点E的局部最优路径RNE=(Nk...E);所述节点Ji和节点Nk为上层路网节点;在上层路网搜索节点Ji和节点Nk的局部最优路径RJN=(Ji...Nk);合并上述局部最优路径,获得从起点S到终点E的最优路径RSE=(S...Ji...Nk...E)。本发明方案中,起点和终点的局部最优路径通过预设范围控制路网搜索规模;远距离的节点Ji和Nk之间的最优路径在路网规模较小的上层路网进行搜索,从而使得总体搜索规模在较小的可控范围内进行,路径搜索效率大大提高。
Description
技术领域
本发明涉及地理信息系统领域,特别是涉及一种基于分层路网的路径搜索方法和装置。
背景技术
路径分析是现代地理信息系统应用的基本功能之一。随着智能交通的建设,尤其是网络电子地图,车载导航软件,手机全球定位系统(Global PositionSystem,GPS)导航等各种导航产品的普及,路径分析技术获得了非常广泛的关注,并引起了大量学者的研究兴趣,人们对于路径分析算法提出了灵活、准确、快速等要求。现有技术主要有二种方案路径搜索方案:
一是迪杰斯特拉(Dijkstra)最短路径算法:经常使用的路径分析模式有最短距离,最快时间,最少收费等,无论采用何种模式,最优路径规划最终都可以归结为在特定道路网中寻找具有最小代价的最短路径分析,即图论中的最短路问题。方法为:给定带权有向图G=(V,{E}),其中V是包含n个顶点的顶点集,E是包含m条弧的弧集,经典Dijkstra算法能按路径长度递增的秩序产生源点v到G中其余各顶点的最短路径。
Dijkstra算法的缺点主要包括:执行时间复杂度为O(n2),结合堆数据结构Dijkstra算法执行时间的最佳上界是O(m+n log n)。对于小规模局域道路网络,Dijkstra可以获取理论上最优的规划路线,但是随着路网复杂度的增加,以及搜索范围的扩大,Dijkstra的算法复杂度是发散的。对于大规模路网(如全国道路网络,约500万弧段或结点),Dijkstra算法的时间和内存开销都非常大,因此这一经典的路径分析算法很难解决该情形下的路径分析问题。其次,Dijkstra能获取数学上的最短路径,但在实际应用中,算法上的最短路径,并不是人们出行的最优路径。以穿越北京市二环的路径分析为例,最短路径会穿越二环内的大量胡同和小路,并不符合人的出行习惯。当然,Dijkstra算法对于每一条道路计算费用时,可以利用道路功能等级进行费用加权计算,以实现在实际里程相差不多的情形下,优先选择高等级的道路作为规划路线,但是,对于很多道路等级差别化不明显的区域,很难获取更合理的规划路线。
第二个方案:启发式搜索方案,其估价函数为:
f′(v)=g(v)+h′(v)
式中,g(v)是从起点S到当前顶点v的实际费用,h′(v)是从当前顶点v到目标顶点E的费用估计函数。
在实际应用中,一般这样计算估计费用,
h′(v)=λd′(v)
其中,d′(v)是当前顶点t到目标顶点E的直线距离,λ是估计权值。
将Dijkstra算法中的顶点权值d(v)用f′(v)代替,即实现了启发式最短路径搜索。
上述算法是目前广为流行的路径规划启发式算法,通过选择合适的估价函数,其使用的搜索空间比Dijkstra算法小。如图1所示,圆形区域a是Dijkstra的算法搜索空间,椭圆形区域b是使用启发式策略后的算法搜索空间。
但启发式搜索也有其的缺点:
1)估计权值λ的大小决定了算法搜索的复杂度,λ越大,算法越快,但准确度降低;反过来,λ越小,算法越慢,但准确度提高;当λ=0时,启发式搜索等同于经典Dijkstra,为最准确结果,但也最慢。所以,启发式实质上是一种牺牲一定准确度,以获取更高效率的策略。
2)对于很大规模的路网,如全国路网,即便使用启发式策略,在搜索过程中,算法的复杂度依旧是发散的,尤其对于非常长距离的路径分析(如哈尔滨至海口),即便用启发式策略提高了算法效率,但搜索规模依旧很大,效率依旧无法令人接受。
发明内容
本发明所要解决的技术问题是提供一种基于分层路网的路径搜索方法,可解决现有路径搜索的效率过低,对于规模较大的路网无法适于实用的问题。
本发明还提供了一种基于分层路网的路径搜索装置,以保证上述方法在实际中的应用。
为了解决上述问题,本发明公开了一种基于分层路网的路径搜索方法,包括:在下层路网分别搜索起点S的局部最优路径RSJ=(S...Ji)和终点E的局部最优路径RNE=(Nk...E);所述节点Ji和节点Nk为上层路网节点;所述节点Ji位于起点S的预设范围内,所述节点Nk位于终点E的预设范围内;在上层路网搜索节点Ji和节点Nk的局部最优路径RJN=(Ji...Nk);合并上述局部最优路径,获得从起点S到终点E的最优路径RSE=(S...Ji...Nk...E)。
优选的,所述局部最优路径RSJ和RJN的搜索方法具体为:将起点S和终点E是作为当前节点;判断当前节点是否为最上层路网节点,若否,在当前节点的预设范围内,基于当前层路网搜索该当前节点到上一层路网节点的局部最优路径;将该上一层路网的节点作为当前节点,重复上述判断和搜索过程。
优选的,所述路网的层数n与所述起点S和终点E之间的距离D相关:若D<10千米,则n=1;若10千米≤D<50千米,则n=2;若50千米≤D<100千米,则n=3;若100千米≤D<500千米,则n=4;若D≥500千米,则n=5。
优选的,将当前层路网搜索的所有上一层节点采用堆数据结构管理,作为上层路网局部最优路径搜索的基础。
优选的,所述节点的预设范围为以该节点为中心的圆形区域或方形区域,其中:若所述节点位于第1层路网,则圆形区域的半径为10千米,方形区域的边长为20千米;若所述节点位于第2层路网,则圆形区域的半径为50千米,方形区域的边长为100千米;若所述节点位于第3层以上的路网,则圆形区域的半径为100千米,方形区域的边长为200千米。
优选的,在所述局部最优路径搜索步骤之前还包括:根据所述起点S和终点E之间的距离,增加道路的费用权值参数δ,并根据下述公式计算道路的费用τ′:
τ′=(β-δ)·τ,β∈(0~1〕,δ∈(0~β)
其中,τ表示道路的原始费用;β表示道路的费用权值。
优选的,在同一层网络搜索局部最优路径的方式为迪杰斯特拉最短路径算法或启发式路径规划方法;对于启发式路径规划方法,用下列公式估算局部最优路径的开始节点到达目标节点的费用f′(v):
f′(v)=g(v)+λd′(v)
其中,g(v)为局部最优路径的开始节点到当前节点v的实际费用,λ为启发式费用权值,d′(v)为当前节点v到目标节点的直线距离。
优选的,在同一层网络搜索局部最优路径的方式为自适应启发式路径规划方法,所述局部最优路径的开始节点到达目标节点的费用f′(v)的计算公式为:
f′(v)=g(v)+σλd′(v)
其中,g(v)为局部最优路径的开始节点到当前节点v的实际费用,λ为启发式费用权值,d′(v)为当前节点v到目标节点的直线距离,σ为自适应调节参数;所述自适应调节参数σ与所述局部最优路径的开始节点和目标节点之间的距离D相关;
若D≥500千米,则σ=1;
若100千米<D<500千米,则σ=0.8+0.2×(D-100)/(500-100);
若10千米≤D≤100千米,则σ=0.6+0.2×(D-10)/(100-10);
若D<10千米,则σ=0.4+0.2×D/10。
依据本发明的另一优选实施例,还公开了一种基于分层路网的路径搜索装置,包括上升搜索单元,上层路径搜索单元和路径合并单元,其中:上升搜索单元用于在起点S的预设范围内基于下层路网搜索起点S到上层路网节点Ji的局部最优路径RSJ=(S...Ji),以及,在终点E的预设范围内基于下层路网搜索终点E到上层路网节点Nk的局部最优路径RNE=(Nk...E);上层路径搜索单元用于在上层路网搜索所述上升搜索单元产生的节点Ji和节点Nk的局部最优路径RJN=(Ji...Nk);路径合并单元用于合并所述上升搜索单元和上层路径搜索单元产生的局部最优路径RSJ、RNE和RJN,获得从起点S到终点E的最优路径RSE=(S...Ji...Nk...E)。
优选的,还包括路网层数设置单元和上升搜索控制单元,其中:
所述上升搜索控制单元采用下述策略为所述上升搜索单元产生局部最优路径RSJ和RJN:将起点S和终点E作为当前节点;判断当前节点是否为最上层路网节点,若否,在当前节点的预设范围内,基于当前层路网搜索该当前节点到上一层路网节点的局部最优路径;将该上一层路网的节点作为当前节点,重复上述判断和搜索过程;
所述路网层数设置单元采用下述规则设置路网的层数n:若D<10千米,则n=1;若10千米≤D<50千米,则n=2;若50千米≤D<100千米,则n=3;若100千米≤D<500千米,则n=4;若D≥500千米,则n=5;其中D表示所述起点S和终点E之间的距离。
优选的,还包括节点管理单元,用于将上升搜索控制单元在当前层路网搜索的所有上一层节点采用堆数据结构管理,作为上一层路网局部最优路径搜索的基础。
优选的,还包括区域设置单元,用于为所述上升搜索单元或上升搜索控制单元设置所述节点的预设搜索范围,该预设搜索范围为以该节点为中心的圆形区域或方形区域,其中:若所述节点位于第1层路网,则圆形区域的半径为10千米,方形区域的边长为20千米;若所述节点位于第2层路网,则圆形区域的半径为50千米,方形区域的边长为100千米;若所述节点位于第3层以上的路网,则圆形区域的半径为100千米,方形区域的边长为200千米。
优选的,还包括道路费用权值设置单元,用于根据所述起点S和终点E之间的距离,设置道路的费用权值参数δ,并根据下述公式计算道路的费用τ′,为所述上升搜索单元和上层路径搜索单元提供局部最优路径的搜索基础:
τ′=(β-δ)·τ,β∈(0~1〕,δ∈(0~β)
其中,τ表示道路的原始费用;β表示道路的费用权值。
优选的,还包括第一局部最优路径搜索单元,用于在同一层网络,基于迪杰斯特拉最短路径算法或启发式路径规划方法,搜索开始节点到目标节点之间最优路径;对于启发式路径规划方法,用下列公式估算局部最优路径的开始节点到达目标节点的费用f′(v):
f′(v)=g(v)+λd′(v)
其中,g(v)为局部最优路径的开始节点到当前节点v的实际费用,λ为启发式费用权值,d′(v)为当前节点v到目标节点的直线距离。
优选的,还包括第二局部最优路径搜索单元,用于在同一层网络,基于自适应启发式路径规划方法,搜索开始节点到目标节点之间的最优路径;所述开始节点到达目标节点的费用f′(v)的计算公式为:
f′(v)=g(v)+σλd′(v)
其中,g(v)为局部最优路径的开始节点到当前节点v的实际费用,λ为启发式费用权值,d′(v)为当前节点v到目标节点的直线距离,σ为自适应调节参数;所述自适应调节参数σ与所述局部最优路径的开始节点和目标节点之间的距离D相关;
若D≥500千米,则σ=1;
若100千米<D<500千米,则σ=0.8+0.2×(D-100)/(500-100);
若10千米≤D≤1()0千米,则σ=0.6+0.2×(D-10)/(100-10);
若D<10千米,则σ=0.4+0.2×D/10。
与现有技术相比,本发明具有以下优点:
本发明优选实施例中,起点和终点的局部最优路径通过预设范围控制路网搜索规模;远距离的节点Ji和Nk之间的最优路径在路网规模较小的上层路网进行搜索,从而使得总体搜索规模在较小的可控范围内进行,路径搜索效率大大提高,可解决现有路径搜索效率过低,对于规模较大的路网无法适于实用的问题。
在本发明进一步的优选实施例中,通过起点和终点之间的距离配置路网的层数,可适应不同距离情况的路径搜索,兼顾搜索效率和搜索精度的平衡,一方面,保证各种距离情形下的路径分析结果的合理性,另一方面,通过搜索层数的控制,让各种距离情形下路径分析算法的搜索空间保持稳定。
在本发明进一步的优选实施例中,将当前层路网搜索的所有上一层节点采用堆数据结构管理,作为上层路网局部最优路径搜索的基础,可综合处理局部最优和全局最优的关系。
在本发明进一步的优选实施例中,通过控制道路权值参数,可充分体现人们的实际出行习惯,使路径分析的结果更加合理,尤其可规避一些理论上通行,但用户很难会选择的路段。
另外,对于采用启发式搜索方法的情况,本发明的优选实施例中,通过增加自适应调节参数σ,构造启发式费用权值λ与距离D的模糊映射关系:对于较远距离的路径分析,加大λ值,以优先考虑更高的效率;对于较近距离的路径分析,减小λ值,以获取更准确的结果。
附图说明
图1是现有技术Dijkstra与启发式路径搜索比较示意图;
图2是本发明基于分层路网的路径搜索方法第一实施例流程图;
图3是本发明基于分层路网的路径搜索方法分层策略示意图;
图4-1~图4-5分别是北京市三环范围内分层路网中第1层~第5层路网示意图;
图5是本发明基于分层路网的路径搜索方法第二实施例流程图;
图6是本发明基于分层路网的路径搜索装置一实施例的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
参照图2,示出了本发明基于分层路网的路径搜索方法第一实施例的流程,具体包括以下步骤:
步骤S201:在下层路网分别搜索起点S的局部最优路径RSJ=(S...Ji)和终点E的局部最优路径RNE=(Nk...E);
上述节点Ji和节点Nk为上层路网节点;节点Ji位于起点S的预设范围内,节点Nk位于终点E的预设范围内;该预设范围为以S或E为中心的圆形区域或方形区域,区域的大小与节点所在的路网层相关,如,当节点位于第1层路网时,圆形区域的半径可设置为10千米,方形区域的边长可设置为20千米;当节点位于第2层路网时,则圆形区域的半径可设置为50千米,方形区域的边长可设置为100千米;若所述节点位于第3层以上的路网,则圆形区域的半径可设置为100千米,方形区域的边长可设置为200千米。
步骤S202:在上层路网搜索节点Ji和节点Nk的局部最优路径RJN=(Ji...Nk);
在步骤S201和S202的局部最优路径搜索中,可采用Dijkstra最短路径算法,也可以采用启发式路径规划方法;
若采用启发式路径规划方法,可采用用下列公式估算局部最优路径的开始节点到达目标节点的费用f′(v):
f′(v)=g(v)+λd′(v)
其中,g(v)为局部最优路径的开始节点到当前节点v的实际费用,λ为启发式费用权值,d′(v)为当前节点v到目标节点的直线距离。
步骤S203:合并上述局部最优路径,获得从起点S到终点E的最优路径RSE=(S...Ji...Nk...E)。
在本优选实施例中,为适应不同距离情况的路径搜索,兼顾搜索效率和搜索精度的平衡,一方面,保证各种距离情形下的路径分析结果的合理性,另一方面,通过搜索层数的控制,让各种距离情形下路径分析算法的搜索空间保持稳定,通过起点S和终点E之间的距离D来配置路网的层数n。一般来讲,D大于500千米时,为较远距离的省际间路径分析;100~500公里为城市间路径分析;50~100公里为城市内部或相邻城市间的路径分析;10~50公里为城市内部穿越;0~10公里为较劲距离路径分析。为此,本优选实施例对于不同的距离区间,按下列规则设定不同的搜索层数控制:
若D<10千米,则n=1;
若10千米≤D<50千米,则n=2;
若50千米≤D<100千米,则n=3;
若100千米≤D<500千米,则n=4;
若D≥500千米,则n=5。
当n>2时,步骤201中的局部最优路径RSJ和RJN的可采用下述方法实现:
将起点S和终点E是作为当前节点;
判断当前节点是否为最上层路网节点,若否,在当前节点的预设范围内,基于当前层路网搜索该当前节点到上一层路网节点的局部最优路径;
将该上一层路网的节点作为当前节点,重复上述判断和搜索过程。
参照图4-1~图4-5,分别示出了北京市三环范围内分层路网中第1层~第5层路网图,其中,图4-1所示的第1层路网为去掉社区内部道路和公园内部道路等局部道路后的道路图,图4-2~图4-5所示的第2层~第5层道路是基于道路功能属性、特征属性等进一步抽象出的道路图,从图中不难看出,随着道路层数的上升,道路规模大大减少,因此,基于本发明的分层路网上升搜索策略,可大大减少路径的搜索规模,从而使得总体搜索规模在较小的可控范围内进行,路径搜索效率大大提高。
在本优选实施例中,为避免因局部最优路径和全局最优路径的矛盾,将当前层路网搜索的所有上一层节点采用堆数据结构管理,作为上层路网局部最优路径搜索的基础。
参照图3,示出了一个简单的分层搜索策略示意图,图中虚线为相对下层路网G1,实线为相对上层路网G2,S和E分别表示为起点和终点。在图3中,以起点S的上升搜索为例,节点J1,J2,J3,J4都有可能是上层的起始点。因此,将节点J1~J4和N1~N4均纳入堆数据结构管理,作为上层路网局部最优路径搜索的基础,需要分别计算路径(J1...N1),(J1...N2),。。。,(J4...N4),然后与路径(S...Ji)、(Nk...E)综合后比较,获得从起点S到终点E总体费用最小的路径RSE=(S...Ji...Nk...E)。
另外,为充分体现人们的实际出行习惯,使路径分析的结果更加合理,尤其是需要规避一些理论上通行,但用户很难会选择的路段时,可根据起点S和终点E之间的距离,合理地调整道路费用的权值。比如较远距离的时间最快路径分析,可以将最顶层高速公路的权值减少,以使高速公路通过费用降低,规划路线更多地选择高速;反过来,对于较近距离的路径分析,尽量减少高速和其他道路的费用权值差值,以避免“绕路”。在本优选实施例中,为实现上述目标,增加了一个道路的费用权值参数δ,并根据下述公式重新计算道路的费用τ′:
τ′=(β-δ)·τ,β∈(0~1〕,δ∈(0~β)
其中,τ表示道路的原始费用;β表示道路的费用权值。
显然,δ越大,τ′越小,即该道路的费用越小;道路的费用越小,在搜索路径时,该道路越会被优先搜索到。
在步骤S201和S202的局部最优路径搜索中,采用启发式路径规划方法时,理论上,只要启发式的估计费用小于实际的费用,启发式策略就可以在保证一定精度情形下有效地提高Dijkstra算法的效率。但在大量的实际应用中,真实的路网分布和道路拓扑关系都非常繁杂,过大的λ值很容易造成绕路,为此,在本方法实施例进一步的优选实施例中,通过增加一个自适应调节参数σ,构造λ与D的模糊映射关系,当进行较远距离的路径分析时,可加大λ的值,以优先考虑更高的搜索效率;对于较近距离,可减小λ值,以获取更准确的搜索结果。其中,局部最优路径的开始节点到达目标节点的费用f′(v)的计算公式为:
f′(v)=g(v)+σλd′(v),σ∈[0.4~1]
上述公式中,g(v)为局部最优路径的开始节点到当前节点v的实际费用,λ为启发式费用权值,d′(v)为当前节点v到目标节点的直线距离,σ为自适应调节参数;该自适应调节参数σ与局部最优路径的开始节点和目标节点之间的距离D相关;
若D≥500千米,则σ=1;
若100千米<D<500千米,则σ=0.8+0.2×(D-100)/(500-100);
若10千米≤D≤100千米,则σ=0.6+0.2×(D-10)/(100-10);
若D<10千米,则σ=0.4+0.2×D/10。
参照图5,示出了本发明基于分层路网的路径搜索方法第二实施例的流程,具体包括以下步骤:
步骤S501:将起点S和终点E作为当前节点,将第1层路网作为当前层路网;
步骤S502:判断当前节点是否为最上层路网节点?若是,转步骤S505;否则,转步骤S503;
步骤S503:在当前节点的预设范围内,基于当前层路网,搜索该当前节点到上一层路网节点的局部最优路径;
步骤S504:将上述上一层路网节点作为当前节点,将上述上一层路网作为当前层路网;转步骤S502;
步骤S505:合并起点S到最上层路网节点Ji之间的局部最优路径RSJ=(S...Ji),以及,最上层路网节点Nk到终点E之间的局部最优路径RNE=(Nk...E);
步骤S506:在最上层路网搜索所有最上层路网节点Ji和Nk之间的局部最优路径RJN=(Ji...Nk);
步骤S507:合并上述局部最优路径,获得从起点S到终点E总体费用最小的路径RSE=(S...Ji...Nk...E)。
对于前述的各方法实施例,为了描述简单,故将其都表述为一系列的动作组合,但是本领域的技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为根据本发明,某些步骤可以采用其他顺序或同时执行。其次,本领域技术人员也应该知悉,上述方法实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
参照图6,示出了本发明基于分层路网的路径搜索装置一实施例的结构框图,具体包括以下单元:
上升搜索单元61:用于在起点S的预设范围内基于下层路网搜索起点S到上层路网节点Ji的局部最优路径RSJ=(S...Ji),以及,在终点E的预设范围内基于下层路网搜索终点E到上层路网节点Nk的局部最优路径RNE=(Nk...E);
上层路径搜索单元62:用于在上层路网搜索上升搜索单元61产生的节点Ji和节点Nk的局部最优路径RJN=(Ji...Nk);
路径合并单元63:用于合并上升搜索单元61和上层路径搜索单元62产生的局部最优路径RSJ、RNE和RJN,获得从起点S到终点E的最优路径RSE=(S...Ji...Nk...E)。
在本装置实施例的另一优选实施例中,还包括路网层数设置单元64、上升搜索控制单元65、节点管理单元66、区域设置单元67、道路费用权值设置单元68、第一局部最优路径搜索单元69-1和第二局部最优路径搜索单元69-2,其中:
路网层数设置单元64:采用下述规则设置路网的层数n:若D<10千米,则n=1;若10千米≤D<50千米,则n=2;若50千米≤D<100千米,则n=3;若100千米≤D<500千米,则n=4;若D≥500千米,则n=5;其中D表示所述起点S和终点E之间的距离。
上升搜索控制单元65:采用下述策略为上升搜索单元61产生局部最优路径RSJ和RJN:将起点S和终点E作为当前节点;判断当前节点是否为最上层路网节点,若否,在当前节点的预设范围内,基于当前层路网搜索该当前节点到上一层路网节点的局部最优路径;将该上一层路网的节点作为当前节点,重复上述判断和搜索过程。
节点管理单元66:用于将上升搜索控制单元65在当前层路网搜索的所有上一层节点采用堆数据结构管理,作为上一层路网局部最优路径搜索的基础。
区域设置单元67:用于为上升搜索单元61或上升搜索控制单元65设置节点的预设搜索范围,该预设搜索范围为以该节点为中心的圆形区域或方形区域,其中:若所述节点位于第1层路网,则圆形区域的半径为10千米,方形区域的边长为20千米;若所述节点位于第2层路网,则圆形区域的半径为50千米,方形区域的边长为100千米;若所述节点位于第3层以上的路网,则圆形区域的半径为100千米,方形区域的边长为200千米。
道路费用权值设置单元68:用于根据起点S和终点E之间的距离,设置道路的费用权值参数δ,并根据下述公式计算道路的费用τ′,为上升搜索单元61和上层路径搜索单元62提供局部最优路径的搜索基础:
τ′=(β-δ)·τ,β∈(0~1〕,δ∈(0~β)
上述公式中,τ表示道路的原始费用;β表示道路的费用权值。
第一局部最优路径搜索单元69-1:用于在同一层网络,基于迪杰斯特拉最短路径算法或启发式路径规划方法,搜索开始节点到目标节点之间最优路径;对于启发式路径规划方法,用下列公式估算局部最优路径的开始节点到达目标节点的费用f′(v):
f′(v)=g(v)+λd′(v)
其中,g(v)为局部最优路径的开始节点到当前节点v的实际费用,λ为启发式费用权值,d′(v)为当前节点v到目标节点的直线距离。
第二局部最优路径搜索单元69-2:用于在同一层网络,基于自适应启发式路径规划方法,搜索开始节点到目标节点之间的最优路径;上述开始节点到达目标节点的费用f′(v)的计算公式为:
f′(v)=g(v)+σλd′(v)
其中,g(v)为局部最优路径的开始节点到当前节点v的实际费用,λ为启发式费用权值,d′(v)为当前节点v到目标节点的直线距离,σ为自适应调节参数;该自适应调节参数σ与局部最优路径的开始节点和目标节点之间的距离D相关:
若D≥500千米,则σ=1;
若100千米<D<500千米,则σ=0.8+0.2×(D-100)/(500-100);
若10千米≤D≤100千米,则σ=0.6+0.2×(D-10)/(100-10);
若D<10千米,则σ=0.4+0.2×D/10。
需要说明的是,上述装置实施例属于优选实施例,所涉及的单元和模块并不一定是本发明所必须的。
下面,结合具体实例,与现有Dijkstra算法方案、启发式搜索方案对比说明本发明基于分层路网的路径搜索方案的技术效果。
运行环境:CPU为Pentium E52002.5GHz,内存2GB,操作系统为WindowsXP。
基础数据:ISBN978-7-900247-80-3全国数据,弧段数量为4693431条。
实施过程:包括6组实验,每一组实验选取100个案例。对于城际间的路径搜索分析,每一组案例以起始地范围内(如北京市)随机取点作为起点,以到达地范围内(如海南省)随机取点作为终点。对于市内(如北京市和上海市)的路径搜索分析,只随机选取起点和终点距离在10公里以上的案例作为测试用例。上述实验的搜索规模和搜索时间对比情况分别参见表1和表2所示。
需要说明的是,考虑到当弧段数量大于260000时,所需的内存等资源占用会非常大,特别是在嵌入式设备上,可能会出现因资源耗尽而宕机的问题,因此,实验中设定,当搜索弧段大于260000时,搜索堆会溢出。如果出现堆溢出情况,在计算搜索弧段和搜索时间均值时,不考虑该溢出案例。
表1搜索规模对比情况(搜索弧段数量的对比)
表2搜索效率对比情况(搜索时间的对比)
从上表不难看出,无论是对于距离较近的市内路径搜索,还是距离较远的城际间路径搜索,与现有Dijkstra和启发式搜索方案相比,本发明基于分层路网的路径搜索方案的搜索规模明显变小,搜索效率得到了明显提高,而且不会出现因搜索规模太大而“溢出”的情况。
另外,对于Dijkstra和启发式搜索方案,起点和终点越远,搜索范围越大,搜索的规模越大,搜索时间也越长。而本发明基于分层路网的路径搜索方案非常有效地控制了搜索的规模,当起点和终点距离增大时,因上升到较高的路网上进行搜索,此时路网反而变得稀疏(即路网规模变小),因而远距离的路径搜索分析效率不一定会低于市内的路径搜索分析效率;对于市内的路径搜索,本发明基于分层路网的路径搜索方案又能很好地利用城市主干路网,既可提高搜索效率,又符合用户的出行习惯,选择的道路具备更好的合理性。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于本发明的装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上对本发明所提供的一种基于分层路网的路径搜索方法和装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (15)
1.一种基于分层路网的路径搜索方法,其特征在于,包括:
在下层路网分别搜索起点S的局部最优路径RSJ=(S...Ji)和终点E的局部最优路径RNE=(Nk...E);所述节点Ji和节点Nk为上层路网节点;所述节点Ji位于起点S的预设范围内,所述节点Nk位于终点E的预设范围内;
在上层路网搜索节点Ji和节点Nk的局部最优路径RJN=(Ji...Nk);
合并上述局部最优路径,获得从起点S到终点E的最优路径RSE=(S...Ji...Nk...E)。
2.如权利要求1所述的方法,其特征在于,所述局部最优路径RSJ和RJN的搜索方法具体为:
将起点S和终点E是作为当前节点;
判断当前节点是否为最上层路网节点,若否,在当前节点的预设范围内,基于当前层路网搜索该当前节点到上一层路网节点的局部最优路径;
将该上一层路网的节点作为当前节点,重复上述判断和搜索过程。
3.如权利要求1所述的方法,其特征在于,所述路网的层数n与所述起点S和终点E之间的距离D相关:
若D<10千米,则n=1;
若10千米≤D<50千米,则n=2;
若50千米≤D<100千米,则n=3;
若100千米≤D<500千米,则n=4;
若D≥500千米,则n=5。
4.如权利要求2所述的方法,其特征在于,将当前层路网搜索的所有上一层节点采用堆数据结构管理,作为上层路网局部最优路径搜索的基础。
5.如权利要求1或2所述的方法,其特征在于,所述节点的预设范围为以该节点为中心的圆形区域或方形区域,其中:
若所述节点位于第1层路网,则圆形区域的半径为10千米,方形区域的边长为20千米;
若所述节点位于第2层路网,则圆形区域的半径为50千米,方形区域的边长为100千米;
若所述节点位于第3层以上的路网,则圆形区域的半径为100千米,方形区域的边长为200千米。
6.如权利要求1所述的方法,其特征在于,在所述局部最优路径搜索步骤之前还包括:根据所述起点S和终点E之间的距离,增加道路的费用权值参数δ,并根据下述公式计算道路的费用τ′:
τ′=(β-δ)·τ,β∈(0~1〕,δ∈(0~β)
其中,τ表示道路的原始费用;β表示道路的费用权值。
7.如权利要求1所述的方法,其特征在于,在同一层网络搜索局部最优路径的方式为迪杰斯特拉最短路径算法或启发式路径规划方法;
对于启发式路径规划方法,用下列公式估算局部最优路径的开始节点到达目标节点的费用f′(v):
f′(v)=g(v)+λd′(v)
其中,g(v)为局部最优路径的开始节点到当前节点v的实际费用,λ为启发式费用权值,d′(v)为当前节点v到目标节点的直线距离。
8.如权利要求1所述的方法,其特征在于,在同一层网络搜索局部最优路径的方式为自适应启发式路径规划方法,所述局部最优路径的开始节点到达目标节点的费用f′(v)的计算公式为:
f′(v)=g(v)+σλd′(v)
其中,g(v)为局部最优路径的开始节点到当前节点v的实际费用,λ为启发式费用权值,d′(v)为当前节点v到目标节点的直线距离,σ为自适应调节参数;所述自适应调节参数σ与所述局部最优路径的开始节点和目标节点之间的距离D相关;
若D≥500千米,则σ=1;
若100千米<D<500千米,则σ=0.8+0.2×(D-100)/(500-100);
若10千米≤D≤100千米,则σ=0.6+0.2×(D-10)/(100-10);
若D<10千米,则σ=0.4+0.2×D/10。
9.一种基于分层路网的路径搜索装置,其特征在于,包括:
上升搜索单元:用于在起点S的预设范围内基于下层路网搜索起点S到上层路网节点Ji的局部最优路径RSJ=(S...Ji),以及,在终点E的预设范围内基于下层路网搜索终点E到上层路网节点Nk的局部最优路径RNE=(Nk...E);
上层路径搜索单元:用于在上层路网搜索所述上升搜索单元产生的节点Ji和节点Nk的局部最优路径RJN=(Ji...Nk);
路径合并单元:用于合并所述上升搜索单元和上层路径搜索单元产生的局部最优路径RSJ、RNE和RJN,获得从起点S到终点E的最优路径RSE=(S...Ji...Nk...E)。
10.如权利要求9所述的装置,其特征在于,还包括路网层数设置单元和上升搜索控制单元,其中:
所述上升搜索控制单元采用下述策略为所述上升搜索单元产生局部最优路径RSJ和RJN:将起点S和终点E作为当前节点;判断当前节点是否为最上层路网节点,若否,在当前节点的预设范围内,基于当前层路网搜索该当前节点到上一层路网节点的局部最优路径;将该上一层路网的节点作为当前节点,重复上述判断和搜索过程;
所述路网层数设置单元采用下述规则设置路网的层数n:若D<10千米,则n=1;若10千米≤D<50千米,则n=2;若50千米≤D<100千米,则n=3;若100千米≤D<500千米,则n=4;若D≥500千米,则n=5;其中D表示所述起点S和终点E之间的距离。
11.如权利要求10所述的装置,其特征在于,还包括节点管理单元,用于将上升搜索控制单元在当前层路网搜索的所有上一层节点采用堆数据结构管理,作为上一层路网局部最优路径搜索的基础。
12.如权利要求9或10所述的装置,其特征在于,还包括区域设置单元,用于为所述上升搜索单元或上升搜索控制单元设置所述节点的预设搜索范围,该预设搜索范围为以该节点为中心的圆形区域或方形区域,其中:
若所述节点位于第1层路网,则圆形区域的半径为10千米,方形区域的边长为20千米;
若所述节点位于第2层路网,则圆形区域的半径为50千米,方形区域的边长为100千米;
若所述节点位于第3层以上的路网,则圆形区域的半径为100千米,方形区域的边长为200千米。
13.如权利要求9所述的装置,其特征在于,还包括道路费用权值设置单元,用于根据所述起点S和终点E之间的距离,设置道路的费用权值参数δ,并根据下述公式计算道路的费用τ′,为所述上升搜索单元和上层路径搜索单元提供局部最优路径的搜索基础:
τ′=(β-δ)·τ,β∈(0~1〕,δ∈(0~β)
其中,τ表示道路的原始费用;β表示道路的费用权值。
14.如权利要求9所述的装置,其特征在于,还包括第一局部最优路径搜索单元,用于在同一层网络,基于迪杰斯特拉最短路径算法或启发式路径规划方法,搜索开始节点到目标节点之间最优路径;对于启发式路径规划方法,用下列公式估算局部最优路径的开始节点到达目标节点的费用f′(v):
f′(v)=g(v)+λd′(v)
其中,g(v)为局部最优路径的开始节点到当前节点v的实际费用,λ为启发式费用权值,d′(v)为当前节点v到目标节点的直线距离。
15.如权利要求9所述的装置,其特征在于,还包括第二局部最优路径搜索单元,用于在同一层网络,基于自适应启发式路径规划方法,搜索开始节点到目标节点之间的最优路径;所述开始节点到达目标节点的费用f′(v)的计算公式为:
f′(v)=g(v)+σλd′(v)
其中,g(v)为局部最优路径的开始节点到当前节点v的实际费用,λ为启发式费用权值,d′(v)为当前节点v到目标节点的直线距离,σ为自适应调节参数;所述自适应调节参数σ与所述局部最优路径的开始节点和目标节点之间的距离D相关;
若D≥500千米,则σ=1;
若100千米<D<500千米,则σ=0.8+0.2×(D-100)/(500-100);
若10千米≤D≤100千米,则σ=0.6+0.2×(D-10)/(100-10);
若D<10千米,则σ=0.4+0.2×D/10。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011100061887A CN102081658B (zh) | 2011-01-13 | 2011-01-13 | 基于分层路网的路径搜索方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011100061887A CN102081658B (zh) | 2011-01-13 | 2011-01-13 | 基于分层路网的路径搜索方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102081658A true CN102081658A (zh) | 2011-06-01 |
CN102081658B CN102081658B (zh) | 2012-08-22 |
Family
ID=44087621
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011100061887A Active CN102081658B (zh) | 2011-01-13 | 2011-01-13 | 基于分层路网的路径搜索方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102081658B (zh) |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103927934A (zh) * | 2013-01-14 | 2014-07-16 | 北京中交兴路信息科技有限公司 | 一种闭合围栏绘制的方法及系统 |
TWI487880B (zh) * | 2012-03-28 | 2015-06-11 | Fujitsu Ltd | 路徑搜尋方法及路徑搜尋裝置 |
CN104759098A (zh) * | 2015-04-13 | 2015-07-08 | 四川天上友嘉网络科技有限公司 | 游戏寻路方法 |
CN104815437A (zh) * | 2015-04-13 | 2015-08-05 | 四川天上友嘉网络科技有限公司 | 应用于游戏的自动寻路方法 |
CN105550765A (zh) * | 2015-11-30 | 2016-05-04 | 中国科学技术大学 | 一种路网距离计算中的代表元选取方法 |
CN105588571A (zh) * | 2014-10-22 | 2016-05-18 | 中兴通讯股份有限公司 | 一种群集会最优路径选择方法及装置 |
CN106052692A (zh) * | 2016-05-20 | 2016-10-26 | 中国地质大学(武汉) | 一种最短路径规划导航方法及系统 |
CN107782323A (zh) * | 2017-10-12 | 2018-03-09 | 湖北工业大学 | 一种基于城市间最优路径的高等级导航路网的生成方法 |
CN108009666A (zh) * | 2016-10-28 | 2018-05-08 | 武汉大学 | 基于动态路网的层级优先最优路径计算方法 |
CN108332768A (zh) * | 2018-02-10 | 2018-07-27 | 湖南城市学院 | 一种针对无路网信息区域的路径搜索方法 |
CN110530391A (zh) * | 2019-09-29 | 2019-12-03 | 武汉中海庭数据技术有限公司 | 一种基于分层路网的路径规划方法及装置 |
CN110782178A (zh) * | 2019-11-01 | 2020-02-11 | 北京航空航天大学 | 一种交通网络规划辅助决策方法及装置 |
CN111027743A (zh) * | 2019-11-06 | 2020-04-17 | 深圳市城市交通规划设计研究中心有限公司 | 基于分层路网的od最优路径搜索方法及装置 |
CN112200393A (zh) * | 2020-12-04 | 2021-01-08 | 深圳市城市交通规划设计研究中心股份有限公司 | 一种公共交通线路生成方法、装置、设备和存储介质 |
CN112882466A (zh) * | 2021-01-12 | 2021-06-01 | 上海电力大学 | 一种融合分层规划和a*算法的共享电动汽车路径规划方法 |
CN112985443A (zh) * | 2021-03-19 | 2021-06-18 | 深圳依时货拉拉科技有限公司 | 路径规划方法、装置及终端设备 |
CN113075479A (zh) * | 2021-03-26 | 2021-07-06 | 中国人民解放军海军航空大学航空作战勤务学院 | 用于低频信号连接的路径搜索算法 |
CN113204348A (zh) * | 2021-04-30 | 2021-08-03 | 北京连山科技股份有限公司 | 一种基于Contraction Hierarchies的国内路网数据编译方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101063618A (zh) * | 2006-04-25 | 2007-10-31 | 阿尔派株式会社 | 地图数据制作装置、地图制作方法、导航装置 |
CN101470003A (zh) * | 2007-12-25 | 2009-07-01 | 爱信艾达株式会社 | 导航装置及程序 |
-
2011
- 2011-01-13 CN CN2011100061887A patent/CN102081658B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101063618A (zh) * | 2006-04-25 | 2007-10-31 | 阿尔派株式会社 | 地图数据制作装置、地图制作方法、导航装置 |
CN101470003A (zh) * | 2007-12-25 | 2009-07-01 | 爱信艾达株式会社 | 导航装置及程序 |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI487880B (zh) * | 2012-03-28 | 2015-06-11 | Fujitsu Ltd | 路徑搜尋方法及路徑搜尋裝置 |
CN103927934A (zh) * | 2013-01-14 | 2014-07-16 | 北京中交兴路信息科技有限公司 | 一种闭合围栏绘制的方法及系统 |
CN103927934B (zh) * | 2013-01-14 | 2017-02-15 | 北京中交兴路信息科技有限公司 | 一种闭合围栏绘制的方法及系统 |
CN105588571A (zh) * | 2014-10-22 | 2016-05-18 | 中兴通讯股份有限公司 | 一种群集会最优路径选择方法及装置 |
CN104759098A (zh) * | 2015-04-13 | 2015-07-08 | 四川天上友嘉网络科技有限公司 | 游戏寻路方法 |
CN104815437A (zh) * | 2015-04-13 | 2015-08-05 | 四川天上友嘉网络科技有限公司 | 应用于游戏的自动寻路方法 |
CN105550765B (zh) * | 2015-11-30 | 2020-02-07 | 中国科学技术大学 | 一种路网距离计算中的代表元选取方法 |
CN105550765A (zh) * | 2015-11-30 | 2016-05-04 | 中国科学技术大学 | 一种路网距离计算中的代表元选取方法 |
CN106052692A (zh) * | 2016-05-20 | 2016-10-26 | 中国地质大学(武汉) | 一种最短路径规划导航方法及系统 |
CN108009666A (zh) * | 2016-10-28 | 2018-05-08 | 武汉大学 | 基于动态路网的层级优先最优路径计算方法 |
CN108009666B (zh) * | 2016-10-28 | 2020-04-10 | 武汉大学 | 基于动态路网的层级优先最优路径计算方法 |
CN107782323A (zh) * | 2017-10-12 | 2018-03-09 | 湖北工业大学 | 一种基于城市间最优路径的高等级导航路网的生成方法 |
CN108332768A (zh) * | 2018-02-10 | 2018-07-27 | 湖南城市学院 | 一种针对无路网信息区域的路径搜索方法 |
CN110530391A (zh) * | 2019-09-29 | 2019-12-03 | 武汉中海庭数据技术有限公司 | 一种基于分层路网的路径规划方法及装置 |
CN110782178A (zh) * | 2019-11-01 | 2020-02-11 | 北京航空航天大学 | 一种交通网络规划辅助决策方法及装置 |
CN111027743A (zh) * | 2019-11-06 | 2020-04-17 | 深圳市城市交通规划设计研究中心有限公司 | 基于分层路网的od最优路径搜索方法及装置 |
CN111027743B (zh) * | 2019-11-06 | 2022-11-25 | 深圳市城市交通规划设计研究中心有限公司 | 基于分层路网的od最优路径搜索方法及装置 |
CN112200393A (zh) * | 2020-12-04 | 2021-01-08 | 深圳市城市交通规划设计研究中心股份有限公司 | 一种公共交通线路生成方法、装置、设备和存储介质 |
CN112882466A (zh) * | 2021-01-12 | 2021-06-01 | 上海电力大学 | 一种融合分层规划和a*算法的共享电动汽车路径规划方法 |
CN112985443A (zh) * | 2021-03-19 | 2021-06-18 | 深圳依时货拉拉科技有限公司 | 路径规划方法、装置及终端设备 |
CN112985443B (zh) * | 2021-03-19 | 2022-05-10 | 深圳依时货拉拉科技有限公司 | 路径规划方法、装置及终端设备 |
CN113075479A (zh) * | 2021-03-26 | 2021-07-06 | 中国人民解放军海军航空大学航空作战勤务学院 | 用于低频信号连接的路径搜索算法 |
CN113204348A (zh) * | 2021-04-30 | 2021-08-03 | 北京连山科技股份有限公司 | 一种基于Contraction Hierarchies的国内路网数据编译方法 |
CN113204348B (zh) * | 2021-04-30 | 2021-11-26 | 北京连山科技股份有限公司 | 一种基于Contraction Hierarchies的国内路网数据编译方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102081658B (zh) | 2012-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102081658B (zh) | 基于分层路网的路径搜索方法和装置 | |
CN106052701B (zh) | 一种交通溢流状态下车辆路径选择的方法 | |
CN103090878B (zh) | 一种车辆路径规划方法、系统及一种车载导航设备 | |
CN102176283B (zh) | 一种简化交通路网模型的导航方法 | |
CN105758410A (zh) | 基于A‐Star 算法的快速路径规划混合方法 | |
CN108009666B (zh) | 基于动态路网的层级优先最优路径计算方法 | |
CN106875734B (zh) | 一种推送停车路线的方法及装置 | |
CN103544291A (zh) | 道路网络中基于RRN-Tree的移动对象CKNN查询方法 | |
CN111197991A (zh) | 基于深度神经网络的预测车辆最佳驾驶路径方法 | |
CN106225800A (zh) | 基于实时路况信息的环境友好型车辆导航路径构建方法 | |
CN102436466A (zh) | 基于gis分类的公交换乘查询方法 | |
CN108021686A (zh) | 一种快速匹配电子地图中公交线路与道路网络的方法 | |
CN105841709A (zh) | 一种汽车行驶路径规划方法 | |
CN111337047B (zh) | 基于多任务点约束的非结构化道路宏观路径规划方法 | |
CN106289287A (zh) | 一种基于选线经验的车载端多目标最短路径计算方法 | |
CN101776457B (zh) | 一种导航方法和装置 | |
CN111879329A (zh) | 基于a*算法的定制公交可通行最短路径计算方法 | |
Cai et al. | A novel vector-based dynamic path planning method in urban road network | |
CN104406590A (zh) | 一种基于道路等级的最短路径规划算法 | |
CN105806355A (zh) | 一种车辆绿色路径导航系统及方法 | |
US20230137263A1 (en) | Method and apparatus for generating structured trajectories from geospatial observations | |
Krömer et al. | Ant colony inspired algorithm for adaptive traffic routing | |
CN116167235A (zh) | 路网模型生成方法、装置及设备 | |
CN205580474U (zh) | 一种车辆绿色路径导航系统 | |
CN116580586B (zh) | 一种平衡个人利益和社会利益的车辆路径诱导方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP02 | Change in the address of a patent holder | ||
CP02 | Change in the address of a patent holder |
Address after: 100016 Six Floors, 107 Floor, IT Industrial Park, Electronic City, No. 10 Jiayuan, North Jiuxianqiao Road, Chaoyang District, Beijing Patentee after: SuperMap Software Co., Ltd. Address before: 100015 E Gate 3-4 Floor, Building 201, No. 10 Courtyard, North Jiuxianqiao Road, Chaoyang District, Beijing Patentee before: SuperMap Software Co., Ltd. |