ESE 6050, Spring 2025 – Modern Convex Optimization

Instructor: Nikolai Matni, Assistant Professor, ESE Department

TAs: Alok Shah, Dominic Olaguera-Delogu, Edgar (Yiyan) Liang, James Wang, Mohul Aggarwal

Graders: Faraz Rahman

Lectures: Tu/Th 3:30-5:00pm ET in LRSM Auditorium.

Syllabus: ESE6050-001

If you are trying to register for the class: follow the instructions here. Do not e-mail me, I cannot help you!

Canvas: We will use Canvas to manage class logistics.

Ed Discussion: We will use Ed Discussion for questions and answers.

Office hours

  • Nikolai's OHs: Tu 5:00-6:00pm ET, Levine 374

  • See Canvas for TA OHs.

Course description

In this course, you will learn to recognize and solve convex optimization problems that arise in applications across engineering, statistics, operations research, and finance. Examples will be chosen to illustrate the breadth and power of convex optimization, ranging from systems and control theory, to estimation, data fitting, information theory, and machine learning. A tentative list, subject to change, of what we will cover includes: convex sets, functions, and optimization problems; the basics of convex analysis; least-squares, linear and quadratic programs, semidefinite programs, minimax, extremal volume, and other problems; optimality conditions, duality theory, theorems of alternatives, and applications; interior-point algorithms for solving convex optimization problems, and their complexity analysis; applications to signal processing, statistics and machine learning, control, digital and analog circuit design, and finance.

Course objectives

  • to give students the tools and skills needed to identify convex optimization problems that arise in applications

  • to introduce the basic theory of convex optimization problems, concentrating on results that are useful in understanding, improving, and extending computational methods

  • to give students a deep and foundational understanding of how such problems are solved, and hands on experience in solving them

  • to give students the background needed to feel comfortable in applying these methods in their own research work and/or applications

About the Course

Prerequisites

This is a math intensive course. A solid foundation in linear algebra (at the level of Math 314), as well as comfort with analysis, probability, and statistics at an advanced undergraduate level is required. Familiarity with one of Matlab, Python, or Julia. Undergraduates need permission.

Intended audience

This course will benefit anyone who uses or will use scientific computation or optimization in engineering, statistics, signal processing, or related work (e.g., machine learning, finance). More specifically, convex optimization problems are likely to pop up in the work of people in the following departments and fields: Electrical Engineering (signal/image processing, communications, control), Aero/Astro Engineering (guidance, navigation, control, design), Mechanical & Civil Engineering (robotics, control, structural analysis), Computer Science (machine learning, robotics, computer graphics, algorithms & complexity, computer networking), & Operations Research (Wharton).


Schedule

The following schedule is tentative and subject to change.

Date Topic Reading Homework
Week 1
1/16
Logistics, Introduction Chapter 1
Appendix A
Sign up for Canvas & Piazza
Week 2
1/21, 1/23
Convex sets Chapter 2 Homework 1 (due 2/07)
Week 3
1/28, 1/30
Convex functions Chapter 3 No new homework
Week 4
2/04, 2/06
Convex optimization problems Chapter 4 No new homework
Week 5
2/11, 2/13
Convex optimization problems
Duality
Chapter 4, 5 Homework 2 (due 03/01)
Week 6
2/18 , 2/20
Duality Chapter 5 No new homework
Week 7
2/25, 2/27
Approximation and fitting Chapter 6 No new homework
Week 8
3/04, 3/06
Statistical estimation Chapter 7 Homework 3 (due 03/21)
Spring Break
3/11, 3/13
relax have fun No new homework
Week 9
3/18, 3/20
Statistical Estimation
Geometric problems
Chapters 7, 8 No new homework
Week 10
3/25, 3/27
Geometric problems
Numerical Linear Algebra Review
Chapter 8
Appendix C
Homework 4 (due 4/11)
Week 11
4/01, 4/03
Unconstrained minimization Chapter 9 No new homework
Week 12
4/08, 4/10
Equality constrained minimization Chapter 10 No new homework
Week 13
4/15, 4/17
Interior-point methods Chapter 11 Homework 5 (due 04/30)
Week 14
4/22, 4/24
Advanced topic: TBD TBD No new homework
Week 15
4/30
Advanced topic: TBD
Conclusions
N/A Takehome Final Exam
24hr window in May, exact dates TBD

Textbook

The textbook is Convex Optimization by Boyd and Vandenberghe, available online.

Additional optional resources that may prove useful include:

  • J. Renegar, A Mathematical View of Interior Point Methods for Convex Optimization, 1998

  • A. Ben-Tal and A. Nemirovski, Lectures on Modern Convex Optimization: Analysis, Algorithms, and Engineering Applications, SIAM, 2001

  • D. Bertsekas, A. Nedic, and A Ozdaglar, Convex Analysis and Optimization , 2003

  • L. El Ghaoui's EE227BT Lecture Notes

Software

You will use one of CVX (Matlab), CVXPY (Python), or Convex.jl (Julia), to write simple scripts. We refer to CVX, CVXPY, and Convex.jl collectively as CVX*.

Grading

  • Homework (70%): there will be tri-weekly homework assignments, handed out on Tuesday, and three Fridays later by 11:59pm (with accommodations made for spring break and end of classes). The homework assignments must be LateXed and submitted on Canvas via Gradescope. Please use this LaTeX template – we ask that you write out detailed and rigorous solutions. You will be given 5 free late days which you may use as you please throughout the semester, after which no late assignments will be accepted. You are allowed, even encouraged, to work on homework in small groups, but you must write up your own homework solutions and code to hand in – please indicate who you collaborated with on your assignments. Each homework problem will be graded on a scale of 0-4.

  • Final take-home exam (30%): there will be a 24 hour final take-home exam scheduled during the final exam period. Please refer to the Stanford EE364a offering of this course for an idea of what the final exam will look like, as well as the logistics of how it will be administered.

Note that these weights are approximate, and we reserve the right to change them later.

Code of Academic Integrity: All students are expected to adhere to the University’s Code of Academic Integrity. We have and will report repeat offenders to The Center for Community Standards and Accountability: this will result in an Incomplete on your transcript until their investigation is complete. THIS CAN PREVENT YOU FROM GRADUATING, SO DO NOT CHEAT.

AI Policy: There are exactly two acceptable uses for Generative AI (ChatGPT, Claude, etc.):

  • To help in completing the coding exercises to help with syntax, i.e., you don’t have to turn off Github CoPilot when completing the coding exercises.

  • To convert your handwritten notes into LaTeX for submission. We reserve the right to request to see your original handwritten notes in this case.

Otherwise, all use of AI is forbidden: if you cheat and use AI to complete the homework, it will be obvious to us, and we will report you.