You are on page 1of 22

Podstawy analizy algorytmw

Jeli P NP, to: NPC NPI P NP

Podstawy analizy algorytmw

Kady otwarty problem w NP, o ktrym nie udowodniono, e naley do P albo, e jest NP-zupeny, moe by kandydatem do NPI. LICZBA ZOONA Dane: dodatnia liczba cakowita k. Pytanie: czy s liczby cakowite i, j > 1 takie, e k = ij ?? Rozmiar problemu to O(log k).

Podstawy analizy algorytmw

IZOMORFIZM GRAFW Dane: grafy G=(V, E), G=(V, E). Pytanie: czy G i G s izomorficzne, tj. czy f: V V tak, e {u,v} E {f(u), f(v)} E?? Do tej pory nie udowodniono rozwizywalnoci tych problemw w czasie wielomianowym i nikt nie udowodni, e s one NP-zupene. Pierwszym z problemw NP-zupenych bya SPENIALNO. W 1972 roku Karp udowodni, e nastpne 20 problemw s NP-zupene.

Podstawy analizy algorytmw

Podstawy analizy algorytmw

Podstawy analizy algorytmw

Ilociowy rozwj klasy problemw NP-zupenych przedstawia si nastpujco:

Autor Cook Karp

Rok 1971 1972 1973 1975 1979 2010

Garey-Johnson
* bez podproblemw

Liczba problemw 1 21 ~100 ~300 320 ~900*

Podstawy analizy algorytmw

W 1979 Garey i Johnson wydali bardzo istotn i ju uznan za klasyczn ksik zatytuowan: Computers and Intractability: A Guide to the Theory of NP-Completeness. Ksika zawieraa obszerny dodatek, list znanych wwczas problemw NP-zupenych. Lista ta bya podzielona na 13 rozdziaw, ktre powicone zostay pewnym kategoriom problemw kombinatorycznych. A1 Teoria grafw POKRYCIE WIERZCHOKOWE, LICZBA CHROMATYCZNA, POKRYCIE KLIKAMI, KLIKA, ZBIR NIEZALENY, CYKL HAMILTONA, CIEKA HAMILTONA.

Podstawy analizy algorytmw

A2 Projektowanie sieci PROBLEM KOMIWOJAERA, NAJDUSZY CYKL, NAJDUSZA CIEKA A3 Zbiory i podziay 3-WYMIAROWE SKOJARZENIE, MINIMALNE POKRYCIE, 2-PODZIA, SUMA PODZBIORU A4 Pamitanie i odzyskiwanie informacji PAKOWANIE PUDEEK, NAJDUSZY WSPLNY PODCIG

Podstawy analizy algorytmw

A5 Sekwencja i szeregowanie SEKWENCJONOWANIE, UKADANIE HARMONOGRAMW A6 Programowanie matematyczne PLECAK A7 Algebra i teoria liczb KWADRATOWE RWNANIA DIOFANTYCZNE A8 Puzzle i gry UOGLNIANY HEX, n x n GO, SAPER

Podstawy analizy algorytmw

A9 Logika SPENIALNO, 3-SPENIALNO, NIETAUTOLOGIA A10 Teoria automatw i jzykw formalnych NIERWNOWANO WYRAE REGULARNYCH A11 Optymalizacja programu MINIMALIZACJA PAMICI A12 Pozostae

Podstawy analizy algorytmw

A13 Problemy otwarte LICZBA PIERWSZA+, IZOMORFIZM GRAFW?, GENUS GRAFU- , INDEKS CHROMATYCZNY , PROGRAMOWANIE LINIOWE+ Znak "?" oznacza, e problem jest wci otwarty, znak " " jest uyty eby zaznaczy fakt, e problem zosta rozstrzygnity negatywnie (tzn. udowodniono przynaleno do klasy problemw NP-zupenych), znak " + " wskazuje, e problem by rozstrzygnity pozytywnie (tzn. zaprojektowano w midzyczasie algorytm wielomianowy).

Podstawy analizy algorytmw

Przykad: GENUS GRAFU Problem ten jest NP-zupeny. Przez powierzchni o genusie g rozumiemy powierzchni torusa z g dziurami, na przykad kula ma genus 0, torus ma genus 1. Genus grafu jest najmniejszym genusem powierzchni, na ktrej graf G moe by narysowany bez przecinania krawdzi. Na przykad, grafy Kuratowskiego K5 i K3,3 maj genus 1.

Wszystkie znane problemy NP-zupene mog suy innym do udowadniania nowych. Zgodnie z Gareyem i Johnsonem 6 problemw najpopularniejszych moe posuy jako baza problemw NP-zupenych dla pocztkujcych.

Podstawy analizy algorytmw

Genus 0

Genus 1

Genus 2

Genus 3

Podstawy analizy algorytmw

Torus (genus 1)

Podstawy analizy algorytmw

Butelka Kleina (genus 2)

Podstawy analizy algorytmw

3-SPENIALNO Dane: zbir C = {C1, C2, ,Cm} klauzul takich, e |Ci| = 3 dla i = 1, 2,... , m. Pytanie: czy C1 C2 C3 Cm jest spenialne??

3-WYMIAROWE SKOJARZENIE Dane: M W X Y, gdzie W, X i Y s oddzielnymi zbiorami majcymi t sam ilo elementw g. Pytanie: czy M zawiera 3-wymiarowe skojarzenie, to jest, podzbir trjktw M' M takich, e |M| = q i kady z elementw W, X i Y naley do dokadnie jednego trjkta??

Podstawy analizy algorytmw

2 wymiarowe skojarzenie

Podstawy analizy algorytmw

3 wymiarowe skojarzenie

Podstawy analizy algorytmw

POKRYCIE WIERZCHOKOWE Dane: graf G = (V, E) i dodatnia liczba cakowita k |V|. Pytanie: czy istnieje pokrycie wierzchokowe rozmiaru k lub mniejsze dla G, to jest, podzbir V V taki, e |V'| k i dla kadej krawdzi {u, v} E co najmniej jedna z kocwek u lub v naley do V?? KLIKA Dane: graf G = (V, E) i dodatnia liczba cakowita k |V|. Pytanie: czy G zawiera klik o rozmiarze k lub wikszym, to jest, podzbir V V taki, e |V'| k oraz kade dwa wierzchoki V s poczone krawdzi E??

Podstawy analizy algorytmw

Podstawy analizy algorytmw

CYKL HAMILTONA Dane: graf G = (V, E). Pytanie: czy G zawiera cykl Hamiltona, tj. permutacj v1,v2,... ,vn wierzchokw G, gdzie n = |V|, tak, e {vn,v1} E i {vi, vi+1} E dla wszystkich i ?? 2-PODZIA Dane: skoczony zbir A i waga a s(a) N+ dla kadego a A. Pytanie: czy istnieje podzbir A A taki, e:

s(a) = s(a) ??
aA' aA'

KONIEC

You might also like