Obwohl es für einige populäre Probleme in der Tat wahr ist, denke ich, dass beide Annahmen - je nachdem, was Sie als Optimierungsproblem definieren - nicht wahr sind.
Zunächst einige Definitionen: Die meisten Optimierungsprobleme sind nicht Teil von NP . Zum Beispiel für das Knapsack-Problem : Man kann den Nicht-Determinismus nicht ausnutzen, um die wertvollste Tasche zu konstruieren, einfach weil die verschiedenen nicht-deterministischen Zweige keinen gemeinsamen Speicher haben. NP wird auch als "polynomial verifizierbar" (Überprüfung eines Zertifikats) definiert [1, p. 34]
. In diesem Fall ist das Zertifikat beispielsweise eine Tasche : eine Bitfolge, bei der, wenn das i- te Bit gesetzt ist, impliziert wird, dass das i- te Element Teil der Tasche ist. Sie können in der Tat in der Polynomzeit prüfen, ob eine solche Tasche wertvoller ist als ein vorgegebener Schwellenwert (dies ist die Entscheidungsvariante)), aber Sie können - soweit wir wissen - nicht anhand eines einzelnen Beutels (einer Polynomzahl von Beuteln) entscheiden, ob dieser Beutel der wertvollste von allen möglichen Beuteln ist. Das ist ein entscheidender Unterschied zwischen beispielsweise NP und EXP : In EXP können Sie alle möglichen Taschen aufzählen und Buch führen, welche Tasche die beste ist.
Die Entscheidungsvariante der Optimierungsprobleme ist in einigen Fällen Teil von NP , man muss klar zwischen dem Maximierungsgeschmack und dem Entscheidungsgeschmack unterscheiden . Bei der Entscheidungsfindung lautet die Frage: " Bei gegebenem Optimierungsproblem und gebundenem Nutzen gibt es eine Lösung mit einem Nutzen, der größer oder gleich dem gebundenen Nutzen ist " (oder geringfügig modifiziert für ein Minimierungsproblem).
Ich gehe auch davon aus, dass Sie mit NP den (hypothetischen) Teil von NP meinen, der nicht Teil von P ist . Wenn P = NP ist , existiert NP-complete natürlich noch, aber es wird gleich P sein (fällt nur mit P für einige Reduktionsbegriffe zusammen, wie polynomielle Vielfachreduktionen von @ AndrásSalamon), was nicht so beeindruckend ist ( und würde die " Lücke " verringern, die Sie in Ihrer Frage angeben).
Ich stelle zunehmend fest, dass die meisten diskreten Probleme NP-vollständig sind.
Jetzt haben wir das geklärt: Es gibt viele Optimierungsprobleme in P : Problem mit dem kürzesten Pfad, Problem mit dem maximalen Durchfluss (für integrale Kapazitäten), minimaler Spannbaum und maximale Anpassung . Obwohl diese Probleme für Sie "trivial zu lösen" scheinen, handelt es sich dennoch um Optimierungsprobleme, und in vielen Fällen ist die Konstruktion (und der Nachweis der Richtigkeit) nicht so einfach. Die Behauptung hält also nicht alle diskreten Probleme für NP-vollständig. Da P nicht gleich NP ist , können diese Probleme nicht NP-vollständig sein .
ΣPi
Während die Optimierung kontinuierlicher Probleme fast immer leicht erreichbar ist.
Ein populäres kontinuierliches Problem, das NP-schwer ist, ist die quadratische Programmierung .
x⃗
x⃗ T⋅Q⋅x⃗ 2+c⃗ T⋅x⃗
A⋅x⃗ ≤b⃗
Eigentlich galt die lineare Programmierung lange Zeit auch als NP-hart , jedoch mit sehr guten Heuristiken (die Simplex- Methode). Karmarkar-Algorithmus ist jedoch in P .
Ab dem Moment, in dem sich das Optimierungsproblem mit nicht konvexen Objekten befasst, wird es im Allgemeinen schwierig - wenn nicht unmöglich - sein, einen effizienten Algorithmus zu finden.
Literaturverzeichnis
[1]
Computational Complexity, ein moderner Ansatz , Sanjeev Arora und Boaz Barak