120 likes | 310 Vues
Vector Form Maximize: cx Subject to : Ax  b c = (c 1 , c 2 , …, c n ) x = b = A =. Summation Form Maximize: c i x i Subject to: a 1i x i  b 1 a 2i x i  b 2 . . a mi x i  b m. Linear Programming (LP).
                
                E N D
Vector Form Maximize: cx Subject to : Ax  b c = (c1, c2, …, cn) x = b = A = Summation Form Maximize: cixi Subject to: a1ixi  b1 a2ixi  b2 . . amixi  bm Linear Programming (LP) x1 . . xn b1 . . bn a11 … a1n …… …… an1 … amn
n = 2; m = 4 x1 + x2 max x1 0  (-1)x1 + 0x2 0 x2 0  0x1 + (-1)x2 0 x1 5  (-1)x1 + 0x2 5 x2 6  0x1 + 1x2 6 c = (1, 1) b = A = Optimal solution is the unique point of intersection of the objective with the hyperplane feasible polytope. x2 optimal solution x1 = 5 ; x2 = 6 objective: x1 + x2 = 11 x1 Example LP 0 0 5 6 Feasible solution region -1 0 0 -1 1 0 0 1
Vector Form Maximize: cx Subject to : Ax  b and x  {0,1} c = (c1, c2, …, cn) x = b = A = Summation Form Maximize: cixi Subject to: a1ixi  b1 a2ixi  b2 . . amixi  bm and x  {0,1} Integer Linear Programming (ILP) x1 . . xn b1 . . bn a11 … a1n …… …… an1 … amn
ILP for MIS • Maximum Independent Set (MIS) - Find the maximum subset of nodes in graph G = (V, E) which are pairwise non-adjacent • ILP - For any v  V make a variable xv  {0, 1} xv = 0  v  MIS which means 0 is not chosen xv = 1  v  MIS which means 1 is chosen - Maximize vV xv Subject to:  e = (u, v)  V, xu + xv  1
Max: x1 + x2 + x3 + x4 + x5 + x6 subject to: x1 + x6 1 x1 + x2 1x2 + x3 1x3 + x6 1x3 + x5 1x6 + x5 1x3 + x4 1x4 + x5 1and x1, x2,…, x6 {0,1} Graph Example ILP of MIS 2 1 3 6 4 5
ILP - xi  max - Subject to: xi + xj  1  (i, j)  E ILP for MaxClique • MaxClique • - Given G = (V, E) • - Find • X  V  x, x’  X • (x, x’)  E • |X|  max
Matching - Given G = (V, E) - Find X  E  e, e’  X e and e’ don’t share endpoint. |X|  max ILP - for any e  E xe {0, 1} + 0 is not in matching + 1 is in matching - eE xe  max - Subject to: e incident to V xe  1 v  V e2 xe1 +xe2 +xe3  1 only one edge from e1 e3 matching can be incident to v ILP for Matching v
MISP xi  max, i  V xi + xj  1, for each edge (xi,xj) E xi {0, 1} LPR  xi  max, i  V xi + xj  1, for each edge (xi,xj) E 0  xi  1 LP relaxation (LPR) vs. ILPLP relaxation (LPR) for MAX independent set problem (MISP) gives larger value than the maximum size of independent set.
xi  max x1 +x6  1 x1 +x2  1 x5 +x6  1 x5 +x2  1 x5 +x4  1 x4 +x3  1 x4 +x2  1 x2 +x3  1 ILP x1 = x3 = x5 = 1 xi = 3 LPR xi = ½ xi = 3 Example 1 of ILP vs. LPR 3 4 2 1 5 6
x1 +x2 + x3 max x1 +x2  1 x1 +x3  1 x2 +x3  1 0  x1  1 0  x2  1 0  x3  1 LPR ()  3/2 Implies LPR () = 3/2 So x1 = x2 = x3 = ½ LPR ()  3/2 ILP () = 1 Integrality Gap (IG) = LPR / ILP = 3/2 What is the integrality gap for (MISP) For a complete graph ILP (Kn) = 1 LPR (Kn) = n/2 Integrality Gap (IG) = LPR / ILP Integrality gap may be as large as n/2 MISP Integrality Gap 2 3 1
MVCP xi  min, i  V xi + xj  1, for each e= (xi,xj) E xi {0, 1} LPR  xi  min , i  V xi + xj  1, for each e= (xi,xj) E 0  xi  1 LPR vs. ILP LP relaxation (LPR) for Minimum Vertex Cover problem (MVCP) gives smaller value than the minimum size of vertex cover
x1 +x2 + x3 min x1 +x2 1 x1 +x3 1 x2 +x3 1 0  x1  1 0  x2  1 0  x3  1 LPR ()  3/2 Implies LPR () = 3/2 So x1 = x2 = x3 = ½ LPR ()  3/2 ILP () = 2 Integrality Gap (IG) = ILP / LPR = 4/3 What is the integrality gap for (MVCP) For a complete graph ILP (Kn) = n - 1 LPR (Kn) = n/2 Integrality Gap (IG) = ILP / LPR Integrality gap may be as large as 2 – (2 / n) For more information: http://www-unix.mcs.anl.gov/otc/Guide/faq/linear-programming-faq.html MVCP Integrality Gap 2 1 3