路径规划

所谓路径规划,也就是在起点和终点之间找到一条连续的运动轨迹,在尽可能优化路径的同时避开环境中的障碍物。

常用的路径规划算法有传统的基于图搜索算法、基于采样的路径规划算法,以及考虑动力学的路径规划算法等。那么,这几种路径规划算法分别适用于什么情况下呢?接下来我们就为大家详细介绍一下。

>>>>基于搜索的路径规划算法

基于搜索的路径规矩算法主要包含:BFS(广度优先)算法、DFS(深度优先)算法、Dijkstra算法、启发式搜索 A* 算法等。

一般而言,基于搜索的规划算法适用于运行在栅格地图上。通过在栅格地图上不断地搜索,进而检索出一条到达终点的连续轨迹

虽然基于图搜索的规划算法总是能够给出一个全局范围内的最优解(路径最短、效率最优),但是当地图过大,规划的维度过高时,它的搜索效率就会变得很慢。

>>>>基于采样的路径规划

基于采样的路径规划主要包含:RRT(快速扩展随机树)算法、RRT*算法、informed RRT *算法等。

在某些场景下,对于路径规划算法的关注点主要放在效率上,那么基于采样的规划算法就更加符合要求。

这类算法的核心在于随机采样,从父节点开始,随机地在地图上生成子节点,连接父子节点并进行碰撞检测,若无碰撞,就扩展该子节点。通过不断地随机扩展样本点,直到生成一条连接起点和终点的路径。由于样本点是随机生成,所以最终执行的路径可能不是全局最优解,甚至还会明显感觉机器人在“绕路”。

相对于基于搜索的规划算法,基于采样的规划算法在效率上更优,因其不用遍历整个栅格地图,就能快速生成一条可行路径。

以上两种类型的算法并未考虑机器人运动限制,都只是考虑了“最近的路径”或“最快的路径”。如果想要在最短的时间内获得全局最优解,那么考虑动力学的路径规划算法将是一个不错的选择。

>>>>考虑动力学的路径规划

考虑动力学的路径规划主要包含:混合A* 算法、Kinodynamic RRT*算法等。

以无人车为例,如果生成一条有直角拐点的路径,对于两轮差速运动模型的无人车勉强可以通过这个直角拐点,因为差速模型无人车最小转弯半径为0,也就意味着可以原地旋转(但在实际运动过程也无法达到瞬间转向)。对于阿克曼运动模型的无人车(生活中的汽车就是采用的阿克曼转向系统),由于转弯半径不为0,因此经过直角拐点时就无法通过。考虑动力学的规划算法不再把机器人当作一个质点考虑,而是考虑了规划轨迹要满足动力学生成的轨迹能使得机器人能真正执行

以混合A*算法举例,考虑车辆运动学之后,出来的路径就不是直来直去的折线,而是较为平滑的曲线,并且在障碍物碰撞检测时,也不会单纯地将机器人作为一个质点,而是会考虑机器人轮廓。如下图所示,A*算法扩展节点时为八个格子,Hybrid A*算法扩展节点时有六个运动基原,向前扩展三个运动模式,向后扩展三个运动模式。

目前Prometheus开源项目也包含了路径规划算法,若大家有相关需求,可以通过阿木实验室官网(开源项目 - 阿木实验室)进一步了解Prometheus开源项目。

常用的路径规划算法浅析相关推荐

  1. 路径规划算法_自动驾驶汽车路径规划算法浅析

    自动驾驶汽车的路径规划算法最早源于机器人的路径规划研究,但是就工况而言却比机器人的路径规划复杂得多,自动驾驶车辆需要考虑车速.道路的附着情况.车辆最小转弯半径.外界天气环境等因素. 本文将为大家介绍四 ...

  2. ROS常用局部路径规划算法比较

    本博文主要讨论ROS导航包中集成的局部路径规划算法,DWA.TEB.MPC等算法在使用过程中的各自的优缺点.以下均为自己在使用过程中总结的经验及查阅资料得来,如有理解不到位的地方,还希望在评论区多多讨 ...

  3. PathPlanning常用路径规划算法实现与动画

    [PathPlanning:常用路径规划算法实现与动画]'PathPlanning - Common used path planning algorithms with animations.' 摘 ...

  4. 多边形之间相交求交点的算法_路径规划算法总结

    本文来自知乎网友@搬砖的旺财,地平线机器人算法工程师.作者根据自己本科和硕士阶段的学习经历,整理归纳了所接触过的规划算法. 1.自主机器人近距离操作运动规划体系 在研究自主运动规划问题之前,首先需建立 ...

  5. 多机器人路径规划的代码_知荐 | 地平线机器人算法工程师总结六大路径规划算法...

    来源 | 知乎 知圈 | 进"高精度地图社群",请加微信15221054164,备注地图 目录 1 自主机器人近距离操作运动规划体系········1.1 单个自主机器人的规划体系 ...

  6. 地图导航中的路径规划算法(综述)

    综述介绍+本人研究与实践结果--实际是论文 相关的路径规划算法,静态路网中,通常使用双向A*算法 常见的其他搜索算法,IA*(迭代A*),内存限定A*,分层路网A*(将高速路网构建成一个新的路网), ...

  7. 路径规划算法学习Day2

    路径规划算法学习Day2-栅格法创建环境地图 前言 一.栅格法 1.原理 二.栅格法matlab实现 1.创建地图 2.完整代码 3.所生成地图 三.总结 前言 静态环境中机器人全局路径规划一直是路径 ...

  8. 六自由度机器人(机械臂)运动学建模及运动规划系列——避障路径规划算法补充:粒子群算法(PSO)

    上一篇介绍了遗传算法,本篇接着介绍应用于路径规划的另一种算法--粒子群算法(PSO),主要介绍算法的理论基础以及实现流程等. 本篇目录 1. 算法起源与理论基础 2. 算法实现流程 (1)粒子群初始化 ...

  9. Apollo星火计划学习笔记——Apollo路径规划算法原理与实践

    文章目录 前言 1. 路径规划算法总体介绍 1.1 Task: LANE_CHANGE_DECIDER 1.2 Task: PATH_REUSE_DECIDER 1.3 Task: PATH_BORR ...

最新文章

  1. history linux 日志服务器_Linux日志分析
  2. Cloud Studio全文搜索功能介绍
  3. 关于IE 对 $.get 缓存的记录
  4. MySql 缓存查询原理与缓存监控 和 索引监控
  5. 【转】C# 网络连接中异常断线的处理:ReceiveTimeout, SendTimeout 及 KeepAliveValues(设置心跳)
  6. python 散点图 不同颜色_python – pandas – 每个点都有不同颜色图例的散点图
  7. stimulsoft入门教程:分层报表(下)
  8. [HDOJ]1001. Sum Problem
  9. python实现用户登录界面代码_python编辑用户登入界面的实现代码
  10. 计算机查找dll文件,电脑弹窗提示dll文件丢失怎么办?看我如何快速解决吧!
  11. 2019NIvidia ASIC PD笔试题概念解析
  12. Qos报文分类和标记原理与实验
  13. c语言日历程序 带农历,一个完整的日历程序(含有农历)
  14. ClassNotFound找不到 redis.clients.jedis.JedisShardInfo
  15. 网页的基本信息及组成HTML文件的基本结构
  16. 一分钟读懂广告投放各计费CPM、CPC等(公式推导干货)
  17. IE浏览器默认主页被篡改,无法改回
  18. 元学习—模型不可知元学习(MAML)
  19. 提高写作能力的15条技巧和建议
  20. python无人驾驶_无人驾驶技术入门(四):无人车传感器 IMU 深入剖析

热门文章

  1. 前Burberry CEO接棒库克成为Apple女性掌门人,年薪是库克8倍
  2. python爬虫爬取糗事百科
  3. 计算机技术发展哪一年创刊,祝贺《计算机研究与发展》创刊六十周年
  4. 机器学习笔记之高斯网络(三)高斯马尔可夫随机场
  5. ASPICE 入门知识
  6. “is not a valid date and time ”错误提示 的【排除故障】
  7. 总结软连接和硬连接区别?
  8. 蓝牙技术|苹果AirPods Pro 2 或支持 LE Audio 标准
  9. 众元教育H3CSE20200603班-黑洞路由和路由黑洞的区别
  10. 差分隐私 走过的坑