息县网站建设公司,企业官网的运营模式,微信小程序定制公司,网络公司经营范围许可系列文章目录
路径规划之Dijkstra算法 路径规划之Best-First Search算法 路径规划之A*算法 路径规划之D *算法 路径规划之D*算法 系列文章目录前言一、D*算法1.1 起源1.2 思想1.3 阶段1.4 个人理解1.5 应用 前言
之前说过A是目前应用最广泛的寻路算法#xff0c;但是A算法存…系列文章目录
路径规划之Dijkstra算法 路径规划之Best-First Search算法 路径规划之A*算法 路径规划之D *算法 路径规划之D*算法 系列文章目录前言一、D*算法1.1 起源1.2 思想1.3 阶段1.4 个人理解1.5 应用 前言
之前说过A是目前应用最广泛的寻路算法但是A算法存在它的局限性那就是A*算法只能在静态环境中有着良好的表现但是在动态环境中发挥有限动态环境指路障会变化。因此为了应对该问题科学家们提出了D *算法。
一、D*算法
1.1 起源
“D* 算法”的名称源自 Dynamic A Star,最初由Anthony Stentz于1994年在“Optimal and Efficient Path Planning for Partially-Known Environments”中提出 它是一种启发式的路径搜索算法特点在于其增量路径规划能力当环境发生变化时它允许机器人在已经找到路径的基础上仅重新计算必要的部分而不需要重新规划整个路径。 这使得它适用于实时系统特别是需要在运动中适应未知、动态环境的移动机器人等应用。
1.2 思想
不同于A算法从起点出发搜索D算法从终点出发搜索简单来说核心思想就是反向搜索 原因从终点出发如果本来规划的路径上突然出现路障需要重新规划时由于从终点出发到对应的点上的路径都是最短路径因此可以有效利用这些已经搜索过的信息进行重新规划。 1.3 阶段
D*分为两个阶段如下
先使用Dijkstra / A*算法找到起点到目标点的静态可行路径动态避障搜索阶段。
1.4 个人理解
当路径上出现一个障碍物时此时移动机器人到障碍物之间的路径必然要收到影响接下来的就是找到一段新的路径能够绕过障碍物 找到障碍物节点的子节点再找到子节点的邻接节点通过反向搜索找到代价最小的节点作为下一个选择的节点。
1.5 应用