Convex Optimization II: Spring 2019

This is a new-ish course I am teaching. As implied by the title... it is meant to be a second course in optimization. The course will spend the first 1/3 to 1/2 of the semester studying algorithms for large scale optimization. This portion of the course will be fairly fast paced, and will assume basic familiarity with convex sets, convex functions and convex optimization. This part of the course will cover theoretical aspects (essentially at the level of these notes by Sebastien Bubeck, and some related papers and other sources I will be distributing) and will also involve hands on experience with using these algorithms.

The course EE381V and EE381K I have taught in the past covered a superset of the above-mentioned material.

The second part of the course will move closer to the frontier, and will be paper- and project-based. We will explore and discuss some of the latest optimization-related papers (mostly appearing in machine learning venues), and attempt to understand them from a theoretical and also computational (i.e., hands on) standpoint.

Background: Students should feel very comfortable with linear algebra. Also, knowledge of optimization, e.g., at the level of the course taught in Fall 2018 by Sujay Sanghavi, will be assumed. A basic familiarity with Python will also be helpful, as computational assignments will be in Python. But sophisticated programming / software engineering will not be required.

If you are interested in taking this course, but are unsure if it’s the right course for you, please feel free to contact me!