掌桥专利:专业的专利平台
掌桥专利
首页

改善搜索自由度的A-star算法机器人路径规划方法及系统

文献发布时间:2024-04-18 19:58:53


改善搜索自由度的A-star算法机器人路径规划方法及系统

技术领域

本发明涉及机器人路径规划技术领域,具体涉及改善搜索自由度的A-star算法机器人路径规划方法及系统。

背景技术

移动机器人在国家的工业化和信息化进程中具有重要作用。在农业生产、工业制造、海洋开发、交通运输、航天和国防等领域已经得到广泛应用。近年来,自动驾驶汽车技术也正在逐步实现,这推动了移动机器人技术的发展。然而,使机器人在复杂环境下自主完成任务仍是研究的重点和难点之一,因为规划一个有效可行的路径和无碰撞地从起点移动到终点才能完成导航。为了考虑移动机器人完成任务所需的时间和电源电量,路径规划获得的路径需要综合考虑路径长度和速度等因素。传统的A-star算法由于搜索策略带有许多路径拐点和大转弯角度的缺点,产生的可行路径不是理论上的最佳路径。

发明内容

本发明为解决的技术问题是:本发明为了解决现有的机器人路径规划没有考虑移动机器人完成任务所需的时间和电源电量,也没有综合考虑路径长度和速度等因素,采用传统的A-star算法由于搜索策略带有许多路径拐点和大转弯角度的缺点导致产生的可行路径不是理论上的最佳路径等问题,进而提供了一种改善搜索自由度的A-star算法机器人路径规划方法及系统。

本发明为解决上述技术问题所采用的技术方案为:

一种改善搜索自由度的A-star算法机器人路径规划方法,所述方法的实现过程为:

步骤一:机器人获取当前地图周围的环境信息,环境信息包括自身位置、机器人在环境中的位置、起点、终点、障碍物信息;环境信息中起点为A(x

步骤二:由解析几何根据起点和终点坐标求出直线段

(y-y

步骤三:检测连接起点和终点的直线段

步骤四:先求出障碍物与直线段

(x-x

步骤五:求出穿过障碍物的边缘点(点E

如果d

步骤六:判断直线AB与障碍物交点个数;如果交点个数等于1则执行步骤七;如果交点个数大于1执行步骤八;

步骤七:判断直线AB与障碍物交点个数,若是交点个数等于1,以点

起点A(x

步骤八:如果交点个数大于1,以点E

步骤九:再重复执行步骤五,得到边缘点E

如果交点个数等于1,则以点

进一步地,定义起点A和终点为B之间至少有两个长条形障碍物。

进一步地,所述A-star算法是改进启发式A-star算法,利用改进启发式A-star算法通过增加当前点n向周围搜索的方位个数来改善机器人的搜索自由度,从而使规划的路径更加平滑。

进一步地,所述改进启发式A-star算法具体为:

以机器人当前位置(当前点)为基准,利用代价函数对周围的点进行评分,并选评分最小的点作为下一个点,下一个点是机器人下一时刻要到达的位置;

A-star算法的代价函数定义为:

f(n)=h(n)+g(n) (4)

其中n是当前的考察点;f(n)是估价函数的总和;g(n)是从起始点到当前的考察点的实际路径代价值;h(n)是当前的考察点到目标点的估计代价值;h(n)的计算方法采用的是考察点与目标点之间的欧几里得距离:

其中(x

增加当前点n向周围搜索的方位个数,设定参数Connecting_distance定义为1、2、3和4时,则分别产生8、16、32和48个方向,即当连接距离Connecting_distance=1、2、3和4时,A-star算法将在8、16、32和48个方向上扩展。

应用于移动机器人改进启发式静态路径规划系统,其特征在于:该系统具有与上述技术方案的步骤对应的程序模块,运行时执行上述的一种改善搜索自由度的A-star算法机器人路径规划方法中的步骤。

一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序配置为由处理器调用时实现上所述的一种改善搜索自由度的A-star算法机器人路径规划方法的步骤。

本发明具有以下有益技术效果:

本发明提出的改善搜索自由度的A-star算法机器人路径规划方法,可实现通过设计不同的地图环境来评估其性能。同时,定义了评估指标与现有的算法进行仿真实验对比以评估基于启发式方法的路径规划算法的有效性和可行性。本发明的创新点之处:在传统的A-star算法引入了描述当前点向周围扩展的方向数,并通过连接起点和终点得到一条直线段来寻找交接点。在与障碍物相交时,会得到一个交点,然后将该点设为圆心以R为半径绘制一个圆,求出障碍物边界点。接下来,将第一个交界点作为局部起点,最后一个障碍物边界点作为局部终点,带入改进的A-star算法中,可以得到局部路径1,由直线连接的为其他局部路径。最后,将这些局部路径组合成全局路径。

附图说明

图1为本发明所述方法的流程框图;

图2为本发明实现过程的具体步骤详细示意图;

图3为使用不同的Connecting_distance参数方位扩展图,图中:(a)为参数Connecting_distance=1时方位扩展图,(b)为参数Connecting_distance=2时方位扩展图,(c)为参数Connecting_distance=3时方位扩展图,(d)为参数Connecting_distance=4时方位扩展图;

图4为不经过障碍物对应传统A-star与改进算法对比图;

图5为使用不同的Connecting_distance参数传统A-star算法与改进算法结果图,图中:(a)为参数Connecting_distance=1时结果对比图,(b)为参数Connecting_distance=2时结果对比图,(c)为参数Connecting_distance=3时结果对比图,(d)为参数Connecting_distance=4时结果对比图;

图6为使用不同的Connecting_distance参数传统A-star算法与改进算法结果图,图中:(a)为参数Connecting_distance=1时结果对比图,(b)为参数Connecting_distance=2时结果对比图,(c)为参数Connecting_distance=3时结果对比图,(d)为参数Connecting_distance=4时结果对比图。

具体实施方式

结合附图1至6,针对本发明所述的改善搜索自由度的A-star算法机器人路径规划方法的实现过程描述如下:

步骤一:机器人获取当前地图周围的环境信息。如自身位置、机器人在环境中的位置、起点、终点、障碍物信息等。图一环境信息中起点为A(x

步骤二:由解析几何根据起点和终点坐标求出直线段

(y-y

步骤三:检测连接起点和终点的直线段

步骤四:先求出障碍物与直线段

(x-x

根据直线与圆的方程,计算圆与直线段

步骤五:求出穿过障碍物的边缘点(点E

如果d

步骤六:判断直线与障碍物交点个数,若是交点个数等于1,以点

A-star算法是一种典型的启发式算法,在给定全局(静态)地图和起始点、终点的前提下,A-star算法能够生成一条较为合理的路径。它的核心原理:以当前点为基准,利用代价函数对周围的点进行评分,并选评分最小的点作为下一个点。

A-star算法的代价函数定义为:

f(n)=h(n)+g(n) (4)

其中n是当前的考察点;f(n)是估价函数的总和;g(n)是从起始点到当前的考察点的实际路径代价值;h(n)是当前的考察点到目标点的估计代价值。h(n)的计算方法采用的是考察点与目标点之间的欧几里得距离:

其中(x

在标准A-star算法中,仅搜索了8个周围的点,可能导致次优路径。为了使得机器人路径更加平滑,所以在此基础上增加了当前点向周围方向数,本发明将参数Connecting_distance定义为1、2、3和4时,则分别产生8、16、32和48个可能的方向。换句话说,当连接距离Connecting_distance=1、2、3和4时,算法将在8、16、32和48个方向上扩展。效果图如图3所示,方向数与参数Connecting_distance之间的映射关系如表1所示。

表1 Connecting_distance与扩展的方位个数的关系

起点A(x

步骤七:如果交点个数大于1,以点E

步骤八:重复步骤6~7,得到点E

针对本发明的仿真分析如下:

移动机器人地图环境建立:长度为140且宽度为120的栅格地图,当栅格地图中的位置相对应的索引值为1时,它是一个障碍物,而当与栅格地图中的位置相对应的索引值时为0,表示此处是没有障碍物。

评估平台的配置如下:CPU:Intel(R)Core(TM)i5-7200U CPU@2.50GHz 2.70GHz,8G RAM,Windows 10 64bit,评估环境:Matlab R2016a。

当起点终点之间不经过障碍物时,对应仿真结果如图4所示,具体数据如表2所示。

表2不经过障碍物对比数据

对于两个障碍物仿真结果,设置起点(20,10),终点(70,110)。对应不同方向图改进算法与传统算法对比结果如图5所示,具体数据如表3所示。

表3使用不同的Connecting_distance参数传统A-star算法与改进算法结果数据

对于多个障碍物仿真结果,设置起点(10,10),终点(70,110)。对应不同方向图改进算法与传统算法对比结果如图6所示,具体数据如表4所示。

表4使用不同的Connecting_distance参数传统A-star算法与改进算法结果数据

根据上诉结果可以推断出改进的A-star算法在计算该问题时比传统的A-star算法表现更优秀,可以获得更短的路径长度。同时,通过对比每一个连接距离下的表现,我们可以发现改进的A-star算法在所有连接距离下都比传统A-star算法表现更好,这进一步证明了改进算法具有更好的性能。

以上研究对传统A-star算法和改进算法在移动机器人不同静态环境中的表现进行了详细比较,并得出了如下结论:传统A-star算法存在转折角过大、路径不平滑、路径并非最优等缺陷;而改进算法相比传统算法更为优越,不仅规划出更优秀的路径,且随着方位的扩展,得到的路径更加平滑,同时缩短了路径长度,从而减少了机器人在运动过程中消耗的时间和电源能量。这也保证了机器人在执行任务时有足够的电能,提高了机器人的工作效率。因此,本发明验证了改进算法在移动机器人路径规划问题中的可行性、有效性和优越性,具有重要的实际意义。

相关技术
  • 基于粒子群、蚁群和A-Star算法结合的机器人路径规划方法
  • 基于改进A-Star算法的移动机器人路径规划方法
技术分类

06120116507585