一种基于空间约束A星算法的移动机器人路径规划方法

文档序号:30291283发布日期:2022-06-04 15:29阅读:185来源:国知局
一种基于空间约束A星算法的移动机器人路径规划方法
一种基于空间约束a星算法的移动机器人路径规划方法
技术领域
1.本发明属于移动机器人路径规划技术领域,涉及一种基于空间约束a星算法的移动机器人路径规划方法。


背景技术:

2.路径规划是智能技术中的热点研究问题,已在多领域有所突破并成功得以应用。从传统算法到后来结合仿生学发展起来的算法,智能算法已经取得了巨大的进展。不同的智能算法特点不同,适用范围和领域也就不同,因而从算法本身特点及其应用来研究路径规划智能算法,对路径规划技术的发展具有重要意义。
3.a星算法是一种经典启发式收索算法,适用于环境已知的全局路径规划,具有最优性、完备性和高效性。但由于a星算法本身特性,所规划的路径完全依赖于栅格地图分辨率,即是a星算法规划出的路径宽度与地图分辨率一致,因此考虑到机器人实际载体尺寸大于地图分辨率时,由于a星算法自身的局限性使得规划的路径存在不符实际机器通过的情况。


技术实现要素:

4.本发明的目的在于提供一种在a星算法中引入机器人实体覆盖栅格矩阵s约束和安全制动距离l约束,精准的规划出符合机器人宽度、且安全路径的方法。
5.为实现上述目的而采用的技术方案:一种基于空间约束a星算法的移动机器人路径规划方法,其特征在于,包括以下步骤:
6.步骤1:根据实际工作场景面积和所需地图分辨率构建栅格地图map,将场景障碍物在map中所占的栅格标记为不可通行栅格;
7.步骤2:结合步骤1建立的栅格地图map,确定机器人的实体覆盖栅格矩阵s和安全制动距离l;
8.步骤3:在a星算法中,增加机器人实体覆盖栅格矩阵s和安全制动距离l两个约束进行路径择优规划,得到机器人从起点格栅到目标格栅的安全有效的路径。
9.本发明由于所述技术方案而产生的有益效果:
10.(1)本发明采用a星算法,并在此基础上引入机器人实体覆盖面积和安全制动距离的约束,不断更新机器人的中心位置,可以直接搜寻最佳路线,在有障碍物的情况下也可以完成最佳路线搜寻。
11.(2)可以对实际问题进行扩展,在障碍物位置发生变化时也可以完成最佳路线搜寻,具有直观明了,适用性强的特点。
12.(3)所规划的路径满足一定宽度,且能够保证机器人顺利通过。
附图说明
13.图1为本发明的方法流程图;
14.图2是本发明实施例中的区域场景示意图;
15.图3-1~3-18是本发明栅格矩阵s映射得到的映射栅格矩阵s'的实施例的示意图。
具体实施方式
16.参见图1:一种基于空间约束a星算法的移动机器人路径规划方法,包括以下步骤:
17.步骤1:根据实际工作场景面积和所需地图分辨率构建栅格地图map,将场景障碍物在map中所占的栅格标记为不可通行栅格;
18.步骤2:结合步骤1建立的栅格地图map,确定机器人的实体覆盖栅格矩阵s和安全制动距离l;
19.步骤3:在a星算法中,增加机器人实体覆盖栅格矩阵s和安全制动距离l两个约束进行路径择优规划,得到机器人从起点格栅到目标格栅的安全有效的路径。
20.所述步骤1中根据实际工作场景面积和所需地图分辨率构建栅格地图map,将场景障碍物在map中所占的栅格标记为不可通行栅格,具体为:
21.根据实际工作场景面积和所需地图分辨率m
×
n,利用栅格法构建栅格地图map,将工作环境划分为m
×
n的栅格矩阵,每个栅格的长和宽都为k(mm),并根据场景障碍物在栅格地图map中所占的栅格位置,标记出不可通行栅格,其余栅格则为可通行栅格。
22.所述步骤2结合步骤1建立的栅格地图map,确定机器人的实体覆盖栅格矩阵s和安全制动距离l,具体为:
23.机器人的实体覆盖栅格矩阵s为当前时刻机器人在栅格地图map中所占栅格的集合,安全制动距离l为栅格地图map中栅格的边长k。
24.步骤3所述的路径择优规划的方法为:
25.步骤3.1:在栅格地图map中,确定机器人路径规划的起点栅格和目标栅格,并将第j时刻机器人的实体覆盖栅格矩阵s的中心栅格用m
j-1
来表示,其中,j为整数(1~路径规划的栅格数),j-1表示该中心栅格的父节点个数,j-1=0时无父节点栅格;初始化时j=1,初始中心栅格m0与起点栅格重合,然后将所述初始中心栅格m0的完整信息集放入close list中完成路径规划的初始化,中心栅格的完整信息集包括:中心栅格m
j-1
的坐标、该栅格的父节点栅格m
(j-1)-1
坐标和路径代价f;用close list存放已经路径规划过的中心栅格的完整信息集,放入close list中的栅格将不再参与后续的路径规划计算;用open list存放计算路径规划中的可通行栅格的部分信息集,所述可通行栅格的部分信息集包括:栅格的坐标和路径代价f;
26.步骤3.2:判断所述栅格m
j-1
相邻的八领域栅格ni中的第i个栅格(i为1~8整数),是否为不可通行栅格,或者是否为close list中的栅格,若为不可通行栅格,则忽略该栅格ni;若为可通行栅格则进行下一步;
27.步骤3.3:根据可通行的栅格ni和安全制动距离l对栅格矩阵s进行映射处理,得到映射栅格矩阵s',然后判断栅格矩阵s'中是否存在不可通行栅格,若存在,则忽略栅格ni后返回步骤3.2;
28.步骤3.4:计算可通行栅格ni的路径代价f,判断该栅格ni是否在open list中,若不在则把该栅格ni当前的部分信息集放入open list中,若该栅格ni已经存在于open list中则将该栅格ni当前的部分信息集替换已有的部分信息集;
29.步骤3.5:判断栅格ni中i是否小于等于8,若是,则返回步骤3.2,八领域栅格都遍
历后,对open list中的所有栅格根据f值从小到大进行排序,取f值最小的栅格作为下一时刻机器人的实体覆盖栅格矩阵s的中心栅格mj,然后将栅格mj移出open list,再将当前时刻的中心栅格m
j-1
设为下一时刻栅格mj的父节点栅格;最后将栅格m
j-1
的完整信息集移入close list中;
30.步骤3.6:重复步骤3.2、步骤3.3、步骤3.4和步骤3.5,直至目标栅格加入了close list中,此时路径规划已经完成,从close list中所有栅格的完整信息集中的父节点栅格信息来逆向搜寻路径,逆向的连线构成优化路径,完成路径规划并保存路径,若目标栅格没有加入close list中,则路径规划计算继续进行。
31.进一步地,上述步骤3.4中根据栅格ni和安全制动距离l对栅格矩阵s进行映射处理,得到映射栅格矩阵s',具体策略为:
32.将机器人当前时刻机器人的实体覆盖栅格矩阵s的中心栅格m按照安全制动距离l移动至下一时刻栅格矩阵s的中心栅格mj时,栅格矩阵s在整个移动过程中所经过的栅格集合作为映射栅格矩阵s',具体对应的映射方法为:
[0033][0034]
其中,xs和ys是当前时刻机器人的实体覆盖栅格矩阵s中各栅格的坐标;n1、n2、n3、n4、n5、n6、n7和n8为栅格m
j-1
的八领域栅格,标号顺序从上往下,从左往右依次增大。
[0035]
进一步地,上述步骤3.1中计算栅格的路径代价f,具体为:
[0036]
将栅格地图中栅格之间的距离作为代价数值,采用a星算法计算从起点栅格到当前栅格的规划路径中的累计代价数值g,其中栅格上下左右移动一个安全制动距离l的代价数值是10,栅格左上、右上、左下和右下移动的代价数值是14;
[0037]
再计算当前栅格到目标状态的欧式距离作为代价数值h,将两者相加得到路径代价f:
[0038]
f=g+h。
[0039]
本发明的上述方法通过非限定性的实施例进一步说明。
[0040]
如图2所示,在实施例的区域场景示意图中,将搜索区域划分为20*20的方格区域,障碍物为随机分布的20个1
×
1的方格区域(m=n=20,k=1mm),起点的位置坐标定为(3,3),目标点的坐标定为(17,18),搜索起点所在网格相邻的网格点,可沿着附近8个领域移动。本实施列设定机器人载体占据3
×
3个栅格,且机器人定位点为载体几何中心。平移一个格子花费代价为10,斜移一格代价为14。因此,首先将初始路径规划起点放入close list中,然后由起点开始在8领域内进行移动,选定领域内其中一点后,并对机器人从定位点移动至该点的过程中所覆盖过的所有点的集合s'进行判断,当集合s'中的所有点都可以通行
时,将选择的点放入open list中进行f值排序,找出f值最小的作为下一时刻机器人的定位点,然后将此节点放入close list中,并再次对新的移动点进行判断。以此类推,将已遍历过的点放入close list中不予以考虑,通过多次重复迭代,直到找到目标点,此时可以得到最优规划路线。
[0041]
如图3-1至3-18所示,是由栅格矩阵s映射得到的映射栅格矩阵s'的示意图。其中,图3-1表示在地图低分辨率的情况下,机器人覆盖面积只占据了一个栅格,即栅格矩阵s的大小为1
×
1,安全制动距离l为该分辨率下的1,中心栅格m的八领域栅格也如图中所示;图3-2至图3-9表示机器人从中心栅格m按照安全制动距离l分别移动至第1~8个领域栅格时,将s移动过程中覆盖过的所有栅格表示为映射栅格矩阵s',图中所有深色栅格表示的就是s'。图3-10则表示的是在地图高分辨率的情况下,此时机器人覆盖面积占据了3
×
3个栅格,栅格矩阵s的大小为3
×
3,安全制动距离l为该分辨率下的1,中心栅格m的八领域栅格也如图中所示,图3-11至3-18则表示的是机器人在地图高分辨率的情况下,栅格矩阵s的映射示意图。
[0042]
从图2和图3-1至图3-18中不难看出,本发明与传统的a星算法规划路径的优点:本发明提供的一种基于空间约束a星算法的移动机器人路径规划方法,能够准确的规划出机器人由起点到目标点的路径,同时考虑了机器人实体尺寸,避免了规划出的实际路线出现过窄,机器不能达到的情况;同时结合机器人安全制动距离避免机器沿着规划路径行驶时出现碰撞情况,有效保证了机器行驶安全;此外该算法还能灵活多变的适应不同地图分辨率的要求,可以根据实际需求改变路径规划方案,能应对多种复杂环境下的路径规划问题。
[0043]
上述的实施方案是为了帮助读者理解本发明的原理,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。在本领域的普通技术人员所具备的知识范围内,还可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1