• Keine Ergebnisse gefunden

Zusammenhang der algebraischen und geometrischen Betrachtung

1.2 Die Nebenbedingungen

1.2.5 Zusammenhang der algebraischen und geometrischen Betrachtung

Im vorhergehenden Teil haben wir herausgefunden, dass man sich bei der Suche nach einem Optimum auf zul¨assige Basispunkte beschr¨anken kann und die geometrischen Betrachtung l¨asst vermuten, dass das Optimum in einem Eckpunkt des zul¨assigen Bereiches angenommen wird.

Tats¨achlich besteht zwischen der algebraischen und geometrischen Betrachtung folgender Zu-sammenhang:

1.2 Die Nebenbedingungen 25

Theorem 1.21 ( ¨Aquivalenzsatz)

SeienA∈Rm×n mitrk(A) =m und b∈Rm.

Sei K = {x ∈ Rn : Ax = b und x ≥ 0} das konvexe Polytop der zul¨assigen Punkte des Optimierungsproblems.

Ein Punktx∈ K ist genau dann eine Ecke, wennx ein zul¨assiger Basispunkt der Nebenbedin-gungen (1.7) und (1.8) ist.

Beweis12

”⇒“: Seix∈ K eine Ecke. Nat¨urlich gilt auch f¨ur die Ecken

n

X

i=1

xii =

k

X

i=1

xi¯ai =b und xi ≥0, i∈ {1, . . . n}, (1.17) falls wir wieder annehmen, dass¯ai, i∈ {1, . . . , n},die Spalten vonA sind und die echt positiven Komponenten von x gerade die ersten k sind. Damit x ein Basispunkt ist, m¨ussen die zu den positiven Komponenten geh¨origen Spalten linear unabh¨angig sein.

Angenommen, sie w¨aren es nicht. Dann gibt es eine nichttriviale Linearkombination:

∃α= (α1, . . . , αk,0, . . . ,0)T ∈Rn\{0}:

k

X

i=1

αii = 0.

Da f¨ur i∈ {1, . . . , k}xi >0 ist, gilt f¨ur hinreichend kleines ε6= 0:

x+εα≥0 und x−εα≥0. (1.18)

Dabei ist x+εα 6= x−εα und x+εα, x−εα ∈ K mit der gleichen Argumentation aus dem Beweis des Hauptsatzes der linearen Optimierung (vgl. (1.13)).

Weiter gilt aber

x= 1

2(x+εα) +1

2(x−εα) (1.19)

und damit w¨are eine Linearkombination der Eckex aus zwei verschiedenen Vektoren gefunden, was aber nach Definition nicht sein kann.

Also sind die Spalten ¯a1, . . . ,¯ak linear unabh¨angig oder anders ausgedr¨uckt B={1, . . . , k}.

Genau die gleiche Argumentation gilt im Falle eines entarteten Punktes.

”⇐“: Sei nun x ∈ Rn ein zul¨assiger Basispunkt, und B die Menge der Indices der echt positiven Komponenten von x. Dann sind ¯ai, i∈ B paarweise linear unabh¨angig und

X

i∈B

xi¯ai =b. (1.20)

Damitx eine Ecke von K ist, darf es keine verschiedenen Punkte y, z ∈ K geben, sodass

x=λy+ (1−λ)z, λ∈(0,1) und y6=z. (1.21)

12Vgl. [1] Seite 21 f.

26 1 Grundlagen und Vor¨uberlegungen

Angenommen, es g¨abe doch eine solche Konvexkombination, mit y 6= z. Da x, y, z ∈ K sind, sind alle Komponenten der drei Vektoren nicht negativ. Also m¨ussen auch die Komponenten von y und z, deren Indices in N liegen, Null sein, denn

0 =xj = λyj

|{z}≥0

+ (1−λ)zj

| {z }

≥0

⇒yj =zj = 0 f¨ur allej ∈ N.

Mit y, z ∈ K gilt

X

i∈B

yi¯ai=b und X

i∈B

zj¯ai =b. (1.22)

Betrachtet man die Differenz der beiden Gleichungen X

i∈B

(yi−zi)¯ai= 0, (1.23)

so muss wegen der linearen Unabh¨angigkeit der ¯ai, i∈ B,schon yi =zi, i∈ {1, . . . , k} gelten.

Also y=z, was ein Widerspruch zu Annahme ist und damitx eine Ecke von K.

Bemerkung 1.22

Mit diesem Theorem und der Definition eines zul¨assigen Basispunktes folgt nat¨urlich, dass f¨ur die Ecken des zul¨assigen Bereiches die Spalten ¯aj, j ∈ B, von A linear unabh¨angig sind.13 Korollar 1.23 (Existenzsatz)

Der konvexe zul¨assige BereichK ={x∈Rn: Ax=b und x≥0} besitzt Ecken, fallsK 6=∅.

Beweis

Die Elemente aus K sind zul¨assig. Dann gibt es nach dem Hauptsatz der linearen Programmie-rung einen zul¨assigen Basispunkt in K. Dieser ist nach obigem Theorem eine Ecke.

Korollar 1.24

Gibt es eine (endliche) optimale L¨osung des linearen Optimierungsproblems, dann gibt es eine (endliche) optimale L¨osung, die eine Ecke des zul¨assigen Bereiches K ist.

Beweis

Mit einer (endlichen) optimalen L¨osung aus K, gibt es nach dem Hauptsatz der linearen Pro-grammierung auch eine (endliche) optimale Basisl¨osung, die nach obigem Theorem eine Ecke ist.

Korollar 1.25

Der zul¨assige BereichK hat eine endliche Anzahl an Ecken.

Beweis

Nach obigen ¨Uberlegungen gibt es nur eine endliche Anzahl an Basispunkten, n¨amlich h¨ochstens

n m

, falls A∈Rm×n. Nach dem ¨Aquivalenzsatz gibt es somit auch endlich viele Ecken.

13In [3] als

Charakterisierungssatz“ bezeichnet.

1.2 Die Nebenbedingungen 27

Satz 1.26

SeiK={x∈Rn: Ax=b und x≥0} 6=∅beschr¨ankt.

Dann nimmt die Zielfunktionf(x) =cTx ihr Optimum in einer Ecke an.

Beweis

Dass die stetige Zielfunktion ihr Optimum auf dem kompakten (abgeschlossenen und beschr¨ ank-ten) zul¨assigen Bereich annimmt, gilt nach Bolzano-Weierstraß. Nach dem Hauptsatz der li-nearen Programmierung gibt es dann auch einen optimalen zul¨assigen Basispunkt. Dieser ist

¨aquivalent zu einer Ecke vonK.

Kapitel 2

Pivotisierung

Die Idee des Simples-Verfahrens besteht darin, f¨ur die Nebenbedingungen

Ax=b mit A∈Rm×n und b∈Rm, (2.1)

den Vektor b als Linearkombination verschiedener Basisvektoren (Spalten ¯aj, j ∈ B, von A) darzustellen.

Hierzu eine anschauliche Verdeutlichung, wie die Darstellung der Nichtbasisvektoren und des Vektorsb durch die Basisvektoren geometrisch interpretiert werden kann1.

Dazu nehme man an, es liege ein Optimierungsproblem mitm= 2 Gleichungsbedingungen und n= 4 Unbekannten vor.

Abbildung 2.1: Vektor bmit Basis- und Nichtbasisvektoren

Von den Vektoren a1, . . . , a4 k¨onnen nun zwei zur Darstellung von b verwendet werden. Dabei ist aber nicht jede Kombination m¨oglich. Zum Beispiel istb nicht durch a1 und a4 darstellbar, wenn die Koeffizienten - wie bei einem zul¨assigen Basispunkt gefordert - nicht negativ sein sollen.

Dagegen w¨are eine Kombination ausa1 und a2 m¨oglich.

1Vgl. [1] Fig. 3.1 Seite 40.

30 2 Pivotisierung

Neue Linearkombinationen entstehen durch Ersetzen eines Basisvektors ¯aj, j ∈ B,durch einen Nicht-Basisvektor ¯al, l ∈ N, wobei der Wert der Zielfunktion f¨ur eine neue Linearkombination nicht gr¨oßer werden soll (im Falle eines Minimierungsproblems).

Der Hauptsatz der linearen Optimierung besagt, dass man sich bei der Bestimmung der opti-malen Linearkombination auf die zul¨assigen Basispunkte beschr¨anken kann.

Zun¨achst soll noch einmal zusammengetragen werden, welche Annahmen im Folgenden gelten sollen. Die Begr¨undungen hierf¨ur wurden bereits im ersten Kapitel gegeben, deshalb hier nur eine ¨Ubersicht:

Voraussetungen 2.1

• Es gelte stetsA∈Rm×n und b∈Rm.

• Die MatrixA habe vollen Rang rk(A) =m.

• Es geltem < n, m, n∈N.

• Die Komponenten des Vektorsb seien nichtnegativ:bi ≥0, i∈ {1, . . . , m}.

• Es werden Minimierungsaufgaben betrachtet.

In diesem Kapitel soll nun aufgezeigt werden, wie ein

”Basiswechsel“ konkret durchgef¨uhrt wird.

Die Nebenbedingungen (2.1) stellen m < nGleichungen dar:

a11x1+a12x2+. . .+a1nxn =b1

a21x1+a22x2+. . .+a2nxn =b2 ... ... ... ... am1x1+am2x2+. . .+amnxn=bm,

(2.2)

wobei man die Gleichungen auch vektorwertig auffassen kann:

x1¯a1+x2¯a2+. . .+xnn=

n

X

i=1

xi¯ai=b. (2.3)

Im ersten Kapitel wurde bereits diskutiert, dass es im Falle vonm < n keine eindeutige L¨osung gibt. Um b darzustellen, gen¨ugt es aus Dimensionsgr¨unden m linear unabh¨angige Spalten zu einer Linearkombination zu vereinigen. Dies hat zur Folge, dass die Koeffizienten der ¨ubrigen n−m Spalten Null gesetzt werden k¨onnen.

Oft sieht man auf den ersten Blick, welchemVektoren linear unabh¨angig sind, z. B. im Falle von Schlupfvariablen. Dann hat man m Einheitsvektoren, aus denen sich der Vektor b auf triviale Weise darstellen l¨asst. Allerdings beachtet man bei dieser Wahl der Vektoren nicht die eigentliche Minimierungsaufgabe. Im Allgemeinen nimmt der Wert der Zielfunktion f¨ur Basisvariablen einer anderen Kombination ab.

Das Simplex-Verfahren tauscht dann einen Basisvektor ¯aj, j ∈ B, durch eine andere Spalte

¯

al, l ∈ N, von A aus, die bisher noch nicht an der Darstellung von b beteiligt ist, sodass dabei insgesamt eine Reduktion der Zielfunktion garantiert wird bzw. zumindest keine Zunahme im Funktionswert auftritt. Da es sich bei dem Vorgehen um eine Bewegung von einem Basispunkt zum n¨achsten handelt, da nur ein Basisvektor ausgetauscht wird, spricht man auch von einem

”Eckenmarsch“.

31

Um dieses Vorgehen mathematisch beschreiben zu k¨onnen, m¨ussen zun¨achst noch wenige Begriffe eingef¨uhrt werden, um ¨uber die Situation sprechen zu k¨onnen.

Definition 2.2 (Zeilenstufenform)

Das Gleichungssystem (2.2) ist inZeilenstufenform(canonical form), falls es folgende Gestalt hat:

x1 +a1,m+1xm+1+. . .+a1nxn =b1

x2 +a2,m+1xm+1+. . .+a2nxn =b2

. .. ... ... ...

xm+ym,m+1xm+1+. . .+amnxn=bm.

(2.4)

♦ Bemerkung 2.3

• Nach der Definition aus Kapitel 1 erh¨alt man aus (2.4) einen trivialen Basispunkt durch x= (x1, . . . , xn)T = (b1, . . . , bm,0, . . . ,0)T ∈Rn,

das heißt, die ersten m Spalten in (2.4) definieren eine BasisB={1, . . . , m}und die rest-lichen Spalten k¨onnen jeweils als Linearkombination der Basisvektoren dargestellt werden:

¯

aj =a1j¯a1+. . .+amj¯am=

m

X

i=1

aij¯ai, j∈ {m+ 1, . . . , n}

und b=b1¯a1+. . .+bm¯am=

m

X

i=1

bi¯ai.

(2.5)

• Ist einbi, i∈ {1, . . . , m},zu Beginn negativ, so kann die zugeh¨orige Zeile mit−1 multipli-ziert werden. Allerdings ist dann in der trivialen L¨osung

x= (x1, . . . , xn)T = (b1, . . . , bm,0, . . . ,0)T ∈Rn,

die entsprechende Komponente negativ. Es liegt also kein zul¨assiger Basispunkt mehr vor.

In diesem Fall muss zun¨achst noch ein solcher gefunden werden. Dazu sp¨ater in Abschnitt 3.2.2 mehr.

• Man kann den Begriff der Zeilenstufenform erweitern, indem man auch Gleichungssysteme so bezeichnet, f¨ur die die Einheitsvektoren nicht unbedingt in den erstenmSpalten stehen, sondern auf beliebige Spalte verteilt sind. Insbesondere ist dann auch

a11x1+. . .+ a1,n−mxn−m+xn−m+1 =b1 a21x1+. . .+ a2,n−mxn−m+ xn−m+2 =b2

... ... . .. ...

am1x1+. . .+am,n−mxn−m+ xn=bm

(2.6)

in Zeilenstufenform.

32 2 Pivotisierung

Es ist m¨oglich, jedesTableauder Form

(A, b) =

auf Zeilenstufenform zu bringen, da nach Annahme eine regul¨are Teilmatrix existiert2.

Dazu bedient man sich der Methode der Gauß-Elimination, welche an dieser Stelle nicht weiter ausgef¨uhrt werden soll. Eine gute Erkl¨arung dieses Vorgehens ist in [3] Seite 14 ff zu finden.

2.1 Der Basiswechsel

Bemerkung 2.4

Bisher wurden die Spalten der Matrix A mit ¯a1, . . . ,¯an bezeichnet. Bringt man A durch die Gauß-Elimination auf Zeilenstufenform - was nach Annahme stets m¨oglich ist - so ver¨andern sich dabei nat¨urlich die Spalten und man m¨usste sie neu bezeichnen. Um aber nicht noch mehr Variablen definieren zu m¨ussen, nehmen wir nun an, dass die MatrixA bereits in Zeilenstufen-form vorliege undB dann anfangs gerade die Indices derjenigen Spalten enth¨alt, in denen einer der m Einheitsvektoren steht. Das heißt ¯aj, j ∈ B, ist jeweils ein Einheitsvektor und ¯aj, j ∈ N sind die restlichen Spalten nach der Gauß-Elimination.

Des Weiteren k¨onnen wir ein Tableau im erweiterten Sinne ohne Einschr¨ankung so sortierten, dass die Einheitsvektoren gerade in den ersten m Spalten stehen, also B = {1, . . . , m}, gilt -bedenkt man, die Variablen ebenfalls anzupassen. Um die Notation und Vorstellung zu erleich-tern wollen wir deshalb von einem Tableau wie in (2.4) ausgehen. ♦ Es soll ein Basisvektor ¯ap, p ∈ B = {1, . . . , m}, gegen einen Nicht-Basisvektor ¯aq, q ∈ N = {m+ 1, . . . , n} ausgetauscht werden. Dabei muss die lineare Unabh¨angigkeit der neuen Basis-vektoren nat¨urlich erhalten bleiben und f¨ur b und die Nicht-Basisvektoren gibt es eine neue Darstellung, d.h. das Tableau muss erneuert werden.

Definition 2.5

Wird in einem Tableau ein Basisvektor ¯ap gegen einen Nicht-Basisvektor ¯aq getauscht, so heißt der dazu in Bezug stehende Eintrag apq der Matrix A bzw. des Tableaus Pivotelement(pivot element), die p-te ZeilePivotzeile und dieq-te Spalte Pivotspalte. ♦ Wir werden schnell sehen, welche Bedeutung dieses besondere Element hat.

Damit die lineare Unabh¨angigkeit erhalten bleibt muss zum Beispiel das Pivotelement apq von Null verschieden sein.

Da ¯ap in der alten Basis ist, wird es in der Darstellung der ¨ubrigen Nichtbasisvektoren verwendet, so auch f¨ur ¯aq. Dies muss nun gewissermaßen umgekehrt werden, das heißt, ¯ap muss aus der Darstellung verschwinden und der Anteil durch ¯aq kompensiert werden.

In der alten Basis hat der Vektor ¯aq die triviale Darstellung

¯

2Ein Beweis dieser Aussage findet sich in [3] Seite 16.

2.1 Der Basiswechsel 33

da nach Annahme die m Einheitsvektoren gerade mit den Basisvektoren ¯a1, . . . ,a¯m uberein-¨ stimmen, also B={1, . . . , m} ist. Im allgemeinen Fall ist diese Darstellung nicht so trivial; der Ausdruck w¨urde um einiges komplizierter werden. Um aber nicht f¨ur Verwirrung zu sorgen, soll dies nur kurz bemerkt werden.

Obige Darstellung ist jedenfalls ¨aquivalent zu

¯

Es muss also auf jeden Fall gelten, dassapq 6= 0 ist. Andernfalls kann ¯ap nicht durch ¯aq ersetzt werden.

Verwendet man die Darstellung von ¯ap aus (2.5), so erh¨alt man

¯

Hieraus erh¨alt man dann die Koeffizientenaneuij des neuen Tableaus bez¨uglich der neuen Basis:

aneuij =aij − aiq

Sp¨ater werden wir bei der Durchf¨uhrung des Algorithmus stattaneuij die Schreibweisea(k)ij , k∈N, verwenden, wobei der Indexkdie Anzahl an Iterationen wieder gibt.

Analog erh¨alt man f¨ur den Vektorb:

bneui =bi− aiq

Man nennt dieses Vorgehen auch einen Gauß-Jordan-Eliminationsschritt3 oder Pivot-schritt. Dabei wird die Pivotzeile ¯ap durch das Pivotelement apq geteilt und daraufhin alle Elemente - außer dem Pivotelement - in der Pivotspalte eliminiert.

Anzumerken ist, dass die Basisvektoren leicht zu identifizieren sind, da sie stets einem Einheits-vektor entsprechen. Außerdem l¨asst sich festhalten, dass durch einen Pivotisierungsschritt ein

3Vgl. [3] Seite 18.

34 2 Pivotisierung

neuer Basispunkt gefunden wird, da eine Basisvariable neu ist. Das heißt aber nicht, dass dieser auch unbedingt zul¨assig sein muss, denn die Bedingungx≥0 wurde bisher außer Acht gelassen.

Aus diesem Grund muss eine Strategie gefunden werden, die sicherstellt, dass man nach einem Pivotisierungsschritt einen zul¨assigen Basispunkt erh¨alt. Das heißt, es muss herausgefunden wer-den, welche Pivotwahl genau gemacht werden soll.