Problem izomorfizmu grafu - Graph isomorphism problem

Nierozwiązany problem w informatyce :

Czy problem izomorfizmu grafów można rozwiązać w czasie wielomianowym?

Problemem wykres Izomorfizm jest obliczeniowa Problem określenia czy dwa skończonych wykresyizomorficzne .

Nie wiadomo, czy problem jest rozwiązywalny w czasie wielomianowym ani NP-zupełny , a zatem może należeć do klasy złożoności obliczeniowej NP-pośredniej . Wiadomo, że problem izomorfizm grafów jest w niskiej hierarchii z klasy NP , co oznacza, że nie jest NP-zupełny, chyba że wielomian hierarchia czas wali do drugiego poziomu. Jednocześnie izomorfizm dla wielu specjalnych klas grafów można rozwiązać w czasie wielomianowym, a w praktyce izomorfizm grafów często można rozwiązać efektywnie.

Problem ten jest szczególnym przypadkiem problemu izomorfizmu podgrafu , który pyta, czy dany graf G zawiera podgraf, który jest izomorficzny z innym danym grafem H ; wiadomo, że problem ten jest NP-zupełny. Wiadomo również, że jest to szczególny przypadek problemu ukrytej podgrupy nieabelowej nad grupą symetryczną .

W dziedzinie rozpoznawania obrazów jest to znane jako dokładne dopasowanie wykresu .

Najnowocześniejszy

W listopadzie 2015 r. László Babai ogłosił algorytm czasu quasi-wielomianowego dla wszystkich grafów, czyli taki z czasem działania dla niektórych stałych . W dniu 4 stycznia 2017 r. Babai wycofał twierdzenie quasi-wielomianowe i zamiast tego podał wykładniczy limit czasu po tym, jak Harald Helfgott odkrył błąd w dowodzie. 9 stycznia 2017 r. Babai ogłosił korektę (opublikowaną w całości 19 stycznia) i przywrócił roszczenie quasi-wielomianowe, a Helfgott potwierdził poprawkę. Helfgott dalej twierdzi, że można przyjąć c = 3 , więc czas wykonania wynosi 2 O((log n ) 3 ) .

Wcześniej najlepszy algorytm teoretyczna obecnie akceptowane było spowodowane Babai & Luks (1983) , a opiera się na wcześniejszych pracach przez Luks (1982) w połączeniu z subfactorial algorytmu VN Zemlyachenko ( Zemlyachenko, Korneenko & Tyshkevich 1985 ). Algorytm ma czas wykonania 2 O( n  log  n ) dla grafów o n wierzchołkach i opiera się na klasyfikacji skończonych grup prostych . Bez tego twierdzenia klasyfikacyjnego, nieco słabsze ograniczenie 2 O ( n  log 2  n ) zostało uzyskane najpierw dla silnie regularnych grafów przez László Babai  ( 1980 ), a następnie rozszerzone na ogólne grafy przez Babai i Luksa (1983) . Poprawa wykładnika n jest głównym otwartym problemem; dla silnie regularnych grafów dokonał tego Spielman (1996) . Dla hipergrafów o ograniczonej randze, podwykładnicza górna granica pasująca do przypadku grafów została uzyskana przez Babai i Codenotti (2008) .

Istnieje kilka konkurujących ze sobą praktycznych algorytmów izomorfizmu grafów, takich jak te opracowane przez McKaya (1981) , Schmidta i Druffela (1976) oraz Ullmana (1976) . Chociaż wydają się dobrze działać na losowych wykresach , główną wadą tych algorytmów jest ich wykładnicza wydajność w czasie w najgorszym przypadku .

Problem izomorfizmu grafu jest obliczeniowo równoważny z problemem obliczania grupy automorfizmu grafu i jest słabszy niż problem izomorfizmu grup permutacji i problem przecięcia grup permutacji. W przypadku tych dwóch ostatnich problemów Babai, Kantor i Luks (1983) uzyskali ograniczenia złożoności podobne do tych dla izomorfizmu grafów.

Rozwiązane szczególne przypadki

Szereg ważnych szczególnych przypadków problemu izomorfizmu grafów ma efektywne rozwiązania wielomianowe:

Klasa złożoności GI

Ponieważ problem izomorfizmu grafu nie jest ani znany jako NP-zupełny, ani jako wykonalny, naukowcy starali się uzyskać wgląd w ten problem, definiując nową klasę GI , zbiór problemów z wielomianową redukcją Turinga do izomorfizmu grafu problem. Jeśli w rzeczywistości problem izomorfizmu grafów jest rozwiązywalny w czasie wielomianowym, GI równałoby się P . Z drugiej strony, jeśli problem jest NP-zupełny, GI będzie równe NP, a wszystkie problemy w NP będą rozwiązywalne w czasie quasi-wielomianowym.

Jak to jest typowe dla klas złożoności w hierarchii czasu wielomianowego , problem nazywa się GI-trudny, jeśli istnieje redukcja Turinga w czasie wielomianowym z dowolnego problemu w GI do tego problemu, tj. rozwiązanie wielomianowe dla trudnego problemu GI dałoby wielomianowe rozwiązanie problemu izomorfizmu grafu (a więc wszystkich problemów w GI ). Problem nazywa się kompletnym dla GI lub GI-complete , jeśli jest zarówno trudny dla GI , jak i wielomianowe rozwiązanie problemu GI dałoby rozwiązanie wielomianowe dla .

Problem izomorfizmu grafów zawarty jest zarówno w NP, jak i co- AM . GI jest zawarte i niskie dla parytetu P , a także zawarte w potencjalnie znacznie mniejszej klasie SPP . To, że leży on w parzystości P, oznacza, że ​​problem izomorfizmu grafów nie jest trudniejszy niż ustalenie, czy niedeterministyczna maszyna Turinga w czasie wielomianowym ma parzystą czy nieparzystą liczbę akceptujących ścieżek. GI jest również zawarty i niski dla ZPP NP . Zasadniczo oznacza to, że wydajny algorytm Las Vegas z dostępem do wyroczni NP może tak łatwo rozwiązać izomorfizm grafów, że nie zyskuje żadnej mocy, gdy ma możliwość robienia tego w stałym czasie.

GI-kompletne i GI-trudne problemy

Izomorfizm innych obiektów

Istnieje wiele klas obiektów matematycznych, dla których problem izomorfizmu jest problemem GI-zupełnym. Szereg z nich to wykresy posiadające dodatkowe właściwości lub ograniczenia:

GI-kompletne klasy grafów

Klasa grafów nosi nazwę GI-complete, jeśli rozpoznawanie izomorfizmu dla grafów z tej podklasy jest problemem GI-complete. Następujące klasy są kompletne GI:

Wiele klas dwuznaków jest również kompletnych GI.

Inne problemy z całkowitym GI

Oprócz problemów z izomorfizmem istnieją inne nietrywialne problemy z całkowitym GI.

  • Rozpoznanie samokomplementarności grafu lub digrafu.
  • Problem kliki do klasy tak zwanych M -graphs. Pokazano, że znalezienie izomorfizmu dla grafów o n- wierzchołkach jest równoważne znalezieniu n- kliki w M- grafie o rozmiarze n 2 . Fakt ten jest interesujący, ponieważ problem znalezienia ( n  −  ε )-kliki w M- grafie o rozmiarze n 2 jest NP-zupełny dla dowolnie małych dodatnich ε.
  • Problem homeomorfizmu 2-kompleksów.

Problemy z GI

  • Problem zliczania izomorfizmów między dwoma grafami jest równoważny w czasie wielomianowym z problemem stwierdzenia, czy w ogóle taki istnieje.
  • Problem rozstrzygnięcia, czy dwa politopy wypukłe podane w opisie V lub H są izomorficzne projekcyjnie, czy afinicznie. To ostatnie oznacza istnienie mapy rzutowej lub afinicznej między przestrzeniami, które zawierają dwa politopy (niekoniecznie o tym samym wymiarze), co powoduje bijekcję między politopami.

Sprawdzanie programu

Manuel Blum i Sampath Kannan ( 1995 ) pokazali probabilistyczny kontroler dla programów izomorfizmu grafów. Załóżmy, że P jest deklarowaną procedurą wielomianową, która sprawdza, czy dwa grafy są izomorficzne, ale nie jest zaufana. Aby sprawdzić, czy G i H są izomorficzne:

  • Zapytaj P, czy G i H są izomorficzne.
    • Jeśli odpowiedź brzmi „tak”:
      • Próba skonstruowania izomorfizmu przy użyciu P jako podprogramu. Zaznacz wierzchołek u w G i v w H i zmodyfikuj wykresy tak, aby były wyróżniające się (z niewielką zmianą lokalną). Zapytaj P, czy zmodyfikowane wykresy są izomorficzne. Jeśli nie, zmień v na inny wierzchołek. Kontynuuj wyszukiwanie.
      • Albo izomorfizm zostanie znaleziony (i można go zweryfikować), albo P będzie sobie zaprzeczać.
    • Jeśli odpowiedź brzmi „nie”:
      • Wykonaj następujące 100 razy. Wybierz losowo G lub H i losowo permutuj jego wierzchołki. Zapytaj P, czy wykres jest izomorficzny z G i H . (Jak w protokole AM dla nieizomorfizmu grafu).
      • Jeśli którykolwiek z testów nie powiedzie się, osądź P jako nieprawidłowy program. W przeciwnym razie odpowiedz „nie”.

Ta procedura jest wielomianowa i daje poprawną odpowiedź, jeśli P jest poprawnym programem dla izomorfizmu grafów. Jeśli P nie jest poprawnym programem, ale odpowiada poprawnie na G i H , sprawdzający albo poda poprawną odpowiedź, albo wykryje nieprawidłowe zachowanie P . Jeśli P nie jest poprawnym programem i odpowiada niepoprawnie na G i H , kontroler wykryje nieprawidłowe zachowanie P z dużym prawdopodobieństwem lub odpowie błędnie z prawdopodobieństwem 2 −100 .

Warto zauważyć, że P jest używany tylko jako czarna skrzynka.

Aplikacje

Wykresy są powszechnie używane do kodowania informacji strukturalnych w wielu dziedzinach, w tym w zakresie wizji komputerowej i rozpoznawania wzorców , a dopasowywanie wykresów , czyli identyfikacja podobieństw między wykresami, jest ważnym narzędziem w tych obszarach. W tych obszarach problem izomorfizmu grafów nazywany jest dokładnym dopasowaniem grafów.

W cheminformatyce i chemii matematycznej testowanie izomorfizmu grafów jest wykorzystywane do identyfikacji związku chemicznego w chemicznej bazie danych . Również w organicznej chemii matematycznej testowanie izomorfizmu grafów jest przydatne do generowania grafów molekularnych i syntezy komputerowej .

Przeszukiwanie baz danych chemicznych jest przykładem graficznej eksploracji danych , w której często stosuje się podejście do kanonizacji grafów . W szczególności, liczba identyfikatorów dla substancji chemicznych , takich jak SMILES i Inchi , mające na celu zapewnienie wzorca i czytelnej dla człowieka sposób kodowania informacji molekularnej i ułatwienia wyszukiwania tych informacji w bazie danych informacji na stronie, etap wykorzystania kanonizacyjnego w ich obliczenia, które są zasadniczo kanonizacją wykresu reprezentującego cząsteczkę.

W projektowaniu układów elektronicznych izomorfizm grafów jest podstawą etapu projektowania obwodu Layout Versus Schematic (LVS), który polega na weryfikacji, czy obwody elektryczne reprezentowane przez schemat obwodu i układ układu scalonego są takie same.

Zobacz też

Uwagi

Bibliografia

Ankiety i monografie

Oprogramowanie