Informatyka
Problem P = NP: klasy złożoności i NP-zupełność
Zestaw wyjaśnia klasy P i NP, weryfikację certyfikatów oraz redukcje wielomianowe. Poznasz znaczenie NP-zupełności, aktualny status problemu P = NP i konsekwencje możliwego rozstrzygnięcia dla algorytmów, optymalizacji i kryptografii.
Podcast
Ładuję…
1.Problem decyzyjny
Problem, w którym dla każdego poprawnie zakodowanego wejścia należy odpowiedzieć „tak” albo „nie”. Formalnie reprezentuje się go przez język , czyli zbiór kodów instancji z odpowiedzią „tak”.
2.Rozmiar wejścia i kodowanie
Rozmiar wejścia to długość jego reprezentacji, zwykle liczba bitów. Złożoność mierzy się względem tej długości, a nie wartości zapisanych liczb. Kodowanie binarne i unarne może prowadzić do zasadniczo różnych ocen złożoności.
3.Wielomianowy czas działania
Algorytm działa w czasie wielomianowym, jeżeli jego czas w najgorszym przypadku jest ograniczony przez dla pewnej stałej , gdzie jest długością wejścia. Wykładnik nie może zależeć od konkretnego wejścia.
4.Klasa
Klasa języków rozstrzyganych przez deterministyczną maszynę Turinga w czasie wielomianowym. Algorytm musi zakończyć działanie i poprawnie odpowiedzieć zarówno dla instancji pozytywnych, jak i negatywnych.
5.Certyfikat i weryfikator
Certyfikat jest dodatkowym ciągiem danych potwierdzającym pozytywną odpowiedź. W definicji jego długość jest ograniczona wielomianem długości wejścia, a deterministyczny weryfikator sprawdza parę: wejście i certyfikat, w czasie wielomianowym.
6.Klasa : definicja przez weryfikację
Język należy do , gdy istnieją wielomian i wielomianowy weryfikator takie, że wejście jest pozytywne wtedy i tylko wtedy, gdy istnieje certyfikat długości co najwyżej akceptowany przez . Dla wejścia negatywnego żaden certyfikat nie może zostać zaakceptowany.
7.Niedeterministyczna maszyna Turinga
Model obliczeń dopuszczający wiele możliwych przejść. Wejście jest akceptowane, jeśli istnieje akceptująca gałąź obliczenia. Wielomianowy czas oznacza wielomianowe ograniczenie długości każdej gałęzi, a nie ich łącznej liczby.
8.Równoważne definicje
Wielomianowa weryfikacja certyfikatów jest równoważna rozstrzyganiu na niedeterministycznej maszynie Turinga w czasie wielomianowym. Maszyna może zgadnąć certyfikat i go sprawdzić; zapis akceptującego obliczenia może z kolei pełnić rolę certyfikatu.
9.Relacja między i
Każdy język należący do należy również do : weryfikator może zignorować certyfikat i sam rozstrzygnąć instancję. Nie wiadomo, czy istnieje język w , który nie należy do .
10.SAT jako problem z klasy
SAT pyta, czy formuła boolowska ma wartościowanie, przy którym jest prawdziwa. Certyfikatem pozytywnej odpowiedzi jest wartościowanie zmiennych; jego poprawność sprawdza się przez obliczenie wartości formuły w czasie wielomianowym.
11.Klasa
Klasa języków, których dopełnienia należą do . Dla problemu z istnieją wielomianowo weryfikowalne certyfikaty odpowiedzi negatywnych. Nie wiadomo, czy .
12.Faktoryzacja a NP-zupełność
Weryfikacja podanego rozkładu liczby na czynniki jest efektywna, ale nie dowodzi NP-zupełności. Faktoryzacja jest zasadniczo problemem wyszukiwania; jej standardowe warianty decyzyjne należą do i , a ich NP-zupełność nie jest znana.
13.Wielomianowa redukcja wiele-do-jednego
Redukcja języka do języka jest funkcją obliczalną deterministycznie w czasie wielomianowym, taką że należy do wtedy i tylko wtedy, gdy należy do . Jedna instancja źródłowa zostaje przekształcona w jedną instancję docelową.
14.Kierunek redukcji
Jeżeli redukuje się wielomianowo do , to algorytm wielomianowy dla daje algorytm wielomianowy dla . Aby wykazać trudność nowego problemu, redukuje się do niego problem już znany jako trudny.
15.Problem NP-trudny
Problem jest NP-trudny, jeżeli każdy język z redukuje się do niego wielomianowo. Dla języków przyjmuje się zwykle redukcje wiele-do-jednego. NP-trudność sama nie wymaga przynależności do ani nawet rozstrzygalności.
16.Problem NP-zupełny
Problem decyzyjny jest NP-zupełny, jeżeli należy do i jest NP-trudny. Dowód NP-zupełności wymaga osobno wykazania wielomianowej weryfikacji i odpowiedniej redukcji dowodzącej trudności.
17.Twierdzenie Cooka–Levina
SAT jest NP-zupełny. Każde wielomianowo ograniczone obliczenie niedeterministyczne można zakodować jako formułę boolowską rozmiaru wielomianowego, która jest spełnialna dokładnie wtedy, gdy istnieje obliczenie akceptujące.
18.Dowodzenie NP-zupełności przez redukcję
Aby dowieść NP-zupełności języka , wykazuje się, że należy do , oraz konstruuje wielomianową redukcję do z języka już znanego jako NP-zupełny. Trzeba uzasadnić zachowanie obu odpowiedzi i wielomianowy rozmiar konstrukcji.
19.Status problemu
Nie wiadomo, czy , czy i są różne. Pytanie dotyczy tego, czy każdy problem decyzyjny z wielomianowo sprawdzalnymi certyfikatami ma deterministyczny algorytm wielomianowy. Nie jest to twierdzenie o konkretnym obecnie znanym algorytmie.
20.Jeden algorytm dla problemu NP-zupełnego
Deterministyczny algorytm wielomianowy dla dowolnego problemu NP-zupełnego dowodziłby . Z kolei udowodnienie, że dowolny język z nie należy do , dowodziłoby nierówności tych klas.
21.Rozstrzyganie a wyszukiwanie świadectwa
Problem decyzyjny pyta o istnienie rozwiązania, a problem wyszukiwania wymaga jego znalezienia. Dla SAT algorytm decyzyjny pozwala odzyskać wartościowanie przez kolejne ustalanie zmiennych. Ogólniej zapewnia wielomianowe wyszukiwanie wielomianowo ograniczonych, weryfikowalnych świadectw.
22.NP-zupełność a wykładniczy czas
NP-zupełność nie dowodzi konieczności czasu wykładniczego. Nawet nierówność klas i wykluczałaby jedynie algorytmy wielomianowe dla problemów NP-zupełnych. Silniejsze dolne ograniczenia wymagają dodatkowych założeń, takich jak ETH.
23.Złożoność najgorszego przypadku a praktyka
Przynależność do nie gwarantuje praktycznej szybkości: wielomian może mieć wysoki stopień i duże stałe. NP-zupełność nie oznacza trudności każdej instancji; ograniczenia strukturalne, heurystyki i algorytmy parametryzowane mogą być skuteczne.
24. a funkcje jednokierunkowe
Gdyby , nie istniałyby standardowe funkcje jednokierunkowe: przeciwobraz można byłoby znaleźć w czasie wielomianowym przez wyszukiwanie świadectwa. Nierówność i sama nie gwarantuje ich istnienia, ponieważ dotyczy najgorszego, a nie przeciętnego przypadku.
Notatka
Problemy decyzyjne, kodowanie i czas obliczeń
Teoria złożoności bada zasoby potrzebne do rozwiązywania całych rodzin instancji. Problem decyzyjny opisuje się przez język formalny: do języka należą dokładnie kody wejść, dla których odpowiedź brzmi „tak”. Algorytm rozstrzygający musi zakończyć działanie również na wejściach z odpowiedzią „nie”.
Podstawową zmienną jest długość wejścia, oznaczana przez . Jeżeli liczba jest zapisana binarnie, jej wartość może być wykładniczo większa od długości zapisu. Algorytm wykonujący liczbę operacji proporcjonalną do wartości tej liczby nie musi więc być wielomianowy względem wejścia; takie zależności występują w algorytmach pseudowielomianowych.
Czas wielomianowy oznacza ograniczenie dla stałego wykładnika . Klasa obejmuje problemy decyzyjne rozwiązywane deterministycznie z takim ograniczeniem w najgorszym przypadku. Standardowe modele deterministyczne symulują się z narzutem wielomianowym, dlatego klasa jest odporna na wiele zmian szczegółów modelu.
Ważne
Wielomianowość ocenia się względem długości kodu wejścia, nie względem wartości występujących w nim liczb.
Weryfikacja świadectwa i niedeterminizm
W klasie kluczowe jest istnienie krótkiego świadectwa pozytywnej odpowiedzi. Dla wejścia szuka się ciągu o długości ograniczonej wielomianem w . Weryfikator otrzymuje oba ciągi i sprawdza postulowaną własność w czasie wielomianowym. Wejście pozytywne musi mieć przynajmniej jedno poprawne świadectwo, a wejście negatywne nie może mieć żadnego.
Na przykład w problemie kolorowania grafu trzema kolorami świadectwem jest przypisanie koloru każdemu wierzchołkowi. Weryfikator kontroluje, czy końce każdej krawędzi otrzymały różne kolory. Ta kontrola nie dostarcza sama z siebie metody znalezienia kolorowania.
Równoważny opis wykorzystuje niedeterministyczną maszynę Turinga. Maszyna dokonuje wyborów tworzących różne gałęzie obliczenia i akceptuje wtedy, gdy przynajmniej jedna gałąź kończy się akceptacją. Wielomianowo ograniczona jest długość gałęzi, choć całe drzewo może mieć wykładniczo wiele węzłów.
Niedeterminizm nie oznacza losowości, fizycznej równoległości ani obliczeń kwantowych. Skrót NP pochodzi od angielskiego „nondeterministic polynomial time”, a nie od „non-polynomial”. Każdy język z należy do , ponieważ jego weryfikator może sam obliczyć odpowiedź i zignorować świadectwo.
Zapamiętaj
Łatwość sprawdzenia kandydata nie jest dowodem łatwości jego znalezienia.
Dopełnienia, coNP i ostrożna klasyfikacja przykładów
Dopełnienie języka zamienia odpowiedzi pozytywne i negatywne w obrębie ustalonego zbioru wszystkich słów. Klasa coNP składa się z języków, których dopełnienia są w . Dzięki temu negatywne odpowiedzi dla problemu z mają wielomianowo sprawdzalne świadectwa.
Przykładowo problem tautologii pyta, czy formuła boolowska jest prawdziwa przy każdym wartościowaniu. Świadectwem odpowiedzi negatywnej jest jedno wartościowanie, przy którym formuła jest fałszywa. Problem tautologii jest coNP-zupełny przy standardowych redukcjach wielomianowych.
Nie wiadomo, czy . Gdyby , równość z również by zachodziła, ponieważ jest zamknięta na dopełnienie: wystarczy zamienić końcową akceptację z odrzuceniem. Sama hipotetyczna równość nie daje obecnie znanego dowodu .
Faktoryzacja wymaga dodatkowego rozróżnienia: znalezienie czynników jest problemem wyszukiwania, a nie bezpośrednio językiem. Standardowy wariant decyzyjny pyta, czy liczba ma nietrywialny dzielnik nieprzekraczający podanego progu. Należy on do i ; pełny rozkład wraz z efektywnym testem pierwszości pozwala również sprawdzić brak odpowiednio małego dzielnika. Nie znamy dowodu NP-zupełności tego wariantu.
Redukcje i mechanizm NP-zupełności
Redukcja wiele-do-jednego przekształca instancję problemu w instancję problemu za pomocą funkcji obliczalnej w czasie wielomianowym. Warunkiem jest zachowanie odpowiedzi w obie strony. Rozmiar wyniku jest wielomianowo ograniczony, ponieważ samo zapisanie wyniku wymaga czasu.
Jeżeli umiemy efektywnie rozwiązywać , redukcja pozwala rozwiązywać : najpierw wykonujemy przekształcenie, następnie uruchamiamy algorytm docelowy. Kierunek redukcji opisuje więc kierunek korzystania z algorytmu, a nie potoczne podobieństwo problemów.
Problem NP-trudny przyjmuje redukcje ze wszystkich języków z . Problem NP-zupełny musi dodatkowo sam należeć do . Dowodząc NP-zupełności nowego problemu, zwykle wykazuje się:
- wielomianowy rozmiar świadectwa i czas jego sprawdzania;
- konstrukcję redukcji ze znanego problemu NP-zupełnego;
- równoważność odpowiedzi dla instancji źródłowej i docelowej;
- wielomianowy czas i rozmiar konstrukcji.
Twierdzenie Cooka–Levina ustanawia NP-zupełność SAT. Historia niedeterministycznego obliczenia zostaje opisana przez zmienne i lokalne warunki poprawności kolejnych konfiguracji. Powstała formuła jest spełnialna dokładnie wtedy, gdy istnieje poprawna historia zakończona akceptacją.
Ważne
Aby dowieść trudności nowego problemu, redukuj do niego problem już znany jako trudny. Redukcja w przeciwnym kierunku nie wystarcza.
Co oznaczałoby rozstrzygnięcie P = NP?
Pytanie dotyczy tego, czy wielomianowa weryfikowalność zawsze pociąga za sobą wielomianowe rozstrzyganie. Problem pozostaje otwarty; przekonanie o nierówności tych klas nie zastępuje dowodu. Jest jednym z problemów milenijnych Clay Mathematics Institute.
Algorytm wielomianowy dla jednego problemu NP-zupełnego wystarczyłby do wykazania równości klas. Udowodnienie, że choć jeden język z nie należy do , wystarczyłoby do ich rozdzielenia. Niepowodzenie konkretnego algorytmu ani duża liczba przetestowanych instancji nie stanowią takiego dowodu.
Równość klas miałaby konsekwencje dla wyszukiwania świadectw. Można pytać, czy istnieje poprawne świadectwo rozpoczynające się od określonego prefiksu, a potem ustalać jego kolejne bity. Takie pytania nadal należą do , więc przy cała procedura byłaby wielomianowa.
Dla wielu problemów optymalizacyjnych wersja decyzyjna pyta o istnienie rozwiązania osiągającego dany próg. Jeżeli wartości celu mają wielomianowo ograniczoną długość zapisu, wyszukiwanie binarne progu i odtwarzanie świadectwa często pozwalają odzyskać optimum. Zależność między decyzją a optymalizacją trzeba jednak wykazać dla konkretnej reprezentacji problemu.
Gdyby i były różne, problemy NP-zupełne nie miałyby deterministycznych algorytmów wielomianowych. Nie oznaczałoby to automatycznie wykładniczego dolnego ograniczenia. Hipoteza ETH stawia silniejsze wymaganie dla 3-SAT: wyklucza czas , gdzie oznacza liczbę zmiennych.
Praktyczne algorytmy i konsekwencje kryptograficzne
Najgorszy przypadek nie opisuje całej praktyki obliczeniowej. Instancje pochodzące z zastosowań mogą mieć strukturę ułatwiającą rozwiązanie. Heurystyki mogą szybko znajdować dobre rozwiązania, ale bez gwarancji czasu lub jakości na wszystkich wejściach.
Ograniczenie problemu może zmienić jego klasę złożoności: 2-SAT należy do , natomiast 3-SAT jest NP-zupełny. Aproksymacja zastępuje optimum rozwiązaniem z określoną gwarancją jakości; algorytmy parametryzowane izolują koszt zależny od wybranego parametru. Algorytm FPT ma czas postaci , gdzie jest stałe niezależne od parametru . Nie musi to być czas wielomianowy, gdy parametr rośnie wraz z wejściem.
Przykład
Decyzyjny problem pokrycia wierzchołkowego jest NP-zupełny, ale przy małym limicie liczby wybranych wierzchołków można rozgałęziać obliczenie według końców niepokrytej krawędzi.
Funkcje jednokierunkowe mają być łatwe do obliczenia, lecz trudne do odwrócenia na typowych wejściach. Przy można byłoby wielomianowo wyszukiwać przeciwobrazy, więc takie funkcje w standardowym sensie nie istniałyby. Zagrożone byłyby fundamenty wielu konstrukcji kryptografii obliczeniowej, nie zaś bezwarunkowe bezpieczeństwo informacyjne.
Sama nierówność i nie wystarcza do bezpieczeństwa kryptograficznego. Zapewniałaby trudność pewnych problemów w najgorszym przypadku, podczas gdy atakujący mierzy się z instancjami generowanymi według określonego rozkładu. Potrzebne są dodatkowe założenia o trudności przeciętnego przypadku.
Quizy w tym zestawie
32 pytań w 4 etapach
Odblokujesz je po dodaniu zestawu.
Sprawdzian do druku
Arkusz PDF z kluczem, punktacją i oceną
Pierwsze podejście. Klucz z punktacją i oceną jest na ostatniej stronie.
Pobierz sprawdzian (PDF)Podobne zestawy
24 fiszki uczy się 3
12 fiszek uczy się 7
16 fiszek uczy się 2
16 fiszek uczy się 1
14 fiszek uczy się 1
24 fiszki uczy się 1
