Master M2 MVA: Convex Optimization, Algorithms and Applications.


The objective of this course is to learn to recognize, transform and solve a broad class of convex optimization problems arising in various fields such as machine learning, finance or signal processing. The course starts with a basic primer on convex analysis followed by a quick overview of convex duality theory. The second half of the course is focused on algorithms, including first-order and interior point methods, together with bounds on their complexity. The course ends with illustrations of these techniques in various applications.

Course organization

  • Location: E.N.S., 45 rue d'Ulm, 75005 Paris.

  • Schedule (2017-2018): Mondays from 13h30 until 16h30. (Warning: note room changes below!)


The course is split in three parts. Six lectures of three hours each.

  • Modelling

    • Convex sets, functions and problems

    • Duality

  • Algorithms

    • Interior point methods

    • Complexity

    • First-order methods, acceleration

  • Applications

    • Machine learning and statistics

    • Signal processing

    • Combinatorial problems

    • Finance




Many of the exercises are taken from the textbook by Boyd et Vandenberghe. Please turn in your home work in class. Late homework will not be graded.

  • DM1: Due Monday October 16 in class. Homework 1

  • DM2: Due Monday October 23 in class. Homework 2

  • DM3: Due Monday November 13 before class. Homework 3 (updated on Nov. 8). Please mail your code to in a single zip file called For numerical exercises, you can use Juliabox if you don't have access to a machine with MATLAB, Python or Julia.


Final exam, in class, December 19 2017, 13h30-16h30 amphi Curie at ENS Cachan.
Closed book. You are allowed one page of notes (recto-verso). The exam will be mostly focused on chapters 1-5 of the textbook (up to duality) Final exam 2016.