Download presentation

Presentation is loading. Please wait.

1
NP-Complete Problems Reading Material: Chapter 10 Sections 1, 2, 3, and 4 only.

2
NP-Complete Problems Problems in Computer Science are classified into –Tractable: There exists a polynomial time algorithm that solves the problem O(n k ) –Intractable: Unlikely for a polynomial time algorithm solution to exist NP-Complete Problems

3
Decision Problems vs. Optimization Problems Decision Problem: Yes/no answer Optimization Problem: Maximization or minimization of a certain quantity When studying NP-Completeness, it is easier to deal with decision problems than optimization problems

4
Element Uniqueness Problem Decision Problem: Element Uniqueness –Input: A sequence of integers S –Question: Are there two elements in S that are equal? Optimization Problem: Element Count –Input: A sequence of integers S –Output: An element in S of highest frequency What is the algorithm to solve this problem? How much does it cost?

5
Coloring a Graph Decision Problem: Coloring –Input: G=(V,E) undirected graph and k , k > 0. –Question: Is G k-colorable? Optimization Problem: Chromatic Number –Input: G=(V,E) undirected graph –Output: The chromatic number of G, (G) i.e. the minimum number (G) of colors needed to color a graph in such a way that no two adjacent vertices have the same color.

6
Clique Definition: A clique of size k in G, for some +ve integer k, is a complete subgraph of G with k vertices. Decision Problem –Input: –Question: Optimization Problem –Input: –Output:

7
Vertex Cover Definition: A vertex cover of an undirected graph G=(V,E) is a subset C V such that each edge e=(x,y) E is incident to at least one vertex in C, i.e. x C or y C. Decision Problem –Input: –Question: Optimization Problem –Input: –Output:

8
Independent Set Definition: Given an undirected graph G=(V,E) a subset S V is called an independent set if for each pair of vertices x, y S, (x,y) E Decision Problem –Input: –Question: Optimization Problem –Input: –Output:

9
From Decision To Optimization For a given problem, assume we were able to find a solution to the decision problem in polynomial time. Can we find a solution to the optimization problem in polynomial time also?

10
Deterministic Algorithms Definition: Let A be an algorithm to solve problem . A is called deterministic if, when presented with an instance of the problem , it has only one choice in each step throughout its execution. –If we run A again and again, is there a possibility that the output may change? What type of algorithms did we have so far?

11
The Class P Definition: The class of decision problems P consists of those whose yes/no solution can be obtained using a deterministic algorithm that runs in polynomial time of steps, i.e. O(n k ), where k is a non-negative integer and n is the input size.

12
Examples Sorting: Given n integers, are they sorted in non-decreasing order? Set Disjointness: Given two sets of integers, are they disjoint? Shortest path: 2-coloring: –Theorem: A graph G is 2-colorable if and only if G is bipartite

13
Closure Under Complementation C C CA class C of problems is closed under complementation if for any problem C the complement of is also in C. Theorem: The class P is closed under complementation

14
Non-Deterministic Algorithms A non-deterministic algorithm A on input x consists of two phases: –Guessing: An arbitrary “string of characters y” is generated in polynomial time. It may Correspond to a solution Not correspond to a solution Not be in proper format of a solution Differ from one run to another –Verification: A deterministic algorithm verifies The generated “string of characters y” is in proper format Whether y is a solution in polynomial time

15
Non-Deterministic Algorithms (Cont.) Definition: Let A be a nondeterministic algorithm for a problem . We say that A accepts an instance I of if and only if on input I, there exists a guess that leads to a yes answer. –Does it mean that if an algorithm A on a given input I leads to an answer of no for a certain guess, that it does not accept it? What is the running time of a non-deterministic algorithm?

16
The Class NP Definition: The class of decision problems NP consists of those decision problems for which there exists a nondeterministic algorithm that runs in polynomial time

17
Example Show that the coloring problem belongs to the class of NP problems

18
P and NP Problems What is the difference between P problems and NP Problems? We can decide/solve problems in P using deterministic algorithms that run in polynomial time We can check or verify the solution of NP problems in polynomial time using a deterministic algorithm What is the set relationship between the classes P and NP?

19
NP-Complete Problems Definition: Let and ’ be two decision problems. We say that ’ reduces to in polynomial time, denoted by ’ poly , if there exists a deterministic algorithm A that behaves as follows: When A is presented with an instance I’ of problem ’, it transforms it into an instance I of problem in polynomial time such that the answer to I’ is yes if and only if the answer to I is yes.

20
NP-Hard and NP-Complete Definition: A decision problem is said to be NP-hard if ’ NP, ’ poly . Definition: A decision problem is said to be NP-complete if – NP – ’ NP, ’ poly . What is the difference between an NP-complete problem and an NP-hard problem?

21
Conjunctive Normal Forms Definition: A clause is the disjunction of literals, where a literal is a boolean variable or its negation –E.g., x 1 x 2 x 3 x 4 Definition: A boolean formula f is said to be in conjunctive normal form (CNF) if it is the conjunction of clauses. –E.g., (x 1 x 2 ) (x 1 x 5 ) (x 2 x 3 x 4 x 6 ) Definition: A boolean formula f is said to be satisfiable if there is a truth assignment to its variables that makes it true.

22
The Satisfiability Problem Input: A CNF boolean formula f. Question: Is f satisfiable? Theorem: Satisfiability is NP-Complete –Satisfiability is the first problem to be proven as NP-Complete –The proof includes reducing every problem in NP to Satisfiability in polynomial time.

Similar presentations

© 2020 SlidePlayer.com Inc.

All rights reserved.

To make this website work, we log user data and share it with processors. To use this website, you must agree to our Privacy Policy, including cookie policy.

Ads by Google