CN113091751A - 网格空间内部分网格定向条件下的路径规划方法 - Google Patents
网格空间内部分网格定向条件下的路径规划方法 Download PDFInfo
- Publication number
- CN113091751A CN113091751A CN202110392554.0A CN202110392554A CN113091751A CN 113091751 A CN113091751 A CN 113091751A CN 202110392554 A CN202110392554 A CN 202110392554A CN 113091751 A CN113091751 A CN 113091751A
- Authority
- CN
- China
- Prior art keywords
- point
- path
- algorithm
- distance
- heuristic function
- 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
- 238000000034 method Methods 0.000 title claims abstract description 11
- 238000010586 diagram Methods 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
Images
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/20—Instruments for performing navigational calculations
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
网格空间内部分网格定向条件下的路径规划方法,包括以下步骤:步骤一,确定A*算法的估值函数;步骤二,在典型的网格空间,选用曼哈顿距离作为启发函数h,当前点N到终点G的曼哈顿距离;步骤三,当网格不定向时,采用曼哈顿距离作为启发函数h,该启发函数能够非常精确的估算当前点N到终点G的路径距离,A*算法可快速求解最短路径;步骤四,当部分网格定向时,曼哈顿距离与实际路径距离相差较大,若仍采用曼哈顿距离作为启发函数h,A*算法仍可求解从起点S到终点N的最短路径;步骤五,当部分网格定向时,对启发函数h进行修正,以使其可准确估算当前点N到终点G的路径距离;具有快速找到最优路径的特点。
Description
技术领域
本发明属于计算机技术领域,具体涉及网格空间内部分网格定向条件下的路径规划方法。
背景技术
在给定可行路线的条件下,路径规划通常采用Dijkstra和A*算法。Dijkstra算法的实质是广度优先搜索,是一种发散式的搜索,空间复杂度和时间复杂度都比较高。A*算法是一种启发式算法,不但记录其路径上的当前点到源点的代价,还计算当前点到目标点的期望代价,启发函数选取越精确,A*迭代的越少,执行得就越快。A*算法广泛应用于路径规划中,且能够快速找到最优路径,具有很到的效果。
在网格空间中,采用A*算法进行路径规划,当选用曼哈顿距离作为启发函数时,可实现快速路径规划。当部分网格定向时(限定网格的前进方向),此时若仍然选用曼哈顿距离作为启发函数进行路径规划,算法效率急剧降低,当网格规模较大时,搜索空间快速增加,将会严重制约算法效率,甚至导致算法不能应用(当在限定的时间内无法规划出路径时,算法不再可用)。
发明内容
为克服上述现有技术的不足,本发明的目的是提供网格空间内部分网格定向条件下的路径规划方法,具有快速找到最优路径的特点。
为实现上述目的,本发明采用的技术方案是:网格空间内部分网格定向条件下的路径规划方法,包括以下步骤:
步骤一,确定A*算法的估值函数
f=g+h
其中,g为起点S到当前点N的实际路径代价,h为当前点N到终点G的估计代价,f为从起点S到终点G的总估计代价;
h是A*算法的启发函数,它的性质决定了A*算法的效率,h对A*算法的主要影响如下:
1)如果h=0,f=g,A*算法退化为Dijkstra算法;
2)如果h始终小于等于当前点N到终点G的路径距离,A*算法可找到最优解,而且h越小,A*算法扩展的节点也就越多,A*算法的效率越低;
3)如果h始终都等于当前点N到终点G的路径距离,那么A*算法会严格走从起点S到终点G的最短路径,可以最快速度找到最短路径;
4)如果h在某些情况下大于当前点N到终点G的路径距离,那么不能保证A*算法找到最短路径;
步骤二,在典型的网格空间,选用曼哈顿距离作为启发函数h,当前点N到终点G的曼哈顿距离为:
h=manhattan(N,G)=|XN-XG|+|YN-YG|
其中,XN、YN为当前点N的坐标值,XG、YG为终点G的坐标值;
步骤三,当网格不定向时,采用曼哈顿距离作为启发函数h,该启发函数能够非常精确的估算当前点N到终点G的路径距离,A*算法可快速求解最短路径;
步骤四,当部分网格定向时,曼哈顿距离与实际路径距离相差较大,若仍采用曼哈顿距离作为启发函数h,A*算法仍可求解从起点S到终点N的最短路径,但A*算法的效率将降低;当在给定的控制周期内无法规划出最短路径时,算法将无法应用;
步骤五,当部分网格定向时,对启发函数h进行修正,以使其可准确估算当前点N到终点G的路径距离;
当部分网格定向时,采用曼哈顿距离作为启发函数h,无法快速求解最短路径,需要对启发函数进行修改正,即采用新的启发函数hnew,由于部分网格定向,在一些条件下,从起点到终点的路线不能直达,必须经过折返才能到达,因此,在网格空间内选择一个中间点B,当前点N能够直达中间点B,中间点B可直达终点G,当找到最优点Bm,使从当前点N到最优中间点Bm,再到终点G的路径最小时,则通过N到Bm和Bm到G的曼哈顿距离之和,可精确估算出路径从当前点N到终点G的路径距离,Bm称为从当前点N到终点G的中间必经路径点,因此选择新的启发函数hnew为:
hnew=h=manhattan(N,B)+manhattan(B,G)=|XN-XB|+|YN-YB|+|XB-XG|+|YB-YG|。
所述的A*算法,包括以下步骤:
1)设置Open表,存储待考察点;设置Close表,存储已经考察过的点;
2)在网格空间内确定起点S,计算起点的f、g、h值;
3)将点S添加到Open表中。此时,S是Open表中唯一的点;
4)从Open表中寻找f值最小的点P,放到Close表;
A、若P是目标点G,则退出算法,此时已找到一条从起点S到目标点G的路径;
B、若Open表为空,则退出算法,此时没有找到路径;
5)在网格空间设定的路径规则下,由点P扩展生成邻接点Q;
a、计算Q点的f、g、h值;
b、检查Q点是否在Close表中,若在则忽略该点;
c、检查Q点是否在Open表中。若Q点不在Open表中,将其加入到Open表;若Q点已经在Open表中,比较新生成Q点的路径与Open表中Q点路径,若新路径优于原路径,则将新生成的Q点更新到Open表;
d、对点P生成的所有邻接点重复步骤5);
6)转入步骤4)。
本发明不改变A*算法的步骤,只是对常用的启发函数h进行修正,以使其在部分网格定向条件下仍能快速搜索找到最优路径。
本发明的有益效果是:
在网格空间内,采用A*算法进行路径规划。在部分网格定向条件下,选用曼哈顿距离作为启发函数,路径规划效率急剧降低。对启发函数进行改进,实现部分网格定向条件下的快速路径规划。
本发明采用A*算法进行路径规划,启发函数的通常选择曼哈顿距离。当部分网格路径定向时,从当前点无法“直达”终点,曼哈顿距离不能实现路径代价精确估计。对启发函数进行改进,引入中间路径点,采用当前点先到达中间路径点,再由中间路径点到达终点的方式,估算网格空间内点间路径代价,实现路径代价精确估算。本发明采用改进的启发函数,A*算法可快速找到最优路径。
附图说明
图1为网格不定向,曼哈顿距离精确估算路径距离示意图。
图2部分网格定向,曼哈顿距离与实际路径距离相差较大示意图。
图3(a)为网格不定向,N可直达G的示意图。
图3(b)为部分网格定向,N不能直达G的示意图。
图4为部分网格定向条件下,N直达B,B直达G的示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步详细说明。
网格空间内部分网格定向条件下的路径规划方法,包括以下步骤:
步骤一,确定A*算法的估值函数
f=g+h
其中,g为起点S到当前点N的实际路径代价,h为当前点N到终点G的估计代价,f为从起点S到终点G的总估计代价;
h是A*算法的启发函数,它的性质决定了A*算法的效率,h对A*算法的主要影响如下:
1)如果h=0,f=g,A*算法退化为Dijkstra算法;
2)如果h始终小于等于当前点N到终点G的路径距离,那么必然能够保证A*算法能够找到最优解,而且h越小,A*算法扩展的节点也就越多,A*算法的效率越低;
3)如果h始终都等于当前点N到终点G的路径距离,那么A*算法会严格走从起点S到终点G的最短路径,能够以最快速度找到最短路径;
4)如果h在某些情况下大于当前点N到终点G的路径距离,那么不能保证A*算法能够找到最短路径;
步骤二,在典型的网格空间,选用曼哈顿距离作为启发函数h,当前点N到终点G的曼哈顿距离为:
h=manhattan(N,G)=|XN-XG|+|YN-YG|
其中,XN、YN为当前点N的坐标值,XG、YG为当前点G的坐标值,如图1;
步骤三,当网格不定向时,采用曼哈顿距离作为启发函数h,该启发函数能够非常精确的估算当前点N到终点G的路径距离,A*算法可快速求解最短路径;
步骤四,当部分网格定向时,曼哈顿距离与实际路径距离相差较大,如图2。若仍采用曼哈顿距离作为启发函数h,A*算法仍可求解从起点S到终点N的最短路径,但A*算法的效率将降低,在给定的控制周期内无法规划出最短路径,导致算法无法应用;
步骤五,当部分网格定向时,对启发函数h进行修正,以使其可准确估算当前点N到终点G的路径距离;
对启发函数h进行修正,由于部分网格定向,在一些条件下,从起点到终点的路线不能直达,必须经过“折返”才能到达。因此,在网格空间内选择一个中间点B,当前点N能够直达中间点B,中间点B能够直达终点G。当找到最优点Bm,使从当前点N到最优中间点Bm,再到终点G的路径最小时,则通过N到Bm和Bm到G的曼哈顿距离之和,可精确估算出路径从当前点N到终点G的路径距离。Bm是从当前点N到终点G的中间必经路径点。
因此选择新的启发函数hnew为:
hnew=h=manhattan(N,B)+manhattan(B,G)=|XN-XB|+|YN-YB|+|XB-XG|+|YB-YG|。
在图1中,网格不定向,从点N能够直达点G,是由于在点N到点G的网格范围内,沿向左和向下方向允许通行。在图2中,部分网格定向,在点N到点G的网格范围内,向下方向通行被禁止,从点N不能“直达”点G。图3(a)~(b)给出了网格定向与点间“直达”的关系。图3(a)中网格不定向,N可直达G,图3(b)中部分网格定向,N不能直达G。
中间必经路径点Bm的求法:在包含点N和点G的尽量小的网格范围内,寻找中间点B,使N可直达B,且B可直达G。通过中间点B,实现点N到点G的直达(N直达B,B直达G)。
参见图4,图4部分网格定向条件下,N直达B,B直达G。
选择hnew作为启发函数,在部分网格定下,hnew仍能精确估算点间路径距离。A*算法能够快速找到最优路径。
Claims (2)
1.网格空间内部分网格定向条件下的路径规划方法,其特征在于,包括以下步骤:
步骤一,确定A*算法的估值函数
f=g+h
其中,g为起点S到当前点N的实际路径代价,h为当前点N到终点G的估计代价,f为从起点S到终点G的总估计代价;
h是A*算法的启发函数,它的性质决定了A*算法的效率,h对A*算法的主要影响如下:
1)如果h=0,f=g,A*算法退化为Dijkstra算法;
2)如果h始终小于等于当前点N到终点G的路径距离,A*算法可找到最优解,而且h越小,A*算法扩展的节点也就越多,A*算法的效率越低;
3)如果h始终都等于当前点N到终点G的路径距离,那么A*算法会严格走从起点S到终点G的最短路径,可以最快速度找到最短路径;
4)如果h在某些情况下大于当前点N到终点G的路径距离,那么不能保证A*算法找到最短路径;
步骤二,在典型的网格空间,选用曼哈顿距离作为启发函数h,当前点N到终点G的曼哈顿距离为:
h=manhattan(N,G)=|XN-XG|+|YN-YG|
其中,XN、YN为当前点N的坐标值,XG、YG为终点G的坐标值;
步骤三,当网格不定向时,采用曼哈顿距离作为启发函数h,该启发函数能够非常精确的估算当前点N到终点G的路径距离,A*算法可快速求解最短路径;
步骤四,当部分网格定向时,曼哈顿距离与实际路径距离相差较大,若仍采用曼哈顿距离作为启发函数h,A*算法仍可求解从起点S到终点N的最短路径,但A*算法的效率将降低;当在给定的控制周期内无法规划出最短路径时,算法将无法应用;
步骤五,当部分网格定向时,对启发函数h进行修正,以使其可准确估算当前点N到终点G的路径距离;
当部分网格定向时,采用曼哈顿距离作为启发函数h,无法快速求解最短路径,需要对启发函数进行修改正,即采用新的启发函数hnew,由于部分网格定向,在一些条件下,从起点到终点的路线不能直达,必须经过折返才能到达,因此,在网格空间内选择一个中间点B,当前点N能够直达中间点B,中间点B可直达终点G,当找到最优点Bm,使从当前点N到最优中间点Bm,再到终点G的路径最小时,则通过N到Bm和Bm到G的曼哈顿距离之和,可精确估算出路径从当前点N到终点G的路径距离,Bm称为从当前点N到终点G的中间必经路径点,因此选择新的启发函数hnew为:
hnew=h=manhattan(N,B)+manhattan(B,G)=|XN-XB|+|YN-YB|+|XB-XG|+|YB-YG|。
2.根据权利要求1所述的网格空间内部分网格定向条件下的路径规划方法,其特征在于,所述的A*算法,包括以下步骤:
1)设置Open表,存储待考察点;设置Close表,存储已经考察过的点;
2)在网格空间内确定起点S,计算起点的f、g、h值;
3)将点S添加到Open表中。此时,S是Open表中唯一的点;
4)从Open表中寻找f值最小的点P,放到Close表;
A、若P是目标点G,则退出算法,此时已找到一条从起点S到目标点G的路径;
B、若Open表为空,则退出算法,此时没有找到路径;
5)在网格空间设定的路径规则下,由点P扩展生成邻接点Q;
a、计算Q点的f、g、h值;
b、检查Q点是否在Close表中,若在则忽略该点;
c、检查Q点是否在Open表中。若Q点不在Open表中,将其加入到Open表;若Q点已经在Open表中,比较新生成Q点的路径与Open表中Q点路径,若新路径优于原路径,则将新生成的Q点更新到Open表;
d、对点P生成的所有邻接点重复步骤5);
6)转入步骤4)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110392554.0A CN113091751B (zh) | 2021-04-13 | 2021-04-13 | 网格空间内部分网格定向条件下的路径规划方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110392554.0A CN113091751B (zh) | 2021-04-13 | 2021-04-13 | 网格空间内部分网格定向条件下的路径规划方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113091751A true CN113091751A (zh) | 2021-07-09 |
CN113091751B CN113091751B (zh) | 2023-10-24 |
Family
ID=76676529
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110392554.0A Active CN113091751B (zh) | 2021-04-13 | 2021-04-13 | 网格空间内部分网格定向条件下的路径规划方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113091751B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114579063A (zh) * | 2022-05-07 | 2022-06-03 | 浙江口碑网络技术有限公司 | Od数据的存储及读取方法、装置、存储介质及计算机设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107228668A (zh) * | 2017-05-17 | 2017-10-03 | 桂林电子科技大学 | 一种基于规则网格dem数据的路径规划新方法 |
WO2017173990A1 (zh) * | 2016-04-07 | 2017-10-12 | 北京进化者机器人科技有限公司 | 一种机器人避障中的最短路径规划方法 |
CN109764886A (zh) * | 2019-01-15 | 2019-05-17 | 成都信息工程大学 | 一种路径规划方法 |
CN110487295A (zh) * | 2019-09-06 | 2019-11-22 | 中国计量大学 | 一种时间优化的平滑a*算法 |
CN111928867A (zh) * | 2020-08-20 | 2020-11-13 | 上海西井信息科技有限公司 | 基于时间扩展的路径规划方法、系统、设备及存储介质 |
-
2021
- 2021-04-13 CN CN202110392554.0A patent/CN113091751B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017173990A1 (zh) * | 2016-04-07 | 2017-10-12 | 北京进化者机器人科技有限公司 | 一种机器人避障中的最短路径规划方法 |
CN107228668A (zh) * | 2017-05-17 | 2017-10-03 | 桂林电子科技大学 | 一种基于规则网格dem数据的路径规划新方法 |
CN109764886A (zh) * | 2019-01-15 | 2019-05-17 | 成都信息工程大学 | 一种路径规划方法 |
CN110487295A (zh) * | 2019-09-06 | 2019-11-22 | 中国计量大学 | 一种时间优化的平滑a*算法 |
CN111928867A (zh) * | 2020-08-20 | 2020-11-13 | 上海西井信息科技有限公司 | 基于时间扩展的路径规划方法、系统、设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
卫珊;王凌;王斌锐;任海军;杨永帅;刘绪乐;丁沣城;: "A~*算法的改进及其在AGV路径规划中的应用", 自动化仪表, no. 11 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114579063A (zh) * | 2022-05-07 | 2022-06-03 | 浙江口碑网络技术有限公司 | Od数据的存储及读取方法、装置、存储介质及计算机设备 |
CN114579063B (zh) * | 2022-05-07 | 2022-09-02 | 浙江口碑网络技术有限公司 | Od数据的存储及读取方法、装置、存储介质及计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113091751B (zh) | 2023-10-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109405839B (zh) | 一种基于多路径的交通网络离线地图匹配算法 | |
CN106525047B (zh) | 一种基于floyd算法的无人机路径规划方法 | |
JP6919949B2 (ja) | 多制約条件下でスマート航空機の航跡を急速に計画する方法 | |
CN104914862B (zh) | 基于目标方向约束的路径规划算法 | |
CN102916879B (zh) | 一种快速路由收敛方法 | |
KR101680481B1 (ko) | 실내 네트워크 맵 매칭 방법 및 실내 네트워크 맵 매칭 시스템 | |
CN110726408A (zh) | 一种基于改进蚁群算法的移动机器人路径规划方法 | |
CN113091751A (zh) | 网格空间内部分网格定向条件下的路径规划方法 | |
Sharma et al. | Comparative analysis of Manhattan and Euclidean distance metrics using A* algorithm | |
CN113449910B (zh) | 一种基于顺序存储二叉树的航线自动生成方法 | |
CN114705196B (zh) | 一种用于机器人的自适应启发式全局路径规划方法与系统 | |
Kulathumani et al. | On the repair time scaling wall for MANETs | |
CN105678844B (zh) | 一种基于地物散乱点逐点增加的轮廓构建方法 | |
CN110705803A (zh) | 基于三角形内心引导rrt算法的路径规划方法 | |
CN111031502A (zh) | 一种基于樽海鞘群算法的无线传感器网络节点定位方法 | |
CN103152825A (zh) | 一种适用于无线传感器网络的分布式非测距定位方法 | |
Chen et al. | An improved algorithm for searching maze based on depth-first search | |
CN109900271B (zh) | 地形匹配定位中有效伪波峰估计与多点融合初始定位方法 | |
CN109799817B (zh) | 一种基于光反射特性的无人船全局路径规划方法 | |
CN107449426A (zh) | 路径搜索算法和导航逻辑方法及其室内ar导航系统 | |
Kao et al. | 3-D localized position-based routing with nearly certain delivery in mobile ad hoc networks | |
JP2006195530A (ja) | 組合せ最適解演算システム | |
JP2009020749A (ja) | ロボット制御装置及び方法 | |
CN110057361A (zh) | 一种基于gps的最短路径规划方法 | |
Jia et al. | An improved JPS algorithm in symmetric graph |
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 |