Optimal Control and Estimation

The aim of this self contained lecture course is to provide the participants with a working knowledge of modern control theory as it is needed for use in engineering applications, with a focus on optimal control and estimation. At the end of the course the students shall have full understanding of how to use the linear quadratic regulator (LQR), the Kalman filter, Lyapunov and Riccati Equations, dynamic programming, constrained optimal control, moving horizon estimation (MHE) and model predictive control (MPC).

Teaching Content

The focus of the course is state space control in discrete time. We start by discussing discrete time linear systems, their basic stability properties, time varying systems, linearization of nonlinear systems. We then enter optimal control, covering linear quadratic optimal control, linear quadratic regulation (LQR) control and Kalman filtering, Lyapunov and Riccati Equations, Dynamic Programming, Constrained Optimal Control, Moving Horizon Estimation (MHE) and Model Predictive Control (MPC). The course will be accompanied by weekly exercises with exercise questions and computer exercises using the environment MATLAB. In the last four weeks of the course (July), the participants will start to work, during the exercise sessions, on self chosen optimal control and estimation application projects, whose results will finally be presented to all course participants at the end of the semester.

Lecture Dates

The lecture takes place in the Summer Term 2015 at the technical faculty of the University of Freiburg in the building 101, Room 01-009/013.

  • Mondays, 2:15 pm – 4:00 pm
  • Fridays, 10:15 am – 12:00 pm

Lecture Slides and Recording

April 24: Lecture NotesRecording Part 1Recording Part 2
April 27: Lecture NotesRecording Part 1Recording Part 2
Mai 4: Lecture NotesRecording Part 1Recording Part 2
Mai 8: Lecture Notes – Recording Part 1Recording Part 2Recording Part 3Recording Part 4
Mai 11: Lecture Notes Part 1Lecture Notes Part 2Recording Part 1Recording Part 2
Mai 15: Lecture NotesRecording Part 1Recording Part 2
Mai 18: Lecture NotesRecording Part 1Recording Part 2
Mai 22: Lecture NotesRecording Part 1Recording Part 2
June 1: Lecture NotesRecording Part 1Recording Part 2
June 5: Lecture NotesRecording Part 1Recording Part 2
June 8: Lecture Notes –  Recording Part 1Recording Part 2
June 15: Lecture NotesRecording
June 19: Lecture Notes Recording Part 1Recording Part 2
June 22: Lecture NotesRecording Part 1Recording Part 2
June 26: Lecture Notes – Recording Part 1Recording Part 2
June 29: Lecture NotesRecording Part 1Recording Part 2
July 3: Lecture NotesRecording Part 1Recording Part 2
July 6: Lecture NotesRecording Part 1Recording Part 2

Exam information

To be admitted to the exam, you should achieve 50% of the total points of the exercise sheets. There will be a written exam.
Past Exam: OCE-exam 2014

The exam date is August 14, 2015, 10:00am. The exam is an open-book exam where written material such as the script is allowed, while electronic devices are not allowed.

Exercises

The exercise sessions take place every Wednesday from 4:00 pm s.t. to 6:00 pm at the technical faculty of the University of Freiburg in the building 101, 01-009/013.
Exercises are always distributed Mondays and should be handed in on the following Monday.
The first exercise sheet will be distributed on Monday April 27th. The first exercise session will be on Wednesday April 29th.
The exercise sheet can be handed before the lecture on Monday or sent by mail to:
Jonas.Koenemann [at] imtek.de

Submission deadline is always Mondays 2.15pm, also for submission by mail.
Exercises should be done in groups of 1-2 persons.

Exercise Sheets

Submission standard:
If you submit by email, submit a single zip or tar.gz file. The name should shat with oce, followed by a two digit number of the exercise sheet, followed by all surnames. E.g. oce02koenemann_mustermann.zip. Please use the same naming convention for the subject of the email. The archive should only contain a single pdf file including all answers to theoretical questions and all figures/plots which are generated from Matlab. Try to keep the amount of figures small (make use of subplots if that makes sense), and label the plots appropriately. Additionally, the archive can contain multiple matlab .m files. Please make sure that you have all answers in the pdf file and not as comments in the code.

Exercise Sheet 1birth_mortality_rates.m – solution.m
Exercise Sheet 2paperplane_solution.m
Exercise Sheet 3pendulum_template.mpendulum_solution.m
Exercise Sheet 4lqr_template.mlqr_solution.m
Exercise Sheet 5nlp_solution.m
Exercise Sheet 6sqp_template.msqp_solution.m
Exercise Sheet 7integrate_airplane_ode.mphi_obj.mAD_solution.zip
Exercise Sheet 8kerbal_solution.m
Exercise Sheet 9 (final project)Template Report 1Template Report 2

Please fill in the spreadsheet for the final project:
Spreadsheet

Script

The script which is followed closely during the lecture, is available here:
Script: Optimal Control And Estimation