• Artykuły
  • Forum
  • Ciekawostki
  • Encyklopedia
  • Problem NP-trudny



    Podstrony: 1 [2] [3]
    Przeczytaj także...
    W teorii złożoności obliczeniowej problem zbioru niezależnego jest przykładem problemu NP-zupełnego z teorii grafów.Problem zbioru wierzchołków rozrywających cykle (ang. Feedback vertex set problem) jest to zagadnienie z teorii grafów, polegające na znalezieniu podgrafu X, w grafie G, takiego, że co najmniej k jego wierzchołków i krawędzi nie tworzy cyklu. Był jednym z pierwszych probelmów, wobec których udowodniono NP-zupełność.

    Problem NP-trudny (NPH, ang. NP-Hard) – problem obliczeniowy, którego rozwiązanie jest co najmniej tak trudne, jak rozwiązanie każdego problemu z klasy NP (całej klasy NP).

    Formalna definicja problemu NP-trudnego jest następująca: Problem jest NP-trudny, jeżeli pewien problem NP-zupełny jest do niego redukowalny wielomianową transformacją Turinga.

    Innymi słowy, problem NP-zupełny można rozwiązać w wielomianowym czasie algorytmem rozwiązującym problem NP-trudny przez wykorzystanie hipotetycznej procedury sprowadzającej problem NP-zupełny do problemu NP-trudnego jeżeli tylko daje się wykonać w wielomianowym czasie. NP-trudność można zdefiniować także w kategorii języków formalnych (a nie problemów). Do klasy problemów NP-trudnych mogą należeć problemy różnego typu: decyzyjne, przeszukiwania, optymalizacyjne.

    Algorytm pseudowielomianowy – algorytm, którego czas działania jest ograniczony przez wielomian od wielkości wejścia, przy założeniu, że wejście jest zapisane w sposób unarny. Równoważnie: jest to algorytm, którego czas działania jest ograniczony przez wielomian od wielkości wejścia i maksymalnej wartości liczbowej występującej w opisie problemu.Problemy silnie NP-zupełne to takie problemy decyzyjne, które nawet przy ograniczeniu maksymalnej wartości występujacych w ich opisie liczb pozostają NP-zupełne.

    Wraz z definicjami klas problemów NP i NP-zupełnych ma to następujące konsekwencje:

  • problem optymalizacyjny, którego wersja decyzyjna jest NP-zupełna, jest problemem NP-trudnym;
  • NP-trudny problem jest co najmniej tak trudny, jak problem
  • ponieważ jest problemem NP-zupełnym, toteż należy on do problemów najtrudniejszych w klasie NP, dlatego NP-trudny problem jest co najmniej tak trudny, jak cała klasa NP;
  • ponieważ wszystkie problemy NP-zupełne transformują się wzajemnie do siebie (zwykłą) transformacją wielomianową (nie Turinga), to również wszystkie problemy NP-zupełne można rozwiązać przez redukcję do NP-trudnego problemu
  • ponadto, jeśli to problemy NP-trudne nie mają rozwiązań w czasie wielomianowym, natomiast rozstrzygnięcie nie przesądza o wielomianowej rozwiązywalności wszystkich problemów NP-trudnych;
  • jeżeli problem należy do klasy NP, to jest też problemem NP-zupełnym (gdyż wraz z istniejącą transformacją Turinga spełnia definicję problemu NP-zupełnego).
  • Przykłady[ | edytuj kod]

  • problem komiwojażera
  • problem plecakowy
  • problem zbioru niezależnego
  • problem zbioru wierzchołków rozrywających cykle
  • Język formalny – jest to podzbiór zbioru wszystkich słów nad skończonym alfabetem. Język formalny jest kluczowym pojęciem w informatyce, logice matematycznej i językoznawstwie. Język formalny nie jest uściśleniem pojęcia języka naturalnego i nie powinien być z nim mylony.Problem komiwojażera (TSP - ang. travelling salesman problem) jest to zagadnienie optymalizacyjne, polegające na znalezieniu minimalnego cyklu Hamiltona w pełnym grafie ważonym.


    Podstrony: 1 [2] [3]




    Warto wiedzieć że... beta

    W teorii obliczeń problem optymalizacyjny jest to problem obliczeniowy, którego rozwiązanie polega na znalezieniu największej bądź najmniejszej wartości pewnego parametru problemu, która spełnia pewną własność. Parametr, którego największej bądź najmniejszej wartości szukamy nazywa się funkcją kosztu (funkcja celu). Problem optymalizacyjny nazywa się problemem maksymalizacyjnym jeśli polega on na znalezieniu największej wartości funkcji kosztu i minimalizacyjnym jeśli szukana jest najmniejsza wartość funkcji kosztu.
    W teorii złożoności obliczeniowej transformacją Turinga problemu A do problemu B nazywamy (na cześć Alana Turinga) redukcję pozwalającą "łatwo" rozwiązać problem A przy założeniu, że znamy rozwiązanie problemu B.
    Problem decyzyjny – pytanie sformułowane w systemie formalnym, na które możliwe są odpowiedzi tak i nie. Przykładowo problem "Dla danych liczb x i y, czy x jest dzielnikiem y?" jest problemem decyzyjnym. Odpowiedzią może być tak lub nie w zależności od wartości x i y.
    Problem obliczeniowy, zadanie obliczeniowe – zadanie, które może być rozwiązane za pomocą komputera lub innej maszyny liczącej. Na opis p.o. składają się: zbiór danych wejściowych (ang. input) oraz warunki, jakie ma spełniać wynik, czyli dane wyjściowe (ang. output). Bardziej formalnie przez p.o. możemy rozmumieć funkcję, która przekształca zbiór danych wejściowych na zbiór danych wyjściowych. Pojęcie problemu obliczeniowego leży u podstaw informatyki rozumianej jako nauki zajmującej się przetwarzaniem informacji, gdyż praktycznie każde zadanie informatyczne można rozważać jako p.o.
    Problem NP (niedeterministycznie wielomianowy, ang. nondeterministic polynomial) to problem decyzyjny, dla którego rozwiązanie można zweryfikować w czasie wielomianowym. Równoważna definicja mówi, że problem jest w klasie NP, jeśli może być rozwiązany w wielomianowym czasie na niedeterministycznej maszynie Turinga.
    Dyskretny problem plecakowy (ang. discrete knapsack problem) jest jednym z najczęściej poruszanych problemów optymalizacyjnych. Nazwa zagadnienia pochodzi od maksymalizacyjnego problemu wyboru przedmiotów, tak by ich sumaryczna wartość była jak największa i jednocześnie mieściły się w plecaku. Przy podanym zbiorze elementów o podanej wadze i wartości, należy wybrać taki podzbiór by suma wartości była możliwie jak największa, a suma wag była nie większa od danej pojemności plecaka.
    Problem NP-zupełny (NPC) czyli problem zupełny w klasie NP ze względu na redukcje wielomianowe, to problem, który należy do klasy NP oraz dowolny problem należący do NP może być do niego zredukowany w czasie wielomianowym. Czasami zamiast redukcji w czasie wielomianowym używa się redukcji w pamięci logarytmicznej. Pytanie, czy są to definicje równoważne pozostaje pytaniem otwartym. Taka definicja problemów NP-zupełnych implikuje fakt, że jeśli tylko potrafimy rozwiązać jakikolwiek problem NP-zupełny w czasie wielomianowym, to potrafimy rozwiązać w czasie wielomianowym wszystkie problemy NP. Problemy NP-zupełne można więc traktować jako najtrudniejsze problemy klasy NP (z punktu widzenia wielomianowej rozwiązywalności).

    Reklama

    Czas generowania strony: 0.013 sek.