夜光 : 多 AGV 小车的路径规划技术的研究 (六)

    xiaoxiao2022-07-02  98

    夜光序言:

     

     

     

     

    现代社会的天才越来越少,就是因为让人分心的东西越来越多,专注力不够,毅力和坚持太难。

     

     

     

     

    正文:

     

    基于分区和融合算法的单 AGV 路径规划 

    对于全局路径搜索,A星算法是一种经典的启发式搜索算法,是求解短路 径较为有效的路径搜索方法,但是易于与货架发生碰撞,不符合AGV的运输要 求。

    但是一般扩大货架边界的方法不适用于狭窄通道的高精度行驶的实际场合, 而对于智能算法,蚁群算法可根据不同的实际需求进行优化,易于与其他算法结 合解决实际问题,但是搜索时间较长。

     


    提出一种基于A星算法和蚁群算法的融合算法,先采用A星算法,快速找到一条全局短路径,并将该路径经过不同分区边界线的 栅格加入分区起止点。在可行区,直接在分区起止点之间采用直线短路径。在货架区,针对AGV与货架碰撞问题,设计了蚁群算法的距离矩阵,避免了货架碰撞,实现单AGV的路径规划。

    后实验结果验证了该方法的可行性和稳定性。

     


    A 星算法的应用分析

     

    A 星算法的路径规划过程可描述如下:通过循环遍历开启列表中的栅格,选择评价函数值小的栅格放入关闭列表,直至遍历到目标点存入开启列表中,根 据关闭列表输出路径。

    评价函数的值是起始点到当前点的实际代价和当前点到目标点的估计代价的代数和,具体公式如所示。

               f( n ) 为开启列表中栅格 n 的评价函数值,g( n ) 表示 AGV 从当前栅格 n移动到下一个栅格的实际代价,h( n )表示 AGV 从当前栅格n移动到目标点的 估计代价。在 AGV 的实际运作中,一般的代价指 AGV 移动的燃料、电力等物理消耗。

    从公式可以看出,待选栅格距离目标点越近则h( n ) 的值就越小,f( n ) 的 值也就越小,体现了利用启发式信息进行搜索,能保证在搜索路径的过程中始终 朝向目标点的方向进行。

     

    A 星算法路径规划流程图

     

    开启列表和关闭列表的动态变化展示了 A 星算法的实现过程,开启列表中 存放当前栅格和相邻栅格,也就是 AGV 下一步该选择的栅格范围,先将起始栅格加入开启列表,此时评价函数的值等于估计代价,f( n) =h( n) 。

    判断当前栅格是否是目标点。若不是目标点则比较其相邻栅格的评价函数值,如果评价值 小的栅格是其相邻栅格,则将当前栅格加入关闭列表,相邻栅格接入开启列表, 继续选择直到搜索的目标点位置。 一般通过选取父栅格的g(n ) 值来计算当前栅格移动到相邻栅格的g( n ) 值。

     

    可以利用不同的方法对h(n ) 的值进行估算,所示

    本文中h( n )是从当前栅格到目标点之间水平、垂直栅格数量总和。   

    其中 i P、 j P 为当前栅格 P(i , j )的行列坐标, iE 、 j E 为目标栅格E ( i, j) 的 行列坐标。

    模拟 A 星算法的路径规划过程,如图 所示,其中起始点为 A,目标点为 B,黑色为货架。假设 AGV 朝垂直方向移动的g( n) 为 10,朝水平方向移动的g( n ) 为 10,朝对角线方向移动的g(n ) 为 14,图中栅格的左下角为g( n ) 的计算结果。

    从起始点 A 开始检查其相邻栅格的f( n) ,图中栅格的左上角为f(n ) 的计算结果, 然后持续向相邻方向的栅格扩展,选择f(n ) 值小的栅格,直到搜索目标点 B 为止。图中用蓝色点标识后得到的 A 到 B 的路径,栅格右下角为h(n ) 的值, 可以看出选择的栅格h(n ) 数值都为小的。 

     


    为了分析 A 星算法在路径规划的应用效果,采用 A 星算法在 35*35 的地图 上找出一条短路径,如图所示,黑色栅格代表货架,红色线段为 A 星算法 找到的一条优路径。起始点和目标点分别为(2,34)和(35,6),路径长度 49.426m, 搜索栅格数 608 点,耗费时间 485ms,货架接触次数 5 次。 

    可以看出,A 星算法具有较高的路径搜索效率,其特点是简单,降低了问题 的复杂性。但是在存在货架的实际环境中,使用 A 星算法规划出的路径会与货 架顶点相交,不符合 AGV 实际工作中无碰撞行驶的需求。 

    最新回复(0)