Czy wszystkie problemy z całkowitym programowaniem liniowym są trudne?

11

Jak rozumiem, problem przypisania występuje w P, ponieważ węgierski algorytm może go rozwiązać w czasie wielomianowym - O (n 3 ). Rozumiem również, że problem z przypisaniem jest całkowitym problemem programowania liniowego , ale strona Wikipedii stwierdza, że ​​jest to NP-Hard. Dla mnie oznacza to, że problem przypisania jest w NP-Hard.

Ale z pewnością problem przypisania nie może dotyczyć zarówno P, jak i NP-Hard, w przeciwnym razie P równałoby się NP? Czy strona Wikipedii oznacza po prostu, że ogólny algorytm rozwiązywania wszystkich problemów ILP to NP-Hard? Kilka innych źródeł twierdzi, że ILP jest trudna do NP, więc to naprawdę dezorientuje moje ogólne rozumienie klas złożoności.

Matt
źródło
4
NP-hard oznacza, że ​​(chyba że P = NP) każdy algorytm deterministyczny czasu działania zawiedzie w niektórych (nieskończonych) zestawach instancji. Zwykle są też zestawy łatwych instancji.
Sasho Nikolov
1
Zauważ, że stwierdzenie nie brzmi „każde IP jest trudne NP”, ale „rozwiązanie każdego IP jest trudne NP”.
Raphael
1
Jako uwaga, IP dla stałego wymiaru
podano

Odpowiedzi:

20

Jeśli problemem jest NP-Hard, oznacza to, że istnieje klasa instancji tego problemu, których są NP-Hard. Jest całkiem możliwe, że inne konkretne klasy instancji mogą być rozwiązane w czasie wielomianowym.

Rozważmy na przykład problem znalezienia trójkolorowego wykresu . Jest to dobrze znany problem NP-Hard. Teraz wyobraź sobie, że jego instancje są ograniczone do wykresów, które są na przykład drzewami. Oczywiście w czasie wielomianowym można łatwo znaleźć 3-kolorowe zabarwienie drzewa (w rzeczywistości można również znaleźć 2-kolorowe zabarwienie).

Zastanów się przez chwilę nad problemami decyzyjnymi. Metoda udowodnienia twardości problemu decyzyjnegoPopracowuje redukcję wielomianu (Karp) z innego problemuQktóry jest znany jako NP-Hard. W tej redukcji pokazujesz, że istnieje funkcjaf który mapuje każdą instancję q problemu Q na przykład problemu P takie, że: q jest tak dla instancji Qf(q) jest tak dla instancji P. Oznacza to, że rozwiązanief(q) musi być „co najmniej tak trudne” jak rozwiązywanie q samo.

Zauważ, że nie jest to wymagane do obrazu f być równym zestawowi wystąpień P. Dlatego jest to całkowicie możliwe w przypadku problemuP ograniczone do niektórych podzbiorów, aby nie było trudne.

Aby wrócić do pierwotnego pytania:

  • Problem przypisania można rozwiązać w czasie wielomianowym, tzn. Rozwiązanie każdego wystąpienia problemu przypisania można obliczyć w czasie wielomianowym.
  • ILP jest trudny do NP: ogólnie trudne może być obliczenie rozwiązania problemu ILP, tzn. Istnieją przypadki ILP, które są trudne.
  • Niektóre konkretne przypadki ILP można rozwiązać w czasie wielomianowym.
Steven
źródło
Czy możesz wyjaśnić, czy jest to konieczne f do mapowania każdego wystąpienia Q nie możemy zmapować podzbioru Q? tzn. czy obraz wstępnyf musi być wszystkim Q?
Mat
Nie jest to konieczne f do mapowania każdego wystąpienia Q dopóki mapuje (nieskończoną) klasę trudnych instancji Q. Na przykład, aby to pokazaćPjest NP-Hard, można zapewnić redukcję problemu 3-kolorowania ograniczonego do grafów płaskich.
Steven
14

Nie, specjalne przypadki mogą być łatwiejsze.

Rozważmy na przykład ten adres IP ai0 dla i[1..n]:

mini=1nxiai

st i dla .i=1nxi1
 xiNi[1..n]

Znajduje minimum wśród (dla których nieuchronnie w optymalnym rozwiązaniu). Znalezienie minium liczby jest wyraźnie problemem wielomianowym.a1,,anxi=1n

Raphael
źródło
0

Możesz modelować wielomianowo rozwiązany problem jako adres IP. Nie oznacza to, że problem jest trudny do NP. Oznacza to po prostu, że nie jest znany algorytm wielomianowy do rozwiązania modelu IP twojego problemu (chyba że P = NP).

Tak jak zasugerowałeś, problem przypisania jest w P, ale twój model IP jest trudny do NP.

Austen
źródło
3
Adres IP w odpowiedzi Raphaela można rozwiązać w czasie wielomianowym. Innymi słowy, generalnie nie znamy szybkiego algorytmu rozwiązywania adresów IP, ale istnieją specjalne przypadki problemów z IP, dla których mamy szybkie algorytmy.
Juho
0

Nie, istnieje specjalny rodzaj programu liczb całkowitych, jeśli macierzą ograniczeń jest TUM (macierz całkowicie niemodularna), wówczas można ją rozluźnić w programie liniowym, który można rozwiązać w czasie wielomianowym.

Jianhao Ma
źródło
-4

Problem przypisania nie jest ILP, ale problemem LP, a zatem nie trudnym do NP.

Julia
źródło
4
Nie jestem pewien, dlaczego uważasz, że problem z przypisaniem nie jest ILP. Zdarza się, że w tym przypadku optymalne rozwiązanie dla programu liniowego jest również optymalnym rozwiązaniem dla programu liniowego z liczbami całkowitymi ... ale to nie znaczy, że nie jest to instancja ILP.
DW
Poszczególne instancje same w sobie nigdy nie są trudne NP. Chcesz powiedzieć „to jest rzeczywiście łatwa instancja”, ale jest to o wiele bardziej skomplikowane stwierdzenie (zdefiniuj „łatwe”).
Raphael