Was wäre ein guter informeller / intuitiver Beweis, um die LP-Dualität auf den Punkt zu bringen? Wie lässt sich am besten zeigen, dass die minimierte Zielfunktion tatsächlich das Minimum ist, wenn man die Schranke auf intuitive Weise versteht?
Die Art und Weise, wie mir Dualität beigebracht wurde, führte nur zu einem Verständnis, von dem ich sicher bin, dass es viele Menschen gibt, die ich kenne: Für jedes entsprechende Minimierungsproblem gibt es ein äquivalentes Maximierungsproblem, das durch Invertieren der Ungleichungsbeschränkungen abgeleitet werden kann. Zeitraum. Diese "Schlussfolgerung" der Dualität scheint zu bleiben, aber nicht "warum ist das so" (dh wie / warum ist die optimale Lösung gebunden).
Gibt es eine Möglichkeit, mit den Ungleichungen zu spielen, nur um die untere / obere Grenze des Optimums zu "zeigen", was eine Motivation für den Beweis sein könnte?
Ich habe Chvatals Buch sowie einige andere durchgesehen, aber nichts gefunden, was von absoluten Noobs für LP verstanden werden könnte. Am nächsten kam mir Vaziranis Buch über Algorithmen, in dem er über das "Multiplizieren der Ungleichungen mit einigen magischen Zahlen, die die Grenze anzeigen" spricht - ich bin mir nicht sicher, wie ich den Effekt für eine beliebige LP reproduzieren soll.
Antworten:
Nach OPs Wunsch ist hier die math.SE-Antwort, auf die ich in meinem Kommentar oben verweise.
Vielleicht lohnt es sich, bei einem Beispielproblem zu überlegen, woher das Dual kommt. Dies wird eine Weile dauern, aber hoffentlich erscheint das Dual nicht so mysteriös, wenn wir fertig sind.
Nehmen wir an, Sie haben ein primäres Problem wie folgt.
Angenommen, wir möchten die Einschränkungen des Primals verwenden, um eine Obergrenze für den optimalen Wert des Primals zu finden. Wenn wir die erste Bedingung mit , die zweite mit multiplizieren und addieren, erhalten wir für die linke Seite und für die rechte Seite. Da die erste Bedingung eine Gleichheit und die zweite eine Ungleichheit ist, impliziert dies Aber da , ist es auch wahr, dass und damit Daher ist eine Obergrenze für den optimalen Wert des Urproblems.1 9 ( 2 x 1 - x 2 ) + 1 ( x 1 + 3 x 2 ) 9 ( 1 ) + 1 ( 9 ) 19 x 1 - 6 x 2 ≤ 18. x 1 ≥ 0 5 x 1 ≤ 19 x 1 5 x 1 - 6 x 2 ≤ 19 x 1
Wir können es aber sicher besser machen. Anstatt nur und als Multiplikatoren zu erraten , lassen wir sie Variablen sein. Daher suchen wir nach Multiplikatoren und , um1 y 1 y 2 5 x 1 - 6 x 2 ≤ y 1 ( 2 x 1 - x 2 ) + y 2 ( x 1 + 3 x 2 ) ≤ y 1 ( 1 ) + y 2 ( 9 ) .9 1 y1 y2
Was muss nun an und wahr sein, damit dieses Paar von Ungleichungen Bestand hat ? Nehmen wir die beiden Ungleichungen nacheinander.y 2y1 y2
Die erste Ungleichung :5x1−6x2≤y1(2x1−x2)+y2(x1+3x2)
Wir müssen die Koeffizienten der Variablen und getrennt verfolgen . Erstens muss der Gesamtkoeffizient auf der rechten Seite mindestens . Es wäre großartig, genau zu erhalten, aber da , würde alles, was größer als , auch die Ungleichung für erfüllen . Mathematisch bedeutet dies, dass wir benötigen .x1 x2 x1 5 5 x1≥0 5 x1 2y1+y2≥5
Um andererseits die Ungleichung für die Variable sicherzustellen, muss der gesamte Koeffizient auf der rechten Seite exakt . Da positiv sein könnte, können wir nicht niedriger als , und da negativ sein könnte, können wir nicht höher als (da der negative Wert für die Richtung der Ungleichung würde). Damit die erste Ungleichung für die Variable funktioniert , muss also .x2 x2 −6 x2 −6 x2 −6 x2 x2 −y1+3y2=−6
Die zweite Ungleichung :
Hier müssen wir die Variablen und getrennt verfolgen . Die Variablen stammen aus der ersten Bedingung, bei der es sich um eine Gleichheitsbedingung handelt. Es spielt keine Rolle, ob positiv oder negativ ist, die Gleichheitsbedingung gilt weiterhin. Somit ist vorzeichenfrei. Die Variable stammt jedoch von der zweiten Einschränkung, bei der es sich um eine Einschränkung handelt, die kleiner oder gleich ist. Wenn wir die zweite Bedingung mit einer negativen Zahl multiplizieren würden, würde dies ihre Richtung umkehren und sie in eine Bedingung ändern, die größer oder gleich ist. Um mit unserem Ziel, das ursprüngliche Ziel zu überschreiten, Schritt zu halten, können wir dies nicht zulassen. Also dasy1 y2 y1 y1 y1 y2 y2 Variable kann nicht negativ sein. Also müssen wir .y2≥0
Schließlich wollen wir die rechte Seite der zweiten Ungleichung so klein wie möglich machen, da wir die engste Obergrenze für das ursprüngliche Ziel haben wollen. Wir wollen also minimieren .y1+9y2
Wenn wir all diese Einschränkungen für und zusammenfassen, stellen wir fest, dass das Problem der Verwendung der Einschränkungen des Primars, um die beste Obergrenze für das optimale Primärziel zu finden, darin besteht, das folgende lineare Programm zu lösen:y1 y2
Und das ist das Doppelte.
Es lohnt sich wahrscheinlich, die Implikationen dieses Arguments für alle möglichen Formen des Ursprünglichen und des Zweifachen zusammenzufassen. Die folgende Tabelle stammt aus S. 214 von Introduction to Operations Research , 8. Auflage, von Hillier und Lieberman. Sie bezeichnen dies als SOB-Methode, wobei SOB für Sensible, Odd oder Bizarre steht, je nachdem, wie wahrscheinlich es ist, dass eine bestimmte Einschränkung oder Variablenbeschränkung in einem Maximierungs- oder Minimierungsproblem auftritt.
quelle
Wenn Sie auf Mikes Antwort und Vaziranis Kommentar eingehen, erhalten Sie das Duale, indem Sie die allgemeine Form eines Optimalitätsnachweises für die Lösung des ursprünglichen Problems betrachten. Angenommen, Sie haben ein Maximierungsproblem, wenn einige lineare Ungleichungen vorliegen, und ohne Verlust der Allgemeinheit wird versucht, die Variable zu maximieren . Woher wissen wir, dass eine Lösung mit optimal ist? Eine Möglichkeit besteht darin, zu versuchen, eine Grenze für indem lineare Kombinationen der linearen Ungleichungen verwendet werden. Einige lineare Kombinationen geben Ihnen Grenzen der Form , und Sie versuchen, das bestmögliche (minimale) zu erhalten. Schwache Dualität besagt, dassx x=B x x≤C C B≤minC , was per definitionem offensichtlich ist. Eine starke Dualität besagt, dass, wenn endlich ist, . Das bedeutet, wenn das Maximum ist, gibt es einen "Grund", warum Sie nicht über hinauskommen können , was gleichzeitig ein Beweis für die Optimalität ist.B B=minC B B
Diese Sichtweise ist manchmal tatsächlich hilfreich. Sei eine Mengenfunktion ( nimmt eine Menge und gibt eine reelle Zahl aus), und seien zwei Mengen. Angenommen, Sie versuchen, eine Ungleichung aus einer Reihe von Ungleichungen in Bezug auf die Funktion abzuleiten (das ist ein Beispiel aus der Praxis ). Sie schreiben ein lineares Programm, in dem die Werte von die Variablen sind, eine Einschränkung ist und das Ziel darin besteht, zu minimieren . Die Lösung für dieses Programm lautet (nehmen wir an, dass die bestmögliche Lösung ist), und die Lösung für das Dual liefert Ihnen einen Beweis dafürf S , O f ( S ) ≥ ( 1 - 1 / e ) f ( O ) f f f ( O ) = 1 f ( S ) min f ( S ) = 1 - 1 / e 1 - 1 / e f ( S ) ≥ 1 - 1 / ef f S,O f(S)≥(1−1/e)f(O) f f f(O)=1 f(S) minf(S)=1−1/e 1−1/e f(S)≥1−1/e .
Dies lässt die Frage offen, warum starke Dualität tatsächlich gilt. Es gibt zwei Beweise für diese Tatsache bei der linearen Programmierung, einen mit dem Simplex-Algorithmus, den anderen mit dem Lemma von Farkas. Farkas 'Lemma ist wahrscheinlich der "richtige" Weg, die Situation zu verstehen, indem alles auf eine intuitive geometrische Tatsache reduziert wird. Ich gestehe jedoch, dass diese Intuition über meinen Kopf geht.
In allgemeineren Situationen (sagen wir semidefinite Programmierung) müssen Sie die allgemeineren Karush-Kuhn-Tucker-Bedingungen (eine Form von Lagrange-Multiplikatoren) verwenden, um das Dual und die Bedingungen für eine starke Dualität zu erhalten. Dies wird in Texten zur nichtlinearen oder konvexen Optimierung behandelt.
quelle