路径规划算法1.1图搜索——可视图法

  • 前言
  • 图搜索算法
  • 可视图法

前言

机器人自主运动三巨头:感知,规划,控制。规划又包括运动规划、路径规划。路径规划又包括全局规划,局部规划。

路径规划,就是在给定的地图,找出一条从起点和终点的轨迹,随着任务逐渐复杂,这条线必须满足一些要求:路径最好短一些(最优路径),规划速度快一些(时间复杂度),不能碰到障碍物(避障),有解时一定能找到解(完备性),等等。

图搜索算法

机器人地图多使用图结构储存,因此许多经典的图搜索算法都适用于路径规划。另外,路径规划还有一个重要的方向,就是地图表示,不过这里只研究规划算法,地图有空再研究。

图结构可以分为有无向图,有无权图,排列组合就有四种有向有权图,无向无权图balabala。

对于无权图有两种基本图搜索算法:广度优先搜索BFS深度优先搜索DFS

在BFS中加入贪心:Dijkstra算法

在BFS中加入启发式搜索:贪婪最佳优先搜索GBFS

在Dijkstra中加入启发式搜索:A*算法

可视图法

原论文:An Algorithm for Planning Collision-Free Paths among Polyhedral Obstacles.

可视图法将机器人描述为点,障碍物为多边形,然后将起点S、终点G、多边形顶点V连接,并且任何连线都不能穿透障碍物,可以将直线的距离作为连线的权值。这样就建立了一个可视图,可以通过优化算法对{S,G,V}进行求解获得最优路径。

VG法在建图时,由于没有考虑到机器人、障碍物的尺寸,机器人在生成轨迹上运动时会擦着障碍物的边走,因此会发生碰撞。后续的改进算法在建图前,先将障碍物边界扩展一个机器人的尺寸,生成的轨迹就使得机器人能刚好贴着障碍物运动。

此外,原始的VG法也无法对圆弧边界障碍物建图,因此在后续改进中将圆弧边界用切线包围,就退化为多边形障碍物问题了。

实际上,可视图法就是一种通过可视地图构建算法。

路径规划算法1.1图搜索算法——可视图法相关推荐

  1. 【路径规划】基于蚁群算法求解运钞车路径规划VRPSD问题matlab代码

    1 简介 近年来,国内各大城市陆续建立了专业的金融押运企业,为银行网点的现钞运送提供服务.为了实现运钞智能化,降低银行运营成本,需要对银行现钞运送车辆路径规划提供决策支持.而银行运钞车路线规划问题是车 ...

  2. 【RRT三维路径规划】基于matlab RRT算法无人机三维路径规划【含Matlab源码 155期】

    一.获取代码方式 获取代码方式1: 通过订阅紫极神光博客付费专栏,凭支付凭证,私信博主,可获得此代码. 获取代码方式2: 完整代码已上传我的资源:[三维路径规划]基于matlab RRT算法无人机三维 ...

  3. java动态规划货车运输_多堆场集装箱卡车路径规划的混合蚁群算法

    多堆场集装箱卡车路径规划的混合蚁群算法 发布时间:04-15-19 张建同,宋玉坚,叶春明 <工业工程与管理>第22卷第2期 2017年4月 推荐理由 集装箱运输作为一种高效率高质量的运输 ...

  4. 【A_star二维路径规划】基于matlab A_star算法无人机二维路径规划(起终点障碍物可设置)【含Matlab源码 1321期】

    ⛄一.获取代码方式 获取代码方式1: 通过订阅紫极神光博客付费专栏,凭支付凭证,私信博主,可获得此代码. 获取代码方式2: 完整代码已上传我的资源:[A_star二维路径规划]基于matlab A_s ...

  5. 【A_star三维路径规划】基于matlab A_star算法无人机三维路径规划【含Matlab源码 446期】

    ⛄一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[三维路径规划]基于matlab A_star算法无人机三维路径规划[含Matlab源码 446期] 获取代码方式2: 付费专栏Matla ...

  6. 【RRT三维路径规划】基于matlab RRT算法无人机三维路径规划【含Matlab源码 1363期】

    一.获取代码方式 获取代码方式1: 通过订阅紫极神光博客付费专栏,凭支付凭证,私信博主,可获得此代码. 获取代码方式2: 完整代码已上传我的资源:[三维路径规划]基于matlab RRT算法无人机三维 ...

  7. 【RRT三维路径规划】基于matlab RRT_Star算法三维路径规划【含Matlab源码 1571期】

    一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[三维路径规划]基于matlab RRT_Star算法三维路径规划[含Matlab源码 1571期] 点击上面蓝色字体,直接付费下载,即可. ...

  8. 【路径规划】基于matlab DWA算法机器人局部避障路径规划【含Matlab源码 890期】

    ⛄一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[路径规划]基于matlab DWA算法机器人局部避障路径规划[含Matlab源码 890期] 获取代码方式2: 通过订阅紫极神光博客付费 ...

  9. matlab三维路径规划,【路径规划】基于A星算法的三维路径规划matlab源码

    %% 该函数用于演示基于A_Star算法的三维路径规划算法 %% 清空环境 clc clear %% 数据初始化 %下载数据 starttime=cputime; load HeightData z ...

最新文章

  1. sql 使用identity(int,1,1)来产生行号。
  2. what companies will vc invest?
  3. django再windows下测试命令总结
  4. Android通过post请求发送一个xml,解析返回xml数据
  5. 如何根据相机的参数知道摄像机的内参数矩阵
  6. 怎么用vc采集ni卡数据_「解决方案」三维激光扫描多数据混合作业,助力“地籍调查”...
  7. 谷歌云盘Colab使用心得
  8. 我的Android进阶之旅------经典的大牛博客推荐(排名不分先后)!!
  9. Java取邮箱名_邮件开发 中的邮箱地址提取!
  10. 射频识别技术漫谈(17)——射频卡中数据的存储形式
  11. oppo如何用计算机找回锁屏密码,OPPO忘了锁屏密码怎么办?从解锁到恢复全过程...
  12. pyecharts可视化画3D动态地球仪,世界地图,中国地图。
  13. 小三角箭头向下向上查看隐藏的效果 vue
  14. msp430单片机c语言开发,MSP430单片机开发总结
  15. idea 设置全局豆沙绿
  16. 3D目标检测/点云/遥感数据集汇总
  17. 微商怎么找客源,新手做微商如何找客源的
  18. 【Datawhale组队学习】机器学习数学基础 - 一元函数微分学【Task 03】
  19. 使用Fiddler抓取app里面的链接
  20. 【网络教程】Iptables官方教程-学习笔记5--IPTABLES MATCH

热门文章

  1. 腾讯首款区块链游戏开始预约,主打区块链+AR
  2. 如何对网站登录进行漏洞测试以及漏洞修复
  3. linux修改主机名(永久)
  4. 817计算机考研资料,华中科技大学硕士入学考试817工程材料考研大纲
  5. DotnetBar控件介绍
  6. JavaScript 30. JSON
  7. QT中使用C++ socket通信(了解socket通信、socket的三次握手和四次挥手、socket函数说明、客户端与服务端的代码实例)
  8. netstat命令实战详解
  9. C++练手项目(基于muduo网络库+mysql+jsoncpp的简易HTTPWebServer用于网页显示数据库后台数据
  10. 【COS 加码福利】COS 用户实践有奖征文,等你来投稿!