You are on page 1of 28

NP - Complete

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

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

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

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

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 :
n

P if t (1 ) ... t ( j ) d ( j ) then p ( j ) else 0


j 1

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.

2013-11-25

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

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

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

Lp NP
2
5
3

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).

2013-11-25

V d:

Output

Reason

RGRBG

No

nh 2 v 5 cng mu

RGRB

No

nh 5 khng c t mu

RBYGO

No

Dng ti 5 mu

RGRBY

Yes

Dng 4 mu, cc cp nh k khc mu

10

Lp P vs. NP
Hin nhin:

P NP

NP \ P = ?
(NP P?)

NP
P
Sp xp
Cy khung b nht
Nhn ma trn
Tm kim tun t
ng i ngn nht
...

2013-11-25

Bi ton ci ti
Bi ton ba l
Bi ton ngi du lch

11

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.

NP
P
Sp xp
Cy khung b nht
Nhn ma trn
Tm kim tun t
ng i ngn nht
...

Bi ton ci ti
Bi ton ba l
Bi ton ngi
du lch

Bi ton A c gi l NP-y .

Ni cch khc, A NP c gi l NPy nu A P th suy ra P=NP.


2013-11-25

12

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 .

P
Sp xp
Cy khung b nht
Nhn ma trn
Tm kim tun t
ng i ngn nht
...

NP

NPy

2. Nhiu bi ton l NP-y


.

2013-11-25

13

NP-y (NP-complete)
P

NP

Sp xp
Cy khung b
nht
Nhn ma trn
Tm kim tun t
ng i ngn
nht
...

NPy

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 n
thuc lp NP);
C mt bi ton NP-y dn v n.

2013-11-25

14

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

15

Bi ton CNF-SAT
M t:
1)

2)

3)

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 l
mt bin logic hoc ph nh ca bin logic (cng l mt bin logic).
Mt mnh l mt dy cc tn bin c xen k bi php ton logic
OR ().
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

16

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 tr
true hoc false ca CNF-SAT.

2013-11-25

17

Bi ton CNF-SAT
nh l Cook:
Bi ton CNF-SAT l NP-y

x
d liu
vo
ca A

T(x)

CNF-SAT

yes
hoc
no

Algorithm for A

2013-11-25

18

Bi ton CNF-SAT
V d: Xt bi ton 3-CG:

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

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

2013-11-25

19

Bi ton CNF-SAT
u1

u2

K 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

u3

u4

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

20

Bi ton CNF-SAT
u1

u2

G l th 3 mu ch
khi M&N c gi tr
true.

u3

u4

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}

2013-11-25

21

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:
thi gian thc hin:
thi hn hon thnh (t khi bt u d n):
mc pht chm qu thi hn:

J1, J2, ..., Jn;


t1, t2, ..., tn;
d1, d2, ..., dn
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

P if t (1) ... t ( j ) d ( j ) then p ( j ) else 0


j 1

2013-11-25

22

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

23

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.
|J |

|J |

i 1

iJsi = T
t:
:J

: NS\J

{ 1, 2, ..., |J|},
{ |J|+1,...,n},

si s ( i ) t ( i ) T

i J

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

t ( i ) T ,

i 1

j 1, 2, ..., | J |

i 1

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


n

i | J |1

i | J |1

i 1

p ( i ) s ( i ) s i s i s i T k

2013-11-25

i J

i 1

24

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:
Gi tr pht:

i m 1

i 1

t (i ) T

i 1

p (i ) k si T

i m1

i 1

i 1

i m1

s (i ) si T s (i ) s (i ) T
m

T s (i )
i 1

s (i) T

i 1

Vy
s(1), s(2), ..., s(m)
l li gii bi ton tng
tp con.

2013-11-25

25

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 v
mi bi ton X thuc lp NP c XA.
B l NP-y nn mi bi ton C trong
NP:
CB
Do BA,
suy ra
CA.
Ngha l mi bi ton C trong NP u
chuyn dn v A c.

2013-11-25

26

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

27

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.

2013-11-25

28

You might also like