Linear Programming and Combinatorial Optimization

This is a basic course for undergraduate students.

Organization

During the Summer Semester 2025-2026 the lectures are scheduled on Wednesdays at 09:00 in S4 in Mala Strana. Tutorials are held on Mondays at 17:20 in S11.

Course Requirements (Exam etc.)

The final grade for the course will be based on an exam at the end of the semester. You must obtain a "pass" in the tutorial to be able to take the exam for this course. .

Syllabus

This course covers the following topics: The following is a list of Books and other material relevant to the lectures. The list will be updated as needed.


Understanding and Using Linear Programming (UULP) by Jiří Matoušek and Bernd Gaertner
Lectures on Polytopes (LoP) by Guenter M. Ziegler
Combinatorial Optimization (CO) by Cook, Cunningham, Pulleyblank and Schrijver
Combinatorial Optimization: Polyhedra and Efficiency (COPE)Alexander Schrijver
A First Course in Combinatorial Optimization (AFCCO)Jon Lee
Notes on LP duality and Applications Link
Notes on Maximum matching problem Link (local copy)

Material Covered in the Lectures


February 18: Example of a Linear Program; General form; basic terminology: objective function, constraints, feasible solution, optimal solution, feasible/infeasible, bounded/unbounded; Modeling problems as LP; Example: Network flow; Integer Programming; LP relaxation.
Recommended reading: Sections 1.1,2.1,2.2,3.1 of UULP.


February 25: Applications of LP relaxations: (Serendipitous Integrality) Perfect Matchings in bipartite graphs, (Approximation by rounding) \(2\)-approximation by rounding LP optimum for Vertex Cover, (no useful guarantee) Maximum Independent Set.
Recommended reading: Chapter 3 of UULP


March 04: Various forms of Linear Program; Equational form of an LP; Basic feasible solutions; For LPs in equational form feasibility and boundedness imply existence of optimal basic feasible solutions; Combinations and Hulls: Convex, Conic, Affine, Linear; Basics of Polyhedral theory: halfspaces, polyhedron, polytope, valid inequality, face, vertex, extreme point; vertex = extreme point.
Recommended reading: Chapters 0, 1 of LoP; Chapter 4 of UULP


March 11: Minkowski-Weyl theorem (without proof); Correspondence between basic feasible solutions and vertices; Simplex method: Geometric version; Basic problems: Finding an initial vertex, choosing an edge to follow, stopping criteria; Example including ones for exceptional cases: degeneracy, unboundedness, infeasibility.
Recommended reading: Chapter 5 of UULP.


March 18: Simplex method: Simplex Tableau, pivoting, stopping criteria, finding and initial basic feasible solution; pivot rules: examples, discussion about number of pivot steps/cycling (without proof), comments on diameter of polytopes and the Hirsch conjecture; LP Duality; Weak Duality.
Recommended reading: Sections 5.6-5.9, 6.1 of UULP.


March 25: Strong duality (proof using Farkas Lemma); Applications of LP duality: Koenig's theorem.
Recommended reading: Chapter 6, Section 8.2 of UULP.


April 01: Applications of LP Duality: Koenig's theorem, Totally Unimodular Matrices, Max-flow min-cut theorem.
Recommended reading: Section 8.2 of UULP, Section 6.2.1 from here.