lorenzocalogero / LMPC_Quadrotors

Learning Model Predictive Control for Quadrotors Minimum-Time Flight in Autonomous Racing Scenarios

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Learning Model Predictive Control for Quadrotors Minimum-Time Flight in Autonomous Racing Scenarios

Description

This repository collects the code implementing a Learning Model Predictive Control (LMPC) algorithm for quadrotors autonomous racing.

The proposed algorithm allows to define a highly customizable 3D race track, in which multiple types of obstacles can be inserted. The controller is then able to autonomously find the best trajectory minimizing the quadrotor lap time, by learning from data coming from previous flights within the track, ensuring also the avoidance of all the obstacles therein.

Moreover, novel relaxation approaches for the LMPC optimization problem are presented, allowing to reduce it from a mixed-integer nonlinear program to a quadratic program.

drawing drawing drawing

Prerequisites

For running the code, it is required to install the third-party toolbox "YALMIP", available here.

References

The code is based on the following work:

  • L. Calogero, M. Mammarella, and F. Dabbene, "Learning Model Predictive Control for Quadrotors Minimum-Time Flight in Autonomous Racing Scenarios," IFAC-PapersOnLine, vol. 56, no. 2, pp. 1063–1068, 2023 [PDF]

About

Learning Model Predictive Control for Quadrotors Minimum-Time Flight in Autonomous Racing Scenarios


Languages

Language:MATLAB 100.0%