Model predictive control (MPC) is an advanced control technique that is able to flexibly deal with complex, multivariable systems with high performance demands operating under constraints. MPC becomes more and more important in the field of renewable energy systems because it can account systematically for the complex and varying system demands while maximizing resource efficiency during operation. During the lectures the following topics will be treated: Introduction to MPC for energy systems Basics of dynamic systems simulation and optimization Fundamentals and solution methods of linear MPC Fundamentals and solution methods of nonlinear MPC Special MPC formulations (mixed-integer) Modeling and control of building and solar energy systems and heating networks Modeling and control of wind energy systems News Office hours during exam preparation: 14. August 10:00 - 12:00, Building 102, R00 102 Exam-related topics encompass all themes addressed within the script, with the exception of sections marked with * Sample exam (and solution) for exam preparation. Script The script is updated on a weekly basis. The latest version can be found here: MPC_for_RES_script.pdf (version of 10/08/2023 with minor improvements due to helpful student comments) Lectures The lecture will be held by Dr. Lilli Frison (Fraunhofer ISE, IMTEK) and Jochem De Schutter (IMTEK) and will take place at the Technical Faculty of the University of Freiburg in building 101, room 00 026. Tuesday, 12:00 - 14:00 The lecture plan: Date Topic Voluntary exercises Material 19.04.23 Introduction 01_introduction.pdf 26.04.23 Dynamic systems 03.05.23 Modelling of renewable energy systems: Wind energy systems Exercise 1 (sol) (Dynamic systems) 10.05.23 Modelling of renewable energy systems: Buildings, solar energy, heating networks 17.05.23 Background on optimization Exercise 2 (sol) (Optimization) Exercise2.zip (sol) Newton_Method_Examples.ipynb 24.05.23 Linear model predictive control (part 1) 31.05.23 *** Pentecost break *** 07.06.23 Linear model predictive control (part 2) Exercise 3 (sol) (LMPC) ex3_lmpc_example.py ex3_lmpc_example_sol.py 14.06.23 Linear model predictive control (part 3) & Midterm Quiz 21.06.23 Linear model predictive control (part 4) Exercise 4 (sol) (LMPC) ex4_lmpc_example.py ex4_lmpc_example_sol.py 28.06.23 Nonlinear model predictive control hello_world_rockit.py 05.07.23 MPC of wind energy systems 12.07.23 State estimation Exercise 5 (sol) (NMPC) MHE_Building.py MPC_overview_casadi.pdf ex5_nmpc_example.py ex5_nmpc_example_sol.py 19.07.23 Mixed-integer MPC of RES lecture_mimpc.pdf Exercises Bi-weekly voluntary exercises will be provided here in order to help the student to understand the theory better. A model solution to the exercises will be published here. Some time will be reserved in the lectures for discussing a selection of the exercises. The software part of the exercises will be Python-based. For formulating and solving optimal control problems, we will heavily lean on the open-source software packages rockit and CasADi. Exam The exam will be written, closed-book, with a duration of 2 hours. A single A4 page (one-sided) filled with handwritten notes is allowed. Literature Rawlings, J, Mayne, D and Diehl, M., Model predictive control: Theory, computation and design, Nob Hill publishing 2017