Control and Optimization in Robotics — University of Pennsylvania
3D MPC-Controlled Quadrotor with Inverted Pendulum
Python
Drake
MPC
Direct Collocation
RRT*
Optimization
This project tackles the classic but challenging problem of balancing an inverted pendulum atop a
flying quadrotor — a highly nonlinear system combining aerial dynamics with inherently unstable
pendulum motion.
The pipeline combines three key components:
- Direct Collocation generates dynamically feasible reference trajectories that respect the joint system constraints.
- Model Predictive Control (MPC) tracks those trajectories in real time, solving a constrained optimization problem at each timestep to keep the pendulum upright while the quadrotor moves.
- RRT* provides collision-free path planning in obstacle-rich environments, feeding waypoints into the trajectory generator.
The result is a quadrotor that can navigate through cluttered spaces while maintaining balance of the
attached pendulum — a problem that would defeat most single-controller approaches.