Advanced Controls Research Lab
2025
I joined this project because I wanted to make robots trustworthy in complex, fast-changing environments. Through a new MPC framework enhanced by PCIP and L1AO, I aimed to give robots the real-time adaptability needed for safe navigation among dynamic obstacles.
Key Contributions:
- Control Algorithm Design: Improved real-time control computation by 40% by implementing Prediction-Correction Interior Point (PCIP) and L1 Adaptive Optimization (L1AO) in Python for Model Predictive Control (MPC)
- Simulation Environment: Developed randomized, obstacle-rich simulation environment to evaluate controller performance under dynamic and uncertain scenarios
- Physical Drone Experiment: Built an experimental setup for multi-drone flight tests using ROS, Crazyswarm, and a Vicon motion capture system to validate control algorithms
- Paper Manuscript: Contributed to the preparation of a research manuscript on adaptive optimization for real-time
The paper is expected to be submitted by early 2026. For the details, please check out my report!
I wanted robots to navigate alongside humans with confidence, not hesitation, even when the world becomes chaotic. This led me to redesign MPC with PCIP and L1AO, creating a real-time planner that adapts quickly and keeps robots safe. By redesigning MPC with time-varying optimization, PCIP, and L1AO, I built a fast, resilient planner that adapts as the world moves to bring safe real-time autonomy closer to reality.
Motivation:
- Traditional MPC solvers are slowly varying, and static cost functions, which means it requires high computational cost, which is not suitable in the environment requires rapid reaction
- It degrade the performance, when object target is unpredictable
- Autonomous vehicles and robots need MPC for obstacle avoidance and optimal motion
- Prior approaches predict the change of the environment, which uses the obstacle’s dynamic model in MPC. Higher success rate, but limited in dynamic environment with complex dynamics.
Approach
Model Predictive Control (MPC)
ptimization with a cost composed of control effort, trajectory tracking, distance penalties, and a log-barrier term enforcing obstacle avoidance. The discrete-time dynamics and input limits form the constraints.
- Continuously adapt its gradient to track, enabling faster convergence to the new optimal solution as the environment changes.
- Therefore, it enables MPC run in real-time in dynamic environment without simplification or dynamic model of the obstacle
Based on that, we established the cost function based on the formulation of MPC.
Pseudo-code of MPC

Prediction-Correction Interior Point (PCIP)
PCIP accelerates MPC by predicting the next solution using the previous optimal state, then performing a small number of Newton correction iterations. This warm-start strategy efficiently tracks smooth variations in the environment, reducing solve time by more than 40% compared to ECOS.
Correction: it runs a few Newton iteration to “correct” errors and satisfy new constraints. PCIP can converge with fewer iteration
Prediction: It allows prediction step. It gives a “warm-start” that is already close to optimal. It also uses previous solution to predict the new solution.
Time Varying Optimization (TVO)
Because obstacles and reference trajectories evolve over time, the optimization problem itself changes at each control step. TVO provides a principled way to track the continuously shifting optimal solution x\*(t), forming the foundation of our solver.
L1 Adaptive Optimization (L1AO)
It borrowed principles from L1 Adaptive Control. L1AO augments PCIP by compensating for prediction errors in the TVO gradient, especially when obstacle motion is abrupt or non-smooth. It quickly adjusts the correction term at the iteration time scale, improving robustness under noise, model mismatch, and fast-changing constraints.
It mainly:
- detects when system behave differently than expected
- adapts parameters quickly and robustly
I specifically chose L1AO because it is:
- Fast: it adapts parameters at time scale of optimization iteration
- Robust: When large disturbance is detected, L1 keeps stability
- Plug&Play: it does not replace PCIP, but it wraps around it, adjusting parameters as needed
It is complementary with PCIP:
- L1AO handles non-smooth variation, which ensures the robustness
- PCIP exploits smooth time variation, which increases the efficiency
Experiment
We conducted two types of experiment: python simulation and physical drone experiments.
Python Simulation
In the 2D simulations, we model the robot as a discrete-time double integrator navigating toward a moving target while avoiding multiple dynamic obstacles. We benchmark ECOS, PCIP, and our PCIP–L1AO solver across increasing obstacle density and target-path complexity to evaluate computation time, robustness, and success rate. The results show that L1AO improves stability and obstacle clearance under rapidly changing environments without increasing computation time.

Physical Drone Experiment
We deploy our MPC–TVO–L1AO controller on a Crazyflie nano-quadrotor to evaluate its performance under real-world noise, communication delays, and model mismatch. The drone is commanded wirelessly in real time and tested in scenarios involving moving obstacles, including other quadrotors and humans. These experiments show that the L1AO-augmented controller maintains stable, collision-free trajectories despite unpredictable environment changes and imperfect state estimation. After graduating, I remained in the lab to write a full operation manual—since no one else knew how to run the system—and carried out two key experiments: one where an agent drone tracked a target drone while avoiding the others, and another where a drone followed a trajectory while safely navigating around a randomly walking person.
W
What I learned
Stabilizing MPC-L1AO By Tuning Parameters
Through this project, I saw how quickly real-world autonomy breaks down once you leave clean simulations. MPC rollouts frequently diverged due to poor warm-starts, horizon misalignment, and numerical stiffness in the log-barrier formulation, while TVO gradients occasionally exploded when obstacle motion changed faster than the solver could track. The L1AO layer also proved sensitive to noise: its adaptive term often amplified errors from inaccurate ∇ₜΦ estimates, requiring retuning of filter bandwidth, revisions to the piecewise-constant update law, and careful balancing of responsiveness and stability.
Stability Sensitivities in Dynamic Obstacle Modeling
Skills Used
Programming: Python, ROS
Packages: Numpy, CVXPY, CasADi, Crazyswarm
Tools: Vicon Motion Capture, Crazyflie
Theory: Model Predictive Control, L1 Adaptive Optmization, Time-Varying Optimization, Prediction-Correction Interior Point
