Unter- und Obergrenzen

Aus Operations-Research-Wiki
Wechseln zu: Navigation, Suche

m Zusammenhang mit dem Simplex-Algorithmus können in einigen Fällen Untergrenzen der Form xj ≥ lj einzelner Variablen oder Obergrenzen der Form xj ≤ uj einzelner Variablen auftreten. Diese kann man als zusätzliche Restriktionen, was relativ aufwändig ist, oder durch Koordinatentransformation/-verschiebung behandeln.

Untergrenzen

Treten Untergrenzen der Form xj ≥ lj auf, so werden diese vor der Umrechnung des Tableaus durch Koordinatenverschiebung berücksichtigt. Dazu wird die Variable xj durch die Gegenvariable xj’ = xj – lj ersetzt und die Bedingung xj ≥ lj wird zur Nichtnegativitätsbedingung xj’ ≥ 0.

Für die restlichen Gleichungen (Restriktionen und Zielfunktion) treten durch die Transformation ebenfalls Änderungen auf.

Vor Transformation

yi + ∑j aij xj= bi

Nach Transformation

yi + ∑j aij (xj’ + lj) = bi</br>
yi + ∑j aij xj’ = bi - ∑j aij lj

Wie aus obiger Gleichung ersichtlich, treten nur Änderungen für die rechte Seite des Tableaus auf. Die Variable bi wird duch bi’ = bi - ∑j aij lj ersetzt.

Zur Bestimmung der Optimallösung verwendet man die bekannten Rechenreglen für Phase 2 des Simplex-Algorithmus.

Nach der Bestimmung der Optimallösung muss die Koordinatentransformation Rückgängig gemacht werden, um die Werte der ursprünglichen Variablen zu ermitteln. Dies geschieht nach der Formel xj = xj’ + lj.

Obergrenzen

Treten Obergrenzen der Form xj ≤ uj auf, so werden diese durch Koordinatentransformation während der Umrechnung des Tableaus berücksichtigt. Eine Obergrenze bildet mit der Nichtnegativitätsbedingung einen Korridor im zulässigen Lösungsbereich, der dann durch zwei parallele Geraden begrenzt ist. Sobald eine Variable xj bzw. yi die Obergrenze überschreitet, wird sie durch ihre Gegenvariable xj‾ = uj - xj bzw. yi‾ = uj *- yi ersetzt. Für die Grenzen gilt dann nach der Transformation xj‾ ≤ uj und xj‾ ≥ 0 bzw. yi‾ ≤ ui* und yi‾ ≥ 0

Auch bei der Behandlung von Obergrenzen treten Änderungen der restlichen Gleichungen auf. Im Gegensatz zu den Untergrenzen muss aber unterschieden werden, ob eine Basisvariable oder eine Nichtbasisvariable ersetzt wird.

  • Ersetzen einer Nichtbasisvariable in Spalte j:
Die Variable bi der rechten Seite wird durch bi‾ = bi - aij uj ersetzt und das Vorzeichen der Elemente der Spalte j wird getauscht.
  • Ersetzen einer Basisvariable in Zeile i
Die Variable bi der rechten Seite wird durch bi‾ = ui* - bi ersetzt und das Vorzeichen der Elemente der Zeile i wird getauscht.

Auch bei den Rechenregeln für Simplex-Tableaus treten Änderungen auf. Die Pivot-Spalte wird wie gewohnt gewählt.</br> Zur Auswahl der Pivot-Zeile müssen die folgenden 3 Kriterien geprüft werden:

Q1 = min ( bi/ais ) ∀ ais > 0 (wie bisher)
Q2 = min ( (bi - ui*)/ ais) ∀ ais < 0
Q3 = us

Je nachdem, welcher der drei Werte am kleinsten ist, werden unterschiedliche Operationen durchgeführt.

  • Ist Q1 am kleinsten, führt man eine normale Simplex-Iteration nach den bekannten Regeln durch.</br>
  • Ist Q2 am kleinsten, muss die Basisvariable der Pivot-Zeile nach den oben beschriebenen Regeln ersetzt werden. Dann führt man eine normale Simplex-Iteration durch.</br>
  • Ist Q3 am kleinsten, muss die Nichtbasisvariable der Pivot-Spalte nach den oben beschriebenen Regeln ersetzt werden. Es wird keine Simplex-Iteration durchgeführt.

Nach der Bestimmung der Optimallösung muss die Koordinatentransformation Rückgängig gemacht werden, um die Werte der ursprünglichen Variablen zu ermitteln. Dies geschieht nach der Formel xj = uj - xj‾.

Unter- und Obergrenzen

Treten Unter- und Obergrenzen auf, so werden die Untergrenzen wie oben beschrieben vor der Optimierungsrechnung und die Obergrenzen wie oben beschrieben während der Optimierungsrechnung jeweils durch Koordinatentransformation berücksichtigt.

Nach der Bestimmung der Optimallösung muss die Koordinatentransformation Rückgängig gemacht werden, um die Werte der ursprünglichen Variablen zu ermitteln. Dies geschieht in zwei Schritten nach den Formeln xj’ = uj - xj’‾ und xj = xj’ + lj.

Beispiel:

Folgendes Simplex-Problem soll unter der Berücksichtigung der unteren Grenzen

x1 ≥ 4, x2 ≥ 5 und x3 ≥ 7

sowie der oberen Grenzen

x1 ≤ 8, x2 ≤ 7 und x3 ≤ 15

gelöst werden.


Fehler beim Erstellen des Vorschaubildes: Die Miniaturansicht konnte nicht am vorgesehenen Ort gespeichert werden
Abb. 1


Im ersten Schritt trägt man die Untergrenzen in die Zeile LB und die Obergrenzen abzüglich der Untergrenzen in die Zeile UB`. Dann beginnt man mit der Koordinatentransformation zur Berücksichtigung der Untergrenzen, indem man die Nichtbasisvariablen xj duch ihre entsprechenden Gegenvariablen xj’ ersetzt und die Werte der rechten Seite nach der Formel bi’ = bi - ∑j aij lj umrechnet. Für die Zeile y0 beträgt b0’ zum Beispiel b0’= 0 - (-20*7) – (-26*5) – (-36*4) = 414. Für die Zeile y1 gilt entsprechend b1’ = 122- (3*7) - (6*5) – (5*4) = 51 Für die Zeilen y2 und y3 folgt entsprechend b2’ = 58 und b3’= 84.

Nach der Koordinatentransformation folgt für das Simplex-Tableau also


Fehler beim Erstellen des Vorschaubildes: Die Miniaturansicht konnte nicht am vorgesehenen Ort gespeichert werden
Abb. 2


Im nächsten Schritt bestimmt man die Pivot-Spalte nach den bekannten Kriterien, in diesem Fall also die Spalte x1´ = -36. Nun werden für diese Spalte die drei Kriterien zur Auswahl der Pivot-Zeile überprüft.

Q1 = min ( bi/ais )= min (51/5; 58/7; 84/10) =min (10,2; 8,29; 8,4) = 8,29
Q2 = min ( (bi - ui*)/ ais) = min (∞; ∞; ∞;) = ∞
Q3 = us = 4

Das Minimum von Q1, Q2 und Q3 liegt also bei Q3. Nach den oben beschriebenen Regeln wird in diesem Fall also eine Koordinatentransformation der Nichtbasisvariable der Pivot-Spalte durchgeführt, die rechte Seite nach der Formel bi‾ = bi - aij lj umgerechnet und das Vorzeichen der Elemente der Spalte 1 getauscht.

Aus x1’ wird also x1’‾, aus bo’ = 414 wird bo’‾ = 414 – (-36*4) = 558, aus b1’ = 51 wird b1’‾ = 51 – (5*4) = 31. Für die restlichen Zeilen erfolgt die Umrechnung entsprechend.

Da eine Nichtbasisvariable transformiert wurde, erfolgt keine Simplex-Iteration.

Somit gilt für das Simplex-Tableau


Fehler beim Erstellen des Vorschaubildes: Die Miniaturansicht konnte nicht am vorgesehenen Ort gespeichert werden
Abb. 3


Da die Optimallösung noch nicht erreicht ist, wählt man als nächste Pivot-Spalte die Spalte x2’ = -26 und überprüft wieder die Kriterien zur Auswahl der Pivot-Zeile.

Q1 = min (31/6; 30/5; 44/8) = min (5,17; 6; 5,5) = 5,5
Q2 = min (∞; ∞; ∞;) = ∞
Q3 = us = 2

Das Minimum von Q1, Q2 und Q3 liegt also wieder bei Q3. Es wird wieder eine Koordinatentransformation der Nichtbasisvariable der Pivot-Spalte durchgeführt, die rechte Seite nach der Formel bi‾ = bi - aij lj umgerechnet und das Vorzeichen der Elemente der Spalte 2 getauscht.

Aus x2’ wird also x2’‾, aus bo = 558 wird bo’‾ = 558 – (-26*2) = 610, aus b1’ = 31 wird b1’‾ = 31 – (6*2) = 19. Für die restlichen Zeilen erfolgt die Umrechnung entsprechend.

Da eine Nichtbasisvariable transformiert wurde, erfolgt keine Simplex-Iteration.

Somit gilt für das Simplex-Tableau


Fehler beim Erstellen des Vorschaubildes: Die Miniaturansicht konnte nicht am vorgesehenen Ort gespeichert werden
Abb. 4


Da die Optimallösung noch nicht erreicht ist, wählt man als nächste Pivot-Spalte die Spalte x3’ = -20 und überprüft wieder die Kriterien zur Auswahl der Pivot-Zeile.

Q1 = min (19/3; 20/4; 28/5) = min (6,33; 5; 5,6) = 5
Q2 = min (∞; ∞; ∞;) = ∞
Q3 = us = 8

Das Minimum von Q1, Q2 und Q3 liegt also bei Q1. In diesem Fall wird eine Simplex-Iteration mit Spalte x3 als Pivot-Spalte und Zeile y2 als Pivot-Zeile ( Minimum von Q1 in Zeile y2) nach den Rechenreglen für Phase 2 durchgeführt.

Somit folgt für das Simplex-Tableau


Fehler beim Erstellen des Vorschaubildes: Die Miniaturansicht konnte nicht am vorgesehenen Ort gespeichert werden
Abb. 5


Dieses Tableau stellt die Optimallösung dar. Nun müssen noch die Koordinatentransformationen Rückgängig gemacht werden.

x1’‾ = 0 ⇒ x1 = l1 + u1* = 4 + 4= 8

x2’‾ = 0 ⇒ x2 = l2 + u2* = 5 + 2= 7

x3’ = 5 ⇒ x3 = l3 + 5 = 7 + 5= 12

y0 = 710

y1 = 4
y2 = 0
y3 = 3

Literatur

Müller-Merbach (1973): Operations Research, Kapitel 4.5

Vorlesung/Lecture

Sie können Sich zu diesem Themengebiet eine Vorlesung ansehen.

Unter- und Obergrenzen (English)