CS 655: Topics in Linear Programming
Announcements
- The link to project page is here .
- Endsem is scheduled on 20th November (Monday, RM 101) from 17:30-20:30.
Course Notes
Topic | Link |
Introduction to linear programming, basics of linear algebra, definitions. | Introduction |
Convex sets, properties, simplex method and degeneracy | Convexity |
Separating hyperplanes, duality theory, strong duality | Duality |
Applications of strong duality, Algorithmic game theory, Communication complexity | Minimax |
Maximum flow, minimum cut and primal dual approach | Primal dual method |
Relaxation and approximation algorithm for set cover | Set cover |
Semidefinite matrices and programs, Goemans-Williamson algorithm | Semidefinite programs (SDP) |
Representation of Boolean functions, approximate degree | Boolean functions |
Administrative details:
- Time: Mon 3:30-4:45, Tue 2:00-3:15 Venue: KD102 (CSE)
- TA: Tufan Singha Mahapatra (tufansm@cse)
- Anti-cheating policy: from CSE Dept
- Drop policy: from DUGC
- First course handout: FCH
-
Grading:
- 2 Quizzes: 5 + 10, 1 Assignment: 10, Midsem: 20, Endsem: 15.
- Project: 5 (proposal) + 20 (presentation) + 15 (final report)
Course description:
Linear programming is a special class of mathematical optimization problems where the constraints as well as the cost function is linear.
This class of problems have known efficient algorithms, deep structural properties and wide applications in various fields.
The course will provide detailed introduction to the field of linear optimization.
We will start by covering the basics of convex optimization and linear algebra briefly. The background material will not be covered in detail; it is expected that either students know it or can read and recall it. We will move to the definition of linear programs next and show how to model various problems as a linear program. The last part of the first half will give outline of some approaches to solve a linear program.
The later part of the course will focus on applying linear programming in theoretical computer science. We will cover many interesting applications in diverse fields such as network algorithms, complexity theory and approximation theory. If time permits, a small introduction to semidefinite programming will be given with a basic application.
References
Optimization
- Linear Programming, Dantzig and Thapa.
- Combinatorial Optimization: Algorithms and Complexity, Papadimitriou and Steiglitz.
- Convex Optimization, Boyd and Vandenberghe.
- Linear Programming: Foundations and extensions, Robert J. Vanderbei.
Linear Algebra
- Linear Algebra: An introductory approach, Charles W. Curtis (Chapter 1-4).
- Introduction to Linear Algebra, Gilbert Strang (Chapter 1-3,6)
- Linear Algebra, Hoffman and Kunze (Chapter 1-3).