finale Version des Vorlesungsskripts - ZIB
finale Version des Vorlesungsskripts - ZIB finale Version des Vorlesungsskripts - ZIB
9.3 Das Simplexverfahren (c) Ist x nichtdegeneriert, so gilt xpr > 0, und somit ist die letzte Ungleichung in der obigen Abschätzung strikt. Daraus ergibt sich (c). ✷ Der obige Beweis macht den geometrischen Inhalt des Satzes (9.16) nicht deutlich. Dem Leser wird dringend empfohlen, sich zu überlegen, welche geometrische Bedeutung der Parameter λ0 in (b) hat. 9.3 Das Simplexverfahren Die Grundidee des Simplexverfahrens haben wir schon erläutert, sie kann kurz wie folgt beschrieben werden: • Finde eine zulässige Basis AB. • Konstruiere aus AB eine zulässige Basis AB ′, so dass die zulässige Basislösung von AB ′ besser als die von AB ist. • Gibt es keine bessere Basislösung, so ist die letzte optimal. Die vorhergehenden Sätze geben uns nun die Möglichkeit, die oben informell beschriebene Idee, analytisch darzustellen und algorithmisch zu realisieren. Die Grundversion des Simplexverfahrens lautet dann wie folgt: (9.17) Grundversion des Simplexverfahrens. Eingabe: A ′ ∈ K (m,n) , b ′ ∈ K m , c ∈ K n . Ausgabe: Eine optimale Lösung x des linearen Programms max c T x A ′ x = b ′ x ≥ 0 (9.18) falls eine solche existiert. Andernfalls stellt das Verfahren fest, dass (9.18) unbeschränkt ist oder keine zulässige Lösung besitzt. Phase I: Test auf Zulässigkeit, Bestimmung einer zulässigen Basislösung Bestimme ein Subsystem Ax = b, x ≥ 0 von A ′ x = b ′ , x ≥ 0, so dass P = (A, b) = P = (A ′ , b ′ ) gilt und die Zusatzvoraussetzungen rang(A) = Zeilenzahl von A < Spaltenzahl von A erfüllt sind (falls möglich). Sei rang(A) = m < n. Bestimme weiterhin eine zulässige Basis, d. h. finde B = (p1, . . . , pm) ∈ {1, . . . , n} m , so dass AB eine zulässige Basis 171
9 Die Grundversion des Simplex-Algorithmus von A ist, und sei N = (q1, . . . , qn−m) wie üblich definiert. Berechne A −1 B A = A −1 B AN, b = A −1 B b, c T = c T N − c T BA −1 B AN, c0 = c T Bb. Wie die gesamte Phase I durchgeführt wird und wie zu verfahren ist, wenn die gewünschten Resultate nicht erzielt werden können, wird in (9.38) angegeben. Im weiteren gehen wir davon aus, dass Phase I erfolgreich war. Phase II: Optimierung 172 (II.1) Optimalitätsprüfung Gilt ci ≤ 0 für i = 1, . . . , n − m, so ist die gegenwärtige Basislösung optimal (siehe (9.15)(b)). Gib den Vektor x mit xB = b, xN = 0 aus. Der Optimalwert von (9.1) ist c T x = c T B b = c0. STOP! (II.2) Bestimmung der Austausch- oder Pivotspalte Wähle einen Index s ∈ {1, . . . , n − m}, so dass cs > 0 gilt. (Zur konkreten Realisierung dieser Auswahl, falls mehrere reduzierte Kostenkoeffizienten positiv sind, gibt es sehr viele verschiedene Varianten, die wir in Abschnitt 9.4 besprechen werden.) (II.3) Prüfung auf Beschränktheit des Optimums Gilt A·s ≤ 0, so ist das lineare Programm unbeschränkt (siehe (9.16)(a)), STOP! (II.4) Bestimmung der Austausch- oder Pivotzeile Berechne bi λ0 := min ais | ais > 0, i = 1, . . . , m Wähle einen Index r ∈ {1, . . . , m}, so dass gilt br ars = λ0. (Hierzu gibt es verschiedene Möglichkeiten, die wir in Abschnitt 9.4 erläutern werden.) (II.5) Pivotoperation, Basisaustausch
- Seite 125 und 126: 6 Maximale Flüsse in Netzwerken s
- Seite 127 und 128: 6 Maximale Flüsse in Netzwerken W
- Seite 129 und 130: 6 Maximale Flüsse in Netzwerken Da
- Seite 131 und 132: 6 Maximale Flüsse in Netzwerken s
- Seite 133 und 134: Literaturverzeichnis L. R. Ford, Jr
- Seite 135 und 136: 7 Flüsse mit minimalen Kosten Ein
- Seite 137 und 138: 7 Flüsse mit minimalen Kosten Dami
- Seite 139 und 140: 7 Flüsse mit minimalen Kosten Dami
- Seite 141 und 142: 7 Flüsse mit minimalen Kosten 2. K
- Seite 143 und 144: 7 Flüsse mit minimalen Kosten schr
- Seite 145 und 146: 7 Flüsse mit minimalen Kosten Erf
- Seite 147 und 148: 7 Flüsse mit minimalen Kosten Die
- Seite 149 und 150: 7 Flüsse mit minimalen Kosten (7.2
- Seite 151 und 152: 7 Flüsse mit minimalen Kosten W f
- Seite 153 und 154: 7 Flüsse mit minimalen Kosten r s
- Seite 156 und 157: 8 Grundlagen der Polyedertheorie In
- Seite 158 und 159: (c) Ist F = {x ∈ P | c T x = γ}
- Seite 160 und 161: (a) =⇒ (d): Nach Definition ist {
- Seite 162 und 163: (8.12) Folgerung. Sei P = P = (A, b
- Seite 164 und 165: 9 Die Grundversion des Simplex-Algo
- Seite 166 und 167: 9.1 Basen, Basislösungen, Entartun
- Seite 168 und 169: 9.1 Basen, Basislösungen, Entartun
- Seite 170 und 171: 9.2 Basisaustausch (Pivoting), Simp
- Seite 172 und 173: gilt daher ⎛ ⎜ F · E = ⎜ ⎝
- Seite 174 und 175: 9.2 Basisaustausch (Pivoting), Simp
- Seite 178 und 179: Setze (II.6) Updating B ′ := (p1,
- Seite 180 und 181: 9.3 Das Simplexverfahren (Die Trans
- Seite 182 und 183: 9.3 Das Simplexverfahren x2 = 0 nic
- Seite 184 und 185: 9.3 Das Simplexverfahren Wir führe
- Seite 186 und 187: 9.3 Das Simplexverfahren Das letzte
- Seite 188 und 189: 9.4 Spalten- und Zeilenauswahlregel
- Seite 190 und 191: 9.5 Die Phase I (2) Kleinster-Varia
- Seite 192 und 193: 9.5 Die Phase I x ≥ 0. Wir müsse
- Seite 194: x1 x2 x3 s1 s2 s3 9.5 Die Phase I 6
- Seite 197 und 198: 10 Fourier-Motzkin-Elimination und
- Seite 199 und 200: 10 Fourier-Motzkin-Elimination und
- Seite 201 und 202: 10 Fourier-Motzkin-Elimination und
- Seite 203 und 204: 10 Fourier-Motzkin-Elimination und
- Seite 205 und 206: 10 Fourier-Motzkin-Elimination und
- Seite 207 und 208: 11 Das Farkas-Lemma und Dualitätst
- Seite 209 und 210: 11 Das Farkas-Lemma und Dualitätst
- Seite 211 und 212: 11 Das Farkas-Lemma und Dualitätst
- Seite 213 und 214: 11 Das Farkas-Lemma und Dualitätst
- Seite 215 und 216: 11 Das Farkas-Lemma und Dualitätst
- Seite 217 und 218: 11 Das Farkas-Lemma und Dualitätst
- Seite 219 und 220: 11 Das Farkas-Lemma und Dualitätst
- Seite 221 und 222: 11 Das Farkas-Lemma und Dualitätst
- Seite 223 und 224: 12 Ganzzahligkeit von Polyedern: Ei
- Seite 225 und 226: 12 Ganzzahligkeit von Polyedern: Ei
9 Die Grundversion <strong>des</strong> Simplex-Algorithmus<br />
von A ist, und sei N = (q1, . . . , qn−m) wie üblich definiert. Berechne<br />
A −1<br />
B<br />
A = A −1<br />
B AN,<br />
b = A −1<br />
B b,<br />
c T = c T N − c T BA −1<br />
B AN,<br />
c0 = c T Bb.<br />
Wie die gesamte Phase I durchgeführt wird und wie zu verfahren ist, wenn die<br />
gewünschten Resultate nicht erzielt werden können, wird in (9.38) angegeben. Im<br />
weiteren gehen wir davon aus, dass Phase I erfolgreich war.<br />
Phase II: Optimierung<br />
172<br />
(II.1) Optimalitätsprüfung<br />
Gilt ci ≤ 0 für i = 1, . . . , n − m, so ist die gegenwärtige Basislösung optimal<br />
(siehe (9.15)(b)). Gib den Vektor x mit xB = b, xN = 0 aus. Der Optimalwert<br />
von (9.1) ist c T x = c T B b = c0. STOP!<br />
(II.2) Bestimmung der Austausch- oder Pivotspalte<br />
Wähle einen Index s ∈ {1, . . . , n − m}, so dass cs > 0 gilt. (Zur konkreten<br />
Realisierung dieser Auswahl, falls mehrere reduzierte Kostenkoeffizienten positiv<br />
sind, gibt es sehr viele verschiedene Varianten, die wir in Abschnitt 9.4<br />
besprechen werden.)<br />
(II.3) Prüfung auf Beschränktheit <strong>des</strong> Optimums<br />
Gilt A·s ≤ 0, so ist das lineare Programm unbeschränkt (siehe (9.16)(a)),<br />
STOP!<br />
(II.4) Bestimmung der Austausch- oder Pivotzeile<br />
Berechne<br />
<br />
bi<br />
λ0 := min<br />
ais<br />
<br />
| ais > 0, i = 1, . . . , m<br />
Wähle einen Index r ∈ {1, . . . , m}, so dass gilt<br />
br<br />
ars<br />
= λ0.<br />
(Hierzu gibt es verschiedene Möglichkeiten, die wir in Abschnitt 9.4 erläutern<br />
werden.)<br />
(II.5) Pivotoperation, Basisaustausch