3D Motion Planning using Kinodynamically Feasible Motion Primitives in Unknown Environments
Autonomous vehicles are a great asset to society by helping perform many dangerous or tedious tasks. They have already been successfully employed for many practical applications, such as search and rescue, automated surveillance, exploration and mapping, sample collection, and remote inspection. In order to perform most tasks autonomously, the vehicle must be able to safely and efficiently navigate through its environment. The algorithms and techniques that allow an autonomous vehicle to find traversable paths to its destination defines the set of problems in robotics known as motion planning. This thesis presents a new motion planner that is capable of finding collision-free paths through an unknown environment while satisfying the kinodynamic constraints of the vehicle. This is done using a two step process. In the first step, a collision-free path is generated using a modified Probabilistic Roadmap (PRM) based planner by assuming unexplored areas are obstacle-free. As obstacles are detected, the planner will replan the path as necessary to ensure that it remains collision-free. In complex environments, it is often necessary to increase the size of the PRM graph during the replanning step so that the graph remains connected. However, this causes the algorithm to slow down significantly over time. To mitigate these issues, the novel local sampling and PRM regeneration techniques are used to increase the computational efficiency of the replanning step. The local sampling technique biases the search towards the neighborhood of the obstacle blocking the path. This encourages the planner to generate small detours around the obstacle instead of rerouting the whole path. The PRM regeneration technique is used to remove all non-critical nodes from the PRM graph. This is used to bound the size of the PRM graph so that it does not grow increasingly large over time. In the second step, the collision-free path is transformed into a series of kinodynamically feasible motion primitives using two novel algorithms: the heuristic re-sampling algorithm and the transformation algorithm. The heuristic re-sampling algorithm is a greedy heuristic algorithm that increases the clearance around the path while removing redundant segments. This algorithm can be applied to any piece-wise linear path, and is guaranteed to produce a solution that is at least as good as the initial path. The transformation algorithm is a method to convert a path into a series of kinodynamically feasible motion primitives. It is extremely efficient computationally, and can be applied to any piece-wise linear path. To achieve good computational performance with PRM based planners, it is necessary to use sampling strategies that can efficiently form connected graphs through narrow and complex regions of the configuration space. Many proposed sampling methods attempt to bias the sample density in favor of these difficult to connect areas. However, these methods do not distinguish between samples that lie inside narrow passages and those that lie along convex borders. The orthogonal bridge test is a novel sampling technique that can identify and reject samples that lie along convex borders. This allows connected PRM graphs to be constructed with fewer nodes, which leads to less collision checking and reduced runtimes. The presented algorithms are experimentally verified using an AR.Drone quadrotor unmanned aerial vehicle (UAV) and a custom built skid-steer unmanned ground vehicle (UGV). Using a simple kinematic model and a basic position controller, the AR.Drone is able to traverse a series of motion primitives with less than 0.3 m of crosstrack error. The skid-steer UGV is able to navigate through unknown environments filled with obstacles to reach a desired destination. Furthermore, the observed runtimes of the proposed motion planner suggest that it is fully capable of computing solution paths online. This is an important result, because online computation is necessary for efficient autonomous operations and it can not be achieved with many existing kinodynamic motion planners.