本周开始新的一系列:Computational Motion Planning
上个系列aerial robotics更多是一个基本的系统的介绍,接下来才是真正具体细节的控制(总共5个系列)希望自己坚持

week1 lesson1

首先讲motion planning problem
robotics课程记录(5)
接下来进行了一个栅格法的简单介绍和图论介绍,这是路径规划的基础,可以在CSDN搜中文版
robotics课程记录(5)
路径规划的线路一般都是多条的,我们要找到最短路径(其实也不一定是距离最短,根据不同情况,总是找cost最短那条)

week2

robotics课程记录(5)
这里的数字指的是到终点的格子数(这个案例只考虑4个方向,不能斜着走)

grassfire algorithm
robotics课程记录(5)
robotics课程记录(5)
这个算法也就用于小规模的2D情景,一旦扩大数据增多,根本没法用。

dijkstras algorithm
robotics课程记录(5)
robotics课程记录(5)
A algorithm*
robotics课程记录(5)
robotics课程记录(5)
robotics课程记录(5)
robotics课程记录(5)
robotics课程记录(5)
robotics课程记录(5)
图中,红色节点为已经访问过的节点,蓝色为待访问,显然可以看出A的优势
因为目标点已知,所以可以引入启发函数,这是A
优于之前两个算法的地方。笔者曾经做过一个A的仿真,程序运行效率与选择的启发式函数有关,课中讲的是最简单的,只允许上下左右四个方向移动(实际上是可以八个方向移动的)
不过这个算法也常用于2D。
CSDN有众多A
代码,感兴趣的可以自己实现,我当时也参考了很多大佬

assignment

作业是完善一个D算法程序,一个A算法程序
他实际简化了很多,你只要写搜寻的那一段,其他都不用管
robotics课程记录(5)
D算法结果
robotics课程记录(5)
A算法结果

相关文章: