1 / 30

Cyclic Group and Knapsack Facets

Cyclic Group and Knapsack Facets. Ellis Johnson Lisa Evans, Julian Araoz, Ralph Gomory. IMA Integer Programming Workshop October 14-19, 2002. Motivation. General Pure Integer Program min{cx | Bx B + Nx N = b, x B , x N  0, integer} Group Problem (Relaxation)

haamid
Télécharger la présentation

Cyclic Group and Knapsack Facets

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. Cyclic Group and Knapsack Facets Ellis Johnson Lisa Evans, Julian Araoz, Ralph Gomory IMA Integer Programming Workshop October 14-19, 2002

  2. Motivation General Pure Integer Program min{cx | BxB + NxN = b, xB, xN  0, integer} Group Problem (Relaxation) min{cx | NxN  b (mod B), xN  0, integer} Cyclic Group Problem (Relaxation) x1 + 2x2 + 3x3 + … + (n-1)xn-1 r (mod n) xj  0, integer j, x0

  3. Topics • Master cyclic group and knapsack polyhedra • Classes of facets • Mappings between problems • Gomory’s shooting experiment • Generation of classes of facets

  4. Problem Definitions • Master Cyclic Group Problem C(n,r) x1 + 2x2 + 3x3 + … + (n-1)xn-1 r (mod n) xj  0, integer j, x0 • Master Knapsack Partitioning Problem K=(n) x1 + 2x2 + 3x3 + … + nxn= n xj  0, integer j • Master Knapsack Covering Problem K>(n) x1 + 2x2 + 3x3 + … + nxn n xj  0, integer j

  5. Subadditive Characterizations • Master Cyclic Group Problem (, r) is a facet of C(n,r) iff it is an extreme ray of the cone generated by:  0 i + j = r1  i  j  n-1, i+j = r mod n i + jk1  i  j  n-1, i+j = k mod n, k  0 Master Knapsack Partitioning Problem (, n) is a facet of K=(n) iff it is an extreme ray of the cone generated by i + n-i = n 1  i  n-1 i + jk1  i  j  n-1, i+j = k, k  n Master Knapsack Covering Problem (s, sn) is a facet of K>(n) iff it is an extreme ray of the cone generated by s 0 si + sn-i = sn 1  i  n-1 si + sjsk1  i  j  n-1, k = min { n, i+j } or K=(n)plus 0 <s1< … <sn

  6. Knapsack facets • x1 + x3 – x5 – x7> 0 is a facet of K=(8) Subtract x1+2x2+3x3+4x4+5x5+6x6+7x7+8x8=8 Gives -2x2 -2x3 -4x4 -6x5 -6x6 -8x7 -8x8 > -8 • x2 +x3 +2x4 +3x5 +3x6 +4x7 +4x8 < 4 is a facet for the < knapsack problem and all come from facets of K=(8) in this way • Adding the equality constraint gives 2x1+2x2+4x3+4x4+4x5+6x6+6x7+8x8> 8 or x1+x2+2x3+2x4+2x5+3x6+3x7+4x8> 4 which is a facet of K>(8) but not all facets of K>(8) come from this construction

  7. Some Covering Facets • Lemma: If (s1,…, sn) is complementary, subadditive, monotone, and has some k satisfying sk = j for j = 1, …, J = sn, then s is facet-defining for K>(n) • Define kj = max { k | sk = j } • Thm: s is subadditive iff k is superadditive • Thm: s is complementary iff kJ-j = n – (kj-1 +1) • Extends for even n and odd r to having one half integer interval around n/2 (1, 1, 1, 1, 1, 2) is always a facet for n > 2

  8. Relationship between Problems • The knapsack polytope P(K=n) is a facet for the polyhedra associated with four problems: • C(n+1, n) • C(n,0) • K>(n) – covering • The < knapsack facets are a 1-1 mapping • Every knapsack facet may be tilted to obtain a facet for many cyclic group (via automorphisms) and for covering polyhedra

  9. 3 Approaches to Facet Generation • Seeds • Facets generated directly • Mappings • Facets from other polyhedra directly mapped to current polyhedron • Tiltings (a particular type of mapping) • Mappings where facets for master knapsack polytopes are “tilted” to facets for master cyclic group polyhedron

  10. Seeds C(n,r) : Master cyclic group polyhedron of size n with rhs r K(n): Master knapsack polytope of size n

  11. Example - (1,0,-1) Facetof P(K12) ri b d a b i

  12. Example - 2Lin Facet of P(K12) ri i

  13. Example - 3Lin1Slp Facetof P(K12) ri i

  14. Mappings C(n,r) : Master cyclic group polyhedron of size n with rhs r K(n): Master knapsack polytope of size n

  15. Mappings for P(Cn,r): Homomorphisms Given a homomorphism F: Cn Cd such that F(s) = r and facet (p,pr) of P(Cd,r), where d divides n, (p’,p’s) = ((pF(1), pF(2),… ,pF(n-1)), pF(s)) is a facet of P(Cn,s). Example: P(C5,2)  P(C10,7)

  16. Mappings for P(Kn) from cyclic groups (i) If d n+1/2, d does not divide n, and r  n (mod d), then a facet (p,pr) of P(Cd,r) give the facet (r,rn) of P(Kn) as follows: ri = pi (mod d) for i=1,…,n Example: P(C5,2)  P(K10) (p,p2) = ((1,2,1),2)  (r,r10)=((1,2,1,0,1,2,1,0,1,2),2)

  17. Tilting Knapsack Facets Given a facet (r, rr) of master knapsack polytope P(Kr), we may “tilt” r by adding any multiple a times the mixed integer cut for C(r+1,r). The resulting inequality is given by: pi = ri + a(i/r) For (p,pr) to be a facet for C(r+1,r), a must be chosen so that all subadditive relations are satisfied, and at least one new subadditive relation is satisfied at equality.

  18. Tilting Knapsack Facets-Example r = [2 1 0 2 1 0 2] is a facet rx  r7 for K(7). A facet px  p7 for C8,7 must satisfy the subadditive relation p3 + p6 p1. If a = 7/4, then p3 + p6 = 7/4*3/7 + 7/4*6/7 =63/28 = 2+ 7/4*1/7 = p1.

  19. Tilting Knapsack Facets

  20. Tilting Knapsack Facets-Extension We can also find facets for larger cyclic group problems by adding multiples of the MIC for C(n,r) for any n > r. ri + a (i/r) for i = 1,…,r pi = n-i/n-r + a (n-i/n-r) for i = r+1,…,n-1

  21. Tilting Knapsack Facets-Extension

  22. Generating Facets-Summary • Finding one seed for any master problem gives many facets for larger problems of both types through mappings • A subset of the facets for any master problem can be found using seeds and mappings

  23. Gomory’s Shooting Experiment Which facets are “important”? Idea: Shoot random vectors from the origin and see which facets they hit.

  24. Shooting Theorem Theorem: The facet *(v) hit by a random vector v is the basic optimal solution to the LP: min v i + j = rif i+j = r mod n, 1  i  j  n-1 i + jkif i+j = k mod n, k  0, 1  i  j  n-1 r =1  0

  25. 350 300 250 200 150 100 50 0 30 40 50 60 70 80 90 100 110 120 130 Additive Relations vs Hits-C(23,22) )| p |H( p |A( )|

  26. 1400 1200 1000 800 |H( 600 400 200 0 30 50 70 90 110 130 150 170 190 210 p |A( )| Additive Relations vs Hits-C(24,23) )| p

  27. Shooting Results for Facet Classes

  28. Generating and Shooting Results

  29. Generating Cutting Planes • Given: • Updated row from optimal LP tableau: • Subadditive function f : [0,1]  [0,1] • Let • Cutting plane:

  30. Subadditive Functions f:[0,1]  [0,1]

More Related