• Nie Znaleziono Wyników

Algorytmika Problemów Trudnych Wykªad 1

N/A
N/A
Protected

Academic year: 2021

Share "Algorytmika Problemów Trudnych Wykªad 1"

Copied!
41
0
0

Pełen tekst

(1)

Algorytmika Problemów Trudnych

Wykªad 1 Tomasz Krawczyk

krawczyk@tcs.uj.edu.pl

Kraków, semestr letni 2020/21

(2)

Algorytmika Problemów NP-trudnych

Problemy NP-trudne to problemy, dla których najprawdopodobniej nie istniej¡ dokªadne algorytmy wielomianowe.

Bardzo wiele problemów algorytmicznych to problemy NP-trudne,

ale ze wzgl¦dów praktycznych trzeba je jako± rozwi¡za¢....

(3)

Przykªady problemów NP-trudnych

Problemy grafowe:

I maksymalna klika, zbiór niezale»ny, I pokrycie wierzchoªkowe, zbiór dominuj¡cy, I maksymalne (ale nie minimalne) ci¦cie w grae, I istnienie cyklu Hamiltona, problem komiwoja»era, I minimalne kolorowanie, 3-kolorowanie,

I wiele algorytmów rozpoznawania przynale»no±ci grafu do danej klasy grafów (grafy przeci¦¢ krzywych ci¡gªych na pªaszczy¹nie, grafy przeci¦¢

odcinków na pªaszczy¹nie, grafy tolerancji)

W wielu wa»nych klasach grafów problemy rozpoznawania maj¡ rozwi¡zania

wielomianowe: np. grafy przedziaªowe, ci¦ciwowe, planarne, porównywalno±ci,

nieporównywalno±ci, i wiele innych (wi¦cej na algorytmach grafowych).

(4)

NP  denicja

Denicja

J¦zyk L nale»y do klasy NP je»eli istnieje niedeterministyczna maszyna Turinga oraz wielomian p taki, »e dla ka»dego sªowa x ka»de obliczanie maszyny ko«czy si¦ w czasie p(|x|) oraz maszyna odpowiada:

I TAK (co oznacza, »e pewna ±cie»ka oblicze« ko«czy si¦ w stanie ACCEPT) je»eli x ∈ L,

I NIE (co oznacza, »e wszystkie ±cie»ki oblicze« ko«cz¡ si¦ w stanie REJECT) je»eli x /∈ L.

Praktycznie: j¦zyk L jest w NP je»eli istnieje wielomianowy algorytm

'zgaduj¡cy ±wiadka' przynale»no±ci x do j¦zyka L oraz algorytm wielomianowy

werykuj¡cy poprawno±¢ ±wiadka (sprawdzaj¡cy, czy x ∈ L).

(5)

przynale»no±¢ do NP - dowody

I istnienie kliki wielko±ci k w G:

I

±wiadek: zbiór wierzchoªków wielko±ci k,

I

werykator: sprawdza, czy zbiór jest klik¡,

I speªnialno±¢ formuªy SAT:

I

±wiadek: warto±ciowanie zmiennych,

I

werykator: sprawdza, czy warto±ciowanie speªnia formuª¦,

(6)

przynale»no±¢ do NP - dowody

I istnienie kliki wielko±ci k w G:

I

±wiadek: zbiór wierzchoªków wielko±ci k,

I

werykator: sprawdza, czy zbiór jest klik¡,

I speªnialno±¢ formuªy SAT:

I

±wiadek: warto±ciowanie zmiennych,

I

werykator: sprawdza, czy warto±ciowanie speªnia formuª¦,

(7)

przynale»no±¢ do NP - dowody

I istnienie kliki wielko±ci k w G:

I

±wiadek: zbiór wierzchoªków wielko±ci k,

I

werykator: sprawdza, czy zbiór jest klik¡,

I speªnialno±¢ formuªy SAT:

I

±wiadek: warto±ciowanie zmiennych,

I

werykator: sprawdza, czy warto±ciowanie speªnia formuª¦,

(8)

przynale»no±¢ do NP - dowody

I istnienie kliki wielko±ci k w G:

I

±wiadek: zbiór wierzchoªków wielko±ci k,

I

werykator: sprawdza, czy zbiór jest klik¡,

I speªnialno±¢ formuªy SAT:

I

±wiadek: warto±ciowanie zmiennych,

I

werykator: sprawdza, czy warto±ciowanie speªnia formuª¦,

(9)

przynale»no±¢ do NP - dowody

I istnienie kliki wielko±ci k w G:

I

±wiadek: zbiór wierzchoªków wielko±ci k,

I

werykator: sprawdza, czy zbiór jest klik¡,

I speªnialno±¢ formuªy SAT:

I

±wiadek: warto±ciowanie zmiennych,

I

werykator: sprawdza, czy warto±ciowanie speªnia formuª¦,

(10)

przynale»no±¢ do NP - dowody

I istnienie kliki wielko±ci k w G:

I

±wiadek: zbiór wierzchoªków wielko±ci k,

I

werykator: sprawdza, czy zbiór jest klik¡,

I speªnialno±¢ formuªy SAT:

I

±wiadek: warto±ciowanie zmiennych,

I

werykator: sprawdza, czy warto±ciowanie speªnia formuª¦,

(11)

przynale»no±¢ do NP - dowody

I rozpoznawanie grafów interwaªowych (jest w P)

I

±wiadek: przedziaªy reprezentuj¡ce wierzchoªki,

I

werykator: sprawdza, czy przecinaj¡ce si¦ kraw¦dzie pokrywaj¡ si¦ ze zbiorem kraw¦dzi grafu,

I rozpoznawanie grafów ci¦ciwowych (jest w P):

I

±wiadek: porz¡dek wierzchoªków grafu,

I

werykator: sprawdza, czy ten porz¡dek to perfect elimination order

I graf przeci¦¢ krzywych na pªaszczy¹nie:

I

±wiadek: ? (trudny problem, rozwi¡zany przez Schaefer, Sedgwick, Stefankovic),

I graf przeci¦¢ odcinków na prostej

I

±wiadek: ci¡gle poszukiwany i nie mo»e by¢ to rysunek!!!!

(Kratochvil, Matousek), Istniej¡ grafy przeci¦¢ odcinków, które

w opisie ka»dej reprezentacji wymagaj¡ podwójnie wykªadniczej

wielko±ci liczb (a wi¦c wykªadniczego zapisu). Inny ±wiadek

(wielomianowy) jest poszukiwany jest poszukiwany, ale mo»e

go nie by¢! (rozpoznawanie segmentów jest ∃R-complete )

(12)

przynale»no±¢ do NP - dowody

I rozpoznawanie grafów interwaªowych (jest w P)

I

±wiadek: przedziaªy reprezentuj¡ce wierzchoªki,

I

werykator: sprawdza, czy przecinaj¡ce si¦ kraw¦dzie pokrywaj¡ si¦ ze zbiorem kraw¦dzi grafu,

I rozpoznawanie grafów ci¦ciwowych (jest w P):

I

±wiadek: porz¡dek wierzchoªków grafu,

I

werykator: sprawdza, czy ten porz¡dek to perfect elimination order

I graf przeci¦¢ krzywych na pªaszczy¹nie:

I

±wiadek: ? (trudny problem, rozwi¡zany przez Schaefer, Sedgwick, Stefankovic),

I graf przeci¦¢ odcinków na prostej

I

±wiadek: ci¡gle poszukiwany i nie mo»e by¢ to rysunek!!!!

(Kratochvil, Matousek), Istniej¡ grafy przeci¦¢ odcinków, które

w opisie ka»dej reprezentacji wymagaj¡ podwójnie wykªadniczej

wielko±ci liczb (a wi¦c wykªadniczego zapisu). Inny ±wiadek

(wielomianowy) jest poszukiwany jest poszukiwany, ale mo»e

go nie by¢! (rozpoznawanie segmentów jest ∃R-complete )

(13)

przynale»no±¢ do NP - dowody

I rozpoznawanie grafów interwaªowych (jest w P)

I

±wiadek: przedziaªy reprezentuj¡ce wierzchoªki,

I

werykator: sprawdza, czy przecinaj¡ce si¦ kraw¦dzie pokrywaj¡ si¦ ze zbiorem kraw¦dzi grafu,

I rozpoznawanie grafów ci¦ciwowych (jest w P):

I

±wiadek: porz¡dek wierzchoªków grafu,

I

werykator: sprawdza, czy ten porz¡dek to perfect elimination order

I graf przeci¦¢ krzywych na pªaszczy¹nie:

I

±wiadek: ? (trudny problem, rozwi¡zany przez Schaefer, Sedgwick, Stefankovic),

I graf przeci¦¢ odcinków na prostej

I

±wiadek: ci¡gle poszukiwany i nie mo»e by¢ to rysunek!!!!

(Kratochvil, Matousek), Istniej¡ grafy przeci¦¢ odcinków, które

w opisie ka»dej reprezentacji wymagaj¡ podwójnie wykªadniczej

wielko±ci liczb (a wi¦c wykªadniczego zapisu). Inny ±wiadek

(wielomianowy) jest poszukiwany jest poszukiwany, ale mo»e

go nie by¢! (rozpoznawanie segmentów jest ∃R-complete )

(14)

przynale»no±¢ do NP - dowody

I rozpoznawanie grafów interwaªowych (jest w P)

I

±wiadek: przedziaªy reprezentuj¡ce wierzchoªki,

I

werykator: sprawdza, czy przecinaj¡ce si¦ kraw¦dzie pokrywaj¡ si¦ ze zbiorem kraw¦dzi grafu,

I rozpoznawanie grafów ci¦ciwowych (jest w P):

I

±wiadek: porz¡dek wierzchoªków grafu,

I

werykator: sprawdza, czy ten porz¡dek to perfect elimination order

I graf przeci¦¢ krzywych na pªaszczy¹nie:

I

±wiadek: ? (trudny problem, rozwi¡zany przez Schaefer, Sedgwick, Stefankovic),

I graf przeci¦¢ odcinków na prostej

I

±wiadek: ci¡gle poszukiwany i nie mo»e by¢ to rysunek!!!!

(Kratochvil, Matousek), Istniej¡ grafy przeci¦¢ odcinków, które

w opisie ka»dej reprezentacji wymagaj¡ podwójnie wykªadniczej

wielko±ci liczb (a wi¦c wykªadniczego zapisu). Inny ±wiadek

(wielomianowy) jest poszukiwany jest poszukiwany, ale mo»e

go nie by¢! (rozpoznawanie segmentów jest ∃R-complete )

(15)

przynale»no±¢ do NP - dowody

I rozpoznawanie grafów interwaªowych (jest w P)

I

±wiadek: przedziaªy reprezentuj¡ce wierzchoªki,

I

werykator: sprawdza, czy przecinaj¡ce si¦ kraw¦dzie pokrywaj¡ si¦ ze zbiorem kraw¦dzi grafu,

I rozpoznawanie grafów ci¦ciwowych (jest w P):

I

±wiadek: porz¡dek wierzchoªków grafu,

I

werykator: sprawdza, czy ten porz¡dek to perfect elimination order

I graf przeci¦¢ krzywych na pªaszczy¹nie:

I

±wiadek: ? (trudny problem, rozwi¡zany przez Schaefer, Sedgwick, Stefankovic),

I graf przeci¦¢ odcinków na prostej

I

±wiadek: ci¡gle poszukiwany i nie mo»e by¢ to rysunek!!!!

(Kratochvil, Matousek), Istniej¡ grafy przeci¦¢ odcinków, które

w opisie ka»dej reprezentacji wymagaj¡ podwójnie wykªadniczej

wielko±ci liczb (a wi¦c wykªadniczego zapisu). Inny ±wiadek

(wielomianowy) jest poszukiwany jest poszukiwany, ale mo»e

go nie by¢! (rozpoznawanie segmentów jest ∃R-complete )

(16)

przynale»no±¢ do NP - dowody

I rozpoznawanie grafów interwaªowych (jest w P)

I

±wiadek: przedziaªy reprezentuj¡ce wierzchoªki,

I

werykator: sprawdza, czy przecinaj¡ce si¦ kraw¦dzie pokrywaj¡ si¦ ze zbiorem kraw¦dzi grafu,

I rozpoznawanie grafów ci¦ciwowych (jest w P):

I

±wiadek: porz¡dek wierzchoªków grafu,

I

werykator: sprawdza, czy ten porz¡dek to perfect elimination order

I graf przeci¦¢ krzywych na pªaszczy¹nie:

I

±wiadek: ? (trudny problem, rozwi¡zany przez Schaefer, Sedgwick, Stefankovic),

I graf przeci¦¢ odcinków na prostej

I

±wiadek: ci¡gle poszukiwany i nie mo»e by¢ to rysunek!!!!

(Kratochvil, Matousek), Istniej¡ grafy przeci¦¢ odcinków, które

w opisie ka»dej reprezentacji wymagaj¡ podwójnie wykªadniczej

wielko±ci liczb (a wi¦c wykªadniczego zapisu). Inny ±wiadek

(wielomianowy) jest poszukiwany jest poszukiwany, ale mo»e

go nie by¢! (rozpoznawanie segmentów jest ∃R-complete )

(17)

przynale»no±¢ do NP - dowody

I rozpoznawanie grafów interwaªowych (jest w P)

I

±wiadek: przedziaªy reprezentuj¡ce wierzchoªki,

I

werykator: sprawdza, czy przecinaj¡ce si¦ kraw¦dzie pokrywaj¡ si¦ ze zbiorem kraw¦dzi grafu,

I rozpoznawanie grafów ci¦ciwowych (jest w P):

I

±wiadek: porz¡dek wierzchoªków grafu,

I

werykator: sprawdza, czy ten porz¡dek to perfect elimination order

I graf przeci¦¢ krzywych na pªaszczy¹nie:

I

±wiadek: ? (trudny problem, rozwi¡zany przez Schaefer, Sedgwick, Stefankovic),

I graf przeci¦¢ odcinków na prostej

I

±wiadek: ci¡gle poszukiwany i nie mo»e by¢ to rysunek!!!!

(Kratochvil, Matousek), Istniej¡ grafy przeci¦¢ odcinków, które

w opisie ka»dej reprezentacji wymagaj¡ podwójnie wykªadniczej

wielko±ci liczb (a wi¦c wykªadniczego zapisu). Inny ±wiadek

(wielomianowy) jest poszukiwany jest poszukiwany, ale mo»e

go nie by¢! (rozpoznawanie segmentów jest ∃R-complete )

(18)

przynale»no±¢ do NP - dowody

I rozpoznawanie grafów interwaªowych (jest w P)

I

±wiadek: przedziaªy reprezentuj¡ce wierzchoªki,

I

werykator: sprawdza, czy przecinaj¡ce si¦ kraw¦dzie pokrywaj¡ si¦ ze zbiorem kraw¦dzi grafu,

I rozpoznawanie grafów ci¦ciwowych (jest w P):

I

±wiadek: porz¡dek wierzchoªków grafu,

I

werykator: sprawdza, czy ten porz¡dek to perfect elimination order

I graf przeci¦¢ krzywych na pªaszczy¹nie:

I

±wiadek: ? (trudny problem, rozwi¡zany przez Schaefer, Sedgwick, Stefankovic),

I graf przeci¦¢ odcinków na prostej

I

±wiadek: ci¡gle poszukiwany i nie mo»e by¢ to rysunek!!!!

(Kratochvil, Matousek), Istniej¡ grafy przeci¦¢ odcinków, które

w opisie ka»dej reprezentacji wymagaj¡ podwójnie wykªadniczej

wielko±ci liczb (a wi¦c wykªadniczego zapisu). Inny ±wiadek

(wielomianowy) jest poszukiwany jest poszukiwany, ale mo»e

go nie by¢! (rozpoznawanie segmentów jest ∃R-complete )

(19)

przynale»no±¢ do NP - dowody

I rozpoznawanie grafów interwaªowych (jest w P)

I

±wiadek: przedziaªy reprezentuj¡ce wierzchoªki,

I

werykator: sprawdza, czy przecinaj¡ce si¦ kraw¦dzie pokrywaj¡ si¦ ze zbiorem kraw¦dzi grafu,

I rozpoznawanie grafów ci¦ciwowych (jest w P):

I

±wiadek: porz¡dek wierzchoªków grafu,

I

werykator: sprawdza, czy ten porz¡dek to perfect elimination order

I graf przeci¦¢ krzywych na pªaszczy¹nie:

I

±wiadek:

? (trudny problem, rozwi¡zany przez Schaefer, Sedgwick, Stefankovic),

I graf przeci¦¢ odcinków na prostej

I

±wiadek: ci¡gle poszukiwany i nie mo»e by¢ to rysunek!!!!

(Kratochvil, Matousek), Istniej¡ grafy przeci¦¢ odcinków, które

w opisie ka»dej reprezentacji wymagaj¡ podwójnie wykªadniczej

wielko±ci liczb (a wi¦c wykªadniczego zapisu). Inny ±wiadek

(wielomianowy) jest poszukiwany jest poszukiwany, ale mo»e

go nie by¢! (rozpoznawanie segmentów jest ∃R-complete )

(20)

przynale»no±¢ do NP - dowody

I rozpoznawanie grafów interwaªowych (jest w P)

I

±wiadek: przedziaªy reprezentuj¡ce wierzchoªki,

I

werykator: sprawdza, czy przecinaj¡ce si¦ kraw¦dzie pokrywaj¡ si¦ ze zbiorem kraw¦dzi grafu,

I rozpoznawanie grafów ci¦ciwowych (jest w P):

I

±wiadek: porz¡dek wierzchoªków grafu,

I

werykator: sprawdza, czy ten porz¡dek to perfect elimination order

I graf przeci¦¢ krzywych na pªaszczy¹nie:

I

±wiadek: ? (trudny problem, rozwi¡zany przez Schaefer, Sedgwick, Stefankovic),

I graf przeci¦¢ odcinków na prostej

I

±wiadek: ci¡gle poszukiwany i nie mo»e by¢ to rysunek!!!!

(Kratochvil, Matousek), Istniej¡ grafy przeci¦¢ odcinków, które

w opisie ka»dej reprezentacji wymagaj¡ podwójnie wykªadniczej

wielko±ci liczb (a wi¦c wykªadniczego zapisu). Inny ±wiadek

(wielomianowy) jest poszukiwany jest poszukiwany, ale mo»e

go nie by¢! (rozpoznawanie segmentów jest ∃R-complete )

(21)

przynale»no±¢ do NP - dowody

I rozpoznawanie grafów interwaªowych (jest w P)

I

±wiadek: przedziaªy reprezentuj¡ce wierzchoªki,

I

werykator: sprawdza, czy przecinaj¡ce si¦ kraw¦dzie pokrywaj¡ si¦ ze zbiorem kraw¦dzi grafu,

I rozpoznawanie grafów ci¦ciwowych (jest w P):

I

±wiadek: porz¡dek wierzchoªków grafu,

I

werykator: sprawdza, czy ten porz¡dek to perfect elimination order

I graf przeci¦¢ krzywych na pªaszczy¹nie:

I

±wiadek: ? (trudny problem, rozwi¡zany przez Schaefer, Sedgwick, Stefankovic),

I graf przeci¦¢ odcinków na prostej

I

±wiadek: ci¡gle poszukiwany i nie mo»e by¢ to rysunek!!!!

(Kratochvil, Matousek), Istniej¡ grafy przeci¦¢ odcinków, które

w opisie ka»dej reprezentacji wymagaj¡ podwójnie wykªadniczej

wielko±ci liczb (a wi¦c wykªadniczego zapisu). Inny ±wiadek

(wielomianowy) jest poszukiwany jest poszukiwany, ale mo»e

go nie by¢! (rozpoznawanie segmentów jest ∃R-complete )

(22)

przynale»no±¢ do NP - dowody

I rozpoznawanie grafów interwaªowych (jest w P)

I

±wiadek: przedziaªy reprezentuj¡ce wierzchoªki,

I

werykator: sprawdza, czy przecinaj¡ce si¦ kraw¦dzie pokrywaj¡ si¦ ze zbiorem kraw¦dzi grafu,

I rozpoznawanie grafów ci¦ciwowych (jest w P):

I

±wiadek: porz¡dek wierzchoªków grafu,

I

werykator: sprawdza, czy ten porz¡dek to perfect elimination order

I graf przeci¦¢ krzywych na pªaszczy¹nie:

I

±wiadek: ? (trudny problem, rozwi¡zany przez Schaefer, Sedgwick, Stefankovic),

I graf przeci¦¢ odcinków na prostej

I

±wiadek:

ci¡gle poszukiwany i nie mo»e by¢ to rysunek!!!!

(Kratochvil, Matousek), Istniej¡ grafy przeci¦¢ odcinków, które

w opisie ka»dej reprezentacji wymagaj¡ podwójnie wykªadniczej

wielko±ci liczb (a wi¦c wykªadniczego zapisu). Inny ±wiadek

(wielomianowy) jest poszukiwany jest poszukiwany, ale mo»e

go nie by¢! (rozpoznawanie segmentów jest ∃R-complete )

(23)

przynale»no±¢ do NP - dowody

I rozpoznawanie grafów interwaªowych (jest w P)

I

±wiadek: przedziaªy reprezentuj¡ce wierzchoªki,

I

werykator: sprawdza, czy przecinaj¡ce si¦ kraw¦dzie pokrywaj¡ si¦ ze zbiorem kraw¦dzi grafu,

I rozpoznawanie grafów ci¦ciwowych (jest w P):

I

±wiadek: porz¡dek wierzchoªków grafu,

I

werykator: sprawdza, czy ten porz¡dek to perfect elimination order

I graf przeci¦¢ krzywych na pªaszczy¹nie:

I

±wiadek: ? (trudny problem, rozwi¡zany przez Schaefer, Sedgwick, Stefankovic),

I graf przeci¦¢ odcinków na prostej

I

±wiadek: ci¡gle poszukiwany i nie mo»e by¢ to rysunek!!!!

(Kratochvil, Matousek),

Istniej¡ grafy przeci¦¢ odcinków, które

w opisie ka»dej reprezentacji wymagaj¡ podwójnie wykªadniczej

wielko±ci liczb (a wi¦c wykªadniczego zapisu). Inny ±wiadek

(wielomianowy) jest poszukiwany jest poszukiwany, ale mo»e

go nie by¢! (rozpoznawanie segmentów jest ∃R-complete )

(24)

przynale»no±¢ do NP - dowody

I rozpoznawanie grafów interwaªowych (jest w P)

I

±wiadek: przedziaªy reprezentuj¡ce wierzchoªki,

I

werykator: sprawdza, czy przecinaj¡ce si¦ kraw¦dzie pokrywaj¡ si¦ ze zbiorem kraw¦dzi grafu,

I rozpoznawanie grafów ci¦ciwowych (jest w P):

I

±wiadek: porz¡dek wierzchoªków grafu,

I

werykator: sprawdza, czy ten porz¡dek to perfect elimination order

I graf przeci¦¢ krzywych na pªaszczy¹nie:

I

±wiadek: ? (trudny problem, rozwi¡zany przez Schaefer, Sedgwick, Stefankovic),

I graf przeci¦¢ odcinków na prostej

I

±wiadek: ci¡gle poszukiwany i nie mo»e by¢ to rysunek!!!!

(Kratochvil, Matousek), Istniej¡ grafy przeci¦¢ odcinków, które

w opisie ka»dej reprezentacji wymagaj¡ podwójnie wykªadniczej

wielko±ci liczb (a wi¦c wykªadniczego zapisu). Inny ±wiadek

(wielomianowy) jest poszukiwany jest poszukiwany, ale mo»e

go nie by¢! (rozpoznawanie segmentów jest ∃R-complete )

(25)

lokalizacja agentów

Wej±cie: Graf G (miasta danego kraju, kraw¦d¹ mi¦dzy dwoma miastami A i B wtedy i tylko wtedy, gdy agent zlokalizowany w A mo»e dojecha¢

do miasta B i obsªu»y¢ zadania z miasta B), k  liczba agentów, m  maksymalna liczba zada« do obsªu»enia w jeden dzie«.

Wyj±cie: Tak, je»eli mo»na znale¹¢ staªe rozmieszczenie agentów w grae G tak, aby w ka»dym dniu pracy agenci mogli dojecha¢ do

dowolnych m miast, w których maj¡ do wykonania zadania (ka»dego dnia miasta mog¡ by¢ ró»ne, m to górny limit na liczb¦ zada« pojawiaj¡cych si¦ jednego dnia).

Problem ten nale»y do klasy Σ 2 P : jest co najmniej tak trudny jak rozwi¡zywanie speªnialno±ci klauzul typu

∃ x 1 , . . . , x n ∀ y 1 , . . . y k : φ( x 1 , . . . , x n , y 1 , . . . , y k ).

(26)

lokalizacja agentów

Wej±cie: Graf G (miasta danego kraju, kraw¦d¹ mi¦dzy dwoma miastami A i B wtedy i tylko wtedy, gdy agent zlokalizowany w A mo»e dojecha¢

do miasta B i obsªu»y¢ zadania z miasta B), k  liczba agentów, m  maksymalna liczba zada« do obsªu»enia w jeden dzie«.

Wyj±cie: Tak, je»eli mo»na znale¹¢ staªe rozmieszczenie agentów w grae G tak, aby w ka»dym dniu pracy agenci mogli dojecha¢ do

dowolnych m miast, w których maj¡ do wykonania zadania (ka»dego dnia miasta mog¡ by¢ ró»ne, m to górny limit na liczb¦ zada« pojawiaj¡cych si¦ jednego dnia).

Problem ten nale»y do klasy Σ 2 P : jest co najmniej tak trudny jak rozwi¡zywanie speªnialno±ci klauzul typu

∃ x 1 , . . . , x n ∀ y 1 , . . . y k : φ( x 1 , . . . , x n , y 1 , . . . , y k ).

(27)

wielomianowe redukcje

Denicja

Powiemy, »e problem A redukuje si¦ wielomianowo do problemu B je»eli istnieje wielomianowy algorytm φ przeksztaªcaj¡cy ka»d¡ instancj¦ x problemu A do instancji φ(x) problemu B w taki sposób, »e:

x jest TAK instancj¡ problemu A ⇐⇒ φ(x) jest TAK instancj¡ problemu B.

Wniosek: Je»eli problem B ma wielomianowe rozwi¡zanie, to i problem A ma

wielomianowe rozwi¡zanie. Mówimy, »e B jest przynajmniej tak trudny jak A.

(28)

Twierdzenie Cook'a

Denicja

Problem A jest problemem NP-zupeªnym je»eli A jest w NP oraz ka»dy problem z NP redukuje si¦ wielomianowo do A.

Problem A jest problemem NP-trudnym je»eli ka»dy problem z NP redukuje si¦ wielomianowo do A.

Twierdzenie

Ka»dy j¦zyk z klasy NP mo»na zredukowa¢ wielomianowo do problemu SAT. Innymi sªowy, SAT jest problemem NP-zupeªnym.

Wnioski:

I je»eli SAT ma algorytm wielomianowy, to równie» wszystkie problemy z NP maj¡ rozwi¡zanie wielomianowe,

I je»eli SAT redukuje si¦ wielomianowo do A i A jest w NP, to A jest równie» zupeªny w klasie NP.

I Wszystkie problemy zupeªne w NP wzajemnie si¦ redukuj¡.

(29)

Hipoteza Milenijna

P 6= NP

Innymi sªowy, algorytmy NP-zupeªne nie maj¡ algorytmów

wielomianowych.

(30)

Podej±cia do problemów NP-trudnych

I Heurezy  s¡ bardzo dobre w praktyce.

I Dokªadne algorytmy wykªadnicze i podwykªadnicze. Godzimy si¦ na czasy dziaªania: O(1.234

n

), O(2

n

), O

(3

n

), O

(2

n

) (notacja O

pomija czynniki wielomianowe).

I Algorytmy aproksymacyjne  godzimy si¦ na utrat¦ dokªadno±ci, ale czas ci¡gle wielomianowy!

I Algorytmy parametryzowane (FPT) rozwi¡zuj¡ bardzo dobrze pewne instancje (o maªym parametrze) problemów, zazwyczaj NP-trudnych. I Algorytmy probabilistyczne  nie spodziewamy si¦, by algorytmy

NP-trudne posiadaªy wielomianowe algorytmy randomizowane (wierzy si¦,

»e RP ( NP). Niemniej s¡ bardzo przydatne, w niektórych modelach

oblicze«, np. algorytmy on-line, s¡ istotnie lepsze ni» algorytmy

deterministyczne, w przypadku zwykªych algorytmów s¡ cz¦sto du»o

prostsze i szybsze od ich odpowiedników deterministycznych.

(31)

Podej±cia do problemów NP-trudnych

I Heurezy  s¡ bardzo dobre w praktyce.

I Dokªadne algorytmy wykªadnicze i podwykªadnicze. Godzimy si¦ na czasy dziaªania: O(1.234

n

), O(2

n

), O

(3

n

), O

(2

n

) (notacja O

pomija czynniki wielomianowe).

I Algorytmy aproksymacyjne  godzimy si¦ na utrat¦ dokªadno±ci, ale czas ci¡gle wielomianowy!

I Algorytmy parametryzowane (FPT) rozwi¡zuj¡ bardzo dobrze pewne instancje (o maªym parametrze) problemów, zazwyczaj NP-trudnych. I Algorytmy probabilistyczne  nie spodziewamy si¦, by algorytmy

NP-trudne posiadaªy wielomianowe algorytmy randomizowane (wierzy si¦,

»e RP ( NP). Niemniej s¡ bardzo przydatne, w niektórych modelach

oblicze«, np. algorytmy on-line, s¡ istotnie lepsze ni» algorytmy

deterministyczne, w przypadku zwykªych algorytmów s¡ cz¦sto du»o

prostsze i szybsze od ich odpowiedników deterministycznych.

(32)

Podej±cia do problemów NP-trudnych

I Heurezy  s¡ bardzo dobre w praktyce.

I Dokªadne algorytmy wykªadnicze i podwykªadnicze. Godzimy si¦ na czasy dziaªania: O(1.234

n

), O(2

n

), O

(3

n

), O

(2

n

) (notacja O

pomija czynniki wielomianowe).

I Algorytmy aproksymacyjne  godzimy si¦ na utrat¦ dokªadno±ci, ale czas ci¡gle wielomianowy!

I Algorytmy parametryzowane (FPT) rozwi¡zuj¡ bardzo dobrze pewne instancje (o maªym parametrze) problemów, zazwyczaj NP-trudnych. I Algorytmy probabilistyczne  nie spodziewamy si¦, by algorytmy

NP-trudne posiadaªy wielomianowe algorytmy randomizowane (wierzy si¦,

»e RP ( NP). Niemniej s¡ bardzo przydatne, w niektórych modelach

oblicze«, np. algorytmy on-line, s¡ istotnie lepsze ni» algorytmy

deterministyczne, w przypadku zwykªych algorytmów s¡ cz¦sto du»o

prostsze i szybsze od ich odpowiedników deterministycznych.

(33)

Podej±cia do problemów NP-trudnych

I Heurezy  s¡ bardzo dobre w praktyce.

I Dokªadne algorytmy wykªadnicze i podwykªadnicze. Godzimy si¦ na czasy dziaªania: O(1.234

n

), O(2

n

), O

(3

n

), O

(2

n

) (notacja O

pomija czynniki wielomianowe).

I Algorytmy aproksymacyjne  godzimy si¦ na utrat¦ dokªadno±ci, ale czas ci¡gle wielomianowy!

I Algorytmy parametryzowane (FPT) rozwi¡zuj¡ bardzo dobrze pewne instancje (o maªym parametrze) problemów, zazwyczaj NP-trudnych.

I Algorytmy probabilistyczne  nie spodziewamy si¦, by algorytmy

NP-trudne posiadaªy wielomianowe algorytmy randomizowane (wierzy si¦,

»e RP ( NP). Niemniej s¡ bardzo przydatne, w niektórych modelach

oblicze«, np. algorytmy on-line, s¡ istotnie lepsze ni» algorytmy

deterministyczne, w przypadku zwykªych algorytmów s¡ cz¦sto du»o

prostsze i szybsze od ich odpowiedników deterministycznych.

(34)

Podej±cia do problemów NP-trudnych

I Heurezy  s¡ bardzo dobre w praktyce.

I Dokªadne algorytmy wykªadnicze i podwykªadnicze. Godzimy si¦ na czasy dziaªania: O(1.234

n

), O(2

n

), O

(3

n

), O

(2

n

) (notacja O

pomija czynniki wielomianowe).

I Algorytmy aproksymacyjne  godzimy si¦ na utrat¦ dokªadno±ci, ale czas ci¡gle wielomianowy!

I Algorytmy parametryzowane (FPT) rozwi¡zuj¡ bardzo dobrze pewne instancje (o maªym parametrze) problemów, zazwyczaj NP-trudnych.

I Algorytmy probabilistyczne  nie spodziewamy si¦, by algorytmy

NP-trudne posiadaªy wielomianowe algorytmy randomizowane (wierzy si¦,

»e RP ( NP). Niemniej s¡ bardzo przydatne, w niektórych modelach

oblicze«, np. algorytmy on-line, s¡ istotnie lepsze ni» algorytmy

deterministyczne, w przypadku zwykªych algorytmów s¡ cz¦sto du»o

prostsze i szybsze od ich odpowiedników deterministycznych.

(35)

Algorytmy aproksymacyjne

Ograniczenia górne:

I ró»ne podej±cia kombinatoryczne, I algorytmy zachªanne,

I algorytmy wykorzystuj¡ce liniowe programowanie (LP-rounding, randomized LP-rounding, primal-dual, i.t.d.),

I programowanie póªokre±lone.

Ograniczenia dolne (w oparciu o): I hipotez¦ P 6= NP,

I twierdzenie PCP.

(36)

Algorytmy aproksymacyjne

Ograniczenia górne:

I ró»ne podej±cia kombinatoryczne, I algorytmy zachªanne,

I algorytmy wykorzystuj¡ce liniowe programowanie (LP-rounding, randomized LP-rounding, primal-dual, i.t.d.),

I programowanie póªokre±lone.

Ograniczenia dolne (w oparciu o):

I hipotez¦ P 6= NP,

I twierdzenie PCP.

(37)

Dokªadne algorytmy wykªadnicze i podwykªadnicze

Ograniczenie górne:

I programowanie dynamiczne,

I algorytmy rozgaª¦ziaj¡ce si¦ (metoda measure-and-conquere), I metody algebraiczne  metoda wª¡cze« i wyª¡cze«,

I i.t.d.

Ograniczenia dolne (w oparciu o):

I Exponential Time Hypothesis: 3-SAT'u nie mo»na rozwi¡zany w czasie podwykªadniczym 2

o(n)

(istnieje staªa c > 0 taka, »e 3-SAT'u nie mo»na rozwi¡za¢ w czasie 2

cn

),

I Strong Exponential Time Hypothesis: ogólnego SAT'u nie mo»na rozwi¡za¢ w czasie (2 − )

n

(dokªadniej, je»eli k − SAT mo»na rozwi¡za¢

w czasie O

( 2

skn

) , to ci¡g s

k

zmierza do 1 wraz z k zmierzaj¡cym do niesko«czono±ci),

I Lemat o Rozrzedzaniu (tak naprawd¦ trudne s¡ instancje k-SAT'u, w

których liczba klauzul jest liniowo zale»na od liczby zmiennych).

(38)

Algorytmy parametryzowane

Problem parametryzowany Φ  problem decyzyjny, instancje s¡ postaci (x, k), gdzie x  jak dotychczas (graf, sªowo), k  parametr.

Wej±cie dla algorytmu parametryzowanego: (x, k), gdzie k zapisywane w sposób unarny.

Denicja

Problem Φ jest w klasie FPT (ang. xed-parameter tractable) je»eli istnieje

algorytm dziaªaj¡cy w czasie f (k)p(|x|) na instancji wej±ciowej (x, k), gdzie p

to wielomian a f to dowolna funkcja obliczalna.

(39)

Algorytmy parametryzowane - przykªady

Parametryzowanie po parametrze, który nas interesuje:

I ( G, k)  czy graf G posiada pokrycie wierzchoªkowe rozmiaru k?

I (G, k)  czy graf G posiada klik¦ rozmiaru k?

I ( G, k)  czy graf G jest grafem interwaªowym (ci¦ciwowym, dwudzielnym) je»eli z G usuniemy k pewnych wierzchoªków grafu?

(problemy modykacji grafów).

Parametryzowanie po parametrach grafowych:

I ( G, k)  czy graf G o szero±ci ±cie»kowej k jest 3-kolorowalny?

I ( G, k)  czy graf G o szerko±ci drzewowej k jest 3-kolorowalny?

Je»eli dla 3 powy»szych pyta« istniej¡ algorytmy FPT, wiadomo »e problem 3-kolorowania jest ªatwy je»eli zaw¦zimy si¦ do grafów o niskiej szeroko±ci

±cie»kowej, odpowiednio drzewowej.

(40)

Algorytmy parametryzowane

Ograniczenia górne:

I algorytmy kernelizacji, I branch-and-bound, I iterative compression, I color coding,

I i.t.d., Ograniczenia dolne:

I dowody W [k]-trudno±ci (k = 1, 2, ...) dla problemów parametryzowanych (wykluczaj¡ce przynale»no±¢ do klasy FPT),

I dla problemów z klasy FPT  ograniczenia dolne na rozmiar j¡dra.

(41)

Strukturalna teoria grafów

Aspekty strukturanej teorii grafów:

I dekompozycje drzewowe (algorytmy podwykªadnicze na grafach planarnych),

I poj¦cia minorów w grafach.

Wykorzystanie metatwierdze« do rozwi¡zywania problemów algorytmicznych na grafach:

I technika Bakera, I Twierdzenie Courcelle'a,

I rozpoznawanie klas grafów domkni¦tych na minory.

Cytaty

Powiązane dokumenty

Analizuj¡c algorytmy parametryzowane badamy ich zªo»ono±¢ czasow¡ w zale»no±ci nie tylko od wielko±ci instancji wej±ciowej (np. grafu) ale równie» w zale»no±ci od

I Minimalne pokrycie wierzchoªkowe  sprowadzenie grafu do zbioru niezale»nego, gdzie dozwolon¡ modykacj¡ jest usuni¦cie wierzchoªka. I Minimalny zbiór rozcyklaj¡cy 

I sposób: stosujemy bardziej wyrafinowane miary do mierzenia wielkości podzadań (zazwyczaj: rozmiar podzadania to liczba wierzchołków grafu)... Makysmalna klika (bądź

Wniosek: Problemy: Kliki, Ró»nobarwnej Kliki, Zbioru Niezale»nego, Ró»nobarwnego Zbioru Niezale»nego wzajemnie si¦ do siebie redukuj¡ (w sposób parametryzowany).. Uwaga:

Programowanie dynamiczne jest to technika projektowania algorytmów (zazwyczaj optymalizacyjnych) oparta na podziale zadania na podproblemy wzgl¦dem pewnych parametrów.. Z

Ogólnie, i-t¡ warstw¡ grafu G nazywamy pierwsz¡ warstw¦ grafu planarnego powstaªego z G przez usuni¦cie wierzchoªków z warstw od 1 do i −

Ogólnie, i-t¡ warstw¡ grafu G nazywamy pierwsz¡ warstw¦ grafu planarnego powstaªego z G przez usuni¦cie wierzchoªków z warstw od 1 do i −

krawczyk@tcs.uj.edu.pl Kraków, semestr letni 2020/21.. Algorytmy wykªadnicze dla SAT