EN530.603.F2018 Applied Optimal Control


  • Course Title: Applied Optimal Control
  • Course Number: EN530.603, Fall 2018
  • Time: MW 3:00-4:15
  • Location: Gilman 55
  • Professor: Marin Kobilarov
    • Contact: marin(at)jhu.edu
    • Office Hours: M 1:00-2:00, Hackerman 117
  • Teaching Assistants:
    • Gabe Baraban [gbaraba1(at)jhu.edu] and Subhransu Mishra [smishra9(at)jhu.edu]
    • TA Office Hours: M 11:00-12:00, Location: Hackerman 306
  • File Submission  (use this link to submit homework code, project presentations, etc…)

The course focuses on the optimal control of dynamical systems subject to constraints and uncertainty by studying analytical and computational methods leading to practical algorithms. Topics include nonlinear optimization, calculus of variations, dynamic programming, linear quadratic (Gaussian) control, numerical trajectory optimization, optimal estimation (e.g. Kalman filtering, batch estimation), stochastic control. The methods and algorithms will be illustrated through implementation of various simulated examples. A class project will involve optimal control and estimation implementation using robotic systems simulated with a physics-based virtual reality environment. Recommended Course Background: linear algebra, differential equations, basic probability theory; experience with control systems; programming in MATLAB and/or Python.


  • Nonlinear Optimization Basics
  • Calculus of Variations
  • Dynamic Programming
  • Implementation and Numerical methods
  • Optimal filtering for linear and nonlinear systems
  • Optimal feedback control with uncertainty
  • Stochastic control
  • Applications to non-trivial dynamical systems (in simulation)


There are a number of good textbooks on optimal control and nonlinear optimization. The suggested primary books are especially useful since they contain almost all of course material and are good self-contained references. The only exception are the last few lectures related to stochastic control and numerical methods. Bertsekas provides a thorough study of nonlinear programming with detailed proofs but also guidelines for implementation with provable performance; Kirk’s book is one of the best introduction to optimal control and calculus of variations, but does not deal with uncertainty; Stengel’s book includes a comprehensive study of both control and estimation but lacks some of the details found in Kirk; Gill, Murray, and Wright book is an excellent reference targeted to more practical implementation and numerical issues. There are, of course, many more great texts on the subject.

  • Primary Recommended Textbooks:
    • D. Kirk. “Optimal Control Theory: An Introduction, 2004. ISBN: 9780486434841
    • Stengel, “Optimal Control and Estimation”, edition: 94, ISBN: 9780486682006
    • D. Bertsekas. “Nonlinear Programming”, 1999. ISBN: 9781886529007.
  • Additional Recommended Textbooks:
    • Bryson and Ho, “Applied Optimal Control”, edition: REV 75, ISBN: 9780891162285
    • P. Gill, W. Murray, and M. Wright. “Practical Optimization. Academic Press, 1982. ISBN: 9780122839528
    • J. L. Crassidis, J. L. Junkins, “Optimal Estimation of Dynamic Systems”, Second Edition, Chapman & Hall, ISBN-13: 978-1439839850


WeekTopicLecture NotesCodeAssignments
8/31/2018Course Overview and Matrix Algebra BasicsLecture #1
9/6/2018Unconstrained Optimization BasicsLecture #2lecture2_1.m lecture2_2.mHomework #1
9/13/2018Constrained Optimization BasicsLecture #3lecture3_1.m lecture3_2.m
9/19/2018Calculus of variationsLecture #4Homework #2
9/20/2018Continuous Optimal Control + Terminal ConstraintsLecture #5lecture5_1.m lecture5_2.m lecture5_3.m
9/27/2018LQRLecture #6lecture6_1.m lecture6_2.m lecture6_2.mHomework #3
10/3/2018Inequality ConstraintsLecture #7Homework #4
10/10/2018Dynamic Programming
Midterm (on 10/17)
Lecture #8
10/22/2018Numerical MethodsLecture #9car_shooting.m arm_sim.m trajopt_sqp.m trajopt_sqp_car.mHomework #5
Homework #6
10/31/2017Optimal EstimationLecture #10
11/7/2017cont.int_kf_test.m uni_ekf_test.m uni_br_nobs.m plotcov2.m shape_fit.mHomework #7
11/26/2017Stochastic ControlLecture #11Project
12/4/2017Presentation by Gowtham Garimella
12/13/2017Final exam, will be emailed/handed out at 9:00 am in Hackerman 117. Due at 2:00pm in Hackerman 117 or uploaded to website.
12/14/2017Project presentations 9-12 on 12/14 in Gilman 55.Project reports due 12/17

Grading Policy

There will be homeworks given every two weeks and due two weeks later (on Wednesday before class). There will be two midterms covering the first half and second half of the semester, and a final covering the whole material. Grades will be determined according to:

Homeworks 30%
Midterms 30%
Final 30%
Project 10%


You can work together with other students to study the material related to homeworks/tests but the submitted work must be entirely your own. For more information, see the guide on “Academic Ethics for Undergraduates” and the Ethics Board web site (http://ethics.jhu.edu).

Late homework will not be accepted without a prior approval from the instructor.