This repository contains example code for Perfecting Periodic Trajectory Tracking: Model Predictive Control with a Periodic Observer by Luis Pabon, Johannes Köhler, John Irvin Alora, Patrick Benito Eberhard, Andrea Carron, Melanie N. Zeilinger, and Marco Pavone.
The repository is designed to facilitate understanding and implementation of
Ensure Python 3 is installed on your system. The project dependencies are listed in requirements.txt.
- Clone the repository to your local machine.
- Create a virtual environment (recommended) for the project to manage dependencies.
- Install dependencies by navigating to the repository's root directory and executing:
pip install -r requirements.txt
This command installs all the necessary Python packages as specified in requirements.txt.
Open the provided Jupyter notebook and run the cells sequentially. The notebook will guide you through:
-
Offline Design: Preparation steps and design considerations for
$\Pi$ -MPC. -
Online Operation and Simulation: Simulation with the pendulum tracking a periodic trajectory, demonstrating the ability of
$\Pi$ -MPC to achieve minimal tracking errors despite model mismatch.
For questions or support, please file an issue on the GitHub repository page. Contributions and feedback are welcome.