CS602: Applied Algorithms : Linear Programming in Combinatorial Optimization (2019-20 Sem II)

Course Contents The course will start with basics of linear programming and duality. Then we will see applications of LP in combinatorial optimization, problems like matching, maximum flow, minimum cut, matroids, submodular optimization etc. We will see examples where LP is used in designing approximation algorithms for hard problems and online algorithms. Other topics we might cover -- Linear programming extended formulations, semi-definite programming and continuous methods for combinatorial problems.

Pre-requisites: You are expected to know basics of algorithms (CS218/CS601), linear algebra and graph theory.

Grading: Class participation (includes scribing lecture notes) , Assignments and Quizzes (in class) (30%), Mid-sem(30%), End-sem + possibly a paper presentation (40%).

Course Timings: Mon 10:35-11:30, Tue 11:35-13:00, Thu 8:30-9:25. SIC201, KreSIT.

Office Hours: Monday, 11:30-12:30

References

Homework 1 Homework 2 Quiz 1 Homework 3 Mid Sem Homework 4 Homework 5

Lectures:

Linear Programming (You can see Lap Chi Lau's Course Notes and Lecture 16 here)

Linear Programming Duality (See Lecture 16,17 here)

Discussion and Homework

LP for Combinatorial Optimization (see these notes for primal dual schema for bipartite matching)

Primal Dual for Approximation algorithms (see this Chapter)