[规划算法]Hybrid A *算法原理

1.算法简介

Hybrid A*算法是一种图搜索算法,改进于A*算法。与普通的A*算法区别在于,Hybrid A*规划的路径考虑了车辆的运动学约束,即满足了车辆的最大曲率约束。

由于A*具有启发式,可以实现快速的结点搜索。核心在于结点权重如何确定(路径代价的设置)。

Hybrid A*算法的启发式包括两种: non-holonomic without-obstacles和holonomic with obstacles。

前者考虑了车辆的运动约束,但不考虑障碍物,一般使用RS曲线,Dubins曲线;后者将车辆当成网格地图上面的点,但考虑了障碍物。

图1 基于Hybrid A*的路径规划算法流程

2.Hybrid A*规划路径的组成

Hybrid A*规划的路径由两部分组成,第一部分是考虑了车辆运动学的探索结点连接而成的路径;第二部分是使用ReedSheeps曲线连接中间点位姿与目标位姿的路径。

1)Hybrid A*的结点拓展

Hybrid A*的搜索空间不仅考虑了x,y方向的拓展,还考虑了Θ方向的探索。相比普通A*的探索空间,Hybrid A*的结点拓展是三维的,因此需要更多的计算量。

图3 Hyrbrid A*的结点扩展:往前往后探索结点

图4 普通A*和Hybrid A* 结点拓展的区别

考虑车辆运动学约束,对地图网格化,生成结点,起始位姿到结点的路径为path1;

2)Analytical Expansion

Hyrbrid A*偶尔会尝试使用RS曲线或Dubins曲线尝试连接当前的结点与目标结点。这一方面可以精确地连接到目标位姿,另一方向可提高搜索的速度。如果得到的曲线与环境障碍物无碰撞,可以提取结束搜索。此时,由结点探索得到的路径为path1,RS曲线或Dubins曲线为path2,那么规划得到的路径为path={path1,path2}。

这一操作在接近目标位姿或者非常稀疏的环境中比较有作用。如果每次尝试连接都需要做碰撞检测,会极大增加计算量。

3.Hybrid A*的启发式

Hybrid A*的有两个启发式,一般会取二者的最大值作为约束。

其中约束启发式结合了车辆的运动学约束,忽略了环境。一般使用RS曲线或Dubins曲线的长度。这种启发式约束考虑了当前航向角以及转弯半径,可以确保车辆以正确的航向接近目标位姿。当车辆越来越接近目标时,这一约束会发挥较重要的作用。

无约束启发式则忽略了车辆的运动学特性,只考虑了障碍物。一般使用普通A*搜索得到的路径(当前结点为目标点,HA*搜索的目标结点为起始结点),并使用欧几里得距离表示。这使得 A* 搜索的封闭列表存储到目标的所有最短距离 g(x),因此可以用作查找表,而不是在 HA* 进行时启动新的搜索。这个考虑了障碍物的启发式可以引导车辆绕过障碍物或U型弯道。

  • 0
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值