Looking for Beginner-Friendly MPC and Optimization Resources!

Hello everyone! :slightly_smiling_face:

I’m preparing study materials for an MPC training course we’re setting up in our lab. The ultimate goal is to help our team learn how to develop practical MPC controllers using Acados.

So far, I’ve learned MPC through various open-source code references, but I’d like this study group to be more structured and comprehensive.
Right now, I’m working on a foundational curriculum and would love to get advice from those who’ve studied in this field. If anyone has recommendations for essential resources on optimization basics or MPC—whether introductory lectures, online courses, or books—I’d greatly appreciate your suggestions!

Thank you in advance for any insights you can share! :pray:

1 Like

Hello Junhee,

a good reference is what we use in our teaching at syscop, the home of acados. It has more or less everything you need to know to understand what is acados doing under the hood.

The lectures have video recordings, exercises and free scripts/textbooks:
Numerical optimization (everything you need to know to solve a generic optimization problem on a computer, theroy and algorithms): Numerical Optimization | syscop
Numerical optimal control (everything you need to know to solve a single instace of an MPC problem, i.e. an optimal control problem): Numerical Optimal Control | syscop

A nice read is Chapter 8 of this book, it is concerned with the various formulations and ingredients which you will see in acados: https://publications.syscop.de/Rawlings2017.pdf
The other chapters are great as well, but are more focusing on system theoretic aspects.

If you want to extend your knowledge on numerical MPC beyond the courses above, this PhD thesis is a great resource: https://publications.syscop.de/Quirynen2017.pdf

Best regards,
Armin

2 Likes

Adding to Armin’s suggestions:

The short course on MPC Theory and Computation provides a very nice overview and it includes an exercise using acados.

1 Like

This semester, the course on Numerical Optimal Control includes a nice exercise (with code template and solutions) using acados.

Cf. sheet 10