In my thesis, the path planning of car-like robots is examined that is a vital subtask of developing autonomous cars. Besides the traditional automobile manufacturers, many software developers conduct research related to the aforementioned topic, as it is considered to be one of the most promising development for a more comfortable and more secure transportation.
Various path planning algorithms are explained in my study that can be utilized in an environment populated with obstacles. Owing to the approximation path planning method I’m investigating, different global and local planners can be connected in order to avoid collision on the path, and also ensure the kinematic constraints of the model.
The kinematic constraints of the mobile robot are being taken into account by the local path planner, that means not only the minimal turning radius of real cars, but also the continuity of the curvature. I examine two types of such path planning algorithms: the CCRS (Continuous Curvature Reeds and Shepp), and the T*TS planner that is currently under development at the Department of Automation and Applied Informatics. Both of them are created by generalizing and altering simpler algorithms. The CCRS is based on the so-called Reeds-Shepp paths that is widely used by car-like robots, meanwhile the T*TS is the generalization of the C*CS path planner that is previously developed at the department. Both methods apply the same approach for reaching the continuous curvature: the straight and arc shaped path elements are connected with clothoid curves. Both of the local path planners are proved to result in a convergent approximation algorithm.
The T*TS planning method is explained in detail, and the operation of both local path planners is presented as part of an approximation algorithm for various global paths. I implemented the algorithms as part of a C++ library. Beyond that I developed a testing process that compares the relation of the presented local planners with global planners from different perspectives, and it makes the quantitative evaluation of the performance of algorithms and the quality of the resulting paths possible.