Bei dieser Frage geht es um quadratische Programmierprobleme mit Box-Constraints (Box-QP), also um Optimierungsprobleme des Formulars
- minimiere vorbehaltlich von x ∈ [ 0 , 1 ] n .
Wenn positiv semidefinit wäre, wäre alles schön und konvex und einfach, und wir könnten das Problem in Polynomzeit lösen.
Auf der anderen Seite, wenn man die Einstückigkeit constraint hatte konnten wir das Problem mit der Zeit leicht lösen , O ( 2 n ⋅ p o l y ( n ) ) mit roher Gewalt. Für die Zwecke dieser Frage ist dies relativ schnell.
Aber was ist mit dem nicht konvexen kontinuierlichen Fall? Was ist der schnellste bekannte Algorithmus für allgemeine Box-QPs?
Zum Beispiel können wir diese in mäßig exponentieller Zeit, beispielsweise lösen , oder sind die Worst-Case - Komplexität der bekanntesten Algorithmen etwas viel Schlimmeres?
Hintergrund: Ich habe einige ziemlich kleine Box-QPs, die ich eigentlich gerne lösen würde, und ich war ein wenig überrascht zu sehen, wie schlecht einige kommerzielle Softwarepakete selbst bei sehr kleinen Werten von abschneiden . Ich begann mich zu fragen, ob es eine TCS-Erklärung für diese Beobachtung gibt.
quelle
Antworten:
Eine optimale Lösung liegt auf einem Gesicht. So können wir alle Flächen des Würfels durchgehen und alle stationären Punkte auf jeder der Flächen finden.
Hier ist ein konkreteres Verfahren. Eine Fläche des Würfels kann durch zwei disjunkte Indexmengen und I 1 charakterisiert werden . Für i ∈ I 0 setzen wir x i = 0 und für i ∈ I 1 setzen wir x i = 1 . Sei ˜ x aus den verbleibenden nicht fixierten Einträgen von x . Durch diese Festlegung wird die Zielfunktion in die folgende Form gebracht:I0 I1 i∈I0 xi=0 i∈I1 xi=1 x~ x
Zu diesem Zweck nehmen wir die Differenzierung der Zielfunktion, um zu erhalten
Durch Lösen dieses linearen Gleichungssystems erhalten Sie die stationären Punkte, die Kandidaten für optimale Lösungen. Wir gehen alle durch, überprüfen den Zustand und wählen einen mit dem minimalen Zielwert aus.
Die Gesamtzeitkomplexität ist ungefähr soO ( 3nPoly ( n ) ) da die Anzahl der Gesichter der n -Würfel ist 3n und ein lineares Gleichungssystem kann in Polynomzeit gelöst werden. Die Raumkomplexität ist in polynomialn .
quelle