CN106441338A - 基于路链的路径规划方法 - Google Patents
基于路链的路径规划方法 Download PDFInfo
- Publication number
- CN106441338A CN106441338A CN201611065968.8A CN201611065968A CN106441338A CN 106441338 A CN106441338 A CN 106441338A CN 201611065968 A CN201611065968 A CN 201611065968A CN 106441338 A CN106441338 A CN 106441338A
- Authority
- CN
- China
- Prior art keywords
- road chain
- road
- segmental arc
- chain
- terminal
- 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
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)
Abstract
本发明公开了一种基于路链的路径规划方法,主要解决现有路径规划方法搜索时间长,路径拐角数目多的问题。其实现方案是:首先,提取道路网的节点‑弧段信息,获得节点与节点、节点与弧段、弧段与弧段之间关联性;接着,利用节点‑弧段信息,提取出符合道路连贯性的路链;然后根据路链信息和导航系统输入的起点、终点位置,采用双向搜索的路径规划方法,获得从起点到终点的可行路径;最后,通过比较可行路径权重,选出从起点到终点的最优路径。本发明缩短了路径搜索的时间,获得的路径保持了道路的连贯性,减少了路径拐角的次数,可用于交通控制、资源配置和车辆导航。
Description
技术领域
本发明属于导航技术领域,特别涉及一种路径规划方法,可用于交通控制、资源配置和车辆导航。
背景技术
路径规划是指,在具有障碍物的环境中,按照一定的评价标准,寻找一条从起始状态到目标状态的无碰撞路径。路径规划问题可以抽象成图论中的最短路径搜索问题,即图论中求解带权有向图的最优路径问题。在交通控制、资源配置、车辆导航等领域,最短路径算法越来越成为研究的热点。
在路径规划方面,许多学者提出一系列解决从起点到终点最大效益的规划方法,其中比较经典的是基于Dijkstra算法的路径规划和基于A*算法的路径规划。
Dijkstra算法按照路径长度递增的次序产生最短路径,基于起点和终点的邻接节点不断向外扩展搜索范围,每一次扩展邻接节点都需要比较节点所在弧段长度,需要将节点集合分为临时标记节点、永久性标记节点、未标记节点,直到终点与起点扩展的永久性节点存在公共节点。随着Dijkstra算法中节点集合无方向性四周扩充,搜索范围不断增大,其算法运行效率正比于节点数目的平方。为了缩小搜索范围,改进的Dijkstra算法有限制区域的距离最短路径规划算法。A*算法引入估值函数,克服Dijkstra算法四周盲目性搜索的缺点,该方法在选择下一个被搜索的节点时,对当前节点距离终点的长度进行评估,选择可能性大的节点进行搜索,减少了路径搜索节点。
Dijkstra算法和A*算法建立在“节点-弧段”模型上,每一条道路被节点分段为许多弧段,路网数据琐碎,每一步搜索需要访问大量的节点与弧段信息,搜索空间大,计算量增多,算法运行效率降低。其次,Dijkstra算法和A*算法在路径规划上精确度高,但是道路连续性差,拐角数目多,不符合人们对道路的感性认识。如何结合道路网的特点,找到一种符合感性认识的路径规划算法是一个亟待解决的技术问题。
发明内容
本发明的目的在于针对上述现有技术的不足,提出一种基于路链的路径规划方法,以缩小路径搜索空间,减少路径拐角数目,提高路径连续性。
本发明的技术思路是依据“良好连续性”原则将琐碎弧段连成路链结构,保持了道路的连续性;以路链为基本单位,采用双向搜索路径规划算法,缩小了路径搜索空间,减少了最优路径的拐角数目,其实现步骤包括如下:
1)从道路网中获取节点-弧段信息,并利用节点—弧段信息提取路链信息;
2)利用路链信息和导航系统的输入起点和终点位置,双向搜索从起点到终点的可行路径:
2a)确定起点、终点所在的路链,用所有起点、终点所在路链分别组成起点路链集合S0和终点路链集合E0;
2b)判断起点路链集合S0与终点路链集合E0是否存在公共路链,如果存在公共路链,则搜索从起点到终点的可行路径结束,执行步骤3),如果不存在公共路链,则执行步骤2c);
2c)初始化路链集合等级n=1;
2d)获得第n级起点路链集合Sn,即查询路链集合S(n-1)中的每一条路链的邻接路链,如果邻接路链已经被设置了父路链,则该邻接路链不存放在第n级起点路链集合Sn中,如果邻接路链没有被设置父路链,则将当前查询的路链设置为其邻接路链的父路链,新设置了父路链的邻接路链存放在第n级起点路链集合Sn中;
2e)判断第n级起点路链集合Sn与第n-1级终点路链集合E(n-1)是否存在公共路链,如果存在公共路链,则搜索从起点到终点的可行路径结束,执行步骤3);如果不存在公共路链,执行步骤2f);
2f)获得第n级终点路链集合En,即查询终点路链集合E(n-1)中的每一条路链的邻接路链,如果邻接路链已经被设置了父路链,则该邻接路链不存放在第n级终点路链集合En中,如果邻接路链没有被设置父路链,则将当前查询的路链设置为其邻接路链的父路链,新设置了父路链的邻接路链存放在第n级终点路链集合En中;
2g)判断第n级起点路链集合Sn与第n级终点路链集合En是否存在公共路链,如果存在公共路链,则搜索从起点到终点的可行路径结束,执行步骤3);如果不存在公共路链,n=n+1,返回步骤2d);
3)获取最优路径:
3a)利用标记的父路链,从公共路链开始分别逆序从每一级起点路链集合和终点路链集合提取路链,获得起点路链串集合和终点路链串集合,以公共路链为中间路链连接起点路链串集合与终点路链串集合,得到可行路径;
3b)计算每一条可行路径的权重,取权重最小的路径为最优路径。
本发明与现有技术相比,具有如下优点:
第一,本发明由于在路链的基础上进行路径规划,即以路链为基本单元向外扩展,减小了搜索空间,缩短了计算时间,路径规划实现方便快速。
第二,本发明由于对道路网提取路链,降低了路网的琐碎,保持了道路的整体性,使得可行路径直线性强,减少了拐弯点,符合大众选择出行路线的心理需求。
附图说明
图1为本发明实施场景示意图;
图2为本发明的流程图;
具体实施方式
下面结合图1对本发明做进一步的描述:
参照图1,本发明具体实施方式的场景示意图中,圆点表示道路网中的节点,分别用1-16编号,黑色直线表示道路网中的弧段,分别用A1-M编号,空心圆点11代表终点,空心圆点4代表起点。
参照图2,本发明的实现步骤如下:
步骤1,获取节点-弧段信息,并利用节点—弧段信息提取路链信息。
1.1)获取道路网节点-弧段信息:
1.11)提取道路网中的点要素作为交汇点,提取线要素作为边;
1.12)按照边-边连通性策略、交汇点-边连通性策略、高程字段使用规则建立边与边、边与交汇点、交汇点与交汇点之间的连通关系;
1.13)利用上述建立的连通关系提取交汇点的编号、交汇点的坐标、交汇点邻接的交汇点、交汇点所在的边,提取边的编号、边的关联边、边的起始交汇点和边的权重;将提取的这些全部内容统称为节点-弧段信息;
1.2)利用节点-弧段信息提取路链信息:
1.21)选取未被提取成路链的弧段作为种子弧段,查找该弧段的关联弧段;
1.22)如果选取的种子弧段存在关联弧段,执行步骤1.23);如果选取的种子弧段不存在关联弧段,直接将该弧段提取成路链,执行步骤1.28);
本实例是在图1中任意选取弧段D1作为种子弧段,弧段D1存在关联弧段,关联弧段为弧段C、弧段D2、和弧段M,故执行步骤1.23;
1.23)计算每一条关联弧段与该弧段的夹角:
首先,获取任意弧段起止节点的坐标(x1,y1)和(x0,y0),假设该弧段存在以节点(x0,y0)为公共节点的关联弧段,关联弧段另一节点坐标为(x2,y2);
其次,计算如下参数:
任意弧段向量:A(x1-x0,y1-y0),任意弧段向量A的模:
关联弧段向量:B(x2-x0,y2-y0),关连弧段向量B的模:
任意弧段向量A与关联弧段向量B的乘积:A·B=(x1-x0)*(x2-x0)+(y1-y0)*(y2-y0);
任意弧段与关联弧段弧段夹角a的余弦值:
然后,利用反余弦求解任意弧段与关联弧段夹角a的值:
本实例获取弧段节点的坐标为:
弧段D1和关联弧段D2的公共节点6坐标为(5,2),弧段D1的终止节点5坐标为(1,0),关联弧段D2的终止节点7坐标为(12,8);弧段D2和关联弧段M的公共节点6坐标为(5,2)关联弧段M的终止节点16坐标为(4,10);
本实例计算的参数如下:
弧段D1的弧段向量坐标为(4,2);
弧段D1的模值:
关联弧段D2的弧段向量坐标为(7,6);
关联弧段D2的模值:
关联弧段M的弧段向量坐标为(-1,8);
关联弧段M的模值:
本实例计算弧段D1与关联弧段D2的夹角值a和弧段D1与关联弧段M的夹角值b如下:
1.24)如果存在夹角值大于120°的关联弧段,取其中夹角值最接近180°的关联弧段作为新的种子弧段,执行步骤1.25);如果不存在夹角值大于120°的关联弧段,直接将该弧段提取成路链,执行步骤1.28);
本实例参照图1,获得弧段D1与关联弧段D2的夹角a大于120°,弧段D1与关联弧段M的夹角b小于120°,故将关联弧段D2作为新的种子弧段,执行步骤1.25;
1.25)继续查找新的种子弧段的关联弧段,如果存在新的关联弧段,执行步骤1.26);如果不存在新的关联弧段,执行步骤1.27);
本实例参照图1,获得新的种子弧段D2存在新的关联弧段,新的关联弧段为弧段M和弧段E2,故执行步骤1.26;
1.26)依次计算新的弧段与新的种子弧段的夹角值,如果存在夹角值大于120°的新的关联弧段,取夹角值最接近180°的新的关联弧段继续作为新的种子弧段,返回步骤1.25);如果不存在夹角值大于120°的新的关联弧段,执行步骤1.27);
1.27)连接满足条件的关联弧段,构成一条完整路链,并记录该路链的编号、路链经过的节点、路链的邻接路链、路链与路链交叉点;
1.28)遍历所有弧段,如果存在未被提取成路链的弧段,返回步骤1.21);如果弧段全部被提取成路链,则提取路链结束。
本实例参照图1,遍历道路网所有弧段提取如下路链:
弧段A1、A2连接成路链A:(A1,A2),弧段D1、D2连接成路链D:(D1,D2),弧段E1、E2、E3连接成路链E:(E1,E2,E3),弧段I1、I2连接成路链I:(I1,I2),弧段J1、J2连接成路链J:(J1,J2),弧段K1、K2连接成路链K:(K1,K2),弧段B、弧段C、弧段G、弧段H、弧段L和弧段M分别单独生成路链B、路链C、路链G、路链H、路链L、路链M。
步骤2,利用路链信息和导航系统的输入起点和终点位置,双向搜索从起点到终点的可行路径。
2.1)确定起点、终点所在的路链,用所有起点、终点所在路链分别组成起点路链集合S0和终点路链集合E0;
本实例参照图1,其起点4属于路链B和路链C,故起点路链集合S0={B,C};终点11属于路链G和路链H,故终点路链集合E0={G,H};
2.2)判断起点路链集合S0与终点路链集合E0是否存在公共路链,如果存在公共路链,则搜索从起点到终点的可行路径结束,执行步骤3),如果不存在公共路链,则执行步骤2.3);
公共路链是指具有相同路链编号的路链,且路链只有唯一的编号。
本实例参考图1,其起点路链集合S0={B,C}和终点路链集合E0={G,H}中不存在公共路链,故执行步骤2.3;
2.3)初始化路链集合等级n=1;
2.4)获得第n级起点路链集合Sn,即查询路链集合S(n-1)中的每一条路链的邻接路链,如果邻接路链已经被设置了父路链,则该邻接路链不存放在第n级起点路链集合Sn中,如果邻接路链没有被设置父路链,则将当前查询的路链设置为其邻接路链的父路链,新设置了父路链的邻接路链存放在第n级起点路链集合Sn中;
本实例参照图1,获取第1级起点路链集合S1:其起点路链集合S0={B,C},其中路链B的邻接路链为路链A,将路链B记为路链A的父路链,路链C的邻接路链为路链D,将路链C记为路链D的父路链,第1级起点路链集合S1={A,D};
2.5)判断第n级起点路链集合Sn与第n-1级终点路链集合E(n-1)是否存在公共路链,如果存在公共路链,则搜索从起点到终点的可行路径结束,执行步骤3);如果不存在公共路链,执行步骤2.6);
公共路链是指具有相同路链编号的路链,且路链只有唯一的编号。
本实例参照图1,其第1级起点路链集合S1={A,D}和终点路链集合E0={G,H}不存在公共路链,故执行步骤2.6;
2.6)获得第n级终点路链集合En,即查询终点路链集合E(n-1)中的每一条路链的邻接路链,如果邻接路链已经被设置了父路链,则该邻接路链不存放在第n级终点路链集合En中,如果邻接路链没有被设置父路链,则将当前查询的路链设置为其邻接路链的父路链,新设置了父路链的邻接路链存放在第n级终点路链集合En中;
本实例参照图1,获取第1级终点路链集合E1:其终点路链集合E0={G,H},其中路链G的邻接路链为路链E,将路链G标记为路链E的父路链,路链H的邻接路链为路链I,将路链H记为路链I的父路链,第1级终点路链集合E1={E,I};
2.7)判断第n级起点路链集合Sn与第n级终点路链集合En是否存在公共路链,如果存在公共路链,则搜索从起点到终点的可行路径结束,执行步骤3);如果不存在公共路链,n=n+1;返回步骤2.4);
公共路链是指具有相同路链编号的路链,且路链只有唯一的编号。
本实例参照图1,其第1级终点路链集合E1={E,I}和第1级起点路链集合S1={A,D}不存在公共路链,故路链集合等级n=2,返回步骤2.4,获得第2级起点路链集合S2;
本实例参照图1,其第1级起点路链集合S1={A,D},其中路链A的邻接路链为路链L和路链I,将路链A标记为路链L和路链I的父路链;路链D的邻接路链为路链E和路链M,将路链D标记为路链E和路链M的父路链,第2级起点路链集合S2={L,I,E,M};
判断第2级起点路链集合S2与第1级终点路链集合E1是否存在公共路链,如果存在公共路链,则搜索从起点到终点的可行路径结束,执行步骤3);如果不存在公共路链,获得第2级终点路链集合E2。
本实例参照图1,其第2级起点路链集合S2={L,I,E,M}和第1级终点路链集合E1={E,I}存在公共路链E和公共路链I,故执行步骤3;
步骤3,获取最优路径。
3.1)利用父路链标记,获得起点路链串集合:
3.1a)假设起点路链为路链C、终点路链为路链D,第n+2级起点路链集合和第m+2级终点路链集合存在公共路链S,创建起点路链串集合F,将公共路链S存放在起点路链串集合F;
本实例获得的第2级起点路链集合S2={L,I,E,M}和第1级终点路链集合E1={E,I}存在公共路链E和公共路链I,故在创建公共路链I的路链串集合时,将路链I存放在起点路链串集合F中,得到起点路链串集合F={I};
3.1b)查询公共路链S在第n+1级起点路链集合中的父路链N0,将父路链N0存放在起点路链串集合F中;
本实例中的公共路链I在第1级起点路链集合S1中的父路链为路链A,将父路链A存放在起点路链串集合F中,得到起点路链串集合F={I,A};
3.1c)判断父路链N0与起点路链C是否相同,如果父路链N0与起点路链C相同,则组建起点路链串集合F结束,如果父路链N0与起点路链C不相同,则父路链N0作为新的路链N0,执行步骤3.1d);
本实例中的父路链A不是起点4所在的路链,故将父路链A作为新的路链A,执行步骤3.1d);
3.1d)查询新的路链N0在第n级起点路链集合中的父路链N1,将父路链N1存放在起点路链串集合F中;
本实例中,新的路链A在起点路链集合S0中的父路链为路链B,将父路链B存放在起点路链串集合F中,得到起点路链串集合F={I,A,B};
3.1e)判断父路链N1与起点路链C是否相同,如果父路链N1与起点路链C相同,则组建起点路链串集合F结束,如果父路链N1与起点路链C不相同,则将父路链N1作为新的路链N0,执行步骤3.1f);
本实例中,父路链B是起点4所在的路链,故起点路链串集合F组建完成。
3.1f)令n=n-1,返回步骤3.1d);
3.2)利用父路链标记,获得终点路链串集合:
3.2a)假设起点路链为路链C、终点路链为路链D,第n+2级起点路链集合和第m+2级终点路链集合存在公共路链S,创建终点路链串集合G,将公共路链S终点路链串集合G中;
本实例获得的第2级起点路链集合S2={L,I,E,M}和第1级终点路链集合E1={E,I}存在公共路链E和公共路链I,故在创建公共路链I的终点路链串集合时,将路链I存放在终点路链串集合G中,得到终点路链串集合G={I};
3.2b)查询公共路链S在第m+1级终点路链集合中的父路链M0,将父路链M0存放在终点路链串集合G中;
本实例中的公共路链I在终点路链集合E0中的父路链为路链H,将父路链H存放在终点路链串集合G中,得到终点路链串集合G={I,H};
3.2c)判断父路链M0与终点路链D是否相同,如果父路链M0与终点路链D相同,则组建终点路链串集合G结束;如果父路链M0与终点路链D不相同,则将父路链M0作为新的路链M0,执行步骤3.2d);
本实例中,父路链H是终点11所在的路链,故终点路链串集合G组建完成。
3.2d)查询新的路链M0在第m级终点路链集合中的父路链M1,将父路链M1存放在终点路链串集合G中;
3.2e)判断父路链M1与终点路链D是否相同,如果父路链M1与终点路链D相同,则组建终点路链串集合G结束,如果父路链M1与终点路链D不相同,则将父路链M1作为新的路链M0,执行步骤3.2f);
3.2f)令m=m-1,返回步骤3.2d);
3.3)以公共路链为中间路链连接起点路链串集合与终点路链串集合,得到可行路径:
本实例中获得起点路链串集合F={I,A,B},终点路链串集合G={I,H},以公共路链I连接起点路链串集合F和终点路链串集合G,得到可行路径1由四条路链(B,A,I,H)组成;公共路链E用同样的方法获得起点路链串集合F={E、D、C}和终点路链串集合G={E、G},将两个集合以公共路链E连接,得到可行路径2由四条路链(C,D,E,G)组成。
3.4)计算每一条可行路径的权重:
3.4a)假设可行路径由四条路链(A,B,C,D)连接组成;
本实例获得:可行路径1由四条路链(B,A,I,H)组成,
可行路径2由四条路链(C,D,E,G)组成;
3.4b)遍历路链信息和节点-弧段信息,分别查找这四条路链(A,B,C,D)包含的弧段权重;
本实例获得如下信息:
路链B由弧段B组成,弧段B的权重为10;
路链A由弧段A1和A2组成,弧段A1、弧段A2权重分别为5、15;
路链I由弧段I1和I2组成,弧段I1、弧段I2权重分别为10、10;
路链H由弧段H组成,弧段H的权重为8;
路链C由弧段C组成,弧段C的权重为6;
路链D由弧段D1和D2组成,弧段D1、弧段D2权重分别为5、10;
路链G由弧段G组成,弧段G的权重为7;
路链E由弧段E1、E2、E3组成,弧段E1、弧段E2、弧段E3权重分别为5、3、9;
3.4c)将每一条路链包含的弧段权重相加,分别获得路链A的权重Wa、路链B的权重Wb、路链C的权重Wc、路链D的权重Wd;
本实例获得如下信息:
路链A的权重Wa=20,路链B的权重Wb=10,路链I的权重Wi=20,路链H的权重Wh=8;
路链C的权重Wc=6,路链D的权重Wd=15,路链E的权重We=17,路链G的权重Wg=7;
3.4d)计算四条路链(A,B,C,D)的权重之和W=Wa+Wb+Wc+Wd,作为可行路径的权重。
本实例中,可行路径1的权重W1=20+10+20+8=58;
可行路径2的权重W2=6+15+17+7=45;
3.5)比较可行路径的权重,权重最小的路径为最优路径。
本实例中,由于可行路径1的权重W1>可行路径2的权重W2,所以将可行路径2作为从起点4到终点11的最优路径。
以上描述仅是本发明的一个具体实例,不构成对本发明的任何限制,显然对于本发明的专业人员来说,在了解了本发明内容和原理后,都可能在不背离本发明原理、结构的情况下,进行形式和细节上的各种修正和改变,但是这些基于本发明思想的修正和改变仍在本发明的权利要求保护范围之内。
Claims (7)
1.一种基于路链的导航路径规划方法,包括:
1)从道路网中获取节点-弧段信息,并利用节点—弧段信息提取路链信息;
2)利用路链信息和导航系统的输入起点和终点位置,双向搜索从起点到终点的可行路径:
2a)确定起点、终点所在的路链,用所有起点、终点所在路链分别组成起点路链集合S0和终点路链集合E0;
2b)判断起点路链集合S0与终点路链集合E0是否存在公共路链,如果存在公共路链,则搜索从起点到终点的可行路径结束,执行步骤3),如果不存在公共路链,则执行步骤2c);
2c)初始化路链集合等级n=1;
2d)获得第n级起点路链集合Sn,即查询路链集合S(n-1)中的每一条路链的邻接路链,如果邻接路链已经被设置了父路链,则该邻接路链不存放在第n级起点路链集合Sn中,如果邻接路链没有被设置父路链,则将当前查询的路链设置为其邻接路链的父路链,新设置了父路链的邻接路链存放在第n级起点路链集合Sn中;
2e)判断第n级起点路链集合Sn与第n-1级终点路链集合E(n-1)是否存在公共路链,如果存在公共路链,则搜索从起点到终点的可行路径结束,执行步骤3);如果不存在公共路链,执行步骤2f);
2f)获得第n级终点路链集合En,即查询终点路链集合E(n-1)中的每一条路链的邻接路链,如果邻接路链已经被设置了父路链,则该邻接路链不存放在第n级终点路链集合En中,如果邻接路链没有被设置父路链,则将当前查询的路链设置为其邻接路链的父路链,新设置了父路链的邻接路链存放在第n级终点路链集合En中;
2g)判断第n级起点路链集合Sn与第n级终点路链集合En是否存在公共路链,如果存在公共路链,则搜索从起点到终点的可行路径结束,执行步骤3);如果不存在公共路链,n=n+1,返回步骤2d);
3)获取最优路径:
3a)利用标记的父路链,从公共路链开始分别逆序从每一级起点路链集合和终点路链集合提取路链,获得起点路链串集合和终点路链串集合,以公共路链为中间路链连接起点路链串集合与终点路链串集合,得到可行路径;
3b)计算每一条可行路径的权重,取权重最小的路径为最优路径。
2.根据权利要求1所述的方法,其中步骤(1)中从道路网中获取节点-弧段信息,按如下步骤进行:
1a)提取道路网中的点要素作为交汇点,提取线要素作为边;
1b)按照边-边连通性策略、交汇点-边连通性策略、高程字段使用规则建立边与边、边与交汇点、交汇点与交汇点之间的连通关系;
1c)利用上述建立的连通关系提取交汇点的编号、交汇点的经纬度、交汇点邻接的交汇点、交汇点所在的边,提取边的编号、边的关联边、边的起止交汇点和边的权重;
1d)将1c)提取的全部内容统称为节点-弧段信息。
3.根据权利要求1所述的方法,其中步骤(1)中利用节点-弧段信息提取路链信息,按如下步骤进行:
1e)选取未被提取成路链的弧段作为种子弧段,查找该弧段的关联弧段,如果存在关联弧段,执行步骤1f);如果不存在关联弧段,直接将该弧段提取成路链,重新执行步骤1e);
1f)依次计算关联弧段与该弧段的夹角,如果存在夹角值大于120°的关联弧段,取其中夹角值最接近180°的关联弧段作为新的种子弧段,执行步骤1g);如果不存在夹角值大于120°的关联弧段,直接将该弧段提取成路链,返回步骤1e);
1g)继续查找新的种子弧段的关联弧段,如果存在新的关联弧段,执行步骤1h);如果不存在新的关联弧段,执行步骤1i);
1h)依次计算新的关联弧段与新的种子弧段的夹角值,如果存在夹角值大于120°的新的关联弧段,取夹角值最接近180°的新的关联弧段继续作为新的种子弧段,返回步骤1g);如果不存在夹角值大于120°的新的关联弧段,执行步骤1i);
1i)连接满足条件的关联弧段,构成一条完整路链,并记录该路链的编号、路链经过的节点、路链的邻接路链、路链与路链交叉点,执行步骤1j);
1j)遍历所有弧段,如果存在未被提取成路链的弧段,返回步骤1e);如果弧段全部被提取成路链,则提取路链结束。
4.根据权利要求3所述的方法,其中步骤1f)和步骤1h)中计算弧段与关联弧段之间夹角,按如下步骤进行:
首先,获取任意弧段起止节点的坐标(x1,y1)和(x0,y0),假设该弧段存在以节点(x0,y0)为公共节点的关联弧段,关联弧段另一节点坐标为(x2,y2);
接着,计算如下参数:
任意弧段向量:A(x1-x0,y1-y0),任意弧段向量A的模:
关联弧段向量:B(x2-x0,y2-y0),关连弧段向量B的模:
任意弧段向量A与关联弧段向量B的乘积:A·B=(x1-x0)*(x2-x0)+(y1-y0)*(y2-y0);
任意弧段与关联弧段弧段夹角a的余弦值:
然后,利用反余弦求解任意弧段与关联弧段夹角a的值:
5.根据权利要求1所述的方法,步骤2b)、2e)、2g)中所述的公共路链是指具有相同路链编号的路链,且路链只有唯一的编号。
6.根据权利要求1所述的方法,步骤3a)中获得起点路链串集合和终点路链串集合,按如下步骤进行:
3a1)假设起点路链为路链C、终点路链为路链D,第n+2级起点路链集合和第m+2级终点路链集合存在公共路链S,创建起点路链串集合F和终点路链串集合G,分别将公共路链S存放在起点路链串集合F和终点路链串集合G中;
3a2)查询公共路链S在第n+1级起点路链集合中的父路链N0,将父路链N0存放在起点路链串集合F中;如果父路链N0与起点路链C相同,则组建起点路链串集合F结束,如果父路链N0与起点路链C不相同,则父路链N0作为新的路链N0,执行步骤3a3);
3a3)查询新的路链N0在第n级起点路链集合中的父路链N1,将父路链N1存放在起点路链串集合F中;如果父路链N1与起点路链C相同,则组建起点路链串集合F结束,如果父路链N1与起点路链C不相同,则将父路链N1作为新的路链N0,执行步骤3a4);
3a4)令n=n-1,返回步骤3a3);
3a5)查询公共路链S在第m+1级终点路链集合中的父路链M0,将父路链M0存放在终点路链串集合G中,如果父路链M0与终点路链D相同,则组建终点路链串集合G结束;如果父路链M0与终点路链D不相同,则将父路链M0作为新的路链M0,则执行步骤3a6);
3a6)查询新的路链M0在第m级终点路链集合中的父路链M1,将父路链M1存放在终点路链串集合G中;如果父路链M1与终点路链D相同,则组建终点路链串集合G结束,如果父路链M1与终点路链D不相同,则将父路链M1作为新的路链M0,执行步骤3a7);
3a7)令m=m-1,返回步骤3a6)。
7.根据权利要求1所述的方法,步骤(3b)中的可行路径权重,按如下步骤进行:
3b1)假设可行路径由四条路链(A,B,C,D)连接组成;
3b2)遍历路链信息和节点-弧段信息,分别查找这四条路链(A,B,C,D)包含的弧段权重;
3b3)将每一条路链包含的弧段权重相加,分别获得路链A的权重Wa、路链B的权重Wb、路链C的权重Wc、路链D的权重Wd;
3b4)计算四条路链(A,B,C,D)的权重之和W=Wa+Wb+Wc+Wd,作为可行路径的权重。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611065968.8A CN106441338B (zh) | 2016-11-28 | 2016-11-28 | 基于路链的路径规划方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611065968.8A CN106441338B (zh) | 2016-11-28 | 2016-11-28 | 基于路链的路径规划方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106441338A true CN106441338A (zh) | 2017-02-22 |
CN106441338B CN106441338B (zh) | 2019-03-26 |
Family
ID=58219233
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611065968.8A Active CN106441338B (zh) | 2016-11-28 | 2016-11-28 | 基于路链的路径规划方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106441338B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019185052A1 (zh) * | 2018-03-30 | 2019-10-03 | 日本电气株式会社 | 用于确定两点之间的可达路径的方法、装置和系统 |
CN110455295A (zh) * | 2019-09-16 | 2019-11-15 | 广州电加软件有限责任公司 | 一种河道航运路线自动规划方法 |
CN110807931A (zh) * | 2019-11-08 | 2020-02-18 | 许凌 | 基于转向关系的交通路网有向图路径模型构建及求解方法 |
CN111879329A (zh) * | 2020-07-30 | 2020-11-03 | 郑州天迈科技股份有限公司 | 基于a*算法的定制公交可通行最短路径计算方法 |
CN113607183A (zh) * | 2021-08-05 | 2021-11-05 | 北京中交兴路信息科技有限公司 | 一种车辆的运输路线规划方法、装置、存储介质及终端 |
CN114674336A (zh) * | 2022-03-31 | 2022-06-28 | 凌鸟(苏州)智能系统有限公司 | 基于线段的路径规划方法 |
CN115655281A (zh) * | 2022-12-06 | 2023-01-31 | 亿海蓝(北京)数据技术股份公司 | 海上航路的规划方法、规划装置和可读存储介质 |
CN117839217A (zh) * | 2023-06-29 | 2024-04-09 | 高世超 | 网络游戏区块链路地图时空高效路径搜索方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080275640A1 (en) * | 2007-05-01 | 2008-11-06 | Kyungso Yun | Method of selecting route and terminal using the same |
CN101832778A (zh) * | 2009-03-09 | 2010-09-15 | 株式会社电装 | 导航装置以及路径搜索方法 |
CN102694725A (zh) * | 2012-05-17 | 2012-09-26 | 同济大学 | 基于带宽来双向搜索路径的方法 |
-
2016
- 2016-11-28 CN CN201611065968.8A patent/CN106441338B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080275640A1 (en) * | 2007-05-01 | 2008-11-06 | Kyungso Yun | Method of selecting route and terminal using the same |
CN101832778A (zh) * | 2009-03-09 | 2010-09-15 | 株式会社电装 | 导航装置以及路径搜索方法 |
CN102694725A (zh) * | 2012-05-17 | 2012-09-26 | 同济大学 | 基于带宽来双向搜索路径的方法 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11615090B2 (en) | 2018-03-30 | 2023-03-28 | Nec Corporation | Method, apparatus and system for determining accessible paths between two nodes |
CN110319845A (zh) * | 2018-03-30 | 2019-10-11 | 日本电气株式会社 | 用于确定两点之间的可达路径的方法、装置和系统 |
WO2019185052A1 (zh) * | 2018-03-30 | 2019-10-03 | 日本电气株式会社 | 用于确定两点之间的可达路径的方法、装置和系统 |
CN110319845B (zh) * | 2018-03-30 | 2024-01-09 | 日本电气株式会社 | 用于确定两点之间的可达路径的方法、装置和系统 |
CN110455295A (zh) * | 2019-09-16 | 2019-11-15 | 广州电加软件有限责任公司 | 一种河道航运路线自动规划方法 |
CN110807931A (zh) * | 2019-11-08 | 2020-02-18 | 许凌 | 基于转向关系的交通路网有向图路径模型构建及求解方法 |
CN110807931B (zh) * | 2019-11-08 | 2021-09-17 | 许凌 | 基于转向关系的交通路网有向图路径模型构建及求解方法 |
CN111879329A (zh) * | 2020-07-30 | 2020-11-03 | 郑州天迈科技股份有限公司 | 基于a*算法的定制公交可通行最短路径计算方法 |
CN111879329B (zh) * | 2020-07-30 | 2022-02-22 | 郑州天迈科技股份有限公司 | 基于a*算法的定制公交可通行最短路径计算方法 |
CN113607183A (zh) * | 2021-08-05 | 2021-11-05 | 北京中交兴路信息科技有限公司 | 一种车辆的运输路线规划方法、装置、存储介质及终端 |
CN114674336A (zh) * | 2022-03-31 | 2022-06-28 | 凌鸟(苏州)智能系统有限公司 | 基于线段的路径规划方法 |
CN114674336B (zh) * | 2022-03-31 | 2024-08-16 | 凌鸟(苏州)智能系统有限公司 | 基于线段的路径规划方法 |
CN115655281A (zh) * | 2022-12-06 | 2023-01-31 | 亿海蓝(北京)数据技术股份公司 | 海上航路的规划方法、规划装置和可读存储介质 |
CN117839217A (zh) * | 2023-06-29 | 2024-04-09 | 高世超 | 网络游戏区块链路地图时空高效路径搜索方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106441338B (zh) | 2019-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106441338A (zh) | 基于路链的路径规划方法 | |
CN109949574B (zh) | 一种数据驱动的城市路网交通小区多级划分方法 | |
Akbari et al. | Landfill site selection by combining GIS and fuzzy multi criteria decision analysis, case study: Bandar Abbas, Iran | |
CN105258704A (zh) | 基于快速路网建模的多尺度时空热点路径探测方法 | |
Eroğlu et al. | Optimization of electrical power transmission lines''routing using AHP, fuzzy AHP, and GIS | |
Li et al. | Approach for Optimizing 3D Highway Alignments Based on Two-stage Dynamic Programming. | |
CN111197991A (zh) | 基于深度神经网络的预测车辆最佳驾驶路径方法 | |
CN101788999A (zh) | 一种网络图中最短路径的二分查找追踪方法 | |
CN107121146A (zh) | 基于路链深度的最优路径规划方法 | |
Jepsen et al. | On network embedding for machine learning on road networks: A case study on the danish road network | |
CN104406590A (zh) | 一种基于道路等级的最短路径规划算法 | |
Ghosh et al. | Traj-cloud: a trajectory cloud for enabling efficient mobility services | |
CN110502567B (zh) | 一种面向主题的城市轨道交通站点层次poi提取方法 | |
Zhou et al. | A buffer analysis based on co-location algorithm | |
CN104318793A (zh) | 一种道路水浸事件紧急疏导配流生成方法 | |
CN104331424A (zh) | 一种用户移动轨迹中敏感轨迹模式的净化方法 | |
CN106156124B (zh) | 地图元素属性的存储方法、装置,以及检索方法、装置 | |
CN106709011B (zh) | 一种基于空间定位簇的位置概念层次消解计算方法 | |
CN114509085A (zh) | 一种结合栅格和拓扑地图的快速路径搜索方法 | |
CN106092109B (zh) | 一种电子地图高效寻路的道路连接逻辑化方法及应用 | |
Mina et al. | Deployment model for urban guide signs based on road network topology | |
Agourogiannis et al. | Towards a Similarity Index of network paths in Spatial Networks | |
Feng et al. | Accessibility patterns based on steps, direction changes, and angular deviation: Are they consistent? | |
Jin et al. | Urban road network generalization based on strokes | |
Yazdian et al. | Semantic Approach to Spatial Infor-mation Retrieval-Case Study: Vancouver Downtown Traffic Nodes During Rainfall |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |