Teoria NP-zupełności. Problem decyzyjny należy do klasy P
Transkrypt
Teoria NP-zupełności. Problem decyzyjny należy do klasy P
WYKŁAD : Teoria NP-zupełno ci. Problem decyzyjny nale y do klasy P (Polynomial), je eli mo e by rozwi zany w czasie conajwy ej wielomianowym przez algorytm A dla DTM. (przynale no ta jest zachowana równie dla innych realistycznych modeli obliczeniowych takich jak RAM, RASP) Przykłady: wersje decyzyjne wyznaczania maksymalnego elementu zbioru, najkrótszej cie ki w grafie itp. Problem decyzyjny nale y do klasy NP (Nondeterministic Polynomial), je eli mo e by rozwi zany w czasie conajwy ej wielomianowym przez algorytm A dla NDTM (algorytm składa si z kroku ”odgadywania” rozwi zania i kroku sprawdzania). Przykłady: spełnialno (SAT), wersje decyzyjne problemu pokrycia zbioru (MINIMUM SET COVER), kliki (CLIQUE), najdłu szej cie ki w grafie, komiwoja era (TSP) itp. Czy P NP ? Chocia nie udało si przeprowadzi dowodu zakładamy, e nie ! Poj cie NP-zupełno ci Transformacj wielomianow problemu P2 do problemu P1 (co zapisujemy P2 P1) nazywamy funkcj f : D P2 D P1 , która spełnia warunki: 1. dla ka dego przypadku problemu I 2 D P2 odpowied jest TAK dla przypadku problemu I 1 D P1 odpowied tak e jest TAK; 2. czas obliczania funkcji f przez DTM dla ka dego przypadku problemu I 2 D P2 jest ograniczony od góry przez wielomian N I 2 . Mówimy, e problem decyzyjny P1 jest NP-zupełny, je li P1 NP i dla ka dego innego problemu decyzyjnego P2 NP, zachodzi P2 P1. Z powy szych definicji wynika, e klasa P jest podklas wła ciw klasy NP, a ponadto klasy problemów P i NP-zupełnych s rozł czne. Dowodzenie NP-zupełno ci 1. relacja pomi dzy problemami transformacja wielomianowa (przechodnia) 2. relacja pomi dzy problemem a klas zło ono ci - zupełno Dwa kroki dowodu: a) pokazanie, e D P NP ; b) pokazanie wielomianiowej transformacji przypadku znanego problemu NP-zupełnego do D P ( trzy podstawowe techniki: ograniczenie, lokalna zamiana i projektowanie cz ci składowych). Przykład (technika: ograniczenie) NAJDŁU SZA CIE KA Dane: Graf G(V,E) oraz liczba naturalna K |V|. Pytanie: Czy G zawiera cie k prost zawieraj c conajmniej K kraw dzi ? Dowód NP-zupełno ci: a) Moduł generuj cy NDTM generuje sekwencj wierzchołków (wyrocznia odgaduje rozwi zanie). DTM sprawdza w czasie wielomianowym czy |V| K i czy kolejne wierzchołki s poł czone kraw dziami. St d P1 NP . b) Jako P2 wybieramy problem CIE KI HAMILTONA. Aby P2 P1, ograniczamy P1 do przypadków dla których zachodzi K |V| 1. Poj cie silnej NP-zupełno ci Dla niektórych ”liczbowych” problemów NP-zupełnych mo na skonstruowa tzw. algorytmy pseudowielomianowe, których funkcja zło ono ci czasowej jest ograniczona od góry przez wielomian zale cy zarówno od rozmiaru danych wej ciowych N I jak i od maksymalnej warto ci wyst puj cych w tym problemie liczb Max I . Przykład: problem PLECAK, programowanie dynamiczne. Dla dowolnego problemu decyzyjnego P i dowolnego wielomianu p okre lonego dla liczb całkowitych, niech P p oznacza podproblem otrzymany przez ograniczenie D P tylko do tych przypadków problemu, dla których Max I p N I . Zatem P p nie jest problemem liczbowym. Problem decyzyjny P jest silnie NP-zupełny, je li nale y do NP i istnieje wielomian p okre lony dla liczb całkowitych , dla którego P p jest NP-zupełny. Problemy silnie NP-zupełne: a) NP-zupełne problemy nieliczbowe; b) NP-zupełne problemy liczbowe, takie jak: KOMIWOJA ER, TRÓJPODZIAŁ. Dla wykazania silnej NP-zupełno ci problemu P wystarcza znale wielomian p, dla którego problem P p jest NP-zupełny. Dla omini cia tej trudno ci wprowadzono poj cie transformacji pseudowielomianowej. Transformacj pseudowielomianow problemu P2 do problemu P1 (co zapisujemy P2 P1) nazywamy funkcj f : D P2 D P1 , która spełnia warunki: 1. dla ka dego przypadku problemu I 2 D P2 odpowied jest TAK dla f I 2 odpowied tak e jest TAK; 2. funkcja f mo e by obliczona przez DTM w czasie ograniczonym od góry przez wielomian zale ny od dwóch zmiennych Max 2 I 2 i N 2 I 2 ; 3. istnieje wielomian q 1 taki, e dla ka dego I 2 D P2 , q 1 N 1 f I 2 N2 I2 ; 4. istnieje wielomian dwóch zmiennych q 2 taki, e dla ka dego I 2 D P2 , Max 1 f I 2 q 2 Max 2 N 2 , N 2 I 2 . Ró nice w stosunku do transformacji wielomianowej: - funkcja f nie musi by obliczona w czasie wielomianowym; - rozmiar przypadku nie zmaleje wykładniczo; - najwi ksza warto liczbowa w danych nie wzro nie wykładniczo. Je eli problem P2 jest silnie NP-zupełny, P1 NP oraz istnieje pseudowielomianowa transformacja problemu P2 do P1, to P1 jest silnie NP-zupełny. Analogia: Teoria P-zupełno ci. Problemy dopuszczalne, wysoce równoległe i inherentnie sekwencyjne Problem jest dopuszczalny (feasible), je li mo e by rozwi zany przez algorytm równoległy o asymptotycznej zło ono ci czasowej i liczbie procesorów rzedu n O 1 (klasa P). Problem jest dopuszczalny wysoce równoległy, je li mo e by rozwi zany przez algorytm równoległy o asymptotycznej zło ono ci czasowej log O 1 i liczbie procesorów rzedu n O 1 (klasa NC - wzamian za wielomianow liczb procesorów osi gamy podwielomianowy (podliniowy) czas oblicze ). Problem P jest inherentnie sekwencyjny gdy jest dopuszczalny, ale nie posiada dopuszczalnego wysoce równoległego algorytmu (klasa P-zupełna, niemo liwy kompromis liczba procesorów/czas). Czy istniej problemy inherenie sekwencyjne? Czy P NC ? Przykłady: algorytmy arłoczne (wybór dwóch dru yn piłkarskich, PLECAK wybieramy elementy z max stosunkiem warto /rozmiar, szeregowanie zada w systemie wieloprocesorowym - LPT) Poj cie P-zupełno ci Przykład: CIRCUIT VALUE PROBLEM (CVP) Dowodzenie P-zupełno ci 1. relacja pomi dzy problemami transformacja wielomianowa (przechodnia) 2. relacja pomi dzy problemem a klas zło ono ci - zupełno