Advanced Graph Algorithms and Optimization, Spring 2023

Lecturers: Rasmus Kyng and Max Probst
Teaching Assistants: Simon Meierhans, Vraj Patel, Aurelio Sulser and Jonas Hübotter
Time and Place: Mondays 10:00-12:00 at ML F 39 (every other week, see schedule) and Tuesdays 16:00-18:00 at CAB G 51 (always)
Exercise Session Time and Place: Fridays 14:00-16:00 at LFW B1
ECTS credits: 10 credits
Final deregistration date: April 10th

Course Objective: The course will take students on a deep dive into modern approaches to graph algorithms using convex optimization techniques. By studying convex optimization through the lens of graph algorithms, students should develop a deeper understanding of fundamental phenomena in optimization. The course will cover some traditional discrete approaches to various graph problems, especially flow problems, and then contrast these approaches with modern, asymptotically faster methods based on combining convex optimization with spectral and combinatorial graph theory.

Course Content: Students should leave the course understanding key concepts in optimization such as first and second-order optimization, convex duality, multiplicative weights and dual-based methods, acceleration, preconditioning, and non-Euclidean optimization. Students will also be familiarized with central techniques in the development of graph algorithms in the past 15 years, including graph decomposition techniques, sparsification, oblivious routing, and spectral and combinatorial preconditioning.

Prerequisites: This course is targeted toward masters and doctoral students with an interest in theoretical computer science. Students should be comfortable with design and analysis of algorithms, probability, and linear algebra. Having passed the course Algorithms, Probability, and Computing (APC) is highly recommended, but not formally required. If you are not sure whether you are ready for this class or not, please consult the lecturer.


  • Convex Optimization by Stephen Boyd and Lieven Vandenberghe.
    • This book is a helpful reference for convex optimization.
  • Differential Calculus by Henri Cartan.
    • If you have a powerful urge to learn all about multivariate calculus, you can start here. You shouldn't need it for the course though.
  • Convex Analysis by Rockafellar.
    • This is the classic text on basic convex analysis (not optimization). Again, you shouldn't need this.

Course Moodle

You can ask the course TAs and instructors about the course materials, exercises, and any other issues on the course Moodle page (link).

Please make sure you receive Moodle notifications from this course as some announcements will be made exclusively through Moodle.


The notes are available here (link).

These notes will be updated throughout the course. There may sometimes be a delay between a lecture being held and the corresponding Chpt. being added to the notes.

You can find the notes for an earlier version of the course here: AGAO 2022. Note that some material may change this year.

Performance Assessment

Graded Homework 1 (out approx. April 4th, due April 24th): 15% of grade. The homework consists of exercises.

Graded Homework 2 (out approx. May 23th, due June 12th): 15% of grade. The homework consists of exercises.

Oral Exam (May 30th & 31th): 70% of the grade. The exam will last 15 minutes. We will mainly discuss topics from the lectures, but may ask questions about problems from the first graded homework assignment.

Graded Homework

Each graded homework assignment accounts for 15% of your grade. You should submit your solutions as a PDF typeset in LaTeX by the listed due date, 23:00 local time in Zurich, by submitting them through the course Moodle page. You must come up with the solutions on your own and write everything yourself.


Every week we will publish a problem set consisting of exercises designed to help you understand the course material. The exercises will not count toward your grade, but you are highly encouraged to solve them all. Exercises will be published on Wednesdays on the course Moodle. You have until Thursday the following week to hand in you solution. The TAs will discuss solutions to the exercises one and a half weeks after they were initially published. Part of the exercise session will be reserved for working on the current exercise sheet (published 2 days before). The TAs will offer hints and support when needed and you're welcome to form and work in groups.
If you wish to get feedback on your problem set solutions, you must submit solutions either as a PDF typeset in LaTeX or in readable handwritten form by Thursday, 23:59 local time in Zurich, by submitting them through the course Moodle page. You're welcome to work with your classmates on these problem sets!

Tentative Schedule of Lectures and Exercises

Date Lecture Topic Problem Sets and Graded Homework
02/20 Mon 1 Problem Set 1
02/21 Tue 2 Solution 1
02/27 Mon no lecture Problem Set 2
02/28 Tue 3 Solution 2
03/06 Mon 4 Problem Set 3
03/07 Tue 5 Solution 3
03/13 Mon no lecture Problem Set 4
03/14 Tue 6 Solution 4
03/20 Mon 7 Problem Set 5
03/21 Tue 8 Solution 5
03/27 Mon no lecture Problem Set 6
03/28 Tue 9 Solution 6
04/03 Mon 10
04/04 Tue 11 GHW1 out
04/10 Mon Easter
04/11 Tue Easter
04/17 Mon no lecture (Sechseläuten)
04/18 Tue 12
04/24 Mon 13 GHW1 due
04/25 Tue 14 Problem Set 7
05/01 Mon no lecture (1. May) Solution 7
05/02 Tue 15 Problem Set 8
05/08 Mon no lecture Solution 8
05/09 Tue 17 Problem Set 9
05/15 Mon no lecture Solution 9
05/16 Tue 18
05/22 Mon 19
05/23 Tue 20 GHW2 out
05/30 Tue EXAMS
05/31 Weds EXAMS
06/12 Mon GHW 2 due