Ein intuitiver / informeller Beweis für LP Duality?


19

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.


5
In dieser math.SE-Antwort gehe ich Schritt für Schritt durch ein Beispiel, woher das Dual kommt - und warum - für ein Problem, das die meisten der verschiedenen Möglichkeiten hat, die mit einer LP auftreten können. Vielleicht kann das helfen?
Mike Spivey

2
Ich bin nicht sicher, warum du denkst, dass Vaziranis Argument für eine allgemeine LP nicht funktioniert. Persönlich gefällt mir diese Erklärung am besten.
Suresh Venkat

1
Fragen Sie nach der schwachen oder der starken Dualität?
Tsuyoshi Ito

7
Sie können eine geometrische Intuition erhalten, indem Sie sich (beispielsweise in 2D) vorstellen, was es bedeutet, eine lineare Kombination von Abhängigkeiten zu verwenden. Zeichnen Sie zum Beispiel die Nebenbedingungen und y 1 in die Ebene. Linearkombinationen dieser Bedingungen ergeben a x + b y a + b für a , b 0x1y1ax+bya+ba,b0. Zeichnen Sie dies heraus, um es zu sehen. Im Allgemeinen erhalten Sie durch die lineare Kombination von Abhängigkeiten die unterstützenden Halbräume der Polyeder. Fragen Sie jetzt, warum es immer ausreicht, wenn einer dieser halben Zwischenräume für sich genommen die Kosten begrenzt? Wenn Sie es sehen, ist das starke Dualität.
Neal Young

@ MikeSpivey - Ich wünschte, Ihr Kommentar wäre eine Antwort :)
PhD

Antworten:


19

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.

Primal={max    5x16x2   s.t.    2x1x2=1              x1+3x29    x10}

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 218. x 10 5 x 119 x 1 5 x 1 - 6 x 219 x 1919(2x1x2)+1(x1+3x2)9(1)+1(9)
19x16x218.
x105x119x118
5x16x219x16x218.
18

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 2y 1 ( 2 x 1 - x 2 ) + y 2 ( x 1 + 3 x 2 ) y 1 ( 1 ) + y 2 ( 9 ) .91y1y2

5x16x2y1(2x1x2)+y2(x1+3x2)y1(1)+y2(9).

Was muss nun an und wahr sein, damit dieses Paar von Ungleichungen Bestand hat ? Nehmen wir die beiden Ungleichungen nacheinander.y 2y1y2


Die erste Ungleichung :5x16x2y1(2x1x2)+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 .x1x2x155x105x12y1+y25

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 .x2x26x26x26x2x2y1+3y2=6


Die zweite Ungleichung :y1(2x1x2)+y2(x1+3x2)y1(1)+y2(9)

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 dasy1y2y1y1y1y2y2Variable kann nicht negativ sein. Also müssen wir .y20

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:y1y2

Minimize y1+9y2subject to 2y1+y25y1+3y2=6y20.

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.

             Primal Problem                           Dual Problem
             (or Dual Problem)                        (or Primal Problem)

             Maximization                             Minimization

Sensible     <= constraint            paired with     nonnegative variable
Odd          =  constraint            paired with     unconstrained variable
Bizarre      >= constraint            paired with     nonpositive variable

Sensible     nonnegative variable     paired with     >= constraint
Odd          unconstrained variable   paired with     = constraint
Bizarre      nonpositive variable     paired with     <= constraint

7

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, dassxx=BxxCCBminC, 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.BB=minCBB

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 / effS,Of(S)(11/e)f(O)fff(O)=1f(S)minf(S)=11/e11/ef(S)11/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.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.