全局路径规划
![在这里插入图片描述](https://img-blog.csdnimg.cn/3191d4757d064b8981d5cc99d13453ed.png)
提供Dijkstra和A算法,默认使用Dijkstra
Dijkstra是把从出发点到终点的整个栅格地图上的所有的点,全部遍历,然后找到路径最短的一条。
A*算法是目标点对路径有指导性作用,不会遍历每个点。
Dijkstra算法
基本思想:由近到远,把起点到所有点的最短路径都算出来。
假设起点到直的上下左右四个点的距离为2,到斜的四个点的距离为3;取最小的点作为中心点,对其旁边的8个点进行距离计算;若点之前已经算过,就比较这次的计算结果和之前的,选择路径最短的方案保存下来。
循环上面这个过程,直到找到终点,找到的就是可以走的最短路径。
![在这里插入图片描述](https://img-blog.csdnimg.cn/1ce9434dcc1a4dc1bf09f8b02faa4922.png)
A*算法
两种距离的介绍
![在这里插入图片描述](https://img-blog.csdnimg.cn/677eeedc3ab04dbb98d74189d2118cb5.png)
A*算法的关键:
假设同上,起点到直的上下左右四个点的距离为2,到斜的四个点的距离为3。计算旁边8个点的F值(F = G + H),取F值最小的点作为下一次计算的中心点,不断重复这个过程。新框中若有之前计算过的点,与之前的方案比G值,选择较小的方案留下。
![在这里插入图片描述](https://img-blog.csdnimg.cn/4d0044d05175452498733eddb8ebf012.png)
局部路径规划
由全局路径规划器规划出一条大致的路径,然后交给局部路径规划器分成很多的小段,再进行局部路径规划。并且支持对动态障碍物的避障。
![在这里插入图片描述](https://img-blog.csdnimg.cn/6e47bcc65fa14256a8b744b491c02c74.png)
DWA算法
1.先做出一个假设,假设小车的位置是多少,假设小车的速度是多少
2.再建立运动模型
![在这里插入图片描述](https://img-blog.csdnimg.cn/20a87729d9be405d8542839d1206f21e.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/c4abc0be44ec46b8ae784da9662b61a1.png)
3.对速度进行采样,有了运动模型,就可以根据速度推算出一定时间内物体运动的轨迹。
![在这里插入图片描述](https://img-blog.csdnimg.cn/4f753605596d4935ad05fc627cdd842c.png)
4.判断路径的好坏,进行选择。
![在这里插入图片描述](https://img-blog.csdnimg.cn/6ce51c051f404fd9aed3cf5bff02cd95.png)
TEB算法
整个过程:全局路径——加入约束——g2o优化——速度指令
1.一条路径上插入N个状态
![在这里插入图片描述](https://img-blog.csdnimg.cn/a1acf3f44da74f7ca07b7e533054d2e8.png)
2.加入约束函数
由于约束函数的加入,使状态点变化,从而可能会使路径发生变化。
![在这里插入图片描述](https://img-blog.csdnimg.cn/7d4111040568452598cac87ae8c6cd0b.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/5822babc204d4fd89189d054e2991ec8.png)
3.开源算法进行优化
![在这里插入图片描述](https://img-blog.csdnimg.cn/7dc19156fb6c41ae86c894e21b284ca0.png)
参数设置
![在这里插入图片描述](https://img-blog.csdnimg.cn/ae842045a9814be3bba3e5c8d0de0e72.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/4959dcbd39e84e669963cfea480690be.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/b6f777883f04455cb106536c9373ddbc.png)
调参工具
rosrun rqt_reconfigure rqt_reconfigure
![在这里插入图片描述](https://img-blog.csdnimg.cn/0f4affed20ae44fc8c52185931c9a7e0.png)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)