Trochę tła. Powyższym problemem jest problem plecaka z ograniczeniami. Najbardziej wydajne rozwiązanie problemu plecakowego z ograniczeniami lub bez może być rozwiązane w czasie pseudo wielomianowym, wciąż NP-Hard. Niektóre odmiany można znaleźć na stronie https://en.wikipedia.org/wiki/Knapsack_problem#Definition . Pierwszym ograniczeniem w tym wariancie jest to, że wartość przedmiotów (piłek), które należy umieścić w plecaku (pojemnikach), nie ma znaczenia. Problem ogranicza się do czasu, jaki zajmuje włożenie przedmiotów do plecaka. Pierwotny problem wymaga umieszczenia najcenniejszych przedmiotów w jak najkrótszym czasie. Kolejnym ograniczeniem w tej wersji jest to, że wagi i wszystkie inne argumenty są liczbami całkowitymi. Ograniczeniem zainteresowania jest to, że wagiwjpodziel dla wszystkich . Uwaga: problem ułamkowego plecaka można rozwiązać w czasie wielomianowym, ale nie przedstawia on najbardziej praktycznych rozwiązań pierwotnego problemu. Ten problem wykorzystuje liczby całkowite, które dzielą się równomiernie (brak racjonalnych rozwiązań). Być może zobacz, o co chodzi z problemem plecaka? .wj+1j
Być może głównym pytaniem powinno być „czy ten problem jest nadal NP-Hard, gdy jest nieograniczony przez wielomian odpowiadający , ponieważ problem jest mniej złożony (w P), gdy jest ograniczony? Powodem, dla którego mówię, że jest tak, ponieważ problem może być pokazane jako P, gdy jest ograniczone, i NP-Hard, gdy niekoniecznie dzieliwjiwjwjwj+1równomiernie (wagi są po prostu losowe), wszystkie ograniczenia ograniczają złożoność tego problemu do tych dwóch warunków. Warunki te (1. problem plecaka losowego ciężaru bez ograniczenia wartości przedmiotu i 2. problem plecaka wagowego podzielnego bez ograniczenia wartości przedmiotu) negują się nawzajem pod względem zmniejszenia złożoności, ponieważ iloraz wag może być losowy ( szczególnie gdy nie ma ograniczeń), co nakłada wykładnicze obliczenia czasu (zostanie to pokazane w poniższym przykładzie). Dodatkowo, ponieważ dzieli , powiększa się wykładniczo dla każdegowjwj+1wjj. Wynika to z faktu, że zamiast używać losowo ważonych przedmiotów (kule, których masa jednostkowa może być ograniczona do wag jednostkowych poniżej 100 lub 50, a nawet 10), ograniczenie powoduje, że złożoność czasowa zależy od liczby cyfr , tak samo jak podział próbny, który ma charakter wykładniczy.wj
Tak więc, powyższy program liczb całkowitych pozostaje NP-trudny, nawet jeśli dzieli dla wszystkich . wjwj+1j I łatwo to zaobserwować.
Przykład 1: niechibędą potęgami dwóch. Ze względu na ciągłe dwa, cały problem jest rozwiązywany w czasie kwadratowym, jak pokazuje twój przykład. Wagi nie są losowe, dlatego obliczenia są rozwiązywane skutecznie.n=1wp
Przykład 2: niechzostanie zdefiniowane jako, gdziejest liczbą pierwszą odpowiadającą, tak że. Ma to zastosowanie, ponieważdzielidla wszystkich. Otrzymujemy, że każdyjest iloczynem wszystkich liczb pierwszych do. Wartości ciężarów jednostkowych wzrost w następujący sposób:. Ponieważ istnieje ograniczenie (~wj+1wj∗ppjp=2,j=1:p=3,j=2,p=5,j=3,p=7,j=4,...,P,Jwjwj+1jwjj1,2,6,30,210,2310,30030,...pjjlog(j), poprzez twierdzenie o liczbie pierwszej), ponieważ ilorazami są wszystkie liczby pierwsze, otrzymujemy złożoność NP-Pośrednia.
Przykład 3: niechzostanie zdefiniowane jako, gdziejest losowo wybraną liczbą pierwszą od dwóch do nieskończoności, odpowiadającą. Dotyczy to tego problemu, ponieważdzielidla wszystkich. Otrzymujemy pierwsze 5 ilorazów (losowo spada z dwóch do nieskończoności), jako. Widzimy, że nawet przy piątej piłce waga ma jedenaście cyfr. Na szczęście piąty iloraz wynosił dwa i nie był liczbą pierwszą rzędulub większą. wj+1wj∗RpRpjwjwj+1j101,2657,7,3169,210100
Powyższy przykład trzeci ma miejsce, gdy nie jest ograniczone (wagi losowe) wielomianem odpowiadającym . Złożoność czasowa jest wykładnicza, NP-twarda. Dla pewnej perspektywy po prostu zsumuj wszystkie ciężary i sprawdź, czy pasują. Ale nie ma rozwiązania, aby rozwiązać go znacznie szybciej, dzieląc wagi, niż wypróbować każdy podzbiór, aby sprawdzić, czy działa. Po kilkudziesięciu piłkach wciąż wchodzisz w sferę nawet trylionów podzbiorów lub trylionów cyfr.wji