[运动规划算法]基于采样的规划算法


简介

基于图搜索的路径规划算法主要用于低维度空间上的路径规划问题,它在这类问题中往往具有较好的完备性,但是需要对环境进行完整的建模工作,在高维度空间中往往会出现维数灾难。为了解决这些问题,本文将介绍基于随机采样的路径规划算法。这类算法适用于高维度空间,它们以概率完备性(当时间接近无限时一定有解)来代替完备性,从而提高搜索效率。

规划中的完备性概念
完备规划器:总能在限定时间内正确查找到规划的路径。
概率完备规划器:如果存在解的情况,则规划器最终会使用随机抽样的方式(如蒙特卡洛采样)找到它。
分辨率完备规划器:与上述相同,但基于确定性采样(如在固定网格上进行采样)。


1. PRM(概率路线图)

PRM算法是采用随机采样的方式在环境中建立路径网络图,将连续空间转换成离散空间,再利用A*等搜索算法在路线图上寻找路径,以提高搜索效率。整个过程主要分为两个阶段Learning phase 和 Query phase。

Learning phase

在自由空间中采样N个点,删除在障碍物内的点。然后将点与点之间连接起来,但是连接时对距离做一定的限制,如果连线超过一定的距离或者连线经过障碍物则不连接,连线构成一张路线图。
在这里插入图片描述

Query phase

在路线图上寻找起点到终点的路径(使用A*或Dijkstra算法),此时路线图类似于栅格地图。
在这里插入图片描述

PRM优缺点

优点:概率完备性,相比于图搜索的比较高效
缺点:两点边界值问题,在状态空间上构建图,但不特别关心所生成路径,而且效率不高。

碰撞检测:lazy collision-checking

在撒点和构建图的时候,不管碰撞问题。在搜索到路径之后,再删去发生碰撞的部分,重新搜索其他路径。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


2. RRT(快速扩展随机树)

在这里插入图片描述
初始化起点,然后随机撒点,随机选出一个x_rand,在树上找出最近点x_near,取两者之间的中点作为x_new,最后,还要做一次collision checking, 看看生成的点是不是和x_near 连接起来后是否会碰撞障碍物。

在这里插入图片描述

RRT优缺点

优点:RRT比概率图方法效率更高,但是这依然不是个高效的搜索方法;
缺点:得到到不是最优的路径,每次搜索路径的不一定相同。

3.双向RRT

双向RRT, 意思就是从起点和终点同时搜索,一直到两棵树交汇,提高RRT搜索效率。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


4. RRT*

RRT*是RRT算法基础上的改进,改进的地方是x_near 和 x_new不会直接连接起来,而是做一个优化处理,在x_near附近圈一个圆,将被圈在圈内的各个点与x_new的距离作对比,如果x_near 到 x_new的距离比通过x1、x2后再到x_new的距离低,就将x_near和x_new连接起来。同时我们对比从x_near出发到x2的距离最短值;发现通过x_new之后到达x2的距离更短,则将x2的父节点更新为x_new。这个步骤之为rewire function。在这里插入图片描述
在这里插入图片描述


5. Kinodynamic-RRT*

符合机器人运动学约束的曲线。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
https://www.youtube.com/watch?v=RB3g_GP0-dU


6. Anytime-RRT*

Anytime-RRT*实时构建路径,适用于变化的环境。
在这里插入图片描述


7. Informed RRT*

将采样的过程限制在一个椭圆中,该椭圆由已经产生的路径决定。
在这里插入图片描述

在这里插入图片描述


8. Cross-entropy motion planning

圆内进行采样生成轨迹。
在这里插入图片描述
在这里插入图片描述


其他

• Lower Bound Tree RRT (LBTRRT)[a]
• Sparse Stable RRT[b]
• Transition-based RRT (T-RRT)[c]
• Vector Field RRT[d]
• Parallel RRT (pRRT)[e]
• Etc.[f]

[1] An Overview of the Class of Rapidly-Exploring Random Trees
[2] http://msl.cs.uiuc.edu/rrt/
[a] https://arxiv.org/pdf/1308.0189.pdf
[b] http://pracsyslab.org/sst_software
[c] http://homepages.laas.fr/jcortes/Papers/jaillet_aaaiWS08.pdf
[d] https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6606360
[e] https://robotics.cs.unc.edu/publications/Ichnowski2012_IROS.pdf
[f] https://github.com/zychaoqun


参考资料

【1】深蓝学院运动规划课程。

  • 3
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
讲述机器人运动规划原理的经典书籍。 《规划算法》目录: 第Ⅰ部分 介绍性的资料  第1章 绪论   1.1 从规划(的过程)到规划(的结果)   1.2 实例与应用   1.3 规划的基本组成   1.4 算法规划器与规划    1.4.1 算法    1.4.2 规划器    1.4.3 规划   1.5 本书的组织安排  第2章 离散规划   2.1 离散可行规划简介    2.1.1 问题表述    2.1.2 离散规划的实例    2.2 可行规划的搜索    2.2.1 一般前向搜索    2.2.2 特殊前向搜索    2.2.3 其他搜索方案    2.2.4 搜索方法的统一描述   2.3 离散最优规划    2.3.1 最优定长规划    2.3.2 不指定长度的最优规划    2.3.3 再论Dijkstra算法   2.4 用逻辑来表示离散规划    2.4.1 类似STRIPS的表示    2.4.2 转换到状态空间表示   2.5 基于逻辑的规划方法    2.5.1 部分规划空间中的搜索    2.5.2 建立规划图    2.5.3 满足性规划   进一步阅读   习题   实现 第Ⅱ部分 运动规划  第3章 几何表示与变换   3.1 几何建模    3.1.1 多边形与多面体模型    3.1.2 半代数模型    3.1.3 其他模型   3.2 刚体变换    3.2.1 一般概念    3.2.2 二维变换    3.2.3 三维变换   3.3 物体运动链的变换    3.3.1 二维运动链    3.3.2 三维运动链   3.4 运动树的变换   3.5 非刚体的变换   进一步阅读   习题   实现  第4章 位形空间   4.1 拓扑的基本概念    4.1.1 拓扑空间    4.1.2 流形    4.1.3 路径与连通   4.2 位形空间    4.2.1 二维刚体:SE(2)    4.2.2 三维刚体:SE(3)    4.2.3 物体的链与树   4.3 位形空间障碍物    4.3.1 基本运动规划问题    4.3.2 显式建模Cobs:加:平移情况    4.3.3 显式建模Cobs:一般情形   4.4 闭运动链    4.4.1 数学概念    4.4.2 R2上的运动链    4.4.3 定义一般连杆组的簇   进一步阅读   习题   实现  第5章 基于采样运动规划  第6章 组合运动规划  第7章 基本运动规划的扩展  第8章 反馈运动规划 第Ⅲ部分 决策论规划  第9章 基本永生理论  第10章 序贯决策理论  第11章 传感器与信息空间  第12章 存在感测不确定性条件下的规则 第Ⅳ部分 微分约束条件下的规划   第13章 微分模型  第14章 微分约束条件下基于采样规划  第15章 系统理论与分析技术

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Travis.X

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

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

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

打赏作者

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

抵扣说明:

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

余额充值