CN115547087B - 基于两阶段法与方向诱导的城市路网最短路径获取方法及应用 - Google Patents

基于两阶段法与方向诱导的城市路网最短路径获取方法及应用 Download PDF

Info

Publication number
CN115547087B
CN115547087B CN202211152024.XA CN202211152024A CN115547087B CN 115547087 B CN115547087 B CN 115547087B CN 202211152024 A CN202211152024 A CN 202211152024A CN 115547087 B CN115547087 B CN 115547087B
Authority
CN
China
Prior art keywords
intersection node
intersection
node
travel time
shortest path
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
Application number
CN202211152024.XA
Other languages
English (en)
Other versions
CN115547087A (zh
Inventor
丁建勋
杨贝诺
陈语
黄军鹏
段睿
王予悦
詹兴斌
龙建成
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hefei University of Technology
Original Assignee
Hefei University of Technology
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hefei University of Technology filed Critical Hefei University of Technology
Priority to CN202211152024.XA priority Critical patent/CN115547087B/zh
Publication of CN115547087A publication Critical patent/CN115547087A/zh
Application granted granted Critical
Publication of CN115547087B publication Critical patent/CN115547087B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/09Arrangements for giving variable traffic instructions
    • G08G1/0962Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
    • G08G1/0968Systems involving transmission of navigation instructions to the vehicle
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/09Arrangements for giving variable traffic instructions
    • G08G1/0962Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
    • G08G1/0968Systems involving transmission of navigation instructions to the vehicle
    • G08G1/096805Systems involving transmission of navigation instructions to the vehicle where the transmitted instructions are used to compute a route
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/09Arrangements for giving variable traffic instructions
    • G08G1/0962Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
    • G08G1/0968Systems involving transmission of navigation instructions to the vehicle
    • G08G1/096833Systems involving transmission of navigation instructions to the vehicle where different aspects are considered when computing the route

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Navigation (AREA)

Abstract

本发明公开一种基于两阶段法与方向诱导的城市最短路径获取方法及应用,该方法包括:1.由路况信息构建城市网络;2.计算方向权βij;3.第一阶段基于βij通过标号设置法获取起点交叉口节点到终点交叉口节点的初始最短行程时间及路径,更新行程时间上界
Figure DDA0003856804990000011
4.第二阶段基于
Figure DDA0003856804990000012
通过标号修正法得到起点交叉口节点到终点交叉口节点的最终最短行程时间及路径;5.回溯输出最短路径及最短行程时间。本发明考虑在城市路网的导航中加入方向性的诱导有效地缩小搜索范围,并结合启发式算法与标号修正法两种最短路算法的优势,能提高导航效率,从而促进交通的高效运行。

Description

基于两阶段法与方向诱导的城市路网最短路径获取方法及 应用
技术领域
本发明属于城市路网的导航优化领域,具体的说是一种基于两阶段法与方向诱导的城市最短路径获取方法及其应用。
背景技术
随着社会的发展,基于互联网的交通导航给用户带来了越来越大的便利,用户可以在导航开始阶段输入自己的出发地和目的地,就可以获取导航产品自动规划的路径。但随着城市汽车保有量逐步攀升,路网建设相对滞后,交通资源浪费,出行效率低的现象时有发生,不仅给城市居民出行带来不便,也大大降低城市运转效率,给经济发展造成一定的损失。因而,需要研究一种提高出行水平以及城市路网利用率的路径导航方法。随着GPS、网络技术、计算机技术的发展,车辆导航***建立的条件已经成熟,能否在城市路网范围内实现车辆的道路导航,实现车辆快速、畅通地到达目的地,已经成为当前研究的目标。
然而,在具体导航过程中的路径搜索阶段,已有路径搜索方法往往是在根据实时路网信息在全局范围内从起点到终点单个方向地进行路径搜索,这种路径搜索的方法没有考虑到导航的中驾驶员行驶的方向性,降低了导航过程的路径搜索的时效性以及与驾驶员出行意愿的匹配程度。
发明内容
本发明是为了解决上述现有技术存在的不足之处,提出一种基于方向诱导与两阶段法的城市最短路径获取方法及应用,以期能在城市路网导航中加入方向性诱导缩小搜索范围,并通过结合启发式算法与标号修正法两种最短路算法提高导航效率,从而能更快速地得到最短路,促进交通的高效运行。
本发明为达到上述发明目的,采用如下技术方案:
本发明一种基于两阶段法与方向诱导的城市最短路径获取方法的特点在于,是按如下步骤进行:
步骤1:构建城市路网并获取任意交叉口节点的平面坐标;
获取城市路网数据并得到城市道路网络G=(V,A),其中,V表示交叉口节点集合,V={v1,v2,…,vi,…,vK},vi表示第i个交叉口节点,i=1,2,…,K,K为所述城市路网G中的交叉口节点总数,A表示交叉口之间的路段集合,且A={(vi,vj)|i,j=1,2,…,K},(vi,vj)表示第i个交叉口节点vi到第j个交叉口节点vj的有向路段,tij为有向路段(vi,vj)的时间权重,且
Figure BDA0003856804970000021
lij表示有向路段(vi,vj)的长度,sij表示有向路段(vi,vj)的通行车速;若第i个交叉口节点vi到第j个交叉口节点vj之间存在有向路段(vi,vj),则第j个交叉口节点vj为第i个交叉口节点vi的邻接交叉口节点,第i个交叉口节点vi为第j个交叉口节点vj的前驱交叉口节点,且tij≥0;若第i个交叉口节点vi到第j个交叉口节点vj之间不存在有向路段,则令tij=+∞;
根据城市路网数据得到第i个交叉口节点vi的平面坐标(xi,yi)和第j个交叉节点口vj的平面坐标(xj,yj),则第i个交叉口节点vi到第j个交叉口节点vj的向量记为
Figure BDA0003856804970000022
Figure BDA0003856804970000023
为第i个交叉口节点vi与第j个交叉口节点vj间的欧式距离;
步骤2:假设vstart为起点交叉口节点,vend为终点交叉口节点,且vstart、vend∈V;
步骤3:定义参数及初始化;
定义第i个交叉口节点vi的前向行程时间T(vi)为起点交叉口节点vstart到第i个交叉口节点vi的当前行程时间,定义λ(vi)为第i个交叉口节点vi的前向行程时间为T(vi)时vi的前驱交叉口节点的序号;
定义第i个交叉口节点vi的后向预估时间H(vi)为第i个交叉口节点vi到终点交叉口节点vend的预估行程时间;
定义第i个交叉口节点vi的预估总行程时间F(vi)为第i个交叉口节点vi的前向行程时间T(vi)与后向预估时间H(vi)的加权和;
定义方向权βji为前驱交叉口节点为vj的第i个交叉口节点vi的后向预估时间H(vi)的权,则方向权矩阵β={βij|i,j=1,2,3…K;i≠j};
定义
Figure BDA0003856804970000024
为从起点交叉口节点vstart到终点交叉口节点vend的总行程时间上界;
定义T i为起点交叉口节点vstart经过第i个交叉口节点vi到终点交叉口节点vend的总行程时间下界;
定义vk为当前交叉口节点,且vk∈V;
定义S为已选交叉口节点集合;
定义
Figure BDA0003856804970000025
为候选交叉口节点集合,属于交叉口节点集合V但不属于已选交叉口节点集合S的交叉口节点为候选交叉口节点;
定义Q为待搜索交叉口节点集合,并初始化Q=φ;
初始化S={},
Figure BDA0003856804970000031
T(vstart)=0,F(vstart)=0,vk=vstart;将V中除起点交叉口节点vstart以外的其他交叉口节点的前向行程时间和预估总行程时间均初始化为+∞;
步骤4:计算方向权矩阵β;
遍历A中的有向路段(vi,vj),当vi≠vend,vj≠vstart,vj≠vend时,计算前驱交叉口节点为vi的第j个交叉口节点vj的后向预估时间的权
Figure BDA0003856804970000032
当vj=vend时,前驱交叉口节点为vi的第j个交叉口节点vj的后向预估时间的权βij=0,其中,C为常数;/>
Figure BDA0003856804970000033
表示第j个交叉口节点vj到第i个交叉口节点vi的向量,/>
Figure BDA0003856804970000034
表示第j个交叉口节点vj到终点交叉口节点vend的向量;
步骤5:寻找初始最短路;
步骤5.1:判断是否找到初始最短路;
若当前交叉口节点vk为终点交叉口节点vend,则表示已找到初始最短路与初始最短行程时间,将从起点交叉口节点vstart到终点交叉口节点vend的当前行程时间作为终点交叉口节点vend的前向行程时间T(vend)并赋值给行程时间上界
Figure BDA0003856804970000035
转向步骤6.1;否则,转向步骤5.2;
步骤5.2:更新候选交叉口节点;
遍历满足(vk,vj)∈A且
Figure BDA0003856804970000036
的邻接候选交叉口节点vj,若T(vj)<T(vk)+tkj,则将T(vk)+tkj赋值给T(vj),将k赋值给λ(vj),计算第j个交叉口节点vj的预估总行程时间
Figure BDA0003856804970000037
其中,T(vj)、H(vj)分别为第j个交叉口节点vj的前向行程时间与后向预估时间,/>
Figure BDA0003856804970000038
为前驱交叉口节点为/>
Figure BDA0003856804970000039
的第j个交叉口节点vj的后向预估时间H(vi)的权,smax为所有路段中的最大通行车速;T(vk)表示起点交叉口节点vstart到当前交叉口节点vk的当前行程时间,tkj表示为有向路段(vk,vj)的时间权重;
步骤5.3:更新已选交叉口节点集合S、候选交叉口节点集合
Figure BDA00038568049700000310
与当前交叉口节点vk
将当前交叉口节点vk从候选交叉口节点集合
Figure BDA00038568049700000311
中删去,并加入到已选交叉口节点集合S中,遍历候选交叉口节点集合/>
Figure BDA00038568049700000312
若第m个交叉口节点vm满足/>
Figure BDA00038568049700000313
则将m赋值给k,从而完成当前交叉口节点vk的更新,转向步骤5.1;其中,F(vj)为起点交叉口节点vs经过第j个交叉口节点vj到终点交叉口节点ve的预估总行程时间;
步骤6:获取最终最短路;
步骤6.1:更新待搜索交叉口节点集合Q;
在候选交叉口节点集合
Figure BDA0003856804970000046
中遍历前向行程时间T(vi)≠+∞的候选交叉口节点vi,计算起点交叉口节点vstart经过候选交叉口节点vi到终点交叉口节点vend的总行程时间下界
Figure BDA0003856804970000041
T i小于总行程时间上界/>
Figure BDA0003856804970000042
则将候选交叉口节点vi加入到待搜索交叉口节点集合Q中;
步骤6.2:通过标号修正法求最短路;
步骤6.2.1:判断待搜索交叉口节点集合Q是否为空,若Q为空,则表示已找到最终最短路,转向步骤7;否则,执行步骤6.2.2;
步骤6.2.2:取Q中的首个交叉口节点vfirst,将首个交叉口节点vfirst从待搜索交叉口节点集合Q中移除,遍历满足(vfirst,vnext)∈A的邻接交叉口节点vnext
若T(vnext)>T(vfirst)+tfirst,next,且vnext=vend,则将T(vfirst)+tfirst,next赋值给T(vnext),将first赋值给λ(vnext),更新总行程时间上界
Figure BDA0003856804970000043
若T(vnext)>T(vfirst)+tfirst,next,且vnext≠vend
Figure BDA0003856804970000044
则将T(vfirst)+tfirst,next赋值给T(vnext),将first赋值给λ(vnext),将第next个交叉口节点vnext加入到待搜索交叉口节点集合Q中;
步骤6.2.3:返回步骤6.2.1顺序执行;
步骤7:输出最终最短路及最短行程时间;
从vend开始不断通过λ(vend)回溯至vstart,从而获得从起点交叉口节点vstart到终点交叉口节点vend的最短路径及其最短行程时间
Figure BDA0003856804970000045
并输出。
本发明一种电子设备,包括存储器以及处理器,其特点在于,所述存储器用于存储支持处理器执行所述的城市最短路径获取方法的程序,所述处理器被配置为用于执行所述存储器中存储的程序。
本发明一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,其特点在于,所述计算机程序被处理器运行时执行所述的城市最短路径获取方法的步骤。
与现有技术相比,本发明的有益效果在于:
1、实际城市路网中的交叉口节点包含坐标信息,坐标信息隐含方向性信息,而现有的技术如A*算法在寻找最短路中没有有效地运用坐标的方向性信息,本发明基于交叉口节点坐标信息在最短路搜索中引入方向诱导,充分运用城市路网已有信息,提高了城市路网的利用效率;
2、本发明结合了两类最短路求解算法——启发式算法与标号修正法的优势,通过改进的启发式算法快速地求得起点到终点的近似最短路,通过标号修正法求得最短路。在近似最短路的限制下,标号修正法的搜索范围明显缩小,该方法整体效率较A*算法有明显提高,在实际应用可加快路径规划速度,从而提升了导航效率;
3、在实际交通路网中,存在拥堵情况,两交叉口节点间的行程时间无法根据两交叉口节点的欧氏距离准确估计,在此情况下,A*算法的搜索范围明显增大,效率明显降低,而本发明所提的新方法注重方向诱导,在拥堵时估计不准的情况下仍可快速向终点交叉口节点探索,故受影响较小,从而有效降减小了拥堵状况对路径规划效率的影响,应用场景广。
4、本发明在求初始最短路时采用了角度限制,对搜索进行方向性诱导,极大地缩小了搜索范围,求最终最短路时在较小范围中搜索优化,充分发挥了标号修正法快速搜索的优势,极为适用于路网结构复杂、交叉口节点数目庞大的城市路网,在复杂城市路网的导航中能极大地减少路径规划时间,更好地服务人们,促进了交通的高效运行。
附图说明
图1为本发明方法整体流程图;
图2为本发明所用算例的网络图;
图3为本发明算例求得的方向权矩阵β;
图4为本发明算例第一阶段参数初始化图;
图5为本发明算例第一阶段以第一个节点为当前节点搜索更新图;
图6为本发明算例第一阶段以第五个节点为当前节点搜索更新图;
图7为本发明算例第一阶段以第七个节点为当前节点搜索更新图;
图8为本发明算例第一阶段以第九个节点为当前节点搜索更新图;
图9为本发明算例第二阶段待搜索交叉口节点集合Q更新图;
图10为本发明算例第二阶段使用标号修正法搜索更新图;
图11为现有技术中A*算法的搜索过程及搜索范围示意图;
图12为本发明所提两阶段算法的搜索过程及搜索范围示意图。
具体实施方式
本实施例中,如图1所示,一种基于两阶段法与方向诱导的城市最短路径获取方法是按如下步骤进行:
步骤1:构建城市路网并获取任意交叉口节点的平面坐标;
获取城市路网数据并得到城市道路网络G=(V,A),其中,V表示交叉口节点集合,V={v1,v2,…,vi,…,vK},vi表示第i个交叉口节点,i=1,2,…,K,K为所述城市路网G中的交叉口节点总数,A表示交叉口之间的路段集合,且A={(vi,vj)|i,j=1,2,…,K},(vi,vj)表示第i个交叉口节点vi到第j个交叉口节点vj的有向路段,tij为有向路段(vi,vj)的时间权重,且
Figure BDA0003856804970000061
lij表示有向路段(vi,vj)的长度,sij表示有向路段(vi,vj)的通行车速;若第i个交叉口节点vi到第j个交叉口节点vj之间存在有向路段(vi,vj),则第j个交叉口节点vj为第i个交叉口节点vi的邻接交叉口节点,第i个交叉口节点vi为第j个交叉口节点vj的前驱交叉口节点,且tij≥0;若第i个交叉口节点vi到第j个交叉口节点vj之间不存在有向路段,则令tij=+∞;本实施例中,使用的网络中各路段的时间权重如图2所示;
根据城市路网数据得到第i个交叉口节点vi的平面坐标(xi,yi)和第j个交叉节点口vj的平面坐标(xj,yj),则第i个交叉口节点vi到第j个交叉口节点vj的向量记为
Figure BDA0003856804970000062
Figure BDA0003856804970000063
为第i个交叉口节点vi与第j个交叉口节点vj间的欧式距离;
步骤2:假设vstart为起点交叉口节点,vend为终点交叉口节点,且vstart、vend∈V,本实施例中,vstart=v1,vend=v10
步骤3:定义参数及初始化;
定义第i个交叉口节点vi的前向行程时间T(vi)为起点交叉口节点vstart到第i个交叉口节点vi的当前行程时间,定义λ(vi)为第i个交叉口节点vi的前向行程时间为T(vi)时vi的前驱交叉口节点的序号;
定义第i个交叉口节点vi的后向预估时间H(vi)为第i个交叉口节点vi到终点交叉口节点vend的预估行程时间;
定义第i个交叉口节点vi的预估总行程时间F(vi)为第i个交叉口节点vi的前向行程时间T(vi)与后向预估时间H(vi)的加权和;
定义方向权βji为前驱交叉口节点为vj的第i个交叉口节点vi的后向预估时间H(vi)的权,则方向权矩阵β={βij|i,j=1,2,3…K;i≠j};
定义
Figure BDA0003856804970000071
为从起点交叉口节点vstart到终点交叉口节点vend的总行程时间上界;
定义T i为起点交叉口节点vstart经过第i个交叉口节点vi到终点交叉口节点vend的总行程时间下界;
定义vk为当前交叉口节点,且vk∈V;
定义S为已选交叉口节点集合;
定义
Figure BDA0003856804970000072
为候选交叉口节点集合,属于交叉口节点集合V但不属于已选交叉口节点集合S的交叉口节点为候选交叉口节点;
定义Q为待搜索交叉口节点集合,并初始化Q=φ;
初始化S={},
Figure BDA0003856804970000073
T(vstart)=0,F(vstart)=0,vk=vstart;将V中除起点交叉口节点vstart以外的其他交叉口节点的前向行程时间和预估总行程时间均初始化为+∞,如图4所示;
步骤4:计算方向权矩阵β;
遍历A中的有向路段(vi,vj),当vi≠vend,vj≠vstart,vj≠vend时,计算前驱交叉口节点为vi的第j个交叉口节点vj的后向预估时间的权
Figure BDA0003856804970000074
当vj=vend时,前驱交叉口节点为vi的第j个交叉口节点vj的后向预估时间的权βij=0,其中,C为常数,表示方向诱导的程度,C越大时,方向诱导越强,第一阶段搜索范围越小,本实施例中,C=1;/>
Figure BDA0003856804970000075
表示第j个交叉口节点vj到第i个交叉口节点vi的向量,/>
Figure BDA0003856804970000076
表示第j个交叉口节点vj到终点交叉口节点vend的向量;本实施例中的方向权矩阵β如图3所示;
步骤5:寻找初始最短路;
步骤5.1:判断是否找到初始最短路;
若当前交叉口节点vk为终点交叉口节点vend,则表示已找到初始最短路与初始最短行程时间,将从起点交叉口节点vstart到终点交叉口节点vend的当前行程时间作为终点交叉口节点vend的前向行程时间T(vend)并赋值给行程时间上界
Figure BDA0003856804970000081
转向步骤6.1;否则,转向步骤5.2;
如图8所示,本实施例第一阶段最后一步当前交叉口节点vk更新为v10,有vk=vend,则总行程时间上界
Figure BDA0003856804970000082
进入第二阶段;
步骤5.2:更新候选交叉口节点;
遍历满足(vk,vj)∈A且
Figure BDA0003856804970000083
的邻接候选交叉口节点vj,若T(vj)<T(vk)+tkj,则将T(vk)+tkj赋值给T(vj),将k赋值给λ(vj),计算第j个交叉口节点vj的预估总行程时间
Figure BDA0003856804970000084
其中,T(vj)、H(vj)分别为第j个交叉口节点vj的前向行程时间与后向预估时间,/>
Figure BDA0003856804970000085
为前驱交叉口节点为/>
Figure BDA0003856804970000086
的第j个交叉口节点vj的后向预估时间H(vi)的权,smax为所有路段中的最大通行车速,使用smax来计算后向预估时间时,后向预估时间恒小于等于真实行程时间,能使第一阶段得到的初始最短路尽量靠近最终最短路,获取更优的最短行程时间上界,本实施例中,smax=1;T(vk)表示起点交叉口节点vstart到当前交叉口节点vk的当前行程时间,tkj表示为有向路段(vk,vj)的时间权重;
以vk=v1为例,当vk=v1时,遍历其位于候选交叉口节点集合中的邻接交叉口节点v2,v3,v5,更新他们的当前行程时间、预估总行程时间与相应的前驱交叉口节点序号,结果如图5所示;
步骤5.3:更新已选交叉口节点集合S、候选交叉口节点集合
Figure BDA0003856804970000087
与当前交叉口节点vk
将当前交叉口节点vk从候选交叉口节点集合
Figure BDA0003856804970000088
中删去,并加入到已选交叉口节点集合S中,遍历候选交叉口节点集合/>
Figure BDA0003856804970000089
若第m个交叉口节点vm满足/>
Figure BDA00038568049700000810
则将m赋值给k,从而完成当前交叉口节点vk的更新,以vk=v1为例,如图5所示,当vk=v1时,从候选交叉口节点集合/>
Figure BDA00038568049700000811
中删去v1,并将v1加入到已选交叉口节点集合S中,此时S={v1},
Figure BDA00038568049700000812
遍历候选交叉口节点集合/>
Figure BDA00038568049700000813
有v5满足/>
Figure BDA00038568049700000814
则将5赋值给k,此时当前交叉口节点vk=v5;转向步骤5.1;其中,F(vj)为起点交叉口节点vs经过第j个交叉口节点vj到终点交叉口节点ve的预估总行程时间;
在本实施例中,当vk分别等于v5,v7,v9时,更新步骤与vk=v1时相同,各交叉口节点的当前行程时间、预估总行程、相应前驱节点序号与已选交叉口节点集合、候选交叉口节点集合、当前交叉口节点的更新分别如图6、图7、图8所示;
步骤6:获取最终最短路;
步骤6.1:更新待搜索交叉口节点集合Q;
在候选交叉口节点集合
Figure BDA0003856804970000091
中遍历前向行程时间T(vi)≠+∞的候选交叉口节点vi,计算起点交叉口节点vstart经过候选交叉口节点vi到终点交叉口节点vend的总行程时间下界
Figure BDA0003856804970000092
T i小于总行程时间上界/>
Figure BDA0003856804970000093
则将候选交叉口节点vi加入到待搜索交叉口节点集合Q中;
如图9所示,在本实施例中,候选交叉口节点集合
Figure BDA0003856804970000094
中仅有v2满足T(v2)≠+∞且
Figure BDA0003856804970000095
故仅将v2加入待搜索交叉口节点集合Q中,此时Q={v2}
步骤6.2:通过标号修正法求最短路;
步骤6.2.1:判断待搜索交叉口节点集合Q是否为空,若Q为空,则表示已找到最终最短路,转向步骤7;否则,执行步骤6.2.2;
步骤6.2.2:取Q中的首个交叉口节点vfirst,将首个交叉口节点vfirst从待搜索交叉口节点集合Q中移除,遍历满足(vfirst,vnext)∈A的邻接交叉口节点vnext
若T(vnext)>T(vfirst)+tfirst,next,且vnext=vend,则将T(vfirst)+tfirst,next赋值给T(vnext),将first赋值给λ(vnext),更新总行程时间上界
Figure BDA0003856804970000096
若T(vnext)>T(vfirst)+tfirst,next,且vnext≠vend
Figure BDA0003856804970000097
则将T(vfirst)+tfirst,next赋值给T(vnext),将first赋值给λ(vnext),将第next个交叉口节点vnext加入到待搜索交叉口节点集合Q中;
步骤6.2.3:返回步骤6.2.1顺序执行;
如图10所示,取出Q中首个交叉口节点v2,遍历v2的邻接交叉口节点v3,v6,对于v3有T(v3)<T(v2)+t23,则不更新T(v3),对于v6有T(v6)>T(v2)+t26
Figure BDA0003856804970000098
则更新T(v6)=14.19,λ(v6)=2,Q=Q∪{v6};再取出Q中首个交叉口节点v6,遍历v6的邻接交叉口节点v8,有T(v8)>T(v6)+t68,但/>
Figure BDA0003856804970000099
则不更新T(v8),此时Q={},已找到最终最短路;
步骤7:输出最终最短路及最短行程时间;
从vend开始不断通过λ(vend)回溯至vstart,从而获得从起点交叉口节点vstart到终点交叉口节点vend的最短路径及其最短行程时间
Figure BDA0003856804970000101
并输出。
本实施例中,v1到v10的最短路径为v1→v5→v7→v9→v10,最短行程时间
Figure BDA0003856804970000102
本实施例中,一种电子设备,包括存储器以及处理器,该存储器用于存储支持处理器执行该城市最短路径获取方法的程序,该处理器被配置为用于执行该存储器中存储的程序。
本实施例中,一种计算机可读存储介质,是计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行该城市最短路径获取方法的步骤。
如图11所示,现有技术中的A*算法在搜索最短路时,是不断扩大一个靠近终点交叉口的椭圆形搜索范围,直至搜索到终点交叉口;如图12所示,本发明所提算法将最短路搜索分为了两阶段,第一阶段在一个狭窄的椭圆形范围中快速探索到初始最短路及初始最短行程时间,第二阶段基于初始最短行程时间向第一阶段的椭圆形搜索范围两侧边扩大搜索范围,最终行成一个与A*搜索范围大致相同的椭圆形搜索范围。本方法明显减少了最短路搜索时间,从而能在实际应用中有效提升了导航效率,促进了社会交通的高效运行。

Claims (3)

1.一种基于两阶段法与方向诱导的城市最短路径获取方法,其特征在于,是按如下步骤进行:
步骤1:构建城市路网并获取任意交叉口节点的平面坐标;
获取城市路网数据并得到城市道路网络G=(V,A),其中,V表示交叉口节点集合,V={v1,v2,…,vi,…,vK},vi表示第i个交叉口节点,i=1,2,…,K,K为所述城市路网G中的交叉口节点总数,A表示交叉口之间的路段集合,且A={(vi,vj)|i,j=1,2,…,K},(vi,vj)表示第i个交叉口节点vi到第j个交叉口节点vj的有向路段,tij为有向路段(vi,vj)的时间权重,且
Figure QLYQS_1
lij表示有向路段(vi,vj)的长度,sij表示有向路段(vi,vj)的通行车速;若第i个交叉口节点vi到第j个交叉口节点vj之间存在有向路段(vi,vj),则第j个交叉口节点vj为第i个交叉口节点vi的邻接交叉口节点,第i个交叉口节点vi为第j个交叉口节点vj的前驱交叉口节点,且tij≥0;若第i个交叉口节点vi到第j个交叉口节点vj之间不存在有向路段,则令tij=+∞;
根据城市路网数据得到第i个交叉口节点vi的平面坐标(xi,yi)和第j个交叉节点口vj的平面坐标(xj,yj),则第i个交叉口节点vi到第j个交叉口节点vj的向量记为
Figure QLYQS_2
Figure QLYQS_3
为第i个交叉口节点vi与第j个交叉口节点vj间的欧式距离;
步骤2:假设vstart为起点交叉口节点,vend为终点交叉口节点,且vstart、vend∈V;
步骤3:定义参数及初始化;
定义第i个交叉口节点vi的前向行程时间T(vi)为起点交叉口节点vstart到第i个交叉口节点vi的当前行程时间,定义λ(vi)为第i个交叉口节点vi的前向行程时间为T(vi)时vi的前驱交叉口节点的序号;
定义第i个交叉口节点vi的后向预估时间H(vi)为第i个交叉口节点vi到终点交叉口节点vend的预估行程时间;
定义第i个交叉口节点vi的预估总行程时间F(vi)为第i个交叉口节点vi的前向行程时间T(vi)与后向预估时间H(vi)的加权和;
定义方向权βji为前驱交叉口节点为vj的第i个交叉口节点vi的后向预估时间H(vi)的权,则方向权矩阵β={βij|i,j=1,2,3…K;i≠j};
定义
Figure QLYQS_4
为从起点交叉口节点vstart到终点交叉口节点vend的总行程时间上界;
定义Ti 为起点交叉口节点vstart经过第i个交叉口节点vi到终点交叉口节点vend的总行程时间下界;
定义vk为当前交叉口节点,且vk∈V;
定义S为已选交叉口节点集合;
定义
Figure QLYQS_5
为候选交叉口节点集合,属于交叉口节点集合V但不属于已选交叉口节点集合S的交叉口节点为候选交叉口节点;
定义Q为待搜索交叉口节点集合,并初始化Q=
Figure QLYQS_6
初始化S={},
Figure QLYQS_7
T(vstart)=0,F(vstart)=0,vk=vstart;将V中除起点交叉口节点vstart以外的其他交叉口节点的前向行程时间和预估总行程时间均初始化为+∞;
步骤4:计算方向权矩阵β;
遍历A中的有向路段(vi,vj),当vi≠vend,vj≠vstart,vj≠vend时,计算前驱交叉口节点为vi的第j个交叉口节点vj的后向预估时间的权
Figure QLYQS_8
当vj=vend时,前驱交叉口节点为vi的第j个交叉口节点vj的后向预估时间的权βij=0,其中,C为常数;/>
Figure QLYQS_9
表示第j个交叉口节点vj到第i个交叉口节点vi的向量,/>
Figure QLYQS_10
表示第j个交叉口节点vj到终点交叉口节点vend的向量;
步骤5:寻找初始最短路;
步骤5.1:判断是否找到初始最短路;
若当前交叉口节点vk为终点交叉口节点vend,则表示已找到初始最短路与初始最短行程时间,将从起点交叉口节点vstart到终点交叉口节点vend的当前行程时间作为终点交叉口节点vend的前向行程时间T(vend)并赋值给行程时间上界
Figure QLYQS_11
转向步骤6.1;否则,转向步骤5.2;
步骤5.2:更新候选交叉口节点;
遍历满足(vk,vj)∈A且
Figure QLYQS_12
的邻接候选交叉口节点vj,若T(vj)<T(vk)+tkj,则将T(vk)+tkj赋值给T(vj),将k赋值给λ(vj),计算第j个交叉口节点vj的预估总行程时间
Figure QLYQS_13
其中,T(vj)、H(vj)分别为第j个交叉口节点vj的前向行程时间与后向预估时间,/>
Figure QLYQS_14
为前驱交叉口节点为/>
Figure QLYQS_15
的第j个交叉口节点vj的后向预估时间H(vi)的权,smax为所有路段中的最大通行车速;T(vk)表示起点交叉口节点vstart到当前交叉口节点vk的当前行程时间,tkj表示为有向路段(vk,vj)的时间权重;
步骤5.3:更新已选交叉口节点集合S、候选交叉口节点集合
Figure QLYQS_16
与当前交叉口节点vk
将当前交叉口节点vk从候选交叉口节点集合
Figure QLYQS_17
中删去,并加入到已选交叉口节点集合S中,遍历候选交叉口节点集合/>
Figure QLYQS_18
若第m个交叉口节点vm满足/>
Figure QLYQS_19
则将m赋值给k,从而完成当前交叉口节点vk的更新,转向步骤5.1;其中,F(vj)为起点交叉口节点vs经过第j个交叉口节点vj到终点交叉口节点ve的预估总行程时间;
步骤6:获取最终最短路;
步骤6.1:更新待搜索交叉口节点集合Q;
在候选交叉口节点集合
Figure QLYQS_20
中遍历前向行程时间T(vi)≠+∞的候选交叉口节点vi,计算起点交叉口节点vstart经过候选交叉口节点vi到终点交叉口节点vend的总行程时间下界
Figure QLYQS_21
Ti 小于总行程时间上界/>
Figure QLYQS_22
则将候选交叉口节点vi加入到待搜索交叉口节点集合Q中;
步骤6.2:通过标号修正法求最短路;
步骤6.2.1:判断待搜索交叉口节点集合Q是否为空,若Q为空,则表示已找到最终最短路,转向步骤7;否则,执行步骤6.2.2;
步骤6.2.2:取Q中的首个交叉口节点vfirst,将首个交叉口节点vfirst从待搜索交叉口节点集合Q中移除,遍历满足(vfirst,vnext)∈A的邻接交叉口节点vnext
若T(vnext)>T(vfirst)+tfirst,next,且vnext=vend,则将T(vfirst)+tfirst,next赋值给T(vnext),将first赋值给λ(vnext),更新总行程时间上界
Figure QLYQS_23
若T(vnext)>T(vfirst)+tfirst,next,且vnext≠vend
Figure QLYQS_24
则将T(vfirst)+tfirst,next赋值给T(vnext),将first赋值给λ(vnext),将第next个交叉口节点vnext加入到待搜索交叉口节点集合Q中;
步骤6.2.3:返回步骤6.2.1顺序执行;
步骤7:输出最终最短路及最短行程时间;
从vend开始不断通过λ(vend)回溯至vstart,从而获得从起点交叉口节点vstart到终点交叉口节点vend的最短路径及其最短行程时间
Figure QLYQS_25
并输出。
2.一种电子设备,包括存储器以及处理器,其特征在于,所述存储器用于存储支持处理器执行权利要求1所述的城市最短路径获取方法的程序,所述处理器被配置为用于执行所述存储器中存储的程序。
3.一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器运行时执行权利要求1所述的城市最短路径获取方法的步骤。
CN202211152024.XA 2022-09-21 2022-09-21 基于两阶段法与方向诱导的城市路网最短路径获取方法及应用 Active CN115547087B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211152024.XA CN115547087B (zh) 2022-09-21 2022-09-21 基于两阶段法与方向诱导的城市路网最短路径获取方法及应用

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211152024.XA CN115547087B (zh) 2022-09-21 2022-09-21 基于两阶段法与方向诱导的城市路网最短路径获取方法及应用

Publications (2)

Publication Number Publication Date
CN115547087A CN115547087A (zh) 2022-12-30
CN115547087B true CN115547087B (zh) 2023-06-27

Family

ID=84728287

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211152024.XA Active CN115547087B (zh) 2022-09-21 2022-09-21 基于两阶段法与方向诱导的城市路网最短路径获取方法及应用

Country Status (1)

Country Link
CN (1) CN115547087B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117894201B (zh) * 2024-03-11 2024-06-21 湘江实验室 基于全局交通信息的道路交通引导方法、装置及相关设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1734238A (zh) * 2005-09-15 2006-02-15 北京工业大学 中心控制式车载导航***两阶段多路径优化方法
CN109238270A (zh) * 2018-10-21 2019-01-18 浙江浙大中控信息技术有限公司 基于改进的a星算法的智能导航方法
CN110807931A (zh) * 2019-11-08 2020-02-18 许凌 基于转向关系的交通路网有向图路径模型构建及求解方法
CN112071060A (zh) * 2020-08-27 2020-12-11 华南理工大学 一种基于城市路网交通环境变化的应急救援路径规划方法
CN112435498A (zh) * 2020-11-23 2021-03-02 合肥工业大学 一种基于方向性诱导的城市路网最短路径获取方法
CN112991800A (zh) * 2021-03-03 2021-06-18 合肥工业大学 基于角度限制和双向搜索的城市路网最短路径获取方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9076332B2 (en) * 2006-10-19 2015-07-07 Makor Issues And Rights Ltd. Multi-objective optimization for real time traffic light control and navigation systems for urban saturated networks

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1734238A (zh) * 2005-09-15 2006-02-15 北京工业大学 中心控制式车载导航***两阶段多路径优化方法
CN109238270A (zh) * 2018-10-21 2019-01-18 浙江浙大中控信息技术有限公司 基于改进的a星算法的智能导航方法
CN110807931A (zh) * 2019-11-08 2020-02-18 许凌 基于转向关系的交通路网有向图路径模型构建及求解方法
CN112071060A (zh) * 2020-08-27 2020-12-11 华南理工大学 一种基于城市路网交通环境变化的应急救援路径规划方法
CN112435498A (zh) * 2020-11-23 2021-03-02 合肥工业大学 一种基于方向性诱导的城市路网最短路径获取方法
CN112991800A (zh) * 2021-03-03 2021-06-18 合肥工业大学 基于角度限制和双向搜索的城市路网最短路径获取方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Drivable Path Planning Using Hybrid Search Algorithm Based on E* and Bernstein–Bézier Motion Primitives;Gregor Klančar 等;《IEEE Transactions on Systems, Man, and Cybernetics: Systems》;全文 *
基于平均速度信息的城市交通路径诱导策略;李浩;丁中俊;石琴;姜锐;高自友;;合肥工业大学学报(自然科学版)(第05期);全文 *

Also Published As

Publication number Publication date
CN115547087A (zh) 2022-12-30

Similar Documents

Publication Publication Date Title
CN102810118B (zh) 一种变权网k近邻搜索方法
CN108827335B (zh) 一种基于单向搜索模型的最短路径规划方法
US20090125229A1 (en) Corridor mapping with alternative routes
US20140207376A1 (en) Computer-implemented systems and methods for planning a route
CN112435498B (zh) 一种基于方向性诱导的城市路网最短路径获取方法
CN103149576A (zh) 一种浮动车数据的地图匹配方法
US20120310523A1 (en) Customizable route planning
KR100901013B1 (ko) 경로 탐색 시스템 및 그 방법
CN115713856A (zh) 一种基于交通流预测与实际路况的车辆路径规划方法
CN115547087B (zh) 基于两阶段法与方向诱导的城市路网最短路径获取方法及应用
CN111210065A (zh) 一种基于重优化技术的物流网络高效k最短路径算法
CN107121146A (zh) 基于路链深度的最优路径规划方法
JP2023542576A (ja) ナビ経路計画方法、ナビ経路計画装置、電子機器、非一時的コンピュータ可読記憶媒体及びコンピュータプログラム
CN112991800B (zh) 基于角度限制和双向搜索的城市路网最短路径获取方法
CN114440916A (zh) 一种导航方法、装置、设备及存储介质
CN114527761A (zh) 一种基于融合算法的智能汽车局部路径规划方法
CN113295177A (zh) 基于实时路况信息的动态路径规划方法及***
CN109855640B (zh) 一种基于自由空间与人工蜂群算法的路径规划方法
CN114186410A (zh) 随机gis网络驱动的交通最短可靠路径方法
CN112484733B (zh) 一种基于拓扑图的强化学习室内导航方法
CN104596527A (zh) 一种划分各级引导道路和细街路的方法
CN113706857A (zh) 道路通行性的确定方法、装置、设备及存储介质
CN115223389B (zh) 一种基于动态路段代价的停车引导路径规划方法
CN114383617A (zh) 基于地图神经网络导航算路方法、装置、设备及存储介质
CN113341976A (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