  Neglecting complex aerodynamic effects hinders high-speed yet high-precision
multirotor autonomy. In this paper, we present a computationally efficient
learning-based model predictive controller that simultaneously optimizes a
trajectory that can be tracked within the physical limits (on thrust and
orientation) of the multirotor system despite unknown aerodynamic forces and
adapts the control input. To do this, we leverage the well-known differential
flatness property of multirotors, which allows us to transform their nonlinear
dynamics into a linear model. The main limitation of current flatness-based
planning and control approaches is that they often neglect dynamic feasibility.
This is because these constraints are nonlinear as a result of the mapping
between the input, i.e., multirotor thrust, and the flat state. In our
approach, we learn a novel representation of the drag forces by learning the
mapping from the flat state to the multirotor thrust vector (in a world frame)
as a Gaussian Process (GP). Our proposed approach leverages the properties of
GPs to develop a convex optimal controller that can be iteratively solved as a
second-order cone program (SOCP). In simulation experiments, our proposed
approach outperforms related model predictive controllers that do not account
for aerodynamic effects on trajectory feasibility, leading to a reduction of up
to 55% in absolute tracking error.
