Introduction to Convex Optimization

A three-dimensional graph.

Array signal processing, with weights optimized by convex optimization. (© 2010 IEEE. Used with permission. Source: Jacob Mattingley and Stephen Boyd. "Real-Time Convex Optimization in Signal Processing." IEEE Signal Processing Magazine 27, no. 3 (2010): 50-61.)


MIT Course Number

6.079 / 6.975

As Taught In

Fall 2009


Undergraduate / Graduate

Cite This Course

Course Description

Course Features

Course Description

This course aims to give students the tools and training to recognize convex optimization problems that arise in scientific and engineering applications, presenting the basic theory, and concentrating on modeling aspects and results that are useful in applications. Topics include convex sets, convex functions, optimization problems, least-squares, linear and quadratic programs, semidefinite programming, optimality conditions, and duality theory. Applications to signal processing, control, machine learning, finance, digital and analog circuit design, computational geometry, statistics, and mechanical engineering are presented. Students complete hands-on exercises using high-level numerical software.


The course materials were developed jointly by Prof. Stephen Boyd (Stanford), who was a visiting professor at MIT when this course was taught, and Prof. Lieven Vanderberghe (UCLA).

Related Content

Stephen Boyd, and Pablo Parrilo. 6.079 Introduction to Convex Optimization. Fall 2009. Massachusetts Institute of Technology: MIT OpenCourseWare, License: Creative Commons BY-NC-SA.

For more information about using these materials and the Creative Commons license, see our Terms of Use.