课程回顾
最开始讨论了在网格上移动的机器人的路径规划问题,引入了图的概念,图中节点对应机器人可以到达的离散位置,边缘对应位点间的路径。

对于这些基于网格的问题,我们讨论了广度优先搜索【Breadth First Searth】或烧草算法【Grassfire Algorithm】,该算法从起点向外探索来找到最短路径

还讨论了Dijkatra算法,这是用加权图进行最短路径规划的通用算法


最后,还介绍了A* 算法,当你有更多的指引信息时,这个算法能加快对最短路径的搜索

这些基于图形的算法非常重要,因为它们为各种路径规划做了基础。

接下来讨论了位形空间的概念,它为探究各种机器人系统提供了统一的框架,机器人的位形空间对应这机器人可以到达所有位置的集合,位形空间的维数和拓扑值取决于系统的布局和结构。有了给出的抽象图,我们接着讨论位形空间障碍,这些障碍代表机器人由于工作空间中的阻碍而无法到达的位置


位形空间的概念让我们能够根据点的运动来考虑机器人的运动,如图所示机器人在躲避障碍的同时也在形空间中移动

在位形空间的章节,我们简单讨论了用于确定给出的位置是否会与工作空间障碍物发生碰撞的检查函数,从而提供位形空间障碍物和(与其)互补的自由空间的隐藏信息。


我们讨论了一些在连续位形空间的路径规划算法,可视图方法

梯形分解法

以及基于网格的方法,即在位形空间中建立离散均匀的间隔点

每一个方法都代表我们会用不同的方式来捕获离散图内连续位形空间的结构,这样就能使用基于图表的路径规划算法(例如Dijkstra算法)来解决问题。

另一类重要方法是基于随机抽样的想法,在这种思路中,我们从位形空间中随机选择样本点,然后构建路径图,并通过不交错的边来连接,介绍了两种利用随机样本的方法。

即随机路图法,该算法寻求建立自由空间的路线图或框架

以及快速搜索树方法,该算法以起点和终点为种子构建不断往外生长的树,以探索自由空间并建立之间的路径

两种算法在实践中的应用效果很好,即使在多维位形空间中也是。虽然当它们失败时,很难确定这是因为没有路径还是缺少足够的随机样本点。

最后还学习了人工势场法,该方法让机器人远离障碍物并把它吸引到目标点

有了这些方法,我们最后通过计算此人工势场的梯度来导机器人穿越位形空间,势场法的共同优点是它们运用起来相对简单,并且仅使用传感器信息就能直接执行。

考虑到篇幅,规划中还有很多有趣的主题尚且没有讨论。

目前,我们默认机器人可以随时在任何方向和空间自由移动,但事实并非如此。比如车型机器人,它无法立即侧向平移或者以车头向前的形式朝固定角度行驶,具有这类约束的系统称为非完整系统,必须用特殊的规划方法来处理。

在相关方面,我们经常要处理具有动态约束的系统,例如,对于四旋翼系统,我们无法直接控制四旋翼的速度,但可以控制每个旋翼提供的推力,这些情况限制了飞行器的移动方式,所以需要适当变换考虑;

同时对多个机器人进行规划会带来一系列新的问题。如我们所见,规划问题的复杂度会随着系统自由度的增加而呈指数式增长。随着多机器人加入,会出现多种交互情形,而这可能会造成很大的协调困难,希望多个机器人相互协作,这非常有趣,而这些交互实际上成为规划问题的关键部分;

这就引入了新问题,当机器人应对移动障碍物时会发生什么,在路径规划中,额外的时间维度会引发许多有趣的问题。
在本模块中,我们假设机器人完全了解其位置,并且还确切知道所有障碍物的位置,而现实并非总是如此,而且,我们可能需要其他规划方法来解决这些维度中的不确定性

感谢 B 站 up 主 Here_Kin 的翻译和分享!
【自制中英】宾夕法尼亚大学机器人专项课程二 运动规划 - Robotics:Motion and Planning

13_Course Summary_宾夕法尼亚大学机器人运动规划专项课程【学习笔记】相关推荐

  1. 10_Rapidly Exploring Random Trees_宾夕法尼亚大学机器人运动规划专项课程【学习笔记】

    在随机路图算法中,基本思路是建立一个由随机样本点和连接它们的边组成的路标图,一旦建立完成,就可以将想要的起点和终点通过路标图建立连接,得到一条可行路径.注意第一阶段建立的是一般路标图,并未考虑将任何一 ...

  2. 1_Grassfire Algorithm_宾夕法尼亚大学机器人运动规划专项课程【学习笔记】

    用0作为距离值标记目标节点,给所有距离目标节点1步的点标上1,距离2的标上2-以此类推,直至抵达起点. 对于网格中的节点,标上的距离值代表的是从这个点走到目标点的最少步数.会发现这些数字从目标点向外辐 ...

  3. 11_Artificial Potential Field_宾夕法尼亚大学机器人运动规划专项课程【学习笔记】

    1. Constructing Artificial Potential Field 本节将讲解如何在人工势场中引导机器人在充满障碍物的环境中运动,基本思路是在位形空间内构造一个平滑函数[smooth ...

  4. 斯坦福大学CS520知识图谱系列课程学习笔记:第三讲高级的知识图谱是什么样的

    这一讲的主题是:一些高级的知识图谱是什么样的.三位讲者分别从他们各自带领的团队构建出来的高质量的知识图谱实例出发,从中我们可以认识到一些大佬们构建的优秀的知识图谱产品有哪些特点和优势,从中对我们自己构 ...

  5. 斯坦福大学CS520知识图谱系列课程学习笔记:第二讲如何构建知识图谱

    上一讲我们学习了知识图谱的一些基本概念: 斯坦福大学CS520知识图谱系列课程学习笔记:第一讲什么是知识图谱 本节课程关于如何构建知识图谱,因为知识图谱的构建是整个知识图谱领域的一个非常核心且基础的工 ...

  6. oracle 方泽宇_斯坦福大学CS520知识图谱系列课程学习笔记:第二讲如何构建知识图谱...

    上一讲我们学习了知识图谱的一些基本概念:泽宇:斯坦福大学CS520知识图谱系列课程学习笔记:第一讲什么是知识图谱​zhuanlan.zhihu.com 本节课程关于如何构建知识图谱,因为知识图谱的构建 ...

  7. 斯坦福大学CS520知识图谱系列课程学习笔记:第一讲什么是知识图谱

    随着知识图谱在人工智能各个领域的广泛使用,知识图谱受到越来越多AI研究人员的关注和学习,已经成为人工智能迈向认知系统的关键技术之一.之前,斯坦福大学的面向计算机视觉的CS231n和面向自然语言处理的C ...

  8. 【宾夕法尼亚大学机器人课程学习】Motion Planning

    目录: 一.定义 二.Grassfire Algorithm 三.Dijkstra's Algorithm狄克斯特拉算法 四.A_star Algorithm A*算法 五.构形空间configura ...

  9. 机器人运动规划调研(pending)

    文章目录 前言 发展历程 通用运动规划方法 基于自由空间 Cfree几何构造的规划方法 可视图法 前言 阅读移动机器人运动规划研究综述心得 总结一下,机器人运动规划的发展历程,算法和思路. 搜索策略和 ...

最新文章

  1. python os.path模块学习(转)
  2. python中的中文乱码问题深入分析
  3. php虚拟主机和服务器吗,php虚拟主机和服务器吗
  4. python画曲线-利用python画出AUC曲线的实例
  5. 操作系统:电脑的回收站的秘密你知道吗?
  6. inputstreamreader未关闭会导致oom_Linux内核OOM机制分析和防止进程被OOM杀死的方法...
  7. LeetCode 1743. 从相邻元素对还原数组(拓扑排序)
  8. git add remote_使用git管理嵌入式软件版本
  9. TensorFlow从1到2 | 第五章 非专家莫入!TensorFlow实现CNN
  10. 计算机设置成一个网络,同一个路由器上的电脑怎么设置成局域网连网打 – 手机爱问...
  11. Castle IOC容器构建配置详解(二)
  12. win10插入耳机还是外放
  13. phpnow搭建本地网站服务器,phpnow搭建本地网站服务器.doc
  14. android的otg功能,Android实现OTG功能
  15. 酒店PMS变革之路:开放互联、模块化配置
  16. C语言:*(p++)与*p++ *(++p)与*++p ++*p与++(*p) (*p)++的区别
  17. 使用echarts扩展地图案例
  18. 0428-团队项目2
  19. Qt练习项目 - 个人网盘开发 - [ Sloot Netdisk ] (一) 界面开发
  20. 意能通:一名博士CEO的人工智能创业之旅

热门文章

  1. linux(debian11)系统安装那些事儿--没有无线网需要安装无线网卡驱动双显卡等问题
  2. Ubuntu - usb转串口设备的访问权限设置
  3. 普遍意义下矢量的散度和旋度表达式以及它们的矩阵形式的推导
  4. Windows10系统中安装Rational Rose
  5. 单细胞轨迹分析-dyno
  6. 学术报告PPT制作建议
  7. 关于电压、温度和延时的关系
  8. Day 31-35 : 玩转Linux操作系统
  9. EBS WebADI:简介
  10. ChromeDriver/Selenium/Python浏览器自动化初体验