EE364: Convex Optimization with Engineering Applications

Stanford University, Winter quarter 2002-03

next taught Winter quarter 2004-05

www.stanford.edu/class/ee364

Professor Stephen Boyd



Announcements


Lecture notes

  1. Introduction (ps/pdf)
  2. Convex sets (ps/pdf)
  3. Convex functions (ps/pdf)
  4. Convex optimization problems (ps/pdf)
  5. Linear and quadratic problems (ps/pdf)
  6. Geometric and semidefinite programming (ps/pdf)
  7. Duality (ps/pdf)
  8. Smooth unconstrained minimization (ps/pdf)
  9. Sequential unconstrained minimization (ps/pdf)
  10. Data fitting and estimation (ps/pdf)
  11. Geometrical problems (ps/pdf)
  12. Filter design (ps/pdf)
  13. Problems in VLSI design (ps/pdf)
  14. Ellipsoid method (ps/pdf)
  15. Subgradients (ps/pdf)
  16. Conclusions (ps/pdf)
top of ee364 page

Textbook

The textbook is available at the Stanford Bookstore, as the Reader for EE364, and also as a pdf file, at the link www.stanford.edu/~boyd/cvxbook.html.

top of ee364 page


Homework

All exercises are from the course reader (textbook), unless otherwise noted.

top of ee364 page


Matlab files

top of ee364 page


Related articles

Some articles that might be interesting or useful, mostly later on in the course.

Convex optimization

Analog and digital circuit design

Signal processing and communications

Control system analysis and design

top of ee364 page


Basic course information

Credit: 3 units. Can be taken Credit/No Credit.

Lectures: Tuesdays and Thursdays, 9:30-10:45, Gates B03. EE364 will be broadcast live by SCPD on channel E5, and available via streaming video from Stanford Online. Videotapes of lectures will be available in Terman Library.

Section meeting: Friday 3:15-4:05pm, McCullough 115, Live on E2, and available via streaming video from Stanford Online.

Professor: Stephen Boyd, Packard 264, (650) 723-0002, boyd@stanford.edu

Office hours: Tuesdays 10:45-12:30pm.

Administrative assistant: Denise Murphy, Packard 262, 723-4731, Fax 723-8473, denise@ee.stanford.edu

Teaching Assistants:

TA office hours & location: Tuesday 5:00-7:00pm, Wednesday 6:00-8:00pm, Packard 109

Textbook and optional references: The textbook or course reader is available on the course web site. Some good books that can serve as secondary reference texts are

These books will be on reserve at Terman library, but you won't need to consult them unless you want to.

Course requirements:

Homework: assigned each week, and due the following week. You are allowed, even encouraged, to work on the homework in small groups, but you must write up your own homework to hand in.

Grading: homework 30%, final 70%. These weights are approximate; we reserve the right to change them later.

Prerequisites: Good knowledge of linear algebra (EE263) and willingness to program in Matlab. Exposure to numerical computing, optimization, and application fields helpful but not required; the engineering applications will be kept basic and simple.

top of ee364 page


Course description

Convex optimization arise frequently in engineering problems but often go unrecognized. That is a pity since there is a substantial and useful theory for such problems, and they can be (numerically) solved very efficiently. This course will concentrate on the latter advantage, i.e., our ability to solve such problems efficiently by computer.

Catalog description: Concentrates on recognizing and solving convex optimization problems that arise in engineering. Convex sets, functions, and optimization problems. Basics of convex analysis. Least-squares, linear and quadratic programs, semidefinite programming, minimax, extremal volume, and other problems. Localization methods, e.g., cutting-plane, ellipsoid algorithms. Optimality conditions, duality theory, theorems of alternative, and applications. Interior-point methods. Applications to signal processing, control, digital and analog circuit design, computational geometry, statistics, and mechanical engineering.

Course objectives:

Intended audience: Anyone who uses or will use scientific computing or optimization in engineering or related work (e.g., finance). More specifically, people from the following departments / fields: Electrical Engineering, especially areas like signal and image processing, communications, control, EDA & CAD. Aero & Astro, Mechanical & Civil Engineering, especially robotics, control, structural analysis, optimization, & design. Computer Science, especially robotics, computer graphics, algorithms & complexity, computational geometry. Operations Research and Engineering-Economic Systems. Scientific Computing and Computational Mathematics. The course may be useful to students and researchers in several other fields as well: Mathematics, Statistics, Finance, Economics.

top of ee364 page