As mentioned in the previous article, we can run a A * or DJ algorithm in Configuration Space in the robot trajectory planning. Whether a * or DJ algorithm, must search for the neighborhood, if 2 degrees of freedom has 4 neighbors, 2 degrees of freedom has 8 neighbors. If the 6-DOF robot is commonly used in industry, then there is 2^6 neighborhood ... Obviously, for the trajectory planning of this serial algorithm, such a high dimensional search space is not appropriate .... So we have the cost-effective, robust, but high-efficiency trajectory planning algorithm based on sampling. PRM (Probabilistic road map). Using the PRM to generate a sparse path graph, and then using a A * algorithm for trajectory planning in the path map, can significantly improve efficiency.
1. PRM algorithm for generating permanent map
The pseudo-code of the PRM algorithm is as follows:
Where dist function is the calculation of the distance between points and points in the configuration space. The Local Planner is a function of whether the checkpoint and point lines pass through a non-free zone in the configuration Space.
The essence of this algorithm is the Monte Carlo algorithm. This makes it easy to parallelize on the GPU. The biggest difficulty is still in the non-free Area inspection section ...
The green point is a random sampling point.
2. RRT algorithm for generating one-time path in space
Most of the time, we don't need to generate an entire map that can be reused, and we need to find a moving path in space. For example, an unmanned car from a to B, we only need to generate a single path, back when the obstacles may have changed. At this point we use the RRT algorithm.
The root is the starting and ending point, as long as the last two trees can be merged, then the path to the beginning to the end is found.
Robotics-trajectory planning (sampling Method)