Traditional Culture Encyclopedia - Traditional festivals - What are the algorithms applied to mobile robot path planning

What are the algorithms applied to mobile robot path planning

Machine people on the people to learn about the methods of path planning in two-dimensional binary map (FREE or OCCUPIED) scenarios. I see that a previous student answered with this diagram:

The list of algorithms on this diagram is still very comprehensive, reflecting the birth order of each algorithm. But it doesn't do a good job of categorizing them essentially. Just that student said graph-based and sampling-based classification method I feel a bit of conceptual overlap can not be such a classification of planning algorithms, the following through their own more than a year of research and practice of planning algorithms to carry out a simple classification:

The algorithms listed on this chart is still very comprehensive, reflecting the birth order of the algorithms. But it is not a good way to categorize them essentially. The graph-based and sampling-based categorization methods mentioned by the student just now are a bit of a conceptual overlap that does not allow us to categorize planning algorithms in this way, so here's a simple categorization of planning algorithms through my own research and practice over the past year:

Two broad categories:

1. complete

2. p>

2. sampling-based, also known as probabilistically complete

I Complete Planning Algorithms

A* Algorithm

The so-called complete means that a systematic criterion is met, i.e., if there is a path to a solution between the start and the goal, then a solution must be available. then a solution must be available, if no solution is available then it must mean that no solution exists.

This large class of algorithms in the field of mobile robotics is usually directly in the occupation grid grid map planning (can be simply understood as a binary map of the pixel matrix) to depth-first path-finding algorithm, breadth-first path-finding algorithm, Dijkstra (Dijkstra) algorithm for the ancestor to the A* algorithm (Dijstra algorithm in order to reduce the amount of computation for the purpose of adding a heuristic cost). Dijstra algorithm to reduce the amount of computation for the purpose of adding a heuristic cost) is most commonly used, the recent Theta * algorithm is in the A * algorithm on the basis of the addition of line-of-sight optimization makes the planned path does not depend entirely on the shape of the grid of the single-step (the answer to the thought of the algorithm is not very significant, is not the planning of a path and then simply smoothed out a little bit of it).

The advantage of a complete algorithm is that it is fully capable of capturing the solution, but the disadvantage is that the algorithm is more complex. This disadvantage is not obvious on 2D small-scale raster maps, but on large scales, especially multi-dimensional planning problems such as those for robotic arms and snake robots will be computationally expensive. This also directly motivates the second major class of algorithms.

Two sampling-based planning algorithms

RRT-connect algorithms

This kind of algorithms is generally not directly in the grid map for the minimum raster resolution of the planning, they use the map randomly sprinkled with a certain density of particles to abstract the actual map to assist planning. Such as the PRM algorithm and its variants is to scatter points on the original map, extract roadmap in such a topological map for planning; RRT and its excellent variant RRT-connect is in the map at each step of the random scatter a point, iterative growth tree approach, connect the start and end points for the purpose of the final planning in the connected map. These sampling-based algorithms are faster, but the cost of the generated paths (which can be interpreted as the length) is higher than that of the complete algorithm, and it can produce the situation that "there is a solution that can't be solved" (the case of the Narrow space pawn in PRM). Such algorithms are generally widely used in high-dimensional planning problems.

Three other planning algorithms

In addition to these two types of planning algorithms there are also indirect planning algorithms: Experience-based (Experience Graph algorithm) algorithms: experience-based planning algorithms, this is a kind of storage of previously planned paths, the establishment of a knowledge base, and relied on to carry out planning. Planning method, the subject is interested in reading the relevant literature. This method sacrifices a certain cost of space to achieve the advantage of both speed and completeness. There is also Fast-marching planning based on generalized Voronoi diagrams, which is similar to the fusion of dijkstra planning and potential fields, and which is able to perfectly plan paths located in the center of the road, away from obstacles. The respondent has also been working on such algorithms related work recently.

APF (Artificial Potential Field) algorithm

As for D*, Potential Field method, DWA (Dynamic Window Approach), SR-PRM belongs to the planning algorithms designed to avoid dynamic obstacles in dynamic environments, taking into account the robot dynamics model.