【技术实现步骤摘要】
一种结合环境信息的改进A*算法
本专利技术涉及一种移动机器人路径规划领域,特别是关于一种结合环境信息的改进A*算法。
技术介绍
A*(A-Star)算法综合了BFS(广度优先搜索)和Dijkstra(深度优先搜索)算法的优点,是一种静态路网中求解最短路径最有效的直接搜索方法,也是解决许多搜索问题的有效算法。传统A*算法在路径规划时没有考虑到环境信息的影响,在追求最短路径的时候带来了一定问题。一是无障碍物区域和临近目标区域规划出的路径存在多次无意义的转向,二是路径规划会穿过障碍物节点的顶点,存在碰撞风险。
技术实现思路
针对上述问题,本专利技术的目的是提供一种结合环境信息的改进A*算法,其能提高搜索效率,避免路径通过障碍物顶点。为实现上述目的,本专利技术采取以下技术方案:一种结合环境信息的改进A*算法,其包括以下步骤:1)将地图进行自适应膨胀处理:1.1)获取机器人所处环境的栅格地图,对障碍点坐标进行初始标记;1.2)获得障碍点的坐标后,填充机器人传感器位置到障碍点之间的栅格以及该障碍点栅格的初始代 ...
【技术保护点】
1.一种结合环境信息的改进A*算法,其特征在于,包括以下步骤:/n1)将地图进行自适应膨胀处理:/n1.1)获取机器人所处环境的栅格地图,对障碍点坐标进行初始标记;/n1.2)获得障碍点的坐标后,填充机器人传感器位置到障碍点之间的栅格以及该障碍点栅格的初始代价值;/n1.3)对障碍点进行自适应膨胀处理,根据栅格代价值填充障碍点周围膨胀区栅格的代价值,完成对代价地图的膨胀处理;/n2)在经过自适应膨胀处理的地图上采用改进A*算法进行路径搜索。/n
【技术特征摘要】
1.一种结合环境信息的改进A*算法,其特征在于,包括以下步骤:
1)将地图进行自适应膨胀处理:
1.1)获取机器人所处环境的栅格地图,对障碍点坐标进行初始标记;
1.2)获得障碍点的坐标后,填充机器人传感器位置到障碍点之间的栅格以及该障碍点栅格的初始代价值;
1.3)对障碍点进行自适应膨胀处理,根据栅格代价值填充障碍点周围膨胀区栅格的代价值,完成对代价地图的膨胀处理;
2)在经过自适应膨胀处理的地图上采用改进A*算法进行路径搜索。
2.如权利要求1所述结合环境信息的改进A*算法,其特征在于:所述步骤3)中,自适应膨胀处理包括以下步骤:
3.1)由初始障碍点构造膨胀点优先队列inflation_cells;
3.2)将队列inflation_cells的第一个节点作为当前处理节点,计算当前处理节点的父节点的衰减系数coef;
3.3)若当前处理节点为障碍点,则以其为中心在栅格地图上构建七宫图;反之,若当前处理节点不是障碍点,则继承其当前处理障碍点On的衰减因子sp,并根据计算其衰减系数coef和衰减因子sp的乘积coef·sp,进入步骤3.4);
3.4)判断d(qn)<coef·sp·rc是否成立,若成立,则将当前处理障碍点On的上下左右四个子节点加入队列inflation_cells,否则不做处理;
3.5)由自适应膨胀半径栅格代价值计算函数f(qn)计算出当前处理节点的代价值,与该处理节点的原始代价值比较,取最大值作为当前处理节点的代价值;
3.6)从队列inflation_cells中移除当前处理节点即障碍点,返回步骤3.2)对下一个节点进行处理。
3.如权利要求2所述结合环境信息的改进A*算法,其特征在于,所述步骤3.2)中,衰减系数coef计算方法为:
3.2.1)判断该当前处理节点是否为障碍点,若是,则将该当前处理节点自身作为父节点,此时的父节点即为当前处理障碍点on;若不是障碍点,则记离该当前处理节点最近的障碍点作为父节点;
3.2.2)确定当前节点与其父节点On之间的距离d(qn),以及父节点On与机器人的距离计算当前处理节点的父节点On的衰减系数coef。
4.如权利要求3所述结合环境信息的改进A*算法,其特征在于,当前处理障碍点On的衰减系数coef为:
式中,ri表示机器人地面投影轮廓的内切圆半径;rc表示外接圆半径;qn为栅格;Dmax为距机器人最远障碍点的距离;n表示障碍点的个数;e为自然对数函数的底数;为当前处理障碍点On与机器人之间的栅格距离。
5.如权利要求2所述结合环境信息的改进A*算法,其特征在于,所述步骤3.3)中,衰减因子sp的计算方法为:依次得到七宫图中的其余48个栅格代价值,累计得出值为FREE_SPACE的栅...
【专利技术属性】
技术研发人员:谷玉海,龚志力,王少红,左云波,徐小力,
申请(专利权)人:北京信息科技大学,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。