The problem addressed in the present thesis document is the development of a controller based on a neural network for autonomous flight in quadrotor systems. The controller’s objective is to govern the quadcoper such that its center of mass position reaches a specific point, remaining as stable as possible both during flight and upon reaching its target. Given the complex and unstable nature of quadcopters, an appropriate neural network architecture and training algorithm had to be designed. The controller has been implemented with a single multi layer perceptron. Starting from the quadcopter’s current state, the neural network produces the correct rotors’ speed values that the quadcopter needs to optimally reach the target, both in terms of stability and flight speed. The neural network’s training has been achieved using a custom genetic algorithm, alongside a numerical simulation, where particular emphasis is put in the cost function’s definition. Lastly, the neural controller has been employed and tested to autonomously follow a complex path. The results are promising: the neural controllers manage to effortlessly follow several types of paths with adequate precision and optimal stability levels while maintaing low travel times.

In questa tesi viene affrontato il problema dello sviluppo di un controllore per sistemi di volo autonomo quadrirotore basato su una rete neurale. Il controllore ha come obiettivo il far raggiungere al centro di massa del drone un preciso punto, rimanendo il più stabile possibile sia durante il volo sia una volta raggiunto il bersaglio. Per via della natura complessa e instabile dei quadricotteri, è stato necessario progettare un’appropriata strategia di controllo. Il controllore è stato realizzato tramite un singolo percettrone multistrato che, partendo dallo stato attuale del drone in ogni istante, produce i corretti valori di velocità che i quattro rotori devono assumere per raggiungere un bersaglio in modo ottimale, sia in termini di stabilità che di velocità. Per addestrare la rete neurale è stato implementato un particolare algoritmo neuro evolutivo, affiancato da una simulazione numerica, ponendo particolare enfasi nella definizione della funzione di costo. Infine, il controllore neurale è stato utilizzato e testato per seguire autonomamente un percorso complesso. I risultati sono promettenti: i controllori neurali riescono a svolgere efficacemente svariati tipi di percorsi con adeguata precisione e con ottimi livelli di stabilità, mantenendo bassi tempi di percorrenza.

Progettazione e sviluppo di un controllore neuroevolutivo per sistemi di volo autonomo quadrirotore

MARIANI, MANUEL
2019/2020

Abstract

The problem addressed in the present thesis document is the development of a controller based on a neural network for autonomous flight in quadrotor systems. The controller’s objective is to govern the quadcoper such that its center of mass position reaches a specific point, remaining as stable as possible both during flight and upon reaching its target. Given the complex and unstable nature of quadcopters, an appropriate neural network architecture and training algorithm had to be designed. The controller has been implemented with a single multi layer perceptron. Starting from the quadcopter’s current state, the neural network produces the correct rotors’ speed values that the quadcopter needs to optimally reach the target, both in terms of stability and flight speed. The neural network’s training has been achieved using a custom genetic algorithm, alongside a numerical simulation, where particular emphasis is put in the cost function’s definition. Lastly, the neural controller has been employed and tested to autonomously follow a complex path. The results are promising: the neural controllers manage to effortlessly follow several types of paths with adequate precision and optimal stability levels while maintaing low travel times.
2019
2020-07-24
Design and development of a neuroevolutionary controller for autonomous flight quadcopter systems
In questa tesi viene affrontato il problema dello sviluppo di un controllore per sistemi di volo autonomo quadrirotore basato su una rete neurale. Il controllore ha come obiettivo il far raggiungere al centro di massa del drone un preciso punto, rimanendo il più stabile possibile sia durante il volo sia una volta raggiunto il bersaglio. Per via della natura complessa e instabile dei quadricotteri, è stato necessario progettare un’appropriata strategia di controllo. Il controllore è stato realizzato tramite un singolo percettrone multistrato che, partendo dallo stato attuale del drone in ogni istante, produce i corretti valori di velocità che i quattro rotori devono assumere per raggiungere un bersaglio in modo ottimale, sia in termini di stabilità che di velocità. Per addestrare la rete neurale è stato implementato un particolare algoritmo neuro evolutivo, affiancato da una simulazione numerica, ponendo particolare enfasi nella definizione della funzione di costo. Infine, il controllore neurale è stato utilizzato e testato per seguire autonomamente un percorso complesso. I risultati sono promettenti: i controllori neurali riescono a svolgere efficacemente svariati tipi di percorsi con adeguata precisione e con ottimi livelli di stabilità, mantenendo bassi tempi di percorrenza.
File in questo prodotto:
File Dimensione Formato  
Neuro_evolutive_controller_for_quadcopter_systems-Mariani-Fiori.pdf

Open Access dal 24/07/2023

Dimensione 20.66 MB
Formato Adobe PDF
20.66 MB Adobe PDF Visualizza/Apri

I documenti in UNITESI sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/20.500.12075/2523