1 / 24

EMIS 8373: Integer Programming

EMIS 8373: Integer Programming. Combinatorial Optimization Problems updated 27 January 2005. Combinatorial Optimization Problems. Input A finite set N = {1, 2, …, n} Weights (costs) c j for all j  N A set F of feasible subsets of N Optimization Problem

sonel
Télécharger la présentation

EMIS 8373: 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. EMIS 8373: Integer Programming Combinatorial Optimization Problems updated 27 January 2005

  2. Combinatorial Optimization Problems • Input • A finite set N = {1, 2, …, n} • Weights (costs) cj for all j  N • A set F of feasible subsets of N • Optimization Problem • Find a minimum-weight feasible subset

  3. COP Example: Minimum Spanning Tree (MST) • Input • A (simple) graph G = (V,E) • Edge cost cij for each edge (i,j) E • Optimization Problem • Find a minimum-cost spanning tree • Spanning tree: a set of |V|-1 edges S such that each vertex is incident to at least one edge in S and S contains no cycles.

  4. 1 3 2 5 4 3 4 5 7 3 1 2 MST Example: Input

  5. MST Example: Some Feasible Spanning Trees 3 3 3 3 2 2 4 4 5 cost = 11 1 1 3 cost = 14 1 2 5 5 4 4 3 3 3 2 2 cost = 12 cost = 9 7 1 1 3 3 1 1 2 2 5 5 4 4

  6. Example MST as COP • N = {(1, 2), (1, 5), (2, 3), (2, 4), (2, 5), (3, 4), (4, 5)}. • c12 = 4, c15 = 2, c23 = 3, c24 = 5, c25 = 7, c34 = 3, c45 =1. • F is the set of all spanning trees in G • {(1, 2), (2, 3), (3, 4), (4, 5)}  F. • {(1, 2), (1, 5), (2, 3), (2, 4)}  F. • {(1, 2), (1, 5), (2, 5), (3, 4)}  F. • |F| can be very large relative to |E| • Optimization Problem • Find a minimum-weight feasible subset

  7. The Traveling Salesman Problem (TSP) • Input • N is a set of cities {1, 2, …, n} • Travel time tij between cities i and j • Optimization Problem • Find a tour of N that starts at city 1, visits each other city exactly once, and then returns to city 1 in the minimum possible time.

  8. Symmetric TSP Example tij Table Graph Representation 3 3 2 4 5 1 7 3 7 1 5 2 5 4 1

  9. 3 3 2 4 5 3 2 4 5 3 7 1 5 3 1 7 5 2 5 4 1 2 5 4 STSP Example: Feasible Tours 3 2 1 Tour 1 cost = 13 1 5 4 Tour 2 cost = 25 Tour 3 cost = 19

  10. Example STSP as COP • N = {(1, 2), (1, 3), (1, 4), (1, 5), (2, 3), (2, 4), (2, 5), (3,4), (3,5), (4,5)}. • c12 = 4, c13 = 7, c12 = 7, etc. • F is the set of tours G where a tour is cycle that contains all the vertices of the graph. • {(1, 2), (1, 5), (2, 3), (3,4), (4,5)}  F. • Optimization Problem • Find a minimum-weight feasible subset

  11. Solving TSP by Enumeration • Each feasible tour can be represented by as a permutation  of the cites. • The salesman visits the cities in the order determined by the permutation. • Tour 1 corresponds to  = (1, 2, 3, 4, 5) • Tour 2 corresponds to  = (1, 3, 5, 2, 4) • Tour 3 corresponds to  = (1, 2, 4, 3, 5) • For n cities there are n – 1 choices for the second city, n – 2 for the third, etc. Thus, there are (n-1)! permutations that need be evaluated. • Solving a TSP with 11 cities this way requires evaluating 3.6 million permutations!

  12. Formulation TSP as BIP • Let xij = 1 if the tour goes from city i to city j; and zero, otherwise. • Constraints • The tour enters city j exactly once • The tour leaves city i exactly once • Objective function

  13. 3 4 1 1 1 BIP Solution for Example STSP • x12 = x23 = x31 = x45 = x54 =1 and all other variables = 0. • Objective function value = 10 • “Tour” 3 2 1 5 4

  14. Subtour Elimination Constraints • To eliminate (prevent) the subtour (cycle) of the cities 1, 2, and 3, add the constraint x12 + x13 + x21 + x23 + x31 + x32 2. • To eliminate (prevent) the subtour (cycle) of the cities 4 and 5, add the constraint x45 + x54 1.

  15. BIP with Subtour Elimination: Solution for Example STSP • x15 = x54 = x42 = x23 = x31 =1 and all other variables = 0. • Objective function value = 12. • Need to add 25-6 = 26 subtour elimination constraints. • Solving BIP with branch-and-bound may be faster than enumeration, but the number of constraints need grows exponentially with number of cities.

  16. COP Example: Minimum-Cost Cycle Cover (MCCP) • Input • A (simple) graph G = (V,E) • Edge cost cij for each edge (i,j)  E • Optimization Problem • Find a minimum-cost set of cycles C = {C1, C2, …, Cj} in G such that each edge in E is covered by (contained in) at least one cycle in C. • The cost of a cycle is the total cost of the edges it covers. • The cost of a cycle cover is the total cost of its cycles.

  17. 3 3 3 2 3 2 4 2 5 4 5 3 7 1 3 7 1 1 4 2 5 4 2 2 5 5 7 5 4 1 MCCP Example Cycle 1 Cost = 13 Cycle 2 Cost = 13 Cycle 3 Cost = 11 Cost of cycle cover = 13+13+11 =37

  18. Cycle 1 Cost = 13 3 3 2 3 2 3 4 2 4 3 1 3 5 7 2 1 1 4 2 1 5 4 5 4 1 2 5 4 7 1 2 2 5 5 7 5 4 1 Cycles in MCCP Example Cycle 3 Cost = 11 Cycle 2 Cost = 13 3 Cycle 4 Cost = 13 3 2 5 3 4 Cycle 6 Cost = 14 Cycle 5 Cost = 12

  19. Example MCCP as COP • N is the set of all cycles in G • N = {Cycle 1, Cycle 2, Cycle 3, Cycle 4, Cycle 5, Cycle 6} • Cycle 1 = {(1, 2), (1,5), (2, 5)}, Cycle 2 = {(2,4),(2,5),(4,5)}, etc. • In general, |N| >> |E| • c[Cycle 1] = 13, c[Cycle 2] = 13, …, c[Cycle 6] = 14. • F: a subset S of N is feasible if the union of all the cycles in S = E. • S = {Cycle 1, Cycle 2} is not feasible. • S = {Cycle 1, Cycle 2, Cycle 3} if feasible.

  20. Formulation of MCCP as BIP • Sets • Let C ={C1, C2, …C|C|} be the set of all cycles in the graph G=(V,E). • Constants • Let aij = 1 if cycle j covers edge i; and zero, otherwise. • Label the edges 1, 2, 3, …, |E| • Let wj = the cost of cycle j • Decision variables • Let the binary variable xj = 1 iff cycle j is selected as part of the cycle cover.

  21. Formulation of MCCP as BIP • Constraints • For each edge i, we must select at least one cycle j such where aij = 1. Therefore, • Objective Function

  22. BIP Formulation of MCCP

  23. The Set Covering Problem • Input • An m-row, n-column, zero-one matrix A (aij {0,1}) • A cost cj associated with each column j • Optimization Problem

  24. The Set Covering Problem • The matrix A is know as an incidencematrix and the columns are know as incidence vectors. • MCCP is a special case of set covering.

More Related