当前位置: 首页 > 专利查询>浙江大学专利>正文

改进A*算法的室内移动机器人路径规划和路径优化方法技术

技术编号:30333448 阅读:22 留言:0更新日期:2021-10-10 00:56
本发明专利技术公开了改进A*算法的室内移动机器人路径规划和路径优化方法,包括:S1,获取室内场景的全局静态栅格地图,栅格地图的每个节点代表当前位置是障碍物或可通行区域,并确认起始点和目标点;S2,对栅格地图预处理,分别计算每个可通行节点的最近的跳点距离;S3,基于跳点搜索的改进A*全局路径规划算法进行寻路,根据当前寻路方向以及获得的跳点距离,获得对应方向上的搜索节点,从而获得规划路径,S4,基于贝塞尔曲线优化路径。采用本发明专利技术的一种改进A*算法的室内移动机器人路径规划和路径优化方法,使得规划的路径满足机器人的转弯要求,降低计算冗余和内存负载,并可获得更加符合实际移动的全局轨迹。移动的全局轨迹。移动的全局轨迹。

【技术实现步骤摘要】
改进A*算法的室内移动机器人路径规划和路径优化方法


[0001]本专利技术涉及移动机器人导航和路径规划领域,具体涉及一种改进A*算法的室内移动机器人路径规划和路径优化方法

技术介绍

[0002]路径规划是移动机器人控制研究的核心问题之一,通常是指移动机器人参考某个参数指标(如选择的路径最短、运行时间最短等),通过路径规划算法计算出一条从起点到终点的可行路径,使移动机器人能沿着该路径移动到目标位置。当前常用的路径规划算法包括传统路径规划算法和智能仿生算法:传统的路径规划算法有Dijkstra算法,Floyd算法,A*算法等,智能仿生算法包括遗传算法、蚁群算法、人工智能算法等。
[0003]在搜索速度上Dijkstra算法和蚁群算法比较慢,而遗传算法和蚁群算法都可能陷入局部收敛而不能保证全局最优,A*算法综合性最好,在机器人全局路径规划中应用比较广泛。但是A*算法对节点的全部相邻节点都要进行搜索,造成大量不必要的节点被搜索,导致计算量和内存消耗的增大,在室内要求快速响应的场景下实时性不能得到保证。
[0004]针对A*算法的计算冗余量大的缺点,Daniel Harabor等人提出了跳点搜索(JPS)算法,在路径搜索的时候,根据当前移动方向只对必要的方向进行搜索,降低计算冗余,提高计算效率。跳点搜索算法的计算瓶颈在于跳点的判断上,在大型地图中跳点的判断将花费较大时间,影响寻路速度。
[0005]对于室内静态场景,全局路径规划获得的原始路径是折线型,转弯角度过于机械,而室内移动机器人往往有自身的转弯半径和曲率,机械的折线路径不适合移动机器人的移动,将造成全局规划的路径在实际场景中无效的问题。

技术实现思路

[0006]针对上述现有的路径规划方法中计算效率低而内存要求高,且规划的路径难以满足实际的室内移动机器人运动学和动力学模型的问题,本专利技术为了克服以上技术的不足,提供了改进A*算法的室内移动机器人路径规划和路径优化方法,计算获取栅格地图时参考机器人的转弯半径和曲率进行栅格划分,使得规划的路径满足机器人的转弯要求;对栅格地图预处理,计算直线和对角线方向上的跳点距离,降低计算冗余和内存负载;基于贝塞尔曲线优化路径,获得更加符合实际移动的全局轨迹。
[0007]本专利技术克服其技术问题所采用的技术方案是:本专利技术提出的改进A*算法的室内移动机器人路径规划和路径优化方法,具体包括,S1,获取室内场景的全局静态栅格地图,栅格地图的每个节点代表当前位置是障碍物或可通行区域,并确认起始点和目标点;S2,对栅格地图预处理,分别计算每个可通行节点的最近的跳点距离;S3,基于跳点搜索的改进A*全局路径规划算法进行寻路,根据当前寻路方向以及获得的跳点距离,获得对应方向上的搜索节点,从而获得规划路径。
[0008]进一步的,步骤S1具体包括:基于机器人转弯半径划分栅格粒度,形成R*C的栅格
地图,其中R为栅格地图的栅格行数,C为栅格地图的栅格列数;基于栅格是空闲的概率,从而确定栅格地图的每个节点代表当前的位置是障碍物或可通行区域;将起始点和目标点坐标转换为栅格地图上的坐标。
[0009]其中,空闲的概率指的是三维点云地图映射到二维栅格地图上时,根据划分栅格的尺度计算每个栅格上不存在障碍物的概率,得到该栅格是空闲的概率。
[0010]进一步的,所述步骤S2中对栅格地图预处理至少包括跳点判断和跳点距离回溯,所述跳点判断具体包括:判断每个可通行点的直线运动的4个方向上是否为跳点。
[0011]跳点指的是存在强迫邻居的可通行节点,是路径过程中真正需要计算代价的节点。
[0012]进一步的,所述跳点距离回溯具体包括:基于判断得到的跳点,计算节点上直线和对角线共8个方向上的最近的跳点距离,其中,直线方向上根据判断好的跳点位置计算得到其最近的跳点的距离;对角线方向上根据节点的水平和垂直方向上跳点距离判断是否是跳点,并计算出对角线方向上跳点距离。
[0013]进一步的,所述跳点搜索的改进A*路径规划算法中,应用指数加权的代价函数进行代价值计算,其中,f(n)表示当前节点的总代价,g(n)表示当前节点的真实代价,h(n)表示当前节点的预估代价,h(n

1)表示当前节点父节点的预估代价。
[0014]加权思路为随着寻路的进行,真实代价应该占据越大的比例,预估代价应该占据更小的比例。
[0015]进一步的,还包括步骤S4,对规划路径进行优化,删除规划路径中共线的中间节点,只保留转折点,对分割后的路径进行贝塞尔曲线优化。
[0016]对规划路径进行优化可以获得转角更小更适合机器人移动的路径。
[0017]进一步的,步骤S3中,基于跳点搜索的改进A*全局路径规划算法进行寻路,具体包括,将起始点加入open_set,从open_set中取出代价值最小的节点;其中,open_set表示还需要探索的节点集合,closed_set表示已经确定了起始点到该点最优最短路径的节点的集合;若取得的节点为起始点,则从直线和对角线共8个方向分别获得最近的跳点;若不是起始点,则根据其父节点确定当前方向,获得当前方向将自然邻居和强迫邻居方向的跳点;若获得的跳点若在closed_set中,则不处理该跳点,若获得的跳点在open_set中,则更新其代价值,否则将该跳点加入open_set中;重复上述步骤直到找到目标点。
[0018]本专利技术的有益效果是:
[0019]1、对栅格地图参考机器人的转弯半径和曲率进行栅格划分,使得规划的路径满足机器人的转弯要求;
[0020]2、计算直线和对角线方向上的跳点距离,降低计算冗余和内存负载;
[0021]3、基于贝塞尔曲线优化路径,获得更加符合实际移动的全局轨迹。
附图说明
[0022]图1为本专利技术实施例的路径规划和路径优化方法流程示意图;
[0023]图2为本专利技术实施例的栅格地图移动示意图;
[0024]图3为本专利技术实施例的栅格地图直线方向关键跳点判断示意图;
[0025]图4为本专利技术实施例的各方向跳点距离计算结果示意图;
[0026]图5为本专利技术实施例的路径规划示意图;
[0027]图6为本专利技术实施例的路径规划流程图;
[0028]图7为本专利技术实施例的贝塞尔曲线优化示意图;
[0029]图8为本专利技术实施例的路径规划和优化效果对比图。
具体实施方式
[0030]为了便于本领域人员更好的理解本专利技术,下面结合附图和具体实施例对本专利技术做进一步详细说明,下述仅是示例性的不限定本专利技术的保护范围。
[0031]如图1所示,本实施例所述的改进A*算法的室内移动机器人路径规划和路径优化方法的流程示意图,具体包括,S1,获取室内场景的全局静态栅格地图,栅格地图的每个节点代表当前位置是障碍物或可通行区域,并确认起始点和目标点;S2,对栅格地图预处理,分别计算每个可通行节点的最近的跳点距离;S3,基于跳点搜索的改进A*全局路径规划算法进行寻路,根本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.改进A*算法室内移动机器人路径规划和路径优化方法,其特征在于,具体包括:S1,获取室内场景的全局静态栅格地图,栅格地图的每个节点代表当前位置是障碍物或可通行区域,并确认起始点和目标点;S2,对栅格地图预处理,分别计算每个可通行节点的最近的跳点距离;S3,基于跳点搜索的改进A*全局路径规划算法进行寻路,根据当前寻路方向以及获得的跳点距离,获得对应方向上的搜索节点,从而获得规划路径。2.根据权利要求1所述的改进A*算法室内移动机器人路径规划和路径优化方法,其特征在于,步骤S1具体包括:基于机器人转弯半径划分栅格粒度,形成R*C的栅格地图,其中R为栅格地图的栅格行数,C为栅格地图的栅格列数;基于栅格是空闲的概率,从而确定栅格地图的每个节点代表当前的位置是障碍物或可通行区域;将起始点和目标点坐标转换为栅格地图上的坐标。3.根据权利要求1所述的改进A*算法的室内移动机器人路径规划和路径优化方法,其特征在于,所述步骤S2中对栅格地图预处理至少包括跳点判断和跳点距离回溯,所述跳点判断具体包括:判断每个可通行点的直线运动的4个方向上是否为跳点。4.根据权利要求3所述的改进A*算法室内移动机器人路径规划和路径优化方法,其特征在于,所述跳点距离回溯具体包括:基于判断得到的跳点,计算节点上直线和对角线共8个方向上的最近的跳点距离,其中,直线方向上根据判断好的跳点位置计算得到其最近的跳点的距离;对角线方向上根据节点的水平和垂直方向上跳点距离判断是否是跳点,并计算出对角线方向上跳点距离。5.根据权利要求1所述的改进A*算法的室内移动机器人路径规划和路径优化方法,其特征在于,所述步骤S3中,所述...

【专利技术属性】
技术研发人员:杨国青李红喻伟强吕攀吴朝晖
申请(专利权)人:浙江大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1