Mixed-Integer Model Predictive Control

Mixed-integer program to perform path-planning with model predictive control for 2-D quadrotor model

As part of MIT’s course 16.413 I worked on a team to derive a model-predictive controller for a simulated quadrotor in a non-convex planning space. I used SCIP, an open-source optimization software in conjunction with simplified quadrotor dynamics model to perform the path-planning subject to obstacle avoidance constraints.

Because objects could be placed arbitrarily within the environment, the planning problem was inherently non-convex. For this reason the problem was modeled as a mixed-integer problem.

In this repo all of our work is shown in a Jupyter Notebook, along with a brief explanation of some relevant topics in optimization and a derivation of the quadrotor dynamics.

Simulator Snapshot

A snapshot of the simulator, the planner had to find a trajectory to the other side of the square while adhering to the vehicle dynamics.