运动规划二:基于采样的路径规划
1.PRM
基本介绍:
- 基于图结构
- 分为学习(撒点生成图)和查询阶段(找图)
- 学习:随机采样 + 删除有障碍的线段
- 查询: 使用 Dijstra 和 A* 算法进行查询
- 优缺点:
- 优点:概率完备,不用查询整个地图;
- 缺点:分成两个阶段,效率低
关于提高效率的方法:
- lazy collision-checking,先连线,找到障碍物之后才开始删除有障碍的线段,并重新连线
2.RRT
增量式的构建,根据采样点找最近节点,连接线段上前进一段距离后得到新的点,加入搜索树。若在障碍物里就删除。
缺点:
1.如果遇到窄缝,就很难找到路径,因为采样点到达窄缝的可能性较小。
2.非最优解,非高效
3.采样依旧在整个空间完成
提高效率的方式:
- KD - TREE: 提高最近节点的搜索功能,便于更快找到最近的节点。
- Bidirectional RRT / RRT Connect:同时从起点和终点开始生成搜索树,一次撒点,同时生成两颗树。(窄缝问题)
3.Optimal sampling-based path planning methods
RRT:*
- 在RRT 上改进,若找到新节点之后,搜索到临域节点,找到cost最小的点,并添加父节点,修改连接
- 找到路劲之后,没有停止,依旧更新连接
Kinodynamic-RRT*: - 考虑机器人的运动学约束
- 生成的线不是直线而是曲线连接;
Anytime-RRT*:移动过程中执行 RRT*
4. Advanced path planning methods
- Informed RRT*:得到路径之后,在限定的椭圆内修改采样点,不断优化路径
-
Cross-entropy motion planning:暂不具体了解
5. Implementation
- Open Motion Planning Library
- Moveit with ROS
- Navigation stick - ROS
- Global planner:A*,D*, RRTs,etc
- Local planner:Dwa,eband, Teb,etc