对Rapidly-exploring Random Trees(RRT)路径规划方法的理解

RRT与PRM一样,也是概率完备且不最优的。概率完备是指只要解存在就一定能在某一时刻找到。但解不一定是最优的。RRT与PRM相比,有一个优势就是,它在构建图的过程中就在寻找路径。

RRT的主要算法流程

在这里插入图片描述

这份基于matlab的代码很好的展示了RRT的算法流程

RRT的优劣分析

优势:

  • 相对于PRM更具有目标导向,它在构建图的过程中就在寻找路径。
  • 无需对系统进行建模,无需对搜索区域进行几何划分,在搜索空间的覆盖率高,搜索的范围广,可以尽可能的探索未知区域。

劣势:

  • RRT得到的路径往往不是最优的。有比较大的优化空间。
  • RRT是在整个地图空间中随机采样点,这样全范围的采样往往效率不高。可以考虑启发式的采样,让采样的点更具有目标导向。
  • 在狭窄的通道里不易获得采样点。所以有时无法通过狭窄通道。

在RRT上的改进

Bidirectional-RRT/RRT-Connect

算法流程:
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

关于双向RRT的介绍来源于:https://www.cnblogs.com/21207-iHome/p/7210543.html

RRT*

RRT* 完全继承了RRT的特性,并在其基础上扩展了两个新的特性。正是由于新特性的加入,RRT* 可以生成更优的路径。同时由于算法步骤的增加和collision check的增加,计算消耗也增加了。
下面是RRT* 的算法流程:
在这里插入图片描述
其实整个RRT* 算法可以分为三个大的部分。第一部分是继承至RRT的。这一部分和RRT是一样的,就是寻找到 z n e w z_{new} znew z n e a r e s t z_{nearest} znearest。这一过程就是伪代码中的4,5,6步骤。
在这里插入图片描述

near neighbor search
在这一步骤中,我们要为新得到的 z n e w z_{new} znew找一个合适的父节点。思路是,以 z n e w z_{new} znew为圆心,以固定的半径 r r r画圆。落在该圆范围内的节点就是 z n e w z_{new} znew潜在的父节点。我们将 z n e w z_{new} znew与每个邻近的节点相连(如下图节点 a a a b b b),计算 z n e w z_{new} znew通过哪个邻近节点到达 z i n i t z_{init} zinit的cost最小。注意,这里的cost一般是指路径长度。
在这里插入图片描述
最终我们会发现, z n e w z_{new} znew通过 z n e a r e s t z_{nearest} znearest到达 z i n i t z_{init} zinit路径最短。这时 z n e a r e s t z_{nearest} znearest就会设置成 z n e w z_{new} znew的父节点。

rewiring tree operations
到这一步时, z n e w z_{new} znew已经和 z n e a r e s t z_{nearest} znearest建立了连接,形成了一条新的边。这时我们要考虑a节点和b节点通过 z n e w z_{new} znew到达 z i n i t z_{init} zinit路径会短一点吗?从我画的图直观来看a节点和b节点原来的连接似乎使得路径更短。所以可以保留其原来的连接,不进行更改。
在这里插入图片描述
为了说明这一步骤的功能,我们做一个假设。我认为b节点通过 z n e w z_{new} znew到达 z i n i t z_{init} zinit路径会短一点,即红色路径比黑色路径短。这时会发生什么? a节点和b节点间的连接会断开,b节点会将自己的父节点改为 z n e w z_{new} znew

通过不断迭代上述步骤,RRT*会逐渐生成越来越短的路径。

RRT algorithm illustrative example

https://blog.csdn.net/ljq31446/article/details/78867011

A Comparison of RRT, RRT* and RRT*-Smart Path Planning Algorithms

Informed RRT*

在寻找到第一条可行的路径前,Informed RRT* 所做的工作与RRT* 是一样的。不同之处在于,Informed RRT* 使用初始路径的长度来画一个以起始点和终止点为焦点的椭圆。
在这里插入图片描述
随着迭代的进行,路径会越来越短。椭圆的面积也越来越小。因为采样点的区域被限定了,采样效率更高。收敛到最优路径花的时间也更少。
在这里插入图片描述

下图是RRT* 和Informed RRT* 的效果图。可以看到Informed RRT* 只在限定的椭圆内优化路径。当路径优化到相同的cost时,RRT* 比Informed RRT* 多花了8倍多的时间。
在这里插入图片描述

informed

论文:
Informed RRT*: Optimal sampling-based path planning focused via direct sampling of an admissible ell

关注公众号《首飞》回复“机器人”获取精心推荐的C/C++,Python,Docker,Qt,ROS1/2等机器人行业常用技术资料。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

首飞爱玩机器人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值