论文阅读—基于人工势场法和启发式采样的最优路径收敛方法

主要方法

[1]李伟,金世俊.基于人工势场法和启发式采样的最优路径收敛方法[J].计算机应用,2021,41(10):2912-2918.

本文方法

  • 利用人工势场法构建出一条由起点到目标点的初始路径
    • 采用单一距离平方正比关系的引力方程
    • 一旦路径点进入目标点范围,则直接结束算法
    • 用 RRT中路径重写的思想,在人工势场法生成路径的过程中优化路径
      人工势场法建立初始路径所需的采样点数以及最终的路径长度明显优于RRT建立的初始路径。
      限制 RRT
      算法在 imp内采样(需要估计集合),并通过父节点重选和路径重写,则能够保证路径趋向于最优路径。
  • 以起点和目标点的位置和之间的距离以及初始路径的路径代价作为参数来构建初始启发采样集合
    • 通过人工势场法获取环境中一条初始路径,并利用这条路径建立启发集合,通过启发集合内的均匀采样减少冗余采样点
    • 将人工势场法的节点和路径边作为RRT搜索树的节点和路径边,构成初始的 RRT 搜索树
  • 限定在启发集合内进行采样,并且在算法进行的过程中调整启发采样集合的范围,进而加快路径收敛速度。
  • 相较于RRT*算法,采样点数减少了约67%,算法运行时间平均缩短了约74. 5%;
  • 相较于启发式RRT(Informed-RRT*)算法,采样点数减少了约40~50%,算法运行时间平均缩短了约62. 5%。

RRT*算法详细步骤

  • 初始化随机树G,节点集合V,边集合E,起点加入V

  • 判断采样次数是否限制n,输出或继续

  • Sampling:在状态空间X均匀随机采样rand

  • Nearest:获取G中离rand最近的点nearest

  • Steer:nearest向rand扩展步长e,生成新节点new

  • Collision:判断nearest到new的路径是否碰撞,碰撞后循环迭代(采样+碰撞检测)

  • Neighbors:在V中找到new附近的节点集合Near

  • chooseParent:选择Near中离new最近的父节点parent

  • Update:将new加入V,将parent到new的路径加入E,更新G

  • 重新调整new领域里所有节点的最短路径
    在这里插入图片描述

  • 返回循环迭代(采样+碰撞检测),知道最大采样次数。
    在这里插入图片描述

估计启发式采样集合、并均匀采样

在这里插入图片描述

  • 拒绝式采样(Rejection Sampling):全环境内随机采样,判断点是否在椭圆形内
    启发集合内的概率取决于启发采样集合占据整个环境的比例,后期比例变小可能无法采集有效样本
  • 单位圆均匀采样Informed-Set-Sampling:坐标变换,转化为椭圆区域内随机点
    在这里插入图片描述

伪代码

在这里插入图片描述

对比实验仿真

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
人工势场法是一种基于势场理论的路径规划算法,通过定义势场和势能函数来规划机器人的路径人工势场法主要分为引力场和斥力场两部分。 引力场用于吸引机器人朝目标点前进,斥力场则避免机器人与障碍物发生碰撞。在ROS中,可以实现人工势场法结合A*算法进行路径规划。 首先,通过ROS提供的激光雷达或者摄像头等传感器获取环境信息,将障碍物的位置信息传入人工势场算法中。 其次,定义势场,引力场和斥力场可以用公式表示。引力场通过计算机器人与目标点之间的距离,产生一个吸引机器人朝目标点前进的力。斥力场则通过计算机器人与障碍物之间的距离,产生一个使机器人远离障碍物的力。 然后,将引力场和斥力场的力叠加起来,得到机器人在当前位置的合力向量。该合力向量会影响机器人的运动方向和速度。 接下来,通过A*算法来寻找机器人的路径。A*算法是一种启发式搜索算法,可以在有向图中寻找最短路径。在ROS中,可以使用navfn或global_planner等已有的A*算法实现路径搜索。 最后,将A*算法得到的路径人工势场法得到的合力向量结合起来,得到机器人的最佳移动路径。通过控制机器人按照最佳移动路径进行移动,完成路径规划。 综上所述,ROS可以实现人工势场法结合A*算法进行路径规划。使用激光雷达或者摄像头等传感器获取环境信息,定义势场,计算合力向量,进行A*算法路径搜索,最终得到机器人的最佳移动路径。这种方法可以在复杂环境下高效地规划机器人的路径
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值