Intern
at Demcon Unmanned Systems
Mission
Demcon Unmanned Systems manufactures and supplies unmanned vessels with autonomous capabilities. This internship project is about designing an efficient real-time sampling based path planning algorithm for the path tracking of unmanned vessels, which fulfills following requiremets:
- to follow the predefined path as close as possible and reach the destination;
- to avoid the obstacles when they get in the way of the predefined path;
- to perform in real-time;
- to generate the path within certain angle constraints.
Method
A new sampling-based tree generating algorithm is proposed to address the issues of brute force branching tree and RRT. It is called Torch, because the generated tree look similar to the torch that burns fire on top.
The tree will be generated when there is an obstacle in the way. It is initialized with certain angle \(\alpha\), field of view, and number of layeers. Compared with brute force branching, the number of samples required by Torch grows polynomially with the increase of number of layers, instead of exponentially. Compared with RRT, Torch is efficient in sampling in the nearby regions.
At the first timestep, the algorithm involves determining the initial point, generating edges, connecting to the referenced path and selecting the optimal path.
At the next timestep, when the vessel travels on one of the edges and deviates from the referenced path, the initial point will be updated, and the tree will be generated at a different direction. The following steps of connecting to the original path and selecting the optimal path remains the same.
The algorithm Torch can also be combined with RRT in order to cover a larger sampling region. In this way, Torch provides a warmstart for the RRT, and RRT is generated starting from the distal layer of Torch. Torch-RRT is demonstrated in Fig. 9 and Fig. 10.
Results
The performance of Torch and Torch-RRT is demonstrated in scenarios containing a single obstacle, a wide obstacle, a long obstacle and multiple obstacles. Tests have shown that the computational efficiency and CPU consumption of Torch and Torch-RRT outperform brute force branching and RRT.
Report
The report can be found here.