1 / 24

# EMIS 8373: Integer Programming - PowerPoint PPT Presentation

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

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

## PowerPoint Slideshow about 'EMIS 8373: Integer Programming' - sonel

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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

### EMIS 8373: Integer Programming

Combinatorial Optimization Problems

updated 27 January 2005

• 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

• 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.

3

2

5

4

3

4

5

7

3

1

2

MST Example: Input

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

• 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

• 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.

tij Table

Graph Representation

3

3

2

4

5

1

7

3

7

1

5

2

5

4

1

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

• 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

• 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!

• 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

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

• 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.

• 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.

• 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.

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

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

• 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.

• 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.

• Constraints

• For each edge i, we must select at least one cycle j such where aij = 1. Therefore,

• Objective Function

• Input

• An m-row, n-column, zero-one matrix A (aij {0,1})

• A cost cj associated with each column j

• Optimization 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.