CPSC 536M:
Convex Analysis and Optimization

Convex optimization is a key tool for analyzing and modeling a range of computational problems that arise in machine learning, signal and image processing, theoretical computer science, operations and logistics, and other fields. It’s also the backbone for other areas of optimization, including algorithms for nonconvex problems. This course aims to provide a self-contained introduction to a few of the many geometric and intuitive ideas in convex analysis and their usefulness for understanding and developing computationally-efficient algorithms for a range of scientific and engineering problems.


This list represents a tentative outline of the topics covered.

Part 1: Convex geometry

Part 2: Convex analysis

Part 3: Convex optimization

Target Audience

This course is intended for students who wish to learn the underpinnings of convex optimization and are considering research in the area. Students looking to gain more practical experience with optimization (e.g., how to use various solvers) may wish to instead consider CPSC 406, which will be taught in Term 2.


Background in vector calculus, linear algebra, and basic real analysis.


Auditors and Undergraduates

Auditors are welcome. Graduate students who wish to audit, please bring a graduate registration form to the first lecture. Undergraduate students who wish to take the course for credit should fill out an undergraduate registration form.


The course isn’t based on any one particular text. These references should be helpful for further reading.