61 NP Complete

Embed Size (px)

DESCRIPTION

Documents for NP-Complete Problem

Citation preview

  • NP - Complete

  • 2013-11-25 2

    Mt s bi ton ti u ri rc

    Bi ton ngi du lch:

    Cho n im trn mt phng (thnh ph), gia hai thnh ph bt k c xc nh mt thng s l chi ph i li. Mt hnh trnh l mt cch i xut pht t mt thnh ph no , qua n thnh ph v quay v ni xut pht.

    OP (Optimization Problem): Tm hnh trnh * c tng chi ph b nht.

    DP (Decision Problem): C tn ti mt hnh trnh vi chi ph D?

  • 2013-11-25 3

    Mt s bi ton ti u ri rc

    Bi ton t mu th:

    Cho th G ={V,E}.

    OP: S mu t nht t th G?DP: Cho s nguyn K. C tn ti hay khng cch t mu th

    G vi s mu khng qu K?

    Mt cch t mu th l mt phng n gn cho mi nh mt mu, sao cho hai nh lin k c hai mu khc nhau.

  • 2013-11-25 4

    Mt s bi ton ti u ri rc

    Bi ton ci ti:

    Cho n vt vi kch thc l cc s nguyn s1, s2, ..., sn v cc ti

    vi kch thc l s nguyn T.

    OP: Tm s ti t nht xp cc vt.

    DP: Cho s nguyn K. C tn ti cch xp cc vt vo khng qu K ti vi sc cha T?

  • 2013-11-25 5

    Mt s bi ton ti u ri rc

    Bi ton tp con:

    Cho s nguyn dng T v tp X gm n s nguyn dng a1, a2, ..., an.

    OP: Xc nh tp con ca X sao cho tng ca chng gn nht v khng qu T.

    DP: C tn ti tp con sao cho tng kch thc ng bng T.

  • 2013-11-25 6

    Mt s bi ton ti u ri rc

    Bi ton phn cng cng vic:Gi thit c n cng vic:

    Mi thi im ch thc hin mt cng vic,

    Thi gian thc hin t1, t2, ..., tn,

    Thi hn hon thnh d1, d2, ..., dn (tnh t khi bt u cng vic u tin),

    Mc pht i vi mi cng vic b chm l p1, p2, ..., pn.

    Phn cng cng vic l mt hon v ca tp J={1, 2,..., n}: J(1), J(2), ..., J(n).

    Tng gi tr pht ca phn cng :

    OP: Tm lch sp xp cng vic c gi tr hm pht thp nht P() min.

    DP: Cho trc k, xc nh lch c mc pht khng qu k: P() k.

    n

    jjjj pdttP

    1)()()()1( 0elsethen...if

  • 2013-11-25 7

    Lp P

    Thut ton c phc tp O(f(n)) nu vi mi b s liu c di n, s

    php tnh phi thc hin khng qu C*f(n), vi C >0.

    Thut ton c phc tp O(p(n)), vi p(n) l mt a thc, gi l c

    phc tp a thc.

    nh ngha:

    P l lp cc bi ton c gii vi thi gian a thc.

    Ch :

    Khng phi mi bi ton thuc lp P c thut ton hiu qu.

    Nu bi ton khng thuc lp P th u phi tr gi rt t v thi gian

    hoc thm ch khng gii c n trong thc t.

  • 2013-11-25 8

    Lp NP (Nondeterministic Polynomial)

    NP l lp cc bi ton quyt nh m vic kim tra li gii i

    vi d liu vo c thc hin vi thi gian a thc.

  • 2013-11-25 9

    Lp NP (Nondeterministic Polynomial)

    Thut ton bt nh (nondeterministic algorithm):

    Pha bt nh:

    Mt xu k t S bt k c sinh ra trong b nh, c th coi nh

    li gii ngh.

    Pha tin nh:

    c d liu vo (S c th b b qua). Thut ton c th kt thc vi

    khng nh Yes, No, hoc ri vo vng lp khng dng.

    C th coi l pha kim tra li gii ngh S.

    NP l lp bi ton gii c bng thut ton bt nh vi thi gian a thc (nondeterministic polynomial bouded).

    Thut ton bt nh l a thc nu tn ti a thc p sao cho vi mi d liu vo c kch thc n v c tr li yes vi tnh ton ca thut ton l a thc.

  • 2013-11-25 10

    Lp NP

    V d:

    th c 5 inh, 8 cnh v k =4:

    V ={1, 2, 3, 4, 5},

    E={(1,2), (1,4), (2,4), (2,3), (3,5), (2,5), (3,4), (4,5)}

    K hiu: R (Red), B (Blue), G (Green), O (Orange), Y (Yellow).

    1

    2

    4

    3

    5

    Dng 4 mu, cc cp nh k khc muYesRGRBY

    Dng ti 5 muNoRBYGO

    nh 5 khng c t muNoRGRB

    nh 2 v 5 cng muNoRGRBG

    ReasonOutputS

  • 2013-11-25 11

    Lp P vs. NP

    Hin nhin: P NP

    NP \ P = ?

    (NP P?)

    P

    Sp xpCy khung b nhtNhn ma trnTm kim tun tng i ngn nht...

    NP

    Bi ton ci ti

    Bi ton ba l

    Bi ton ngi du lch

  • 2013-11-25 12

    NP-y (NP-complete)

    Hin nhin: P NP.

    Nhng: NP \ P = ?

    Chng minh c:

    Trong NP c nhng bi ton kh khng

    km bt c bi ton no khc trong NP.

    A NP: nu c mt thut ton a thc

    no gii c A th vi mi bi ton B

    NP u c thut ton a thc gii B.

    Bi ton A c gi l NP-y .

    Ni cch khc, A NP c gi l NP-

    y nu A P th suy ra P=NP.

    P

    Sp xpCy khung b nhtNhn ma trnTm kim tun tng i ngn nht...

    NP

    Bi ton ci ti

    Bi ton ba l

    Bi ton ngi

    du lch

  • 2013-11-25 13

    NP-y (NP-complete)

    Hin nhin: P NP.

    Nhng: NP \ P = ?

    Chng minh c:

    1. Nu NP P th c bi

    ton thuc NP nhng

    khng thuc P v cng

    khng phi NP-y .

    2. Nhiu bi ton l NP-y

    .

    P

    Sp xpCy khung b nhtNhn ma trnTm kim tun tng i ngn nht...

    NP-

    y

    NP

  • 2013-11-25 14

    NP-y (NP-complete)

    Nh vy, ch ra mt bi ton no l NP-y cn ch ra rng:

    Tn ti mt thut ton a thc bt nh gii n (tc l ch ra nthuc lp NP);

    C mt bi ton NP-y dn v n.

    P

    Sp xpCy khung bnhtNhn ma trnTm kim tun tng i ngn nht...

    NP-

    y

    NP

  • 2013-11-25 15

    NP-y (NP-complete)

    Gi thit cn gii bi ton A v c thut ton gii bi ton B.

    Gi s c nh x T chuyn mi d liu vo x ca bi ton A thnh d liu vo T(x) ca bi ton B

    T: x T(x)sao cho:

    Li gii y ca bi ton A vi d liu vo x

    tng ng vi

    Li gii z ca bi ton B vi d liu vo T(x)

    (nu y l yes th z cng l yes).

    Thut ton gii bi ton A = {nh x T + Thut ton gii B}

  • 2013-11-25 16

    Bi ton CNF-SAT

    M t:

    1) Bin logic nhn mt trong hai gi tr: true hoc false. K hiu a l bin logic, l ph nh ca a. Nu a nhn gi tr true th nhn gi tr false v ngc li, nu a nhn gi tr false th nhn gi tr true. Mt tn bin lmt bin logic hoc ph nh ca bin logic (cng l mt bin logic).

    2) Mt mnh l mt dy cc tn bin c xen k bi php ton logic OR ().

    3) Mt biu thc logic trong dng lin kt chun (conjunction nomal form -CNF) l mt dy cc mnh c kt ni bi php ton AND ().

    Bi ton quyt nh:

    Khi cc bin nhn gi tr true hoc false, biu thc c nhn gi tr true hay khng?

  • 2013-11-25 17

    Bi ton CNF-SAT

    nh l Cook:

    Bi ton CNF-SAT l NP-y

    Cn ch ra rng bt k bi ton NP no (A) cng dn chuyn v CNF-SAT:

    Cn xy dng nh x T dn chuyn input x ca bi ton A v mt biu thc logic.

    Li gii ca bi ton quyt nh A trng vi gi trtrue hoc false ca CNF-SAT.

  • 2013-11-25 18

    Bi ton CNF-SAT

    nh l Cook:

    Bi ton CNF-SAT l NP-y

    xd liu voca A

    yeshoc no

    T(x)T

    CNF-SAT

    Algorithm for A

  • 2013-11-25 19

    Bi ton CNF-SAT

    V d: Xt bi ton 3-CG:

    th G ={V,E} nh hnh vc t c bng 3 mu?

    a

    db

    c

    Chuyn dn bi ton 3-CG v bi ton CNF-SAT?

  • 2013-11-25 20

    Bi ton CNF-SAT

    u1

    u4u3

    u2K hiu: xkj nh k t bi mu j

    Xt 32 mnh :

    C(k) = {xk1, xk2, xk3}, nh k c t bi t nht 1 mu

    A(k) = {xk1, xk2,}, nh k khng cng c t mu 1 v 2

    B(k) = {xk2, xk3}, nh k khng cng c t mu 2 v 3

    C(k) = {xk1, xk3}, nh k khng cng c t mu 1 v 3

    k = a, b, c, d

    M = C(a) & ..&C(d)&A(a)&..&A(d)&B(a)&..&B(d)&C(a)&..&C(d)

    M = true nu mi nh c t bi ng 1 trong ba mu {1, 2, 3}

  • 2013-11-25 21

    Bi ton CNF-SAT

    u1

    u4u3

    u2

    K hiu: e=(u,v) E, u,v V

    D(e,j) ={ xuj, xvj } - nh u v v khng cng t bi mu j

    N = D((u1,u2),1)&D((u1,u3),1)&D((u1,u4),1)& D((u2,u3),1)&D((u2,u4),1)&D((u3,u4),1)

    &...&

    D((u1,u2),3)&D((u1,u3),3)&D((u1,u4),3)& D((u2,u3),3)&D((u2,u4),3)&D((u3,u4),3)

    N = true nu hai nh khng c t bi cng 1 trong ba mu {1, 2, 3}

    G l th 3 mu chkhi M&N c gi trtrue.

  • 2013-11-25 22

    NP-y V d 2: Bi ton tng tp con chuyn dn c v bi ton lp lch

    Cho s nguyn dng T v tp n s nguyn dng

    X={ a1, a2, ..., an}

    Tm tp con ca X sao cho tng ca chng gn nht vi T.

    n cng vic: J1, J2, ..., Jn;

    thi gian thc hin: t1, t2, ..., tn;

    thi hn hon thnh (t khi bt u d n): d1, d2, ..., dnmc pht chm qu thi hn: p1, p2, ..., pn. Mi thi im ch thc hin mt cng vic.

    Phn cng cng vic : {1, 2,..., n} {(1), (2),..., (n)}

    Th t thc hin: J(1), J(2),...,J(n).

    Tng gi tr pht ca phn cng trn l

    n

    jjjj pdttP

    1)()()()1( 0elsethen...if

  • 2013-11-25 23

    NP-y V d 2: Bi ton tng tp con chuyn dn c v bi ton lp lch

    Nu

    i=1,..,nsi < T

    bi ton tp con khng c li gii.

    C th chuyn dn phng n thnh bt k d liu vo cho bi ton phn cng cng vic m khng c li gii.

    V d:

    ti= 2, di = pi = 1, vi i = 1, 2, ..., n.

    and k=0.

    (Bi ton quyt nh:

    C tn ti mt tp con sao cho tng ng bng T?

    C tn ti mt lch cng tc m tng gi tr pht P k ?.)

  • 2013-11-25 24

    NP-y V d 2: Bi ton tng tp con chuyn dn c v bi ton lp lch

    Xt trng hp i=1,..,nsi T

    t ti = si,

    di = T,

    pi = si, vi i = 1, ..., n v

    k = i=1,..,nsi T.

    Gi s J NS = {1, 2,...,n}

    iJsi = T

    t: : J { 1, 2, ..., |J|}, : NS\J { |J|+1,...,n},

    TtssJ

    ii

    J

    ii

    Jii

    ||

    1)(

    ||

    1)( ||...,,2,1,

    1)( JjTt

    j

    ii

    Cc cng vic t |J|+1 cho n n u qu hn, gi tr pht:

    kTsssspn

    ii

    Jii

    n

    ii

    n

    Jii

    n

    Jii

    111||)(

    1||)(

  • 2013-11-25 25

    NP-y V d 2: Bi ton tng tp con chuyn dn c v bi ton lp lch

    Ngc li: gi s l mt phn cng cng vic vi mc pht khng qu k. K hiu m l s nguyn ln nht tho mn:

    Ttm

    ii

    1)(

    Tskpn

    mi

    n

    iii

    1 1)(Gi tr pht:

    TssTssn

    mii

    m

    ii

    n

    ii

    n

    mii

    1)(

    1)(

    11)(

    m

    iisT

    1)(

    Tsm

    ii

    1)(

    Vy

    s(1), s(2), ..., s(m)

    l li gii bi ton tng tp con.

  • 2013-11-25 26

    NP-y

    S chng minh A l bi ton NP-y :

    Ch ra rng A thuc lp NP;

    Chn bi ton NP-y no , v d l B v chuyn dn B v A

    Tht vy:A l NP-y nu

    A thuc lp NP vmi bi ton X thuc lp NP c XA.

    B l NP-y nn mi bi ton C trong NP:

    CBDo BA, suy ra CA. Ngha l mi bi ton C trong NP u chuyn dn v A c.

  • 2013-11-25 27

    NP-y

    1) Thng thng, vic ch ra rng mt bi ton A no thuc lp NP l kh (phi ch ra c thut ton bt nh gii n trong thi gian a thc).

    2) Vic tm c bi ton NP-y chuyn dn v A xem ra c th n gin hn.

    Vic chuyn dn c chng t n c kh tng ng vi bi ton NP-y . Nhng bi ton nh vy gi l NP-kh.

  • 2013-11-25 28

    Remark

    Bi ton tm ng ng i ngn nht ni hai nh ca th lin thng c trng s c thut ton hiu qu gii. Tuy nhin, bi ton tm ng i di nht ni hai nh l bi ton NP-y .

    Bi ton xc nh th G-2 mu kh n gin. Tuy nhin, bi ton kim tra G-3 mu li l NP-y .

    Cho th c hng G={V,E}, s nguyn k, tp con E E tho mn |E|k. E c cha cnh ca cc chu trnh trong G? Bi ton ny c chng mnh l NP-y , tuy nhin nu xt bi ton ny vi th v hng, n li thuc lp P.