Examiner and lecturer:
Johan Karlsson,
email: johan.karlsson@math.kth.se,
room 3550,
Lindstedtsv 25,
phone: 790 8440
Tutorial exercises:
Yibei Li,
yibei@kth.se,
room 3736,
Lindstedtsv 25,
phone: 790 6294.
Introduction
Optimal control is the problem of
determining the control function for a dynamical system to minimize a
performance index. The subject has its roots in the calculus of
variations but it evolved to an independent branch of applied
mathematics and engineering in the 1950s. The rapid development of the
subject during this period was due to two factors. The first are two
key innovations, namely the maximum principle by L. S. Pontryagin and
the dynamic programming principle by R. Bellman. The second was the
space race and the introduction of the digital computer, which led to
the development of numerical algorithms for the solution of optimal
control problems. The field of optimal control is still very active
and it continues to find new applications in diverse areas such as
robotics, finance, economics, and biology.
Course goals
The goal of the course is to provide an understanding of the main
results in optimal control and how they are used in various
applications in engineering, economics, logistics, and biology. After
the course you should be able to
Course material
The required course material consists of the following lecture and
exercise notes on sale at Kårbokhandeln.
[Lecture notes],
[Exercise notes].
Prerequisites
The student is required to have passed the course optimization SF1841
or a course with similar content. The student should hence be familiar
with concepts and theory for optimization: linear, quadratic, and
nonlinear optimization; optimality conditions, lagrangian relaxation
and duality theory. Familiarity with systems theory and state space is
not required but recommended.
Course requirements
The course requirements consista of three mandatory homework sets and a final written
examination. The homework sets may also give you bonus credits in the examination.
PhD course SF3852
It is possible to read this course as a PhD level course. For this, an
extra project and at least a B on the exam is required. Email the examiner to get details regarding the project.
Homework sets
Homework set 0: This homework set provides some review of systems theory and optimization as well as a Matlab exercise that use the toolbox CVX. I recommend that everyone does problem 2. Homework set 0 is optional and does not give bonus points to the exam, however, you can get feedback on your solutions if you hand it in before the deadline.
Each of the homework sets 1-3 are mandatory and consists of three-five problems.
The first two-three problems are methodology problems where you practice on the topics of the course and apply them to examples. Among the last two problems, one will focus on more theoretical nature and helps you to understand the mathematics behind the course. It can, for example, be to derive an extension of a result in the course or to provide an alternative proof of a result in the course. The other will focus on implementation and the student is required to make a Matlab program that solve a problem numerically.
You are required to get at least 10 points on each of the homeworks 1 and 3, and do the project in homework 2. Each successfully completed homework set handed in on time also gives you maximally 2 bonus points for the exam. The bonus is only valid during the year it is acquired. The exact requirements will be posted on each separate homework set. The homework sets will be posted on the homepage roughly two weeks before the deadline. The solutions to the homeworks should be uploaded on Canvas. Please prepare the solutions as a pdf in LaTeX or comparable software.
Written exam
You may use Beta Mathematics Handbook and the following formula sheet
(pdf) .
The exam will consist of five problems that give maximally 50
points. These problems will be similar to those in the homework
assignments and the tutorial exercises. The preliminary grade levels
are distributed according to the following rule, where the total score
is the sum of your exam score and maximally 6 bonus points from the
homework assignments (max credit is 56 points). These grade limits can
only be modified to your advantage.
| Total credit (points) | Grade |
|---|---|
| 45-56 | A |
| 39-44 | B |
| 33-38 | C |
| 28-32 | D |
| 25-27 | E |
| 23-24 | FX |
Appeal
If your total score (exam score + maximum 6 bonus points from the
homework assignments and the computational exercises) is in the range 23-24
points then you are allowed to do a complementary examination for
grade E. In the complementary examination you will be asked to solve
two problems on your own. The solutions should be handed in to the
examiner in written form and you must be able to defend your solutions
in an oral examination. Contact the examiner no later than three weeks
after the final exam if you want to do a complementary exam.
Course evaluation
At the end of the course you will be asked to complete a course
evaluation form online.
The lectures and exercises are given on zoom.
Lectures
https://kth-se.zoom.us/j/61600010596
Exercises
https://kth-se.zoom.us/j/61945102589
Office hours: Fridays 14.00-15.00
https://kth-se.zoom.us/j/61945102589
Preliminary schedule for 2021
| Type | Date | Time | Topic | Content (preliminary) |
|---|---|---|---|---|
| L1 | 2021-08-30 | 13:15 | Introduction Discrete dynamic programming | Pages 17-23 |
| L2 | 2021-08-31 | 10:15 | Discrete dynamic programming Discrete PMP | Pages 22-24 |
| E1 | 2021-09-01 | 13:15 | Discrete dynamic programming Linear systems | |
| L3 | 2021-09-02 | 08:15 | Discrete dynamic programming Infinite time horizon | Pages 24-26 |
| L4 | 2021-09-06 | 13:15 | Model predictive control | |
| E2 | 2021-09-07 | 10:15 | Model predictive control | |
| L5 | 2021-09-08 | 13:15 | Dynamic programming | Pages 35-39 |
| L6 | 2021-09-09 | 08:15 | Dynamic programming and review | Pages 5-7, 39-44 |
| E3 | 2021-09-13 | 13:15 | Dynamic programming | |
| L7 | 2021-09-14 | 10:15 | Mathematical preliminaries (ODE theory etc) | Pages 47-54 |
| L8 | 2021-09-15 | 13:15 | Pontryagins minimum principle (PMP) (using small variations) | Pages 59-62
and a basic example |
| L9 | 2021-09-16 | 08:15 | PMP (control constraints) | Examples on pages 62-63, 74-75 |
| E4 | 2021-09-20 | 13:15 | PMP I | |
| L10 | 2021-09-21 | 10:15 | PMP (optimal control to a manifold) | Pages 71-81 |
| L11 | 2021-09-23 | 08:15 | PMP (generalizations) | Pages 81-88 |
| E5 | 2021-09-27 | 13:15 | PMP II: Time optimal control | |
| L12 | 2021-09-28 | 10:15 | PMP applications | Pages 90-96 |
| E6 | 2021-09-30 | 08:15 | PMP III | |
| E7 | 2021-10-04 | 13:15 | PMP IV | |
| L13 | 2021-10-06 | 13:15 | Computational methods Seminar (student presentation) | |
| L14 | 2021-10-07 | 08:15 | Topics: Infinite time horizon optimal control | Pages 97-109 |
| L15 | 2021-10-11 | 13:15 | Topics/Backup | |
| E8 | 2021-10-13 | 13:15 | Infinite time horizon optimal control and Review: old exams | |
| L16 | 2021-10-14 | 08:15 | Review | |
| Exam | 2021-10-28 | 08:00 | Exam |