Zusammenfassung
In der Analysis behandelte Optimierungsaufgaben, also die Suche nach Maxima oder Minima einer Funktion unter Nebenbedingungen, fordern die Einhaltung von Gleichheiten in Nebenbedingungen, wie etwa bei der Lagrange-Multiplikatorregel. Es ist im Allgemeinen aber deutlich praxisnäher, anstelle von Gleichungen Ungleichungen zuzulassen – dadurch werden Nebenbedingungen durch Ober- bzw. Untergrenzen vorgegeben. Die Nebenbedingungen müssen letztlich nicht notwendig ausgeschöpft werden, sie stellen bei den praktischen Aufgabenstellungen oft bestehende Kapazitäten dar.
Die Optimierungstheorie, also die Suche nach Extrema von Funktionen in mehreren Variablen unter Nebenbedingungen, die durch Gleichheits- oder Ungleichheitsrelationen gegeben sind, ist keineswegs abgeschlossen. Jedoch gibt es für die sogenannten linearen Optimierungsprobleme eine algorithmische Lösungsmethode. Dieses Simplexverfahren zur Lösung solcher Optimierungsprobleme ist der Kern dieses Kapitels.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Author information
Authors and Affiliations
Corresponding author
Appendices
Zusammenfassung
1.1 Lineare Optimierungsprobleme in Standardform lassen sich mithilfe von Matrizen und Vektoren einfach formulieren
Das lineare Optimierungsproblem in Standardform
Für \(\boldsymbol{A}=(a_{ij})\in\mathbb{R}^{m\times n}\), \(\boldsymbol{x},\,\boldsymbol{c}\in\mathbb{R}^{n}\), \(c_{0}\in\mathbb{R}\), \(\boldsymbol{b}\in\mathbb{R}^{m}\) mit \(\boldsymbol{b}\geq\mathbf{0}\) bestimme man das Maximum der Funktion
unter den Nebenbedingungen
Bei zweidimensionalen Problemen bestimmen die Nebenbedingungen und die Zielfunktion Geraden im \(\mathbb{R}^{2}\). Eine Lösung kann man grafisch bestimmen.
Wie im zweidimensionalen Fall bestimmen auch im allgemeinen Fall die Nebenbedingungen eine konvexe Menge, nämlich einen Polyeder, die Menge der zulässigen Punkte.
1.2 Die Menge der zulässigen Punkte ist ein Schnitt von Halbräumen, die durch die Nebenbedingungen bestimmt werden
Polyeder haben Ecken. Im Zweidimensionalen wird eine Ecke durch einen Schnitt von (mindestens) zwei Geraden bestimmt, d. h. durch das gleichzeitige Erfülltsein von zwei Nebenbedingungen.
1.3 Ecken im \(\mathbb{R}^{n}\) sind bei Gleichheiten von mindestens n Ungleichungen gegeben
Die Ecken der Polyeder, die durch die Nebenbedingungen eines linearen Optimierungsproblems erklärt sind, spielen eine entscheidende Rolle.
1.4 Die Optimallösung liegt in einer Ecke des Polyeders
Das nutzt man beim Simplexalgorithmus zum Auffinden optimaler Lösungen aus: Man wandert von einer Ecke zu einer benachbarten Ecke, in der der Zielfunktionswert größer ist. Das Wandern wird durch elementare Zeilenumformungen an einem Gleichungssystem realisiert. Dazu werden Schlupfvariable eingeführt.
1.5 Schlupfvariable machen aus Ungleichungen Gleichungen
Zu jeder Ecke des Polyeders eines linearen Optimierungsproblems gehört ein Simplextableau.
1.6 Die letzte Zeile des ersten Simplextableaus bilden die Koeffizienten der Zielfunktion
Zum Koordinatenursprung gehört das Tableau
Es besteht im Wesentlichen aus der erweiterten Koeffizientenmatrix, die aus den Nebenbedingungen nach Einführen der Schlupfvariablen hervorgeht, und den Koeffizienten der Zielfunktion.
Um von einer Ecke zu einer weiteren zu wandern, führt man Zeilenumformungen mit einem Pivotelement am Simplextableau durch. Bei der Wahl des Pivotelements ist die Engpassbedingung zu beachten.
Engpassbedingung
Hat man eine Spalte \(j\) gewählt, so wähle man jene Zeile \(i\), sodass der Quotient aus dem konstanten Glied \(b_{i}\) und \(a_{ij}\) positiv und minimal ist.
Am Simplextableau erkennt man, ob die beschriebene Ecke eine Optimallösung darstellt.
1.7 Sind die Koeffizienten der Zielfunktionszeile alle negativ, so befinden wir uns in der optimalen Lösung
Ist jedoch ein Eintrag im linken unteren Teil des Tableaus positiv, so kann der Zielfunktionswert vergrößert werden.
Die Regel von Bland verhindert das Zykeln des Algorithmus, das in seltenen Fällen auftritt. Zudem legt die Regel von Bland das Pivotelement fest.
Regel von Bland
Der Simplexalgorithmus endet, wenn man stets die erste mögliche Spalte und Zeile wählt.
Der folgende Algorithmus zur Lösung linearer Optimierungsprobleme in Standardform berücksichtigt die Regel von Bland.
-
1.
Erstelle das Simplextableau \(\begin{array}[]{cc|c}\boldsymbol{A}&\mathbf{E}_{m}&\boldsymbol{b}\\ \hline\boldsymbol{c}^{\mathrm{T}}&\mathbf{0}&-c_{0}\end{array}\).
-
2.
Sind alle Einträge links unten kleiner gleich null, dann STOP mit optimaler Lösung in der zugehörigen Ecke.
Sonst wähle als Pivotspalte die erste Spalte mit positivem Eintrag im linken unteren Teil.
-
3.
Sind alle anderen Einträge dieser Pivotspalte kleiner oder gleich null, so ist die Zielfunktion unbeschränkt, STOP.
Andernfalls wähle die erste mögliche Pivotzeile gemäß der Engpassbedingung.
-
4.
Führe mit dem erhaltenen Pivotelement einen Simplexschritt durch und erhalte ein neues Simplextableau.
-
5.
Gehe zum 2. Schritt.
Dieses Verfahren endet in einer optimalen Lösung, sofern eine solche existiert.
Bonusmaterial
Wir betrachteten bisher stets lineare Optimierungsprobleme in Standardform. Liegt ein lineares Optimierungsproblem jedoch nicht in Standardform vor, so kann es durch Einführen weiterer Variabler und verschiedener Umformungen auf ein Problem in Standardform zurückgeführt werden.
Wir behandeln ausführlich alle möglichen Arten von linearen Optimierungsproblemen, die nicht Standardform haben, und zeigen wie auch solche Probleme letztlich mit dem Simplexalgorithmus gelöst werden können. Zahlreiche Beispiele illustrieren die Methoden. Weiterhin sprechen wir die Dualität an: Zu jedem linearen Optimierungsproblem existiert ein duales Problem, das evtl. leichter zu lösen ist als das primäre.
Aufgaben
Die Aufgaben gliedern sich in drei Kategorien: Anhand der Verständnisfragen können Sie prüfen, ob Sie die Begriffe und zentralen Aussagen verstanden haben, mit den Rechenaufgaben üben Sie Ihre technischen Fertigkeiten und die Anwendungsprobleme geben Ihnen Gelegenheit, das Gelernte an praktischen Fragestellungen auszuprobieren.
Ein Punktesystem unterscheidet leichte Aufgaben •, mittelschwere •• und anspruchsvolle ••• Aufgaben. Lösungshinweise am Ende des Buches helfen Ihnen, falls Sie bei einer Aufgabe partout nicht weiterkommen. Dort finden Sie auch die Lösungen – betrügen Sie sich aber nicht selbst und schlagen Sie erst nach, wenn Sie selber zu einer Lösung gekommen sind. Ausführliche Lösungswege, Beweise und Abbildungen finden Sie auf der Website zum Buch.
Viel Spaß und Erfolg bei den Aufgaben!
3.1 Verständnisfragen
23.1
• Bestimmen Sie grafisch die optimale Lösung \(\boldsymbol{x}^{*}\) der Zielfunktion \(\boldsymbol{z}=\boldsymbol{c}^{\mathrm{T}}\,\boldsymbol{x}\) unter den Nebenbedingungen
mit dem Zielfunktionsvektor
-
(a)
\(\boldsymbol{c}=(3,\,-2)^{\mathrm{T}}\),
-
(b)
\(\boldsymbol{c}=(-3,\,2)^{\mathrm{T}}\).
23.2
• Bestimmen Sie grafisch die optimalen Lösungen der Zielfunktion \(\boldsymbol{z}(\boldsymbol{x})=\boldsymbol{c}^{\mathrm{T}}\,\boldsymbol{x}\) unter den Nebenbedingungen
mit dem Zielfunktionsvektor
-
(a)
\(\boldsymbol{c}=(1,\,1)^{\mathrm{T}}\),
-
(b)
\(\boldsymbol{c}=(-1,\,1)^{\mathrm{T}}\),
-
(c)
\(\boldsymbol{c}=(-1,\,-1)^{\mathrm{T}}\).
23.3
• Gegeben ist ein lineares Optimierungsproblem in Standardform
mit den Größen \(\boldsymbol{c}\in\mathbb{R}^{n},\,\boldsymbol{A}\in\mathbb{R}^{m\times n}\) und \(\boldsymbol{b}\in\mathbb{R}^{m}_{\geq 0}\). Welche der folgenden Behauptungen sind wahr? Begründen Sie jeweils Ihre Vermutung:
-
(a)
Ist der durch die Nebenbedingungen definierte Polyeder unbeschränkt, so nimmt die Zielfunktion auf dem Zulässigkeitsbereich beliebig große Werte an.
-
(b)
Eine Änderung nur des Betrages des Zielfunktionsvektors, sofern dieser nicht verschwindet, hat keine Auswirkung auf die optimale Lösung \(\boldsymbol{x}^{*}\), ebenso wenig die Addition einer Konstanten \(c_{0}\in\mathbb{R}\) zur Zielfunktion.
-
(c)
Ist \(\boldsymbol{x}^{*}\) die optimale Lösung, so ist \(a\,\boldsymbol{x}^{*}\) für ein \(a\in\mathbb{R}\backslash\{0\}\) die optimale Lösung des Problems
$$\begin{aligned}\displaystyle&\displaystyle\max\boldsymbol{z}=\boldsymbol{c}^{\mathrm{T}}\,\boldsymbol{x}\\ \displaystyle&\displaystyle\frac{1}{a}\,\boldsymbol{A}\,\boldsymbol{x}\leq\boldsymbol{b},\ \boldsymbol{x}\geq\mathbf{0}\end{aligned}$$ -
(d)
Hat das Problem zwei verschiedene optimale Lösungen, so hat es schon unendlich viele optimale Lösungen.
-
(e)
Das Problem hat höchstens endlich viele optimale Ecken.
23.4
•• Betrachten Sie im Folgenden den durch die Ungleichungen
gegebenen Polyeder.
-
(a)
Bestimmen Sie grafisch die optimale Lösung \(\boldsymbol{x}^{*}\) der Zielfunktion \(\boldsymbol{z}(\boldsymbol{x})=\boldsymbol{c}^{\mathrm{T}}\,\boldsymbol{x}\) mit dem Zielfunktionsvektor
-
\(\boldsymbol{c}=(1,\,0)^{\mathrm{T}}\),
-
\(\boldsymbol{c}=(0,\,1)^{\mathrm{T}}\).
-
-
(b)
Wie muss der Zielfunktionsvektor \(\boldsymbol{c}\in\mathbb{R}^{2}\) gewählt werden, sodass alle Punkte der Kante
$$\displaystyle\left\{\lambda\,(3,\,1)^{\mathrm{T}}+\mu\,(1,\,3)^{\mathrm{T}}\,|\,\lambda,\,\mu\in[0,\,1],\,\lambda+\mu=1\right\}$$des Polyeders zwischen den beiden Ecken \((3,\,1)^{\mathrm{T}}\) und \((1,\,3)^{\mathrm{T}}\) optimale Lösungen der Zielfunktion \(\boldsymbol{z}(\boldsymbol{x})=\boldsymbol{c}^{\mathrm{T}}\boldsymbol{x}\) sind?
23.5
•• Gegeben ist ein lineares Optimierungsproblem in Standardform
mit den Größen \(\boldsymbol{c}\in\mathbb{R}^{n},\,c_{0}\in\mathbb{R},\,\boldsymbol{A}\in\mathbb{R}^{m\times n}\) und \(\boldsymbol{b}\in\mathbb{R}^{m}_{> 0}\). Begründen Sie: Sind \(\boldsymbol{p}_{1},\,\ldots,\,\boldsymbol{p}_{r}\in\mathbb{R}^{n}\) sämtliche optimalen Ecklösungen, so bildet
die Menge aller optimalen Lösungen des linearen Optimierungsproblems.
23.6
•• Durch die fünf Ungleichungen
wird eine vierseitige Pyramide mit den Eckpunkten \((1,\,0,\,0)^{\mathrm{T}}\), \((0,\,1,\,0)^{\mathrm{T}}\), \((-1,\,0,\,0)^{\mathrm{T}}\), \((0,\,-1,\,0)^{\mathrm{T}}\), \((0,\,0,\,1)^{\mathrm{T}}\) definiert.
-
(a)
Bestimmen Sie grafisch das Maximum und die zugehörige Optimallösung der Zielfunktion \(\boldsymbol{z}=3\,x_{3}\) auf der Pyramide.
-
(b)
Bestimmen Sie eine Zielfunktion \(\boldsymbol{z}\), sodass alle Punkte der Grundfläche der Pyramide, das heißt alle Punkte der konvexen Hülle der Punkte \((1,\,0,\,0)^{\mathrm{T}},\,(0,\,1,\,0)^{\mathrm{T}},\,(-1,\,0,\,0)^{\mathrm{T}}\) und \((0,\,-1,\,0)^{\mathrm{T}}\) optimale Lösungen des zugehörigen Maximierungsproblems sind.
23.7
••• Betrachten Sie im Folgenden den durch die Ungleichungen
definierten Polyeder und die Zielfunktion \(\boldsymbol{z}=\boldsymbol{c}^{\mathrm{T}}\,\boldsymbol{x}\) mit dem zugehörigen, von den beiden Größen \(r> 0\) und \(\alpha\in[0,2\pi[\) abhängigen Zielfunktionsvektor \(\boldsymbol{c}=\boldsymbol{c}\,(r,\,\alpha)=(r\,\cos\alpha,\,r\,\sin\alpha)^{\mathrm{T}}\).
-
(a)
Bestimmen Sie grafisch die optimalen Ecken des Optimierungsproblems für \(r=1,\,\alpha=\frac{3\pi}{8}\) sowie für \(r=2\) und \(\alpha=\frac{5\pi}{8}\).
-
(b)
Bestimmen Sie die Menge aller \(r> 0\) und \(\alpha\in[0,2\pi[\), für die die Ecke \((2,\,3)^{\mathrm{T}}\) des Polyeders eine optimale Lösung des Optimierungsproblems ist. Gehen Sie dazu zunächst grafisch vor und beweisen Sie anschließend Ihre Vermutung mathematisch.
-
(c)
Die Nebenbedingungen, für die in einem Punkt eines durch Ungleichungen gegebenen Polyeders sogar Gleichheit gilt, bezeichnet man als die in diesem Punkt aktiven Nebenbedingungen. Den zu einer Ungleichung \(\boldsymbol{a}^{\mathrm{T}}\,\boldsymbol{x}\leq b\) gehörigen Vektor \(\boldsymbol{a}\) nennt man den Gradienten dieser Ungleichung.
Betrachten Sie nun den von den Gradienten der in der Ecke \((2,\,3)^{\mathrm{T}}\) des Polyeders aktiven Nebenbedingungen aufgespannten Kegel, das heißt die Menge
$$\displaystyle K=\left\{\lambda\,(1,\,1)^{\mathrm{T}}+\mu\,(-1,\,1)^{\mathrm{T}}\,|\,\lambda,\,\mu\geq 0\right\}.$$Für welche \(r> 0\) und \(\alpha\in[0,2\pi[\) gilt \(\boldsymbol{c}\,(r,\,\alpha)\in K\) ? Beweisen Sie Ihre Aussage!
23.8
••• Betrachten Sie den durch die konvexe Hülle der achten Einheitswurzeln \(\boldsymbol{p}_{k}=\left(\cos(k\frac{\pi}{4}),\,\sin(k\frac{\pi}{4})\right)\), \(k\in\{0,\,\ldots,\,7\}\) definierten Polyeder, d. h. die Menge
-
(a)
Zeichnen Sie den Polyeder.
-
(b)
Durch die beiden Größen \(r> 0\) und \(\alpha\in\mathbb{R}\) wird nun wieder ein Zielfunktionsvektor \(\boldsymbol{c}=\boldsymbol{c}\,(r,\,\alpha)=(r\,\cos\alpha,\,r\,\sin\alpha)^{\mathrm{T}}\) und die zugehörige Zielfunktion \(\boldsymbol{z}(\boldsymbol{x})=\boldsymbol{c}^{\mathrm{T}}\boldsymbol{x}\) definiert. Beschreiben Sie für jede Ecke \(\boldsymbol{p}_{k},\,k\in\{0,\,\ldots,\,7\}\) bei welcher Wahl von \(r\) und \(\alpha\) diese Ecke eine optimale Lösung des zugehörigen linearen Optimierungsproblems ist.
3.2 Rechenaufgaben
23.9
• Gesucht ist das Maximum der Funktion \(\boldsymbol{z}=x_{2}+3\,x_{3}\) unter den Nebenbedingungen
Lösen Sie dieses Problem mit dem Simplexalgorithmus.
23.10
• Bestimmen Sie mithilfe des Simplexalgorithmus das Maximum der Funktion \(\boldsymbol{z}=2\,x_{1}+2\,x_{2}+x_{3}-5\) unter den Nebenbedingungen
23.11
•• Bestimmen Sie mit dem Simplexalgorithmus die optimalen Lösungen der Zielfunktion \(\boldsymbol{z}=3\,x_{1}+6\,x_{2}-13\) unter den Nebenbedingungen
Welche der Ecken, die Sie im Laufe des Algorithmus durchlaufen sind entartet?
23.12
•• Gesucht ist das Maximum der Zielfunktion \(\boldsymbol{z}=x_{1}+\alpha\,x_{2}\) unter den Nebenbedingungen
Bestimmen Sie für alle \(\alpha,\,\beta\in\mathbb{R}\) – falls existent – sämtliche optimale Lösungen.
23.13
••• Betrachten Sie das folgende von Klee und Minty für \(n\in\mathbb{N}\) eingeführte lineare Optimierungsproblem:
-
(a)
Bestimmen Sie die optimale Lösung \(\boldsymbol{x}^{*}\) der Zielfunktion \(\boldsymbol{z}\) mithilfe des Simplexalgorithmus im Fall \(n=3\). Wählen Sie dabei als Pivotspalte stets die Spalte mit dem größten Zielfunktionskoeffizienten.
Könnte man im ersten Simplexschritt eine Pivotspalte so wählen, dass der Algorithmus schon nach diesem einen Schritt die optimale Ecke liefert?
-
(b)
Lösen Sie nun das lineare Optimierungsproblem für jedes \(n\in\mathbb{N}\).
3.3 Anwendungsprobleme
23.14
• Eine Werft mit 40 Mitarbeitern stellt die Stahlkonstruktionen für zwei unterschiedliche Yachttypen \(M_{1}\) und \(M_{2}\) her. Bei der Herstellung von \(M_{1}\) bzw. \(M_{2}\) werden je \(30\) bzw. \(20\) Tonnen Stahl verbaut, wobei \(200\) bzw. \(300\) Arbeitsstunden aufgewandt werden müssen. Es stehen jährlich maximal \(6000\) Tonnen Stahl und \(60\,000\) Arbeitsstunden zur Verfügung. Beide Stahlkonstruktionen bringen im Verkauf je \(1000\) Euro Gewinn ein.
-
(a)
Wie viele Yachten der Typen \(M_{1}\) und \(M_{2}\) sollte die Werft herstellen, um den Gewinn zu maximieren?
-
(b)
Aufgrund steigender Nachfrage kann die Werft beim Verkauf des Modells \(M_{2}\) mehr Gewinn machen. Wie hoch muss der Gewinn sein, den die Werft mit dem Verkauf von Modell \(M_{2}\) erzielt, damit der Betrieb seine Produktion umstellen sollte? Würde es sich gegebenenfalls lohnen neue Arbeitskräfte einzustellen?
Antworten der Selbstfragen
Antwort 1
Der Nullvektor.
Antwort 2
Weil diese konvex sind.
Antwort 3
Nein.
Antwort 4
Die vierte Spalte.
Rights and permissions
Copyright information
© 2018 Springer-Verlag GmbH Deutschland, ein Teil von Springer Nature
About this chapter
Cite this chapter
Arens, T., Hettlich, F., Karpfinger, C., Kockelkorn, U., Lichtenegger, K., Stachel, H. (2018). Lineare Optimierung – ideale Ausnutzung von Kapazitäten. In: Mathematik. Springer Spektrum, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-56741-8_23
Download citation
DOI: https://doi.org/10.1007/978-3-662-56741-8_23
Published:
Publisher Name: Springer Spektrum, Berlin, Heidelberg
Print ISBN: 978-3-662-56740-1
Online ISBN: 978-3-662-56741-8
eBook Packages: Life Science and Basic Disciplines (German Language)