Summary - PowerPoint PPT Presentation

About This Presentation
Title:

Summary

Description:

Summary NP-hard and NP-complete NP-completeness proof Polynomial time reduction List of NP-complete problems Knapsack problem Isomprphisim is an open problem, network ... – PowerPoint PPT presentation

Number of Views:93
Avg rating:3.0/5.0
Slides: 40
Provided by: cby
Category:

less

Transcript and Presenter's Notes

Title: Summary


1
Summary
  • NP-hard and NP-complete
  • NP-completeness proof
  • Polynomial time reduction
  • List of NP-complete problems
  • Knapsack problem
  • Isomprphisim is an open problem, network flow
    problem where capacities are nodes, node capacity
    reduced to edge capacity problem.

2
Reduction-1
  • Isomorphism is an open problem.
  • Network flow problem where capacities are nodes,
    node capacity reduced to edge capacity problem.
    Polynomial Prbl.
  • Reduction from independent set to a recipe. IS to
    (node cover) VC.
  • Example of nodes and edges..
  • Traffic police
  • VC(G, k)? G(V, E), k, is there a node cover of
    size ? k, that touches every edge, every edge
    touches one of the nodes,
  • IS, no two nodes in that subset are adjacent.
  • IS?VC. Idea is IS-gtconvert-gtsolver for VC-gt?
  • Question if there is an independent set IS of G,
    size k??
  • This means if there is a VC of size ?k,
  • (G, k) ?IS-gt(G, k)?VC-gt
  • (G, k) ?IS?VC?
  • how to do ? (G, k)? GG, k ? k n-k ?VC?
  • (G,k)?IS? reduction? VC?
  • I have to issue a theorem
  • Theorem A subset of nodes S is a nodecover iff
    V-S is an independent set.
  • IS G, k given in to the box of VC

2
3
?p Reduction takes polytime
  • IS G, k given in to the box of VC
  • Reduction runs in polytime at the worst case, any
    instance of IS, reduced to VC, by, gg, kn-k,
    (one clock time)..
  • IS ?p VC
  • The otherway around is not always true in
    general.
  • Question1? If X ?p Y and if Y has a polytime
    solution, does X has a polytime solution? ..
  • Proof Poly of Poly is poly.. O(p'(s))p(s)
    ?O(p) bounded by a poly solution for X.
  • Question2? If X ?p Y and if X does not have a
    polytime solution (cannot be solved with a
    polytime question), does Y has a polytime
    solution? ..
  • Cannot Poly of Poly is poly.. O(p'(bs)p(s)
    ?O(bs) solution.
  • Clauses related together by ANDS.. (x1 v ?x2)
    (?x1 v ?x3) (x2 v x3) how to satisfy this.
  • Not all can be made true, example (x2 ) (?x2)
  • The maximum number of literals in a clause
    determines k-sat.
  • Example 3-sat at most 3 literals. 2-sat at most 2
    literals..
  • 3sat ?p IS

3
4
?p Reduction takes polytime
  • 3sat ?p IS
  • A boolean formula?3sat?reducer?input for IS?(G,
    k)?IS?
  • If formula is satisfiable then there is an IS.
  • Tree boxes,, input, X, Reducer and Y
    solver-output yes or no.
  • Decision YES OR NO

4
5
3-SAT ?p IS - Reduction in polytime
  • A boolean formula?3-SAT?reducer?input for IS?(G,
    k)?IS?
  • If formula is satisfiable then there is an IS.
  • Tree boxes, input, X, Reducer and Y solver-output
    yes or no.
  • Decision YES OR NO
  • If y runs in polytime, and result will be ploy of
    poly(x).
  • If there is no poly solver for X, X reduced to Y,
    then there cannot be a polysolver for Y.
  • 3-SAT ?p IS no two nodes adjacent.
  • (x1, x2, x3)(?x1,?x4, x5)(x1, ?x2,
    x4)(x3,?x4,?x5)
  • At least one of literals must be true,
  • Satisfying this formula definitely corresponds to
    an IS, with size equal to number of clauses..
    Question make clauses true..
  • Conversely if there is an independent set, then
    formula must be true, that means there must be at
    least one literal to be true.
  • 3-SAT although seems straight forward but
    presently we dont know an algorithm to solve it
    in polytime algorithm..

5
6
Class of NP problems
  • Def A Decision Prbl X is associated with a set
    of strings or input, to a problem X language,
    such that x?X.
  • Def An algorithm A, solves prbl x, iff A(x) says
    yes iff x?X.
  • Def If A runs in O(px), for some polyn
    function p, then all X is poly solvable.
  • P poly time solvable. Network flow, that is not
    a decision question. Maximize flow. Decision
    question would if there is a flow less than some
    value ie 20, yes or no.
  • For 3-SAT we dont know yet if it is in NP, 3
    sat, since we dont know yet if there is a
    polynomial time to solve 3sat.
  • CHECKING Verifying. If an input is in the
    language or not. Instance, certificate, witness
    proof, hint f -gtB X checker algorithm A,
    polytime-gt..

6
7
  • Def B is an efficient certifier for language X,
    if
  • 1) B is a polytime algorithm with respect to its
    inputs x, t. outputs yes or no,
  • 2) ? exists a polyfunct p, such that for any
    input x?X (target, k of IS), iff ? some x in
    language X, certificate C (bounded by a
    polynomial program size!), witness, t. p(t).
    and B(x, t) yes.
  • NP is the class of problems that have efficient
    certifiers B as given above.
  • X is in NP iff there is an efficient certifier
    for X.
  • ie for VC reduces to IS and IS reduces to VC, but
    certifier is SAT, the instances of problem G and
    k, there exists a program t, and a B(x, t), x(G,
    k), t is a subset of nodes which is VC of G, size
    k, if there is one, and B(xm t), check whether
    this subset is actually a nodecover of G.

7
8
  • ie for VC reduces to IS and IS reduces to VC, but
    certifier is SAT, the instances of problem G and
    k, there exists a program t, and a B(x, t), x(G,
    k), t is a subset of nodes which is VC of G, size
    k, if there is one, and B(xm t), check whether
    this subset is actually a nodecover of G.
  • Algorithm checker is simple, checks the size of
    proposed nodes smaller than k, and checks if
    these nodes are actually are nodecover, VC. If so
    it says yes. All these takes polynomial time. If
    input size is n, total time is n2. Yes. Otherwise
    it outputs not verified.. No!.
  • To be in NP, Checker checks if proposed solution
    is a solution. May be a list or other
    constraints.
  • P?NP.. Because all X?P. X can be certified
    (instance ans A(t, x)) in the order of a
    poly-operations but no need since easy to
    compute. There can never be a NO since solver
    solves the problem In polytime, easily. P?NP..
    is a basic elementary fact.

8
9
NP-hard and NP-complete
  • Def Problem X is NP-C if
  • X ? NP
  • For any Y ? NP, Y ?p X with a diagram,
  • y?Y?Y ?p X ?x?solver for X poly solver?yes
    or no
  • xy
  • Every known reduces to unknown.
  • Consequence of this is
  • Corollary if at least one NPC problem X is in P
    (runs in polynomial time) then NPP.
  • Even one problem X is X ? NP (1), P is already
    contained on NP, P?NP, this would mean NP ? P
  • From second statement and diagram (2), that is
    running in polytime. The words swapping..
  • Then the roof of NP is collapsing into P.
  • Equivalently if P ? NP, then no any NPC is in P.
  • Therefore if X is NPC, there can be no polynomial
    time solution for problem X.

9
10
NP-hard and NP-complete
  • Then the roof of NP is collapsing into P.
  • Equivalently if P ? NP, then no any NPC is in P.
  • Therefore if X is NPC, there can be no polynomial
    time solution for problem X.
  • There were not NPC classified problems, Cookss
    theorem Satisfiabilility..
  • tedious to prove but tractable.. Levin.
  • Then how to establish other problems are npc,
  • Poly reduction of Y to X, and show X is in NP.
  • IF X is known to be NPC, we can proove Y to be
    NPC by show by a polytime reduction of instances
    of X to instances of Y.
  • Poly of poly,.
  • For each NP problem there is a poly reduction to
    X and from X to Y, (by transitivity every
    problem in NP reduces to Y)
  • Problem X is called NP-hard, not the first part
    but the second part is satisfied, in other words,
    if every problem in NP reduces to X in ploytime.

10
11
  • From
  • www.ece.mtu.edu/faculty/shiyan/EE5900Spring10/NP-c
    omplete.ppt
  • www.cs.dartmouth.edu/ac/Teach/CS39Winter09/Slides
    AndNotes/lec28npcomplete.pdf

12
Nondeterministic algorithms
  • A nondeterminstic algorithm consists of
  • phase 1 guessing
  • phase 2 checking
  • If the checking stage of a nondeterministic
    algorithm is of polynomial time-complexity, then
    this algorithm is called an NP (nondeterministic
    polynomial) algorithm.
  • NP problems
  • e.g. searching, MST
  • sorting
  • satisfiability problem (SAT)
  • traveling salesperson problem (TSP)

13
Nondeterministic searching algorithm
  • Search for x in an array A
  • Choice(S) arbitrarily chooses one of the
    elements in set S
  • Failure an unsuccessful completion
  • Success a successful completion
  • Nonderministic searching algorithm
  • j ? choice(1 n) / guessing /
  • if A(j) x then success / checking /
  • else failure

13
14
  • A nondeterministic algorithm terminates
    unsuccessfully iff there exist not a set of
    choices leading to a success signal.
  • A deterministic interpretation of a
    non-deterministic algorithm can be made by
    allowing unbounded parallelism in computation.
  • The runtime required for choice(1 n) is O(1).
  • The runtime for nondeterministic searching
    algorithm is also O(1)

14
15
Nondeterministic sorting
  • B ? 0
  • / guessing /
  • for i 1 to n do
  • j ? choice(1 n)
  • if Bj ? 0 then failure
  • Bj Ai
  • / checking /
  • for i 1 to n-1 do
  • if Bi gt Bi1 then failure
  • success

15
16
  • NP the class of decision problem which can be
    solved by a non-deterministic polynomial
    algorithm.
  • P the class of problems which can be solved by a
    deterministic polynomial algorithm.
  • NP-hard the class of problems to which every NP
    problem reduces.
  • NP-complete (NPC) the class of problems which
    are NP-hard and belong to NP.

17
Some concepts of NPC
  • Definition of reduction Problem A reduces to
    problem B (A ? B) iff A can be solved by a
    deterministic polynomial time algorithm using a
    deterministic algorithm that solves B in
    polynomial time. B is harder.
  • Up to now, none of the NPC problems can be solved
    by a deterministic polynomial time algorithm in
    the worst case.
  • It does not seem to have any polynomial time
    algorithm to solve the NPC problems.

18
  • The theory of NP-completeness always considers
    the worst case.
  • The lower bound of any NPC problem seems to be in
    the order of an exponential function.
  • Not all NP problems are difficult. (e.g. the MST
    problem is an NP problem.)
  • If A, B ? NPC, then A ? B and B ? A.
  • Theory of NP-completeness
  • If any NPC problem can be solved in polynomial
    time, then all NP problems can be solved in
    polynomial time. (NP P)

19
Decision problems
  • The solution is simply Yes or No.
  • Optimization problems are more difficult.
  • e.g. the traveling salesperson problem
  • Optimization version
  • Find the shortest tour
  • Decision version
  • Is there a tour whose total length is less than
    or equal to a constant c ?

20
Solving an optimization problem by a decision
algorithm
  • Solving TSP optimization problem by decision
    algorithm
  • Give c1 and test (decision algorithm)
  • Give c2 and test (decision algorithm)
  • ?
  • Give cn and test (decision algorithm)
  • We can find the smallest ci

21
The satisfiability problem
  • The satisfiability problem Given a Boolean
    statement, determine whether it is satisfiable or
    not.
  • The logical formula
  • x1 v x2 v x3
  • x1 x2 x3
  • DNF, CNF, literals and clause. Conjunctive nrml
    form
  • If there is at least one assignment which
    satisfies a formula in DNF, then we say that this
    formula is satisfiable otherwise, it is
    unsatisfiable.
  • (F, F, T) will make statement true (satisfied) or
    (-x1, -x2 , x3)
  • Unsatisfiable
  • (x1 v x2) (x1 v -x2) (-x1 v x2) (-x1 v -x2)

22
Cooks theorem
  • NP P iff the satisfiability problem is a P
    problem.
  • SAT is NP-complete.
  • It is the first NP-complete problem.
  • Every NP problem reduces to SAT.

23
Toward NP-Completeness
  • Once we have found an NP-complete problem,
    proving that other problems are also NP-complete
    becomes easier.
  • Given a new problem Y, it is sufficient to prove
    that Cooks problem, or any other NP-complete
    problems, is polynomially reducible to Y.
  • Known problem -gt unknown problem
  • Reduction here is from unknown to every known
    prbl.

24
NP-Completeness Proof
  • Assume that CLIQUE problem is NP-complete, to
    prove that vertex cover (VC) problem is
    NP-complete.
  • Definition
  • A vertex cover of G(V, E) is V?V such that
    every edge in E is incident to some v?V.
  • Vertex Cover(VC) Given undirected G(V, E) and
    integer k, does G have a vertex cover with ?k
    vertices?
  • CLIQUE Does G contain a clique of size ?k?

25
NP-Completeness Proof Vertex Cover(VC)
  • Problem Given undirected G(V, E) and integer k,
    does G have a vertex cover with ?k vertices?
  • Theorem the VC problem is NP-complete.
  • Proof (Reduction from CLIQUE)
  • VC is in NP. This is trivial since we can check
    it easily in polynomial time.
  • Goal Transform arbitrary CLIQUE instance into VC
    instance such that CLIQUE answer is yes iff VC
    answer is yes.

26
NP-Completeness Proof Vertex Cover(VC)
  • Claim CLIQUE(G, k) has same answer as VC ( ,
    n-k), where n V.
  • Observe There is a clique of size k in G iff
    there is a VC of size n-k in .

27
NP-Completeness Proof Vertex Cover(VC)
  • Observe If D is a VC in , then has no
    edge between vertices in V-D.
  • So, we have k-clique in G n-k VC in
  • Can transform in polynomial time.

28
NP-Completeness Proof CLIQUE
  • Assume that SAT problem is NP-complete, to prove
    that CLIQUE problem is NP-complete
  • Problem Does G(V,E) contain a clique of size k?
  • Theorem Clique is NP-Complete. (reduction from
    SAT)
  • Idea Make column for each of k clauses.
  • No edge within a column.
  • All other edges present except between x and x

29
NP-Completeness Proof CLIQUE
  • Example
  • G
  • G has m-clique (m is the number of clauses in E),
    iff E is satisfiable.
  • (Assign value 1 to all variables in clique)

30
Graph coloring problem
  • Def A coloring of a graph G(V, E) is a function
    f V ? 1, 2, 3,, k such that if (u, v) ? E,
    then f(u)?f(v). The graph coloring problem is to
    determine if G has a coloring for k.
  • E.g.

3-colorable f(a)1, f(b)2, f(c)1 f(d)2,
f(e)3
31
Set cover problem
  • Def F Si S1, S2, , Sk
  • Si u1, u2, , un
  • T is a set cover of F if T ? F and Si
    Si
  • The set cover decision problem is to determine if
    F has a cover T containing no more than c sets.
  • Example
  • F (a1, a3), (a2, a4), (a2, a3), (a4),
    (a1, a3 , a4)
  • s1 s2 s3 s4
    s5
  • T s1, s3, s4 set cover

32
Subset sum problem
  • Def A set of positive numbers A a1, a2, ,
    an
  • a constant C
  • Determine if ? A? ? A s.t. ai C
  • e.g. A 7, 5, 19, 1, 12, 8, 14
  • C 21, A? 7, 14
  • C 11, no solution

33
Partition problem
  • Def Given a set of positive numbers A
    a1,a2,,an ,
  • determine if ? a partition P, s.t. ?ai ?ai


  • i?p i?p
  • e. g. A 3, 6, 1, 9, 4, 11
  • partition 3, 1, 9, 4 and 6, 11

34
Bin packing problem
  • Def n items, each of size ci , ci gt 0
  • bin capacity C
  • Determine if we can assign the items into
  • k bins, s.t. ?ci ? C , 1?j?k.
  • i?binj

35
Hamiltonian cycle problem
  • Def A Hamiltonian cycle is a round trip path
    along n edges of G which visits every vertex once
    and returns to its starting vertex.
  • e.g.
  • Hamiltonian cycle 1, 2, 8, 7, 6, 5, 4, 3, 1.

36
Traveling salesperson problem
  • Def A tour of a directed graph G(V, E) is a
    directed cycle that includes every vertex in V.
    The problem is to find a tour of minimum cost.

37
0/1 knapsack problem
  • Def n objects, each with a weight wi gt 0
  • a profit pi gt 0
  • capacity of knapsack M
  • Maximize ?pixi

  • 1?i?n
  • Subject to ?wixi ? M

  • 1?i?n
  • xi 0 or 1, 1? i ?n
  • Decision version
  • Given K, ? ?pixi ? K ?

  • 1?i?n
  • Knapsack problem 0 ? xi ? 1, 1? i ?n.

38
Subset sum problem
  • Reduce from 3SAT problem to show that subset sum
    problem is NP-complete.

39
Three dimensional matching problem
  • Reduce from 3SAT problem to show that three
    dimensional matching (3DM) problem is NP-complete.
Write a Comment
User Comments (0)
About PowerShow.com