Loading...

PPT – EMIS 8373: Integer Programming PowerPoint presentation | free to download - id: 71c85b-Mzc2N

The Adobe Flash plugin is needed to view this content

EMIS 8373 Integer

Programming

- Complexity and Problem Reductions
- updated 23 April 2009

Decision Problems

- The decision or recognition version of an

optimization problem is posed as a yes-no

question. - Complexity Theory is based on a theoretical

computer called a Turing machine - Given a binary input string, a program on a

Turning Machine either - accepts the input (returns a yes answer),
- rejects the input (returns a no answer),
- or fails to give an answer.
- A Turing machine is a very simple machine, but,

logically speaking, has all the power of any

digital computer.

Minimum Spanning Tree (MST)

- Input
- A (simple) graph G (V, E)
- Edge cost ce for each edge e ? E
- Parameter k
- Decision Problem
- Is there a set of edges T ? E such that

T V-1, T contains no cycles, and

The Traveling Salesman Problem (TSP)

- Input
- N is a set of cities 1, 2, , n
- Travel time tij between cities i and j
- Parameter k
- Decision Problem
- Is there a permutation ? of N such that

The Minimum-Cost Cycle-Cover Problem

- Input
- A (simple) graph G (V, E)
- Edge cost ce for each edge e ? E
- Parameter k
- Decision Problem
- Is there a set of cycles C C1, C2, , Cj in G

such that

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
- Parameter k
- Decision Problem
- Is there a solution to the system shown below?

The 0-1 Knapsack Problem

- Input
- A set of n items
- A weight ai associated with each item j
- A utility cj associated with each item j
- Parameters b and k
- Decision Problem
- Is there a solution to the system

Polynomial Certificates

- Given a yes instance X of a particular decision

problem (e.g., TSP), a polynomial certificate C

is a binary string such that - The length of the string, L(C), is bounded by a

polynomial in the length of the binary

representation of X, L(X) . - There is a polynomial-time certificate-checking

algorithm that takes X and C as input and

verifies that X is a yes instance.

Certificate Example TSP

tij Matrix

Graph Representation

3

3

2

4

5

1

7

3

1

7

5

2

5

4

1

k 14

Certificate Example TSP

- Using the graph representation, L(X) is O(n2) for

a generic TSP with n cities. - A certificate C for a generic TSP instance could

be a network with n arcs forming a cycle

corresponding to a tour of length k or less. - Note that L(C) is O(n).
- We will show that C can be verified in polynomial

time.

Certificate Example TSP

G

C

3

3

3

2

2

4

5

1

7

3

1

7

1

5

2

5

5

4

4

1

k 14

AMPL Certificate-Checking Algorithm for TSP

- param s default 0
- param visited V default 0
- for (i, j) in C
- let s s ti,j
- let visitedi 1
- let visitedj 1
- if s ? k and (sumi in V visitedi card(V))

then - printf certificate verified\n

complexity O(mn)O(n2)

Certificate Example 0-1 Knapsack Problem

- L(X) O(n)
- A polynomial certificate could be a binary vector

x ? Bn indicating which items are selected. - L(C) n
- We can check the certificate in O(n) time by

checking that

The Class NP

- A decision problem q is said to be in the class

NP if for every yes instance X of q, there is

a polynomial certificate. - NP is the set of problems that can be verified or

checked in polynomial time. - NP stands for Non-deterministic Polynomial. That

is, a problem is in NP if there exists a

non-deterministic Touring machine that accepts

all yes instances of q in polynomial time. - MST, TSP, MCCP, Set Cover, and 0-1 Knapsack are

all in NP

The Class P

- P is the set of problems that can be solved in

polynomial time. - P is a subset of NP
- MST, MCNFP, and LP are all in P
- It is unknown if TSP, MCCP, Set Cover, and 0-1

Knapsack are in P. - Does P NP? Or are there problems that cannot be

solved in polynomial time?

Polynomial Reductions Example 1

- Hamiltonian Path Problem
- Input a graph G (V, E), origin node s, and

destination node t. - Decision Problem Is there a simple path from s

to t that visits every node in V? - Longest Path Problem
- Input a graph G (V, E), origin node s,

destination node t, edge cost cij for each edge

and parameter k. - Decision Problem Is there a simple path from s

to t with length ? k? - Both problems are clearly in NP the yes-instance

certificate would be a feasible path from s to t.

Polynomial Reductions Example 1

- How does the difficulty of Longest Path compare

to the difficulty of Hamiltonian Path? - Given a graph G (V, E)
- F (i, j) i, j?V, (i, j) ? E.
- Let H (V, E ? F).
- Let cij 1 if (i, j) ? E and cij 0 if (i, j) ?

F. - Let k V-1
- Claim G, s, t is a yes instance of

Hamiltonian Path if and only if H, s, t, c, k

is a yes instance of Longest Path.

Polynomial Reductions Example 1

- If we have an algorithm for Longest Path, then we

can use it to solve Hamiltonian Path. - If the conversion from G to H is efficient,

then solving Longest Path is at least as

difficult as solving Hamiltonian Path. - L(G) O(V2)
- H has (V2-V)/2 edges
- L(H) is bounded by a polynomial in L(G).
- We call the conversion a polynomial reduction

from Hamiltonian Path to Longest Path.

Analogy LP is at Least as Hard as MCNFP

- We can solve Minimum Cost Network Flow Problems

(MCNFP) by formulating them as LP. - For a network G (V, E), the corresponding LP has

E decision variables and V 2E

constraints. - The size of the resulting LP is bounded by a

polynomial in the size of the network. - Since we can solve LP in polynomial time, this

implies that we can solve MCNFP in polynomial

time. Thus, LP is at least as difficult as

MCNFP.

Converting Hamiltonian Path to Longest Path Yes

Instances

1

G

3

2

H

3

2

1

0

0

0

1

1

1

0

0

s

s

1

5

4

5

4

1

t

t

k 4

Hamiltonian Path (1,2),(2,3),(3,4),(4,5)

Path of Length 4 (1,2),(2,3),(3,4),(4,5)

Converting Hamiltonian Path to Longest Path No

Instances

0

G

3

2

H

3

2

1

0

0

1

1

1

1

0

0

s

s

1

5

4

5

4

1

t

t

k 4

No Hamiltonian Path from s to t

The longest path from s to t has length 3

(1,2),(2,3),(3,4),(4,5)

Proof (If Direction)

- Suppose G is a yes instance of Hamiltonian Path

and let p be a simple Hamiltonian Path from s to

t. - p has V-1 edges.
- Since each edge in p is in E, the cost of path p

in H is V-1. - Thus, the Longest Path instance resulting from

the conversion is also a yes instance.

Proof (Only If Direction)

- Suppose H is a yes instance of Longest Path
- Let p be a simple path of length ? V-1 from s

to t. - p must have at least V-1 edges from E otherwise

its length would be less than V-1. - Since p is a simple path, it cannot have more

than V-1 edges. Otherwise, it would contain a

cycle. - Since p has exactly V-1 edges and no cycles, it

must visit each node in V exactly once - Therefore, H is a yes instance of Longest Path

only if the original graph G is as yes instance

of Hamiltonian Path.

Polynomial Reductions

- If problems A and B are in NP, and if any

instance Xa of A can be converted to (formulated

as) an equivalent instance Xb of B such that

L(Xb) is bounded by a polynomial in L(Xa), then A

is said to be polynomially reducible to B. - An algorithm that solves B can also solve A with

a conversion cost that is polynomial in the

size of the problem instance. - This implies that B is at least as difficult as

A. - It does not imply that A is at least as difficult

as B.