IE418 Integer Programming

Similar documents
IE418 Integer Programming

Computational Complexity. IE 496 Lecture 6. Dr. Ted Ralphs

1. Introduction Recap

Lecture 18: More NP-Complete Problems

NP-Completeness. NP-Completeness 1

NP-Completeness. f(n) \ n n sec sec sec. n sec 24.3 sec 5.2 mins. 2 n sec 17.9 mins 35.

Discrete Optimization 2010 Lecture 10 P, N P, and N PCompleteness

1 Primals and Duals: Zero Sum Games

CS/COE

Essential facts about NP-completeness:

Polynomial-time reductions. We have seen several reductions:

Computational Complexity

NP Completeness. CS 374: Algorithms & Models of Computation, Spring Lecture 23. November 19, 2015

Theory of Computation Chapter 9

Lecture 5: Computational Complexity

Computational Complexity and Intractability: An Introduction to the Theory of NP. Chapter 9

Polynomial-time Reductions

Introduction to Bin Packing Problems

P and NP. Inge Li Gørtz. Thank you to Kevin Wayne, Philip Bille and Paul Fischer for inspiration to slides

Chapter 34: NP-Completeness

ECS122A Handout on NP-Completeness March 12, 2018

Lecture 19: NP-Completeness 1

NP-Completeness. Subhash Suri. May 15, 2018

Polynomial-Time Reductions

CSI 4105 MIDTERM SOLUTION

CMPT307: Complexity Classes: P and N P Week 13-1

COP 4531 Complexity & Analysis of Data Structures & Algorithms

Travelling Salesman Problem

Lecture #14: NP-Completeness (Chapter 34 Old Edition Chapter 36) Discussion here is from the old edition.

More NP-Complete Problems

NP-COMPLETE PROBLEMS. 1. Characterizing NP. Proof

8.5 Sequencing Problems

Algorithm Design and Analysis

There are two types of problems:

CSE 421 NP-Completeness

CS 583: Algorithms. NP Completeness Ch 34. Intractability

NP and Computational Intractability

NP-Complete Reductions 1

P and NP. Warm Up: Super Hard Problems. Overview. Problem Classification. Tools for classifying problems according to relative hardness.

NP and Computational Intractability

Design and Analysis of Algorithms

NP-Completeness. CptS 223 Advanced Data Structures. Larry Holder School of Electrical Engineering and Computer Science Washington State University

CS21 Decidability and Tractability

Lecture 4: An FPTAS for Knapsack, and K-Center

1. (a) Explain the asymptotic notations used in algorithm analysis. (b) Prove that f(n)=0(h(n)) where f(n)=0(g(n)) and g(n)=0(h(n)).

NP-Complete Problems. More reductions

Show that the following problems are NP-complete

NP-Completeness. Until now we have been designing algorithms for specific problems

NP-Completeness. Sections 28.5, 28.6

CSC 373: Algorithm Design and Analysis Lecture 15

Data Structures and Algorithms (CSCI 340)

4. How to prove a problem is NPC

Modeling with Integer Programming

CSCI 1590 Intro to Computational Complexity

8. INTRACTABILITY I. Lecture slides by Kevin Wayne Copyright 2005 Pearson-Addison Wesley. Last updated on 2/6/18 2:16 AM

CS 6505, Complexity and Algorithms Week 7: NP Completeness

UC Berkeley CS 170: Efficient Algorithms and Intractable Problems Handout 22 Lecturer: David Wagner April 24, Notes 22 for CS 170

Introduction. Pvs.NPExample

Lecture 19: Finish NP-Completeness, conp and Friends

Representations of All Solutions of Boolean Programming Problems

Summer School on Introduction to Algorithms and Optimization Techniques July 4-12, 2017 Organized by ACMU, ISI and IEEE CEDA.

Easy Problems vs. Hard Problems. CSE 421 Introduction to Algorithms Winter Is P a good definition of efficient? The class P

1 T 1 = where 1 is the all-ones vector. For the upper bound, let v 1 be the eigenvector corresponding. u:(u,v) E v 1(u)

Theory of Computation CS3102 Spring 2014 A tale of computers, math, problem solving, life, love and tragic death

8.5 Sequencing Problems. Chapter 8. NP and Computational Intractability. Hamiltonian Cycle. Hamiltonian Cycle

CS 301: Complexity of Algorithms (Term I 2008) Alex Tiskin Harald Räcke. Hamiltonian Cycle. 8.5 Sequencing Problems. Directed Hamiltonian Cycle

Solving the MWT. Recall the ILP for the MWT. We can obtain a solution to the MWT problem by solving the following ILP:

NP-complete Problems

CS 320, Fall Dr. Geri Georg, Instructor 320 NP 1

Chapter 8. NP and Computational Intractability

1.1 P, NP, and NP-complete

5 Integer Linear Programming (ILP) E. Amaldi Foundations of Operations Research Politecnico di Milano 1

6.045: Automata, Computability, and Complexity (GITCS) Class 15 Nancy Lynch

P versus NP. Math 40210, Fall November 10, Math (Fall 2015) P versus NP November 10, / 9

NP-completeness. Chapter 34. Sergey Bereg

4/12/2011. Chapter 8. NP and Computational Intractability. Directed Hamiltonian Cycle. Traveling Salesman Problem. Directed Hamiltonian Cycle

Exercises NP-completeness

Contents. Typical techniques. Proving hardness. Constructing efficient algorithms

NP Complete Problems. COMP 215 Lecture 20

Supporting hyperplanes

Spring Lecture 21 NP-Complete Problems

Technische Universität München, Zentrum Mathematik Lehrstuhl für Angewandte Geometrie und Diskrete Mathematik. Combinatorial Optimization (MA 4502)

Some Algebra Problems (Algorithmic) CSE 417 Introduction to Algorithms Winter Some Problems. A Brief History of Ideas

2 COLORING. Given G, nd the minimum number of colors to color G. Given graph G and positive integer k, is X(G) k?

Algorithms and Theory of Computation. Lecture 22: NP-Completeness (2)

NP-Complete Reductions 2

SAT, Coloring, Hamiltonian Cycle, TSP

Algorithms. NP -Complete Problems. Dong Kyue Kim Hanyang University

Intro to Theory of Computation

NP and NP-Completeness

NP-Completeness. Dr. B. S. Panda Professor, Department of Mathematics IIT Delhi, Hauz Khas, ND-16

NP and NP Completeness

Non-Deterministic Time

Theory of Computer Science. Theory of Computer Science. E4.1 Overview E4.2 3SAT. E4.3 Graph Problems. E4.4 Summary.

Classes of Problems. CS 461, Lecture 23. NP-Hard. Today s Outline. We can characterize many problems into three classes:

Computational Complexity

NP-Completeness. Andreas Klappenecker. [based on slides by Prof. Welch]

Reductions. Example 1

Lecture 13, Fall 04/05

Transcription:

IE418: Integer Programming Department of Industrial and Systems Engineering Lehigh University 23rd February 2005 The Ingredients Some Easy Problems The Hard Problems Computational Complexity The ingredients that we need to build a theory of computational complexity for problem classification are the following A class C of problems to which the theory applies A (nonempty) subclass C E C of easy problems A (nonempty) subclass C H C of hard problems A relation not more difficult than between pairs of problems Our goal is just to put some definitions around this machinery Thm: Q C E, P Q P C E Thm: P C H, P Q Q C H

The Ingredients Some Easy Problems The Hard Problems The Easy problems Class P P is the class of problems for which there exists a polynomial algorithm. Matching P N P co-n P: Why? Some problems in P Given: Graph G = (V, E), k Z Question: Does a matching M in G with M k. A matching is a subset of edges such that no two edges share a common endpoint). More mathy: (i, j) M (i, k) M k j. The Ingredients Some Easy Problems The Hard Problems More Problems in P LP Given: A Q m n, b Q m, c Q n. Question: Does x R n + such that Ax b, c T x K? Assignment Problem Given: set N = {1, 2,..., n}, costs c ij Z + (i, j) (N N) Question: Does a permutation Π of N such that i N c iπ(i) Q

The Ingredients Some Easy Problems The Hard Problems More Problems in P Longest Path in a DAG Given: A directed acyclic graph G = (N, A), lengths l a Z a A Question: Does a path P in G such that a P l a K? The Ingredients Some Easy Problems The Hard Problems The Hard Problems Class We want to ask the question What are the hardest problems in N P? We ll call this class of problems, N P-Complete. Using the definitions we have made, we would like to say that if P, then Q N P Q P If P NP and we can convert in polynomial time every other problem Q NP to P, then P is in this sense the hardest problem in N P. P Is it obvious that such problems exist? No! We ll come to this later... Thm: Q P, P Q P P Thm: P, P Q Q

Polynomial Reduction If problems P, Q N P, and if an instance of P can be converted in polynomial time to an instance of Q, then P is polynomially reducible to Q. This is the not (substantially) more difficult than relation that we want to use. We will write this as P Q Depending on time, I will show a couple reductions here. Knapsack? Longest Path in DAG Knapsack Problem Given: set N, profits p j Z + j N, sizes: s j Z + j N, B Z, K Z Question: Does a subset N N such that j N s j B and j N p j K? construct something here... Prove: a path of length Q in the DAG above a subset N N such that j N s j B and j N p j K.

SHOW ME THE MONEY! The following statements are true: 1 Longest Path in DAG is in P 2 Knapsack is in Thm: If P = P = N P Did I just win $1M? Convert Knapsack to Longest Path on DAG, and solve! The Satisfiability Problem This is the first problem to be shown to be NP -complete. The problem is described by a finite set N = {1,..., n} (the literals), and m pairs of subsets of N, C i = (C i +, C i ) (the clauses). An instance is feasible if the set x Bn x j + (1 x j ) 1 i = 1,..., m is nonempty. j C + i j C i This problem is in N P. Why? In 1971, Cook defined the class N P and showed that satisfiability was NP-complete. We will not attempt to understand the proof

The Line Between P and The line between these two classes is very thin! Shortest Path (with non-negative edge weights) is in P. Longest Path (with non-negative edge weights) is in Chinese Postman Given: Undirected graph G = (V, E), w e Z + e E, B Z Question: Does a cycle in G traversing each edge at least once whose total weight is B? Chinese Postman P The Line Between P and Directed Chinese Postman Given: Directed Graph G = (N, A), w a Z + a A, B Z Question: Does a cycle in G traversing each arc at least once whose total weight is B? Directed Chinese Postman P Mixed Chinese Postman Given: Mixed Graph G = (V, A E), w e Z + e (A E), B Z Question: Does a cycle in G traversing each edge and each arc at least once whose total weight is B? Mixed Chinese Postman

That Thin, Thin Line Consider a 0-1 matrix A an integer k defining the decision problem {x B n Ax e, e T x k}? If we limit the number of nonzero entries in each column to 2, then this problem is known to be in P. What is this problem? If we allow the number of nonzero entries in each column to be 3, then this problem is N P-complete! What is this problem? If we allow at most one 1 per row, the problem is in P Prove it! If we allow two 1 s per row, it is in Proving N P-completeness In fact, that is what we will prove now... Once we know that satisfiability is N P-complete, we can use this to prove other problems are N P-complete using the reduction theorem : P, P Q Q Let s prove that Node Packing is NP-Complete. Node Packing (or Independent Set) Given: Graph G = (V, E), k Z Question: Does U V such that U k and U is a node packing. (u U v U v δ(u))

Reduction Your writing here... we just proved N P-Complete Theorem Given graph G = (V, E), its complement is Ḡ = (V, {(i, j) i V, j V, (i, j) E}) For the math-illiterate: Same set of vertices, all edges not in the original graph. Given G = (V, E). The following statements are equivalent. 1 I is an independent set for G 2 V \ I is a vertex cover for G 3 I is a clique in Ḡ

Other NP-Complete Problems Maximum Clique Given: Graph G = (V, E), k Z Question: Does U V such that U k and U is a clique. (u U v U v δ(u)) Proof: Max Independent Set Maximum Clique. Given MIS instance: G 1 = (V, E), q. Construct MC instance consisting of G = Ḡ 1, and k = q. U is a clique of size q in G if and only if U is an independent set of size k in G 1. Other NP-Complete Problems Minimum Vertex Cover Given: Graph G = (V, E), k Z Question: Does U V such that U k and U is a vertex cover: ( (u, v) E either u U or v U). Proof: Maximum Independent Set Minimum Vertex Cover. Given MIS instance: G 1 = (V, E), q. Construct MVC instance consisting of G = G 1, and k = V q. U is a vertex cover of size k in G if and only if V \ U is an independent set of size q in G 1.

Other methods of proving N P-Completeness This is from the Garey and Johnson Handout... 1 Restriction If you can show that a special case of the problem is an N P-complete problem, then the problem must be N P-complete 2 Local Replacement This is like what we did to prove node packing is NP-complete. 3 Component Design These are hard. I welcome you to read and look through some of the proofs for yourself! Theory versus Practice In practice, it is true that most problem known to be in P are easy to solve. This is because most known polynomial time algorithms are of relatively low order. It seems very unlikely that P = N P Although all NP-complete problems are equivalent in theory, they are not in practice. TSP vs. QAP TSP Solved instances of size 17000 QAP Solved instances of size 30

That s It! Next Time: for midterm Midterm on 3/2!