The Dijkstra algorithm is a classic path planning method, which in a discrete graph space, can start from a specified source node and find the shortest path between the source node and all other nodes in the graph. However, to the best of our knowledge, there is no effective method that achieves a function similar to that of the Dijkstra's algorithm in a continuous space. In this study, an optimal path planning algorithm called convex dissection topology (CDT)-Dijkstra is developed, which can quickly compute the global optimal path from one point to all other points in a 2D continuous space. CDT-Dijkstra is mainly divided into two stages: SetInit and GetGoal. In SetInit, the algorithm can quickly obtain the optimal CDT encoding set of all the cut lines based on the initial point x_{init}. In GetGoal, the algorithm can return the global optimal path of any goal point at an extremely high speed. In this study, we propose and prove the planning principle of considering only the points on the cutlines, thus reducing the state space of the distance optimal path planning task from 2D to 1D. In addition, we propose a fast method to find the optimal path in a homogeneous class and theoretically prove the correctness of the method. Finally, by testing in a series of environments, the experimental results demonstrate that CDT-Dijkstra not only plans the optimal path from all points at once, but also has a significant advantage over advanced algorithms considering certain complex tasks.
翻译:Dijkstra算法是一种经典的路径规划方法,在离散图空间中,它能从指定源节点出发,找到源节点与图中所有其他节点之间的最短路径。然而,据我们所知,目前尚无有效方法能在连续空间中实现类似Dijkstra算法的功能。本研究提出了一种名为凸剖分拓扑(CDT)-Dijkstra的最优路径规划算法,该算法能快速计算二维连续空间中从一个点到所有其他点的全局最优路径。CDT-Dijkstra主要分为两个阶段:SetInit和GetGoal。在SetInit阶段,算法能基于初始点x_{init}快速获取所有割线的最优CDT编码集;在GetGoal阶段,算法能以极高速度返回任意目标点的全局最优路径。本研究提出并证明了仅考虑割线上点的规划原理,从而将距离最优路径规划任务的状态空间从二维降至一维。此外,我们提出了一种在同构类中快速寻找最优路径的方法,并从理论上证明了该方法的正确性。最后,通过在一系列环境中的测试,实验结果表明CDT-Dijkstra不仅能一次规划出所有点的最优路径,而且在处理某些复杂任务时相比先进算法具有显著优势。