Final Degree Project - University of León

Can a neural network learn to control a quadcopter?

A simulator, three neural networks and a comparison with classical controllers to study how a drone follows different trajectories.

01 / Project

From model to experiment

To explore that question, I built a six-degree-of-freedom quadcopter simulator with actuators, disturbances and repeatable trajectories.

I tuned classical PD controllers and generated examples of their behaviour. I then trained three kinds of networks — MLP, GRU and LSTM — to imitate the force requested by those experts. The networks replace the outer position-control loop, while the classical inner loop continues to stabilise attitude.

02 / Findings

Results and limits

GRU and LSTM imitated expert force more closely, but MLP tracked circles and Lissajous trajectories better in the known test set. Performance outside the training distribution depended on the scenario and included failures; no architecture was universally superior.

The study uses simulation, with simplified aerodynamics, wind and sensors. It does not validate real flight. The report describes 184 test and 80 out-of-distribution runs with eight controllers per scenario: four family PDs, three networks and a representative PD. The report details the criteria and limits.

NeuroFlight local guide (Spanish): its regenerated models and new simulations are separate from the TFG results.

03 / Report

Project documentation

Your browser cannot display the embedded PDF. Open the report in a new tab.