1 / 23

Introduction to Linear and Integer Programming

Introduction to Linear and Integer Programming. Lecture 7: Feb 1. Overview . Mathematical programming Linear and integer programming Examples Geometric interpretation Agenda. Mathematical Programming . Input: An objective function f: R n -> R

vlad
Download Presentation

Introduction to Linear and Integer Programming

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduction to Linear and Integer Programming Lecture 7: Feb 1

  2. Overview • Mathematical programming • Linear and integer programming • Examples • Geometric interpretation • Agenda

  3. Mathematical Programming • Input: • An objective function f: Rn -> R • A set of constraint functions: gi: Rn -> R • A set of constraint values: bi • Goal: • Find x in Rn which: • maximizes f(x) • satisfies gi(x) <= bi

  4. Linear Programming • Input: • A linear objective function f: Rn -> R • A set of linear constraint functions: gi: Rn -> R • A set of constraint values: bi • Goal: • Find x in Rn which: • maximizes f(x) • satisfies gi(x) <= bi

  5. Integer Linear Programming • Input: • A linear objective function f: Zn -> Z • A set of linear constraint functions: gi: Zn -> Z • A set of constraint values: bi • Goal: • Find x in Zn which: • maximizes f(x) • satisfies gi(x) <= bi

  6. Maximum Matchings (degree constraints) Every solution is a matching!

  7. Maximum Satisfiability Goal: Find a truth assignment to satisfy all clauses NP-complete!

  8. Integer Linear Programming • Input: • A linear objective function f: Zn -> Z • A set of linear constraint functions: gi: Zn -> Z • A set of constraint values: bi • Goal: • Find x in Zn which: • maximizes f(x) • satisfies gi(x) <= bi NP-complete!

  9. Mathematical Programming • Input: • An objective function f: Rn -> R • A set of constraint functions: gi: Rn -> R • A set of constraint values: bi • Goal: • Find x in Rn which: • maximizes f(x) • satisfies gi(x) <= bi NP-complete!

  10. Algorithms for Linear Programming • (Dantzig 1951)Simplex method • Very efficient in practice • Exponential time in worst case • (Khachiyan 1979)Ellipsoid method • Not efficient in practice • Polynomial time in worst case

  11. Linear Programming Relaxation Replace By Surprisingly, this works for many problems!

  12. Linear Programming Relaxation Stable matchings Bipartite matchings Minimum spanning trees General matchings Maximum flows Shortest paths Minimum Cost Flows Submodular Flows Linear programming

  13. Maximum Matchings But not every solution is a matching!! Every matching is a solution.

  14. Geometric Interpretation Goal: Optimize over integers! Linear inequalities as hyperplanes Objective function is also a hyperplane Not a good relaxation!

  15. Good Relaxation Every vertex could be the unique optimal solution for some objective function. So, we need every vertex to beintegral!

  16. Matching Polytope x1 Goal: define a polytope which is the convex hull of matchings. x1 (0.5,0.5,0.5) x2 x3 x3 x2

  17. x1 Matching Polytope x1 x2 x3 x1 x3 x2 x3 x2

  18. Valid Inequalities Inequalities which are satisfied by integer solutions but kill unwanted fractional solution. Enough?

  19. Valid Inequalities Odd set inequalities Enough? Yes, that’s enough. [Edmonds 1965]

  20. Exponentially Many Inequalities Can take care by the ellipsoid method. Just need a separation oracle, which determines whether a solution is feasible. If not, find a violating inequality. How to construct a separation oracle for matchings?

  21. Questions Prove that bipartite matching polytope is defined by the degree constraints. Try to confirm what Edmonds said. Write a linear program for the stable matching problem.

  22. Plan How to prove integrality? • Convex combination • Totally unimodular matrix • Iterative rounding • Randomized rounding • Totally dual integrality Uncrossing technique

  23. Plan How to prove min-max theorems? Duality theorem How to solve linear programs? • Simplex method • Ellipsoid method • Primal-dual method Can see combinatorial algorithms!

More Related