目录
- 0 专栏介绍
- 1 基于采样的规划算法
- 2 概率路图基本原理
- 3 PRM算法流程
- 4 PRM参数分析
0 专栏介绍
🔥附C++/Python/Matlab全套代码🔥课程设计、毕业设计、创新竞赛必备!详细介绍全局规划(图搜索、采样法、智能算法等);局部规划(DWA、APF等);曲线优化(贝塞尔曲线、B样条曲线等)。
🚀详情:图解自动驾驶中的运动规划(Motion Planning),附几十种规划算法
1 基于采样的规划算法
在第二章中我们介绍了主流的基于图搜索的路径规划算法,比如Dijkstra
、A*
、JPS
、D*
、D* Lite
、LPA*
等,这些基于搜索的路径规划对环境进行了完整建模,因此通常具有良好的完备性和最优性,但在高维空间却可能因为维数灾难现象无法应用,例如对无人机进行三维环境路径规划,其建模和搜索复杂度比二维平面高一个量级。
本章介绍基于采样的路径规划技术,它们克服了搜索算法的空间限制,以概率完备性代替完备性——即当时间趋于无穷时一定有解,增强了算法的普适性。基于采样的路径规划主要分为:
- 单查询算法(single-query path planning):保证路径规划的可行性和快速性
- 渐近最优算法(asymptotically optimal path planning):对可行路径进行逐步优化,侧重最优性。
- …
本文介绍采样路径规划中的基本概念——概率路图
2 概率路图基本原理
概率路图算法(Probabilistic Road Map, PRM)核心原理是将路径规划分为两个阶段:
- 学习阶段:通过随机采样将高维连续配置空间转换为离散空间,产生概率路图;
- 查询阶段:将规划起点、终点连入概率路图,在概率路图上应用基于搜索的路径规划算法。
3 PRM算法流程
PRM算法的完整流程如下所示
其中碰撞检测算法 C o l l i s i o n F r e e ( ⋅ ) \mathrm{CollisionFree}\left( \cdot \right) CollisionFree(⋅)常用连线采样法,如图所示,计算概率路图中的连线 ( q , q ′ ) \left( q,q' \right) (q,q′)是否合法需要考虑两个方面
- 连线长度小于阈值 d ( q , q ′ ) < d max \mathrm{d}\left( q,q' \right) <\mathrm{d}_{\max} d(q,q′)<dmax, d max \mathrm{d}_{\max} dmax对无意义的长距离连线进行剪枝;
- 连线不穿过障碍:在连线上按一定步长采样,判断是否存在落入障碍中的采样点。
4 PRM参数分析
概率路图的采样节点数 n n n与碰撞检测算法中的阈值 d max \mathrm{d}_{\max} dmax会影响路径规划的成功率。一般地,采样点数越多、阈值 d max \mathrm{d}_{\max} dmax越大规划成功率越高,但相应的规划效率越低。
4.1 采样点数
采样点数越多规划成功率越高,但计算量也随之上升
4.2 阈值 d max \mathrm{d}_{\max} dmax
阈值 d max \mathrm{d}_{\max} dmax越大规划成功率越高,但相应的规划效率越低
🔥 更多精彩专栏:
- 《ROS从入门到精通》
- 《Pytorch深度学习实战》
- 《机器学习强基计划》
- 《运动规划实战精讲》
- …