# CDS 110b: Optimal Control

CDS 110b | ← Schedule → | Project | Course Text |

This lecture provides an overview of optimal control theory. Beginning with a review of optimization, we introduce the notion of Lagrange multipliers and provide a summary of the Pontryagin's maximum principle.

- Lecture notes: optimal control
- Homework 2 (due 22 Jan @ 5 pm): problems 2.3, 2.4a-d, 2.6

## References and Further Reading

- R. M. Murray,
*Optimization-Based Control*. Preprint, 2008: Chapter 2 - Optimal Control - Excerpt from LS95 on optimal control - This excerpt is from Lewis and Syrmos, 1995 and gives a derivation of the necessary conditions for optimaliity. A few pages have been left out from the middle that contained some additional examples (which you can find in similar books in the library, if you are interested). Other parts of the book can be searched via Google Books and purchased online.
- Notes on Pontryagin's Maximum Principle - these come from a set of lecture notes on optimization and control by Richard Weber at Cambridge University. The notes are based on dynamic programming (DP) and uses a slightly different notation than we used in class.

## Frequently Asked Questions

**Q: Could you please explain what the psi function is or what it means if psi(x(T))=0 versus what it means if psi(x(T))=x(T)?**

The psi function represents a general form of terminal constraint for the state variables. It gives a way of indicating which states have a terminal cost attached to them. For example, by defining psi_i(x(T))=x_i(T)-x_i,f for i=1,2,...n, we can impose terminal costs on all states (a fully constrained case) by letting p=n (n being the # of states). When we optimize over time and want x(T)=x_f, then x(T)-x_f=0, and so psi(x(T))=0. If we take x_f=0, then psi(x(T))=x(T).

Luis Soto, 22 Jan 08

**Q: In Problem 2.4d, are the boundary conditions for the differentially-flat trajectory correct?**

Please ignore the boundary conditions given in part 2.4d for the differentially-flat trajectory and instead use x(0)=1 for the initial condition and x(1)=0 for the condition at final time t=1. Moreover, use c=100 instead of c=1. Note: the x(t_f) of the optimal solution won't be exactly 0, but will be close enough for the intent of this problem.

Luis Soto, 21 Jan 08

**Q: In problem 2.4(d) of the homework, to what positive value should the parameter b be set?**

Use b = 1 for part d when solving for and comparing the two trajectories found symbolically in previous parts.

Julia Braman, 18 Jan 08

**Q: In the example on Bang-Bang control discussed in the lecture, how is the control law for \(u\) obtained?**

Pontryagin's Maximum Principle says that \(u\) has to be chosen to minimise the Hamiltonian \(H(x,u,\lambda)\) for given values of \(x\) and \(\lambda\). In the example, \(H = 1 + ({\lambda}^TA)x + ({\lambda}^TB)u\). At first glance, it seems that the more negative \(u\) is the more \(H\) will be minimised. And since the most negative value of \(u\) allowed is \(-1\), \(u=-1\). However, the co-efficient of \(u\) may be of either sign. Therefore, the sign of \(u\) has to be chosen such that the sign of the term \(({\lambda}^TB)u\) is negative. That's how we come up with \(u = -sign({\lambda}^TB)\).

Shaunak Sen, 12 Jan 06

**Q: Notation question for you: In the Lecture notes from Wednesday, I'm assuming that \(T\) is the final time and ^{\(T\)} (superscript T) is a transpose operation. Am I correct in my assumption?**

Yes, you are correct.

Jeremy Gillula, 07 Jan 05