Simplextransformation
Voraussetzung: Zulässige Anfangsbasislösung bekannt, bi ≥0 für alle i = 1, 2, ... , m
1. Optimalitätstest: Gibt es noch negative Zielfunktionskoeffizienten (cj <0) im Simplextableau?
Falls Nein: Optimalitätskriterium erfüllt, Optimallösung: BV = rechte Seite, NBV = 0, Optimalwert = -d ablesen Falls Ja: Zulässige Basislösung nicht optimal, gehe zu 2.
2. Wähle eine Koeffizientenspalte (Pivotspalte) Nr. j* mit negativem Zielfunktionskoeffizienten (cj*<0), die wenigstens ein positives Element aij* >0 hat (gibt es keine solche Spalte, so ist der zulässige Bereich in Optimalrichtung der Zielfunktion unbeschränkt, also existiert keine optimale Lösung).
3. Bestimme eine Koeffizientenzeile (Pivotzeile) Nr. i* folgendermaßen: Bilde für alle positiven Pivotspaltenelemente den Quotienten aus der rechten Seite und dem Pivotspaltenelement
* ij
i
a
b und wähle
unter diesen einen kleinsten, also
0 *
*
*
*
*
Min
ij i j a
i i
a b a
b
ij >
= . Der Koeffizient in Pivotspalte und Pivotzeile ist das Pivotelement.
ξm+1 ... ξj* ... ξm+n
ξ1 a11 ... a1j* ... a1n b1
... ... ... ...
ξi* ai*1 ... ai*j* ... ai*n bi* * ... ... ... ...
ξm am1 ... amj* ... amn bm
-z c1 ... cj* cn d
*
4. Austauschschritt: Notiere folgendermaßen ein neues Simplextableau:
Tausche die BV Nr. i* und die NBV Nr. j* aus.
Berechne die neuen Koeffizienten aij', rechten Seiten bi' und Zielfunktionskoeffizienten cj' und Zielfunktionswert −d′ gemäß
• Pivotelement:
*
*
*
*
1
j i j
i ' a
a = (Kehrwert)
• Pivotzeile:
*
*
*
* j i
j i j
i a
' a
a = ,
*
*
* * j i
i ai
' b
b = (Division durch Pivotelement)
• Pivotspalte:
*
*
*
*
j i
ij
ij a
' a
a =− ,
*
*
*
*
j i
j
j a
' c
c =− (Division durch Pivotelement und Vorzeichenwechsel)
• übrige Elemente:
*
*
*
* j i
ij j i ij
ij a
a a a
'
a ⋅
−
= ,
*
*
*
* j i
ij i i
i a
a b b
'
b ⋅
−
= ,
*
*
*
* j i
j j i j
j a
c c a
'
c ⋅
−
= ,
*
*
*
* j i
j i
a c d b
d' ⋅
−
=
(Subtraktion von Pivotzeilenelement ¥ Pivotspaltenelement / Pivotelement) 5. Rechenkontrolle:
• Neue Basislösung muss wieder zulässig sein, also bi'≥0 für alle i=1, 2, ... , m
• Zielfunktionswert -d darf nicht schlechter geworden sein (i. S. der Optimalrichtung);
war bi* >0, so muss sich der Zielfunktionswert -d sogar echt verbessert haben.