Real-Time Autonomous Obstacle Avoidance For Unmanned Aerial Vehicles

&lt;div&gt;In this dissertation, methods for real-time trajectory generation and autonomous obstacle avoidance for fixed-wing and quad-rotor unmanned aerial vehicles (UAV) are studied. A key challenge for such trajectory generation is the high computation time required to plan a new path to safely maneuver around obstacles instantaneously. Therefore, methods for rapid generation of obstacle avoidance trajectory are explored. The high computation time is a result of the computationally intensive algorithms used to generate trajectories for real-time object avoidance. Recent studies have shown that custom solvers have been developed that are able to solve the problem with a lower computation time however these designs are limited to small sized problems or are proprietary. Additionally, for a swarm problem, which is an area of high interest, as the number of agents increases the problem size increases and in turn creates further computational challenges. A solution to these challenges will allow for UAVs to be used in autonomous missions robust to environmental uncertainties.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;In this study, a trajectory generation problem posed as an optimal control problem is solved using a sequential convex programming approach; a nonlinear programming algorithm, for which custom solver is used. First, a method for feasible trajectory generation for fast-paced obstacle-rich environments is presented for the case of fixed-wing UAVs. Next, a problem of trajectory generation for fixed-wing and quad-rotor UAVs is defined such that starting from an initial state a UAV moves forward along the direction of flight while avoiding obstacles and remaining close to a reference path. The problem is solved within the framework of finite-horizon model predictive control. Finally, the problem of trajectory generation is extended to a swarm of quad-rotors where each UAV in a swarm has a reference path to fly along. Utilizing a centralized approach, a swarm scenario with moving targets is studied in two different cases in an attempt to lower the solution time; the first, solve the entire swarm problem at once, and the second, solve iteratively for a UAV in the swarm while considering trajectories of other UAVs as fixed.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Results show that a feasible trajectory for a fixed-wing UAV can be obtained within tens of milliseconds. Moreover, the obtained feasible trajectories can be used as initial guesses to the optimal solvers to speed up the solution of optimal trajectories. The methods explored demonstrated the ability for rapid feasible trajectory generation allowing for safe obstacle avoidance, which may be used in the case an optimal trajectory solution is not available. A comparative study between a dynamic and a kinematic model shows that the dynamic model provides better trajectories including aggressive trajectories around obstacles compared to the kinematic counterpart for fixed-wing UAVs, despite having approximately the same computational demands. Whereas, for the case of quad-rotor UAVs, the kinematic model takes almost half the solution time than with a reduced dynamic model, despite having approximately the similar range of values for the cost function. When extended to a swarm, solving the problem for each UAV is four to seven times computationally cheaper than solving the swarm as a whole. With the improved computation time for trajectory generation for a swarm of quad-rotors using centralized approach, the problem is now reasonably scalable, which opens up the possibility to increase the number of agents in a swarm using high-end computing machines for real-time applications. Overall, a custom solver jointly with a sequential convex programming approach solves an optimization problem in a low computation time.&lt;/div&gt;