Advanced Graph Algorithms and Optimization, Spring 2020
 Lecturer: Rasmus Kyng
 Assistant: Ahad N. Zehmakan
 Lecture Time and Place: Wednesdays 09:0011:00 at CAB G52
 Exercise Session Time and Place: Wednesdays 11:0012:00 at CAB G52
 ECTS credits: 5 credits

INFORMATION ON ONLINE TEACHING (Posted Tuesday, March 17th, 12.25): We will email registered students with information on how to attend lectures online later today. There will be a Zoom livestream of the lecture at the usual time. If you are *NOT* a registered student, but wish to attend the online lecture, you have to send us an email to get the necessary information.

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 secondorder optimization, convex duality, multiplicative weights and dualbased methods, acceleration, preconditioning, and nonEuclidean 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.

Literature:
 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.
 Convex Optimization
by Stephen Boyd and Lieven Vandenberghe.
Performance Assessment
Graded Homework 1 (April 5): 15% of grade. Homework consists entirely of exercises.
Graded Homework 2 (May 24): 15% of grade. 5% is for exercises, 10% is for a short written report on a paper. The lecturer will assign papers to students, possibly with some input from students. Assignments are done individually.Oral Exam (First Week of June): 70% of the grade. Exam is 30 minutes, of which 15 minutes will be spent on the paper associated with the written report, and 15 minutes will be spent covering topics from the lectures.
Schedule, Lecture Notes, and Exercises
Date  Lecture  Problem Sets and Graded Homework (with due dates) 

02/19 Wed  Lecture 1: Course Introduction (notes) 
Problem Set 1 
02/26 Wed  Lecture 2: Some Basic Optimization, Convex Geometry, and Linear Algebra (notes) 
Problem Set 2 
03/04 Wed  Lecture 3: Convexity and Second Derivatives, Gradient Descent and Acceleration (notes) 
Problem Set 3 
03/11 Wed  Lecture 4: Introduction to Spectral Graph Theory (notes) 
Problem Set 4 
03/18 Wed  Lecture 5: More Spectral Graph Theory (notes) (OneNote notes, password protected) 
Graded Homework 1 (due April 5) 
03/25 Wed  Lecture 6: Effective Resistance, Gaussian Elimination as Optimization (notes) (OneNote notes, password protected)  No exercises this week. 
04/01 Wed  Lecture 7: An Additive Perspective on Gaussian Elimination, Introduction to Random Matrix Concentration (notes) (OneNote notes, password protected)  No exercises this week. 
04/08 Wed  Lecture 8: Random Matrix Concentration and Spectral Graph Sparsification (notes) (OneNote notes, password protected) 
Problem Set 5 
04/22 Wed  Lecture 9: Solving Laplacian Linear Equations (notes) (OneNote notes, password protected) 
Problem Set 6 
04/29 Wed  Lecture 10: Classical Algorithms for Maximum Flow (notes) (OneNote notes, password protected) 
Problem Set 7 
05/6 Wed  Lecture 11: Classical Algorithms for Maximum Flow II (notes) (OneNote notes, password protected) 
Graded Homework 2 (due May 24) 
05/13 Wed  Lecture 12: Separating Hyperplane Theorem, Langrange Multipliers, and Convex Duality (notes) (OneNote notes, password protected)  No exercises this week. 
05/20 Wed  Lecture 13: KarushKuhnTucker Conditions, Fenchel Conjugates, Newton's Method (notes) (OneNote notes, password protected)  No exercises this week. 
05/27 Wed  Lecture 14: An Interior Point Method for Maximum Flow (draft notes) (OneNote notes, password protected)  No exercises this week. The content of this lecture is NOT on the exam. 