Operations Research in der Praxis: Anwendungen, Modelle, Algorithmen und JAVA-Programme 9783486700152, 9783486580327

Dieses Buch über Operations Research verzichtet auf unnötigen mathematischen Ballast. Dafür bietet es Hinweise auf prakt

223 76 30MB

German Pages 495 [494] Year 2006

Report DMCA / Copyright

DOWNLOAD PDF FILE

Recommend Papers

Operations Research in der Praxis: Anwendungen, Modelle, Algorithmen und JAVA-Programme
 9783486700152, 9783486580327

  • 0 0 0
  • Like this paper and download? You can publish your own PDF file online for free in a few minutes! Sign Up
File loading please wait...
Citation preview

Operations Research in der Praxis

Anwendungen, Modelle, Algorithmen und JA\A-Programme

Von

Prof. Dr. Gert Heinrich und

Prof. Jürgen Grass

R.01denbourg Verlag München Wien

Bibliografische Information Der Deutschen Bibliothek Die Deutsche Bibliothek verzeichnet diese Publikation in der Deutschen

Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über abrufbar.

© 2006 Oldenbourg Wissenschaftsverlag GmbH Rosenheimer Straße 145, D-81671 München Telefon: (089) 45051-0

www.oldenbourg-wissenschaftsverlag.de

Das Werk einschließlich aller Abbildungen ist urheberrechtlich geschützt. Jede Verwertung außerhalb der Grenzen des Urheberrechtsgesetzes ist ohne Zustimmung des Verlages unzulässig und strafbar. Das gilt insbesondere für Vervielfältigungen, Übersetzungen, Mikroverfilmungen und die Einspeicherung und Bearbeitung in elektronischen Systemen.

Gedruckt auf säure- und chlorfreiem Papier Gesamtherstellung: Druckhaus „Thomas Müntzer" GmbH, Bad 3-486-58032-9 ISBN ISBN 978-3-486-58032-7

Langensalza

Vorwort wir von Studierenden an den verschiedensund Fachhochschulen und ganz besonders ten von Studierenden an den Berufsakademien in Baden-Württemberg gedrängt, ein Werk über Operations Research zu verfassen, das weniger die exakte Sicht auf die mathematischen Modelle und Zusammenhänge vermittelt, sondern den Anliegen der Praktiker gerecht wird. Gefordert wurden insbesondere

einigen Jahren werden Einrichtungen wie Universitäten

Schon seit

> Hinweise auf praktische Anwendungsmöglichkeiten, > vollständig durchgerechnete Beispiele, um die Abläufe der Algorithmen explizit vorgeführt zu bekommen, > JAVA-Programme, um erhaltene Ergebnisse zu verifizieren und um komplexe Berechnungen in vernünftiger Zeit durchzuführen und > Übungsaufgaben mit vollständigen Lösungen bzw. qualifizierten Lösungshinweisen. Diesem Wunsch sind wir mit diesem Werk nachgekommen. Auf unnötigen mathematischen Ballast wird fast vollständig verzichtet, der daran interessierte Leser möge sich der einschlägigen Literatur bedienen. In allen Kapiteln finden sich genau die geforderten Punkte, was auch der Untertitel Anwendungen, Modelle, Algorithmen und JAVA-Programme noch unterstreicht. Im einleitenden

wird zuallererst eine Vielzahl von Anwendungsbeieinen Einblick zu erhalten, was Operations Research alles spielen vorgestellt, zu leisten vermag. Die allgemeine Vorgehensweise samt der Modellbildung schließt sich an. Ein ganz einfach gehaltenes Beispiel demonstriert die vorgestellten Denkweisen. In den folgenden fünf Kapiteln werden die Teilgebiete Lineare Optimierung, Spieltheorie, Transportprobleme, Graphentheorie und Netzplantechnik ausführlich besprochen. Die vorgestellten Algorithmen werden ausführlich mit allen Iterationen an zahlreichen Beispielen vorgeführt. Jedes Kapitel enthält lauffähige JAVA-Programme, die jeder Benutzer noch seinen eigenen Bedürfnissen anpassen bzw. verbessern kann. Den Abschluß eines jeden Kapitels bilden Übungsaufgaben zum Operations Research und auch zu den JA VA-

Kapitel

um

Programmen.

VI

VORWORT

Die im Buch Autoren

abgedruckten Quellcodes aller Algorithmen können direkt ([email protected] bzw. [email protected]) angefordert werden.

bei den

Für die kritische Durchsicht des Manuskripts und das unermüdliche Korrekturlesen bedanken wir uns bei Frau Susanne Heinrich, ebenso bei Sabine und Tim Heinrich, die in akribischer Kleinarbeit alle Iterationen und Tabellen auf ihre Richtigkeit überprüft haben. Schließlich gilt unser Dank allen Studierenden für viele wertvolle Hinweise und Herrn Dipl. Wirtschaftinformatiker (BA) Kevin Stock für die Erstellung der JA VA-Programme zur Graphentheorie.

Unser besonderer Dank gilt Herrn. Dipl. Volkswirt Martin Weigert vom 01für die angenehme Zusammenarbeit und die Freiheiten, auch zeitlicher Natur, die er uns bei der Entstehung dieses Buches einräumte.

denbourg-Verlag

Für Hinweise auf Fehler und dankbar.

Verbesserungsvorschläge

Villingen-Schwenningen, im Winter 2006

sind wir

Gert Heinrich,

jedem

Leser

Jürgen Grass

Inhaltsverzeichnis 1

2

Einführung und Grundlagen.1 2

1.1

Beispiele von charakteristischen Problemstellungen

1.2

Vorgehensweise und Modellbildung.9

1.3

Teilgebiete des Operations Research .13

Lineare 2.1

Optimierung .14

Lineare

Optimierung mit zwei Variablen.14

2.1.1

Einführung, Beispiel und mathematisches Modell .14

2.1.2

Lösungsverfahren und durchgerechnetes Beispiel.15

2.1.3

Sensitivitätsanalyse .20 2.1.3.1 2.1.3.2

2.2

.

Änderung der Koeffizienten der Zielfunktion.20 Änderung der Koeffizienten auf den rechten Seiten ..21

Lineare

Optimierung mit drei und mehr Variablen.24

2.2.1

Einführung, Beispiel und mathematisches Modell

2.2.2

Lösungsverfahren und durchgerechnetes Beispiel.25

2.2.3

.24

.25

2.2.2.1

Vorüberlegungen zum Simplex-Algorithmus

2.2.2.2

Der primale

2.2.2.3

Der duale

2.2.2.4

Sonderfälle .67

Simplex-Algorithmus.31

Simplex-Algorithmus

.44

Sensitivitätsanalyse.83

INHALTSVERZEICHNIS

VIII

2.2.3.2

Änderung der Koeffizienten der Zielfunktion.83 Änderung der Koeffizienten auf den rechten Seiten ..84

2.2.3.3

Beispiele.85

2.2.3.1

2.3

3

4

JA VA-Programme.99

2.3.1

Quellcodes und Erläuterungen.99

2.3.2

Beispiele und Programmabläufe

2.4

Lineare

Optimierung mit EXCEL .117

2.5

Aufgaben.122

.114

2.5.1

Aufgaben zum Operations Research.122

2.5.2

Aufgaben zur Programmierung.127

Spieltheorie .129 3.1

Beispiel, Grundbegriffe und mathematisches Modell

3.2

Statische

3.3

Dynamische Spiele .134

3.4

Aufgaben.143

.129

Spiele .131

Transportprobleme.147 4.1

Einführung, Beispiel und mathematisches Modell.147

4.2

Lösungsmethoden und durchgerechnete Beispiele.150 4.2.1

4.2.2

Verfahren zur

Ermittlung einer Ausgangslösung.150

4.2.1.1

Die

Nordwest-Ecken-Regel

4.2.1.2

Das

Vogelsche Approximationsverfahren

.150 .153

Ermittlung der optimalen Lösung durch iterative Verfahren

161 ...

4.2.2.1

Die

4.2.2.2

Die MODI-Methode.174

4.2.2.3

Das lineare

Steppmg-Stone-Methode.161 Zuordnungsproblem .193

INHALTSVERZEICHNIS_IX 4.3

JAVA-Programme.201 4.3.1

4.3.2

4.4

5

Quellcodes und Erläuterungen.201 4.3.1.1

Stepping-Stone-Methode .201

4.3.1.2

MODI-Methode .213

Beispiele und Programmabläufe .227 4.3.2.1

Beispiele zur Stepping-Stone-Methode.227

4.3.2.2

Beispiele zur MODI-Methode.235

Aufgaben.246 4.4.1

Aufgaben zum Operations Research.246

4.4.2

Aufgaben zur Programmierung.248

Graphentheorie .249 5.1

Beispiel, Grundbegriffe und mathematische Modelle.249

5.2

Algorithmus von Dijkstra.251

5.3

FIFO-Algorithmus.256

5.4

Tripel-Algorithmus .262

5.5

JAVA-Programme.274 5.5.1 Quellcodes und Erläuterungen.274 5.5.1.1 Algorithmus von Dijkstra.274 5.5.1.2 5.5.2

5.6

Tripel-Algorithmus .302

Beispiele und Programmabläufe .313 5.5.2.1

Beispiel zum Algorithmus von Dijkstra.313

5.5.2.2

Beispiel zum Tripel-Algorithmus

.317

Aufgaben .321 5.6.1

Aufgaben zum Operations Research.321

5.6.2

Aufgaben zur Programmierung.324

X_INHALTSVERZEICHNIS

6

Aufgaben zum Algorithmus von Dijkstra

5.6.2.2

Aufgaben zum Tripel-Algorithmus.325

Netzplantechnik.326 6.1

Beispiel, Grundbegriffe und mathematisches Modell .326

6.2

Lösungsmethoden und durchgerechnete Beispiele.328

6.3

6.4

7

.324

5.6.2.1

6.2.1

Strukurplanung .328

6.2.2

Zeitplanung .329

JA VA-Programme.361

6.3.1

Quellcodes und Erläuterungen.361

6.3.2

Beispiele und Programmabläufe .375

Aufgaben.383 6.4.1

Aufgaben zum Operations Research.383

6.4.2

Aufgaben zur Programmierung.387

Lösungen der Aufgaben.388 7.1

Lösungen zu Kapitel 2 .388

7.2

Lösungen zu Kapitel 3 .409

7.3

Lösungen zu Kapitel 4 .421

7.4

Lösungen zu Kapitel 5 .442

7.5

Lösungen zu Kapitel 6 .467

Literaturverzeichnis .482 Index .483

Kapitel 1

Einführung und Grundlagen Operations Research beschäftigt sich wörtlich übersetzt mit der Erforschung von Operationen. Ein Kurzbegriff als tatsächliche Übersetzung in die deutsche Sprache hat sich jedoch nicht durchgesetzt. Vorgeschlagen wurden hier Anwendung quantitativer Methoden zur Vorbereitung optimaler Entscheidungen, Unternehmensforschung, Optimalplanung, Planungsforschung, mathematische Planungsrechnung oder Entscheidungsvorbereitung. Die wohl beste Beschreibung, aber viel zu lange Umschreibung ist: Mathematische Optimierungsmethoden zur bestmöglichen Entscheidungsfindung in der angewandten Betriebswirtschaftslehre.

Einschränkung auf die BWL ist keine wirkliche Schmälerung des Einsatzgebiets, nahezu alle derart betrachteten Optimierungsmodelle haben eine ökonomische Komponente oder Zielsetzung. Die scheinbare

In der Praxis hat sich die In den

Abkürzung OR für Operations Research durchgesetzt.

folgenden drei Abschnitten werden zuerst Beispiele von charakteristischen Problemstellungen dargestellt. Danach werden die allgemeine Vorgehensweise und die Modellbildung aufgezeigt. Zum Schluss erfolgt eine Klassifizierung der Teilgebiete des Operations Research.

Kapitel

2

1.1

Grundlagen

Beispiele von charakteristischen Problemstellungen

In diesem Abschnitt werden zahlreiche

den des

1: Einführung und

Operations

Praxisbeispiele vorgestellt, die mit Methogelöst werden können.

Research beschrieben, modelliert und

Die Beispiele 1.1 bis 1.5 stellen Optimierungsprobleme dar, die allesamt die gleichen Sachverhalte beinhalten. Gesucht ist das Minimum bzw. das Maximum einer zu erstellenden Funktion, deren Wertebereich durch eine gewisse Anzahl von Bedingungen oder Restriktionen eingeschränkt wird.

Beispiel 1.1 Für eine Verkaufsaktion stellt eine Firma zwei verschiedene neue Produkte X und Y her. Aus Platzgründen können von beiden Produkten zusammen höchstens 500 Stück hergestellt werden, wobei von Produkt Y mindestens 100 Stück erforderlich sind. Für die Fertigung stehen insgesamt 40 Stunden zur Verfügung, wobei fur Produkt X (pro Stück) 8 Minuten und für Produkt Y (pro Stück) 4 Minuten benötigt werden. Der Gewinn beim Verkauf eines Produktes X beträgt 50 €, derjenige beim Verkaufeines Produktes Y beträgt 10 €. Die Firma möchte ihren Gesamtgewinn maximieren.

Beispiel 1.2 Ein Industrieunternehmen stellt ein Produkt, bedingt durch den immer moderner werdenden Maschinenpark, durch drei verschiedene Verfahren X, Y und Z her. Der Produktionsprozess ist durch folgende Tabelle gegeben:

Produktion nach Verfahren X

Rohstoffe

10

Produktionszeit

Lagerraum

10 15

Rohstoffbedarf in kg

10 10

Produktionszeit in h

10

Lagerraum in m

Er unterliegt den folgenden Kapazitätsbeschränkungen: Die maximal verfügbare Einsatzmenge für die Rohstoffe ist 600 kg Die maximal verfügbare Einsatzmenge für die Produktionszeit ist 400 h Die maximal verfügbare Einsatzmenge für den Lagerraum ist 800

Der Gewinn beim Verkauf eines Produktes bei der Produktion nach Verfahren X beträgt 30 €, derjenige beim Verkauf eines Produktes bei der Produktion nach

Kapitel

1: Einführung und Grundlagen

3

Verfahren Y beträgt 40 und derjenige beim Verkauf eines Produktes bei der Produktion nach Verfahren Z beträgt 30 €. Die Firma möchte ihren Gesamtgewinn maximieren.

Beispiel 1.3 Eine Fußballmannschaft besitzt unter anderem 6 Spitzenspieler. Da der Verein massiv verschuldet ist und der Lizenzentzug droht, sollen Spieler im Gesamtwert von 90000000 € verkauft werden. Die Spieler haben folgende Marktwerte in Mio. €: 40, 10, 30, 30, 15, 20. Im Zuge des Verkaufs erleidet der Verein aber Zuschauerverluste, die von den einzelnen Spielern abhängen (in der Reihenfolge der Marktwerte): 5000, 3000, 6000, 4500, 6000 bzw. 5000 Zuschauer. Minimieren Sie den Schaden unter Einhaltung des Mindesterlöses, d.h. welche Spieler müssen verkauft werden, damit der Verein seine Schulden begleichen kann und gleichzeitig möglichst wenig Zuschauer verliert?

Beispiel 1.4 Dem Eishockey-Club aus Schwenningen stehen drei Varianten für seine Verteidigung zur Verfügung. Die gegnerische Mannschaft aus Freiburg verfügt über drei verschiedene Angriffsformationen. Die Erfolgsaussichten für Schwenningen (WK, dass kein Tor fällt) sind in folgender Tabelle zusammengestellt:

Strategien für Freiburg 7

i

Strategien für Schwenningen

i

=

=

=

2

7

=

3

\

0.6

0.2

0.3

2

0.7

0.6

0.4

0.

0.7

0.2

i=3

Jede der beiden Mannschaften ist bestrebt, ihren Mindestvorteil bzw. den maximal möglichen Vorteil des Gegners zu minimieren.

zu

maximieren

Beispiel 1.5 Am Vatertag werden die Wanderer durch ein Gewitter überrascht und suchen deshalb in den nahegelegenen Ausflugslokalen Schutz. In den vier Lokalen ist aber nicht genügend Bier vorhanden. Dieses wird unverzüglich bei der zuständigen Brauerei angefordert, die über drei verschiedene Auslieferungslager verfügt, in denen insgesamt die gewünschte Menge zur Verfügung steht. Die vier Lokale /V",,

und

7V4 benötigen 10 hl bzw. 30 hl bzw. 15 hl bzw. 35 hl. Diese Gesteht in den drei Auslieferungslagern Ax A2 und A3 in folgender samtmenge Weise zur Verfügung: in A\ 25 hl, in A2 25 hl und in A3 40 hl. N2, N3

,

1: Einführung und Grundlagen

Kapitel Die gen

Transportkosten pro hl von den einzelnen Auslieferungslagern zu den jeweiliAusflugslokalen betragen Ausflugslokal Nachfrager =

N, A4) .2

10

1 ä4J 0»



«i

'S

80

90 30

Wie ist der Transport lich ausfallen?

60

40

70

50

70

80

10

durchzuführen, damit die Transportkosten so klein wie mög-

Die Beispiele 1.6 bis 1.10 zeigen Aufgabenstellungen, die alle verwandt sind mit dem hochaktuellen Problem der Routenplanung. Gesucht sind hier kürzeste Wege in einem Graphen, einem Straßenzug, einem Versorgungsnetz oder ähnlichem.

Beispiel 1.6 Im Rahmen einer Werbekampagne können bis zu 5 unterschiedliche Projekte durchgeführt werden. Die Projektkosten und der Werbeerfolg sind in folgender Tabelle angegeben:

Projekt Nummer

Der Werbeetat

beträgt

Projekt-

kosten

(in €)

Werbeerfolg

(in Personen)

17000

12000

16000

15000

19000

10000

8000

13000

12000

9000

38000 €. Wie ist dieser Etat auf die einzelnen

verteilen, damit der Werbeerfolg maximal wird,

durchgeführt werden kann?

wenn

jedes Projekt

Projekte

zu

genau einmal

Beispiel 1.7 Ein Unternehmen möchte im Zuge von Personalbeschaffungsmaßnahmen 4 Anin einschlägigen Zeitungen schalten. Dabei können die Anzeigen alle in einer der 4 Zeitungen erscheinen oder sie können auch auf die verschiedenen

zeigen

Kapitel

1: Einführung und Grundlagen

verteilt werden. Aufgrund von Aufzeichnungen über vergangene Maßbekannt, wie viele Bewerbungen bei ein- bzw. mehrmaligem ErscheiStellenanzeigen in den verschiedenen Zeitungen zu erwarten sind.

Zeitungen

nahmen ist nen von

Zeitungsname Zeit

05 N

Welt

FAZ

SZ

0

0

50

44

28

34

77

63

48

47

84

76

92

93

=

M

'3 N

e


Bargeld abheben (Bearbeitungsdauer im Mittel 2 Minuten) > Bargeld einzahlen (Bearbeitungsdauer im Mittel 3 Minuten) > Überweisungen aufgeben (Bearbeitungsdauer im Mittel 4 Minuten) > Anlageberatung (Bearbeitungsdauer im Mittel 20 Minuten) > Beantragen einer Kreditkarte (Bearbeitungsdauer im Mittel 5 Minuten). Statistische Erhebungen haben ergeben, dass etwa 20% aller Kunden Bargeld abheben, etwa 5% aller Kunden Bargeld einzahlen, etwa 10% aller Kunden Überweisungen aufgeben, etwa 40% aller Kunden Anlageberatung wünschen und etwa 25% aller Kunden eine Kreditkarte beantragen wollen. Weitere Beobachtungen haben ergeben, dass die Ankunftszeiten der einzelnen Kunden (stochastisch) voneinander unabhängig sind. Befanden sich mehr als 5 Personen in der Schlange vor dem Schalter, verließen die neu eingetroffenen Kun-

den ausnahmslos die Bank wieder und nahmen den Service zu einem späteren Zeitpunkt in Anspruch. Wie viele Kunden befanden sich im Durchschnitt in der Schlange vor dem Schalter und wie lange war die durchschnittliche Wartezeit eines Kunden, bis er bedient werden konnte?

Die Suche nach Lösungen zu den Fragestellungen der angeführten Beispiele führt auf ein allgemeines Vorgehensmodell, das im nächsten Abschnitt vorgestellt wird.

Kapitel

1: Einführung und

1.2

Vorgehensweise und Modellbildung

In der Praxis hat sich ein bild dargestellt ist.

Grundlagen

Vorgehensmodell durchgesetzt, das im folgenden Schau-

Vorgehensmodell bei OR-Verfahren Erkennen eines Problems

Formulieren BWL

Probte mformuiierung

Bestimmen von Zielen und Han d 1 ungs mö gl ic like i ten

Problemstellung fehlerhaft

Abstraktion Mathematisches Modell

Mathematik Mathematik exakte

4

Lösung für das Modell

Simulationen erforderlich

Informatik

Funktionen,

usw.

Modell fehlerhaft

Berechnung

Berechnung möglich

Berechnung langwierig Näherungslösung erforderlich exakte

Formeln

Interpretation

Datenbeschaffung Prognosedaten Simulationsdaten Daten fehlerhaft

Verifizieren des BWL

Lösungsvorschlags

für das reale Problem

Lösung akzeptiert

Bewertung der Lösung im Hinblick auf das gestellte Problem

Realisieren der

Lösung

Ersichtlich ist hier das notwendige Zusammenspiel der Disziplinen BWL, Mathematik und Informatik. Sollte beim Ablauf festgestellt werden, dass die gestellte Aufgabe nicht erfüllt werden kann, bricht das Verfahren an der entsprechenden Stelle ab. Wie mit diesem Vorgehensmodells Problemstellungen gelöst werden, wird an einem ganz einfachen Beispiel gezeigt. Für das Beispiel sind keine OR-Kenntnisse

erforderlich.

Dazu wird das

Beispiel 1.6 verwendet: Im Rahmen einer Werbekampagne können bis zu 5 unterschiedliche Projekte durchgeführt werden. Die Projektkosten und der Werbeerfolg sind in folgender Tabelle angegeben:

10

Kapitel

Projekt Nummer

Projekt-

Werbeerfolg (in Personen)

17000

12000

16000

15000

19000

10000

8000

13000

12000

9000

kosten

1

1: Einführung und Grundlagen

(in €)

beträgt 38000 €. Wie ist dieser Etat auf die einzelnen Projekte zu damit der Werbeerfolg maximal wird, wenn jedes Projekt genau einmal verteilen, werden kann? durchgeführt Der Werbeetat

1. Schritt: Erkennen des Problems:

Die Geschäftsleitung eines Unternehmens hat festgestellt, dass die Anzahl der Kunden erhöht werden muss. Es erfolgt der Auftrag an die Marketingabteilung, Vorschläge dazu zu entwickeln. 2. Schritt: Problemformulierung:

Problem: Ziel:

Handlungsmöglichkeiten:

Das Unternehmen hat zu wenig aktive Kunden. Erhöhung der Kundenanzahl. Es dürfen verschiedene Projekte durchgeführt werden, deren Kosten fest stehen und deren Erfolg durch eine Kennzahl gemessen werden kann. Außerdem steht ein

gewisses Budget zu Verfügung. 3. Schritt: Mathematisches Modell:

Gegeben seien: verschiedene

Projekte Pt, P2,Pn kj,\ 350 250 =>

Z>,

62

200

=>

=

e

500

x,

=

600-6,

=

150, bx

6, 500, b3 =

=

=

oo

=

200

\

und

.

2400

E2 bleibt der Extremwert, falls die Gerade x2 der Strecke zwischen der Nullstelle von x2 det.

100

Optimierung

.

[350, ) oder bx~

variabel und

Lineare

500

die Gerade x2 600 2x, auf 600-2x, und P(\00, 400) schnei=

b2

=

-

23

Kapitel 2: Lineare Optimierung

gilt:

0

Damit ist

b2

Also

3. Fall:

b3




Vertauschen der beiden Variablen und Ersetzen des Pivotelements durch seinen Kehrwert

>

Multiplikation der alten Pivotzeile mit und der alten Pivotspalte mit Ersetzen der restlichen Spalten durch folgende Inhalte:

>

^

-

^

.

60 (

Kapitel 2: Lineare Optimierung 43/3 4/3 13/3

7 9

0

v-38/3 '

14/3 4/3

0

0

0

'

45/2

'-49/6

'5/6'

9

3

-1/3

9/2

-1/6

0

0

' 45/2

500 3

-4230

19

6

45/2 ^

(

'

1

3

1/3

9/2

0

0

0

v-35/2

-4/9

1

+—

9

'

45/2 3 9/2

^

/

5/6

'

1/3

-1/6 und

1

0

1

-1/6

-35/2

-1/6

1080

3

400

9/2

60

0

1080

v-35/2

-3940/3

Damit lautet das vierte

'

1/3 -1/6 -0-

-35/2J t 55/18 ~

1080

-1/2 3/2

-20/3 4830 900 810

5/6 V 17/18

5

0

-1

9/2

'-19/6^

v-35/2 7 '

7/3

3

["-3/2' 0

' 45/2 ^

'

Simplex-Tableau: 49 6

1080 400 500

3 60

1080 17 18

55

35

18

18

Aus diesem Tableau werden der

neue

3940

Punkt und der Wert der Zielfunktion abgele-

sen:

£4(0, 400, 0, 500/3, 60) und Da

es

in der letzten Zeile noch

3940 z

= •

negative Einträge gibt, geht das Verfahren weiter.

Kapitel 2: Lineare Optimierung 4. Iteration:

61

Bestimmung des fünften Simplex-Tableaus

Die Ausführungen sind hier nicht so ausführlich wie in der ersten Iteration.

Bestimmung des Pivotelements

Schritt 1:

]9

49

6

6

1080 400 500 3 60

1080 17 18

der

Bestimmung

55

35

18

18

Pivotspalte:

-—

3940

ist der kleinste

negative Eintrag

in der letzten

Zeile.

Bestimmung der Pivotzeile:

i9-?P-

=

1080

1200,

,

Also steht das Pivotelement in der ersten Zeile und in der zweiten Schritt 2: > > > '

Erstellen des

neuen

Spalte.

Tableaus

Vertauschen der beiden Variablen und Ersetzen des Pivotelements durch seinen Kehrwert Multiplikation der alten Pivotzeile mit 1 und der alten Pivotspalte mit -1. Ersetzen der restlichen Spalten durch folgende Inhalte: ( 1/3

-1

7/9 5/6

+

19 6

-1/9

^

1/18 ^ 23/54

-1/3 ^| 5/9

0

5/6

-1/6

0

0

0

v-4/9

-25/54

v55/18y

r 49

i/3 ^ -1/9

f

43/18 ^ -19/54

0

-1/6

0 -4/9

0



0

17/18

-31/54

62

Kapitel 2: Lineare Optimierung

f-1/3^1

(

1/9

1/3 -1/9

-1/2

0

0

0

35/18

-4/9

400

r

500/3

(

'

' '

-1/6 -1/2 0 5/6 V

1/3

^

1/3 > 0

-1/6

1

0

1

-1/6

-4/9

11/54

0

60

1080

0

1080

-3940/3

-4/9,

-2500/3

19 6 18 23 54

1/18 ^ 5/54

0

40 860/3

Damit lautet das fünfte

1/3 ^ -1/9

-1/6

-1/9 1080

60

1/2

und

Simplex-Tableau: 49 6 43 18

18

1_9

_5_

1080

54

54

40

860 3 60

1080 25 54

31_

2500

54

54

Aus diesem Tableau werden der neue Punkt und der Wert der Zielfunktion

abgele-

sen:

£5(0,40,0,860/3,60) und Da

es

in der letzten Zeile noch

5. Iteration:

Die

2500 z

= -

negative Einträge gibt, geht das Verfahren weiter.

Bestimmung des sechsten Simplex-Tableaus

Ausführungen sind hier nicht so ausführlich wie in der ersten Iteration.

63

Kapitel 2: Lineare Optimierung Bestimmung des Pivotelements

Schritt 1:

19

49 6 43

6

J_

40

_5_

860

54

54

_J_

_J_

_J_

60

~

"

1 9

54

_5

18

6 0

6

1080

6

18 19

3 23

5_

0

6

1

~25

1080 2500

n_

54

54

Bestimmung der Pivotspalte:

54 31

ist der kleinste

-—

negative Eintrag in der letzten

Zeile. 40

Bestimmung der Pivotzeile:

43/18

Also steht das Pivotelement in der zweiten Zeile und in der dritten Schritt 2:

Erstellen des

neuen

Spalte.

Tableaus

>

Vertauschen der beiden Variablen und Ersetzen des Pivotelements durch seinen Kehrwert

>

Multiplikation 18 43

>

der alten Pivotzeile mit

( -19/6 ^ 0

Pivotspalte

Spalten durch folgende Inhalte:

'-49/6^ '-128/43"! (

23/54

-25/54

und der alten

'

Ersetzen der restlichen

5/6

18 —

43

1

-19/54

56/129

1/9

-1/6

36/43

0

0

0

0

-31/54

-58/129

4/9

'-49/6^ '-6/43^

x

-19/54 43

-1/6

8/129 -1/43

0

0

-31/54

47/129,

mit

Kapitel 2: Lineare Optimierung

64

'-49/61 f-34/43A r

'-5/2^ -1/6 -1/2

_9_ 43

0

5/6

-19/54 -1/6

-20/43

0

0

1

-31/54,

41/43

11/54

-4/43

'-49/6^

1080

860/3

720 43

60

1080

-19/54 -1/6 0

-31/54

-2500/3

Damit lautet das sechste

147

43

43

34 43

J_

_6_

11

_9_

58 129

43 19

129

129

J_

_3_

43 0

43 0

47

129

43

-19/54 -1/6

13/129

0

1

-31/54

28/129

-7/43

und

Simplex-Tableau:

_6_ 43

-49/6A '44/43^

52320/43 ^ 12580/43 2700/43 1080 -35420/43

128 43 43 56 129 36 43 0

5/6 ^ 5/54 -1/6

31 129

Aus diesem Tableau werden der

43 43

43

4_ 43 20 43

13 129

1_ 43 1 28 129

44

43 neue

44

52320 43 720 43 12580 43 2.700 43 1080

35420 43

Punkt und der Wert der Zielfunktion abgele-

sen:

£6(0,0,720/43,12580/43,2700/43) und Da es in der letzten Zeile noch einen weiter.

6. Iteration: Die

z=-

35420 43

negativen Eintrag gibt, geht

das Verfahren

Bestimmung des siebenten Simplex-Tableaus

Ausführungen sind hier nicht so ausführlich wie in der ersten Iteration.

65

Kapitel 2: Lineare Optimierung Schritt 1:

Bestimmung des Pivotelements __]_

A2

128

__6_

43

43

147 43

J_

__6_

Ii

"

43 8 129

43 56 129 36 43 0

44 43

_9_

J_

43

43 19 129

_4_

3_

J_

43 0

43 0

58 129

34 43

_

47

31

129

129

Bestimmung der Pivotspalte:

_

43 13

43 20 43 0

129

41 43

28 129

58 -

J7_ 43 1

52320 43 720 43 12580 43 2700 43 1.080 35420 43

ist der einzige negative

Eintrag in der letzten

Zeile.

Bestimmung der Pivotzeile: 720/43

1/43

=720,

12580/43 56/129

=

673.9,

2.700/43 36/43

=

75

Also steht das Pivotelement in der vierten Zeile und in der ersten Spalte. Erstellen des

Schritt 2:

neuen

Tableaus

>

Vertauschen der beiden Variablen und Ersetzen des Pivotelements durch seinen Kehrwert 43 und der alten Pivotspalte mit Multiplikation der alten Pivotzeile mit

>

36 Ersetzen der restlichen

>



43 ' _

(-128/43"! f-2/9} (147/43"!

'-6/43 "| -6/43 8/129 0

47/129

Spalten durch folgende Inhalte:

J_ 36

1/43 56/129

-5/36 2/27

18/43 19/129

0

0

0

-58/129

19/54

31/129

12

(-128/43"»

f 11/3"1

1/43

5/12

56/129

1/9

0

0

-58/129

5/18

66

Kapitel 2: Lineare Optimierung -22/9^

'-128/431

-34/43A

1/43

2/9

1/43

-4/43

56/129 0 -58/129

4/27

13/129

0

1

0

41/43

'52320/43A und

1440

1/43 56/129

15 260

1.080

0

35420/43

-58/129

1080 -790

Damit lautet das siebente

32 9

_5_ 36

Ii

_2_

27 43

36

22 9

3

36

12

5/27

1/36

0

1

-58/129

7/54

1440

36

27

36

1/43 56/129

Simplex-Tableau: n

J_

36

28/129

19/27j

(-128/43'

720/43 12580/43 -75

-128/43A ( 4/9^

44/43^

9/43

_4_

_5_

27

27

3_

1_

36

36

15

260 75

1080 29 54

11

_5_

11

54

18

27

1_ 54

-790

Aus diesem Tableau werden der neue Punkt und der Wert der Zielfunktion

abgele-

sen:

£ 7(75,0,15,260,0) und

z

=

790.

Da es in der letzten Zeile keine negativen beendet und der optimale Punkt gefunden.

Einträge mehr gibt,

ist das Verfahren

67

Kapitel 2: Lineare Optimierung 2.2.2.4 Sonderfälle Abschließend werden noch einige Sonderfälle besprochen: > > >

Das Minimum existiert, das Maximum dagegen nicht. Der zulässige Bereich ist leer. Es existieren Gleichungen im Ungleichungssystem.

Beispiele zu Sonderfällen: 1. Sonderfall: Das Minimum

Beispiel

Beispiel

2.4: Gegeben sei die folgende Aufgabenstellung (etwas 2.2 aus dem Abschnitt zum primalen Simplex-Algorithmus:

10x2 5 x3 5x, +10x2 + 10x3

10 x,

existiert, das Maximum dagegen nicht.

+

>

600

>

400

abgeändertes

15 x, + 5x7 A3 1.000 \-2 +10x, + 40 z 30 x, x, c2 + 30 x3 min >

T" I V

=

=

.

Aufstellen des ersten

-10

Simplex-Tableaus:

-600

-10 -10

-10

-400

-15

-5

-10

-1000

30

40

30

0

Der zulässige Bereich ist noch nicht erreicht. 1. Iteration:

Bestimmung des zweiten Simplex-Tableaus:

20

15

1400

25

10

1600 200

-90

-50

-8000

Der zulässige Bereich ist erreicht mit dem Eckpunkt Die optimale Lösung ist noch nicht gefunden.

£2(0, 200, O) und

z

=

8000.

Kapitel 2: Lineare Optimierung

68 2. Iteration:

Bestimmung des dritten Simplex-Tableaus: 2 5

_4 5

_

J_

120

2_

_2_

25

25

"

J_

3_

25

25 4

-2240

-14

5 Man hat den Eckpunkt £3 ist noch nicht gefunden.

3. Iteration:

64

5 4 5

(64, 8, O) und

10

_3_ 20

Jetzt soll für die

J_

10

20

10x2 + 5x3 5x, + 10x2 +10x3 15 x, + 5x2 +10x3 +

40 x2

-2100

£4(60, 0, IO)

und

z

=

2100 erhalten. Die

optimale

gleiche Aufgabenstellung das Maximum gefunden werden:

+

30 x,

optimale Lösung

60

10

Man hat den Eckpunkt sung ist gefunden.

=

2240 erhalten. Die

50

35 2

z

=

Bestimmung des vierten Simplex-Tableaus: 35 4

10 x,

z

+

>

600

>

400

>

1.000

30 x3

=

max .

Lö-

69

Kapitel 2: Lineare Optimierung_ Aufstellen des

Simplex-Tableaus:

ersten

-600

-10

-10

-10

-10

-400

-15

-5

-10

-1000

-30

-40

-30

0

1. Iteration:

Bestimmung des zweiten Simplex-Tableaus: 20 3 25 3

20 3

-30

-10

15 -2

200 3 200 3 200 3 2000

P2(200/3, 0, O)

Man hat den Punkt reich ist noch nicht erreicht.

2. Iteration:

4

"

J_

_

3_ Der z

=

2

J_

4

4

4

J_ 10

35

5_

20

_

z

=

-2000 erhalten. Der

Be-

"

_3_ 20

"

J_

J_

2 35 2

10

3_ _

2

50 10

60 2100

Bereich ist erreicht mit dem Eckpunkt -2100 Die optimale Lösung ist noch nicht gefunden.

zulässige .

zulässige

Bestimmung des dritten Simplex-Tableaus:

3_ _

und

/^(öO, 0,10)

und

Kapitel 2: Lineare Optimierung

Til 3. Iteration:

_

Bestimmung des vierten Simplex-Tableaus:

2

_4

5

5

J_

4

25

5

25

__2_

2_

J_

"

25

_3_

5

_4

14

5

120

64

25 18 5

2240

_

(64, 8, O)

Man hat den Eckpunkt £3 sung ist noch nicht gefunden. 4. Iteration:

und

z

=

-2240 erhalten. Die

optimale

Lö-

Bestimmung des fünften Simplex-Tableaus:

15

20

1400 200

-2

10

25

1600

50

90

8000

£4(0,200,0)

und z =-8000 erhalten. Die optimale Man hat den Eckpunkt Lösung ist noch nicht gefunden. Das Verfahren bricht ab, da in der ersten Spalte der Wert in der letzten Zeile negativ ist und es keine positiven Spalteneinträge gibt. Folglich ist der zulässige Bereich unbeschränkt und es existiert kein Maximum.

2. Sonderfall: Der

zulässige Bereich ist leer.

Gegeben sei die folgende Aufgabenstellung (nochmals etwas abgeändertes Beispiel 2.2 aus dem Abschnitt zum primalen Simplex-Algorithmus): Beispiel

2.5:

10x, +\0x2 + 5x3> 600 5x, +\0x2 +IOX3 < 300 15 x, + 5x2 +\0x3 >1000 z

=

30 x,

+

40 x2

+

30 x3

=

min .

71

Kapitel 2: Lineare Optimierung_ Aufstellen des ersten

-10

Simplex-Tableaus:

-10

-600

10

10

300

-15

-5

-10

-1000

30

40

30

0

1. Iteration:

Bestimmung des zweiten Simplex-Tableaus:

20

15

1400

-25

-10

-1700 200

-90

-50

Man hat den Punkt P2 ist noch nicht erreicht.

2. Iteration:

-8000

(0, 200, 0) und

z

=

8000 erhalten. Der zulässige Bereich

Bestimmung des dritten Simplex-Tableaus:

40

_2_ 25

2_ 25

68

25

_L

25 -1880

-14

5

(68,

O)

Man hat den Punkt P3 4, und z 1880 erhalten. Das Verfahren bricht ab, da in der dritten Zeile der Wert in der letzten Spalte negativ ist und es keine negativen Spalteneinträge gibt. Somit stellt die dritte Zeile einen Widerspruch dar. Folglich ist der zulässige Bereich leer und es existiert kein Minimum. -

=

Kapitel 2: Lineare Optimierung

72

3. Sonderfall: Es existieren

Gleichungen im Ungleichungssystem.

Beinhaltet das lineare Ungleichungssystem auch Gleichungen, so muss der Simplex-Algorithmus angepasst werden. Ähnlich wie beim dualen SimplexAlgorithmus erfolgt anfangs die Auswahl des Pivotelements auf andere Weise:

Simplex-Algorithmus mit Gleichungen Das erste Simplex-Tableau wird wie bisher aufgestellt und die Gleichungen werden direkt übertragen. Alle Basis- bzw. Schlupfvariablen z, e IRq 1 < i < m die zu Gleichungen gehören, werden markiert. ,

,

Der Schritt 1 des dualen Simplex-Algorithmus wird nun abgeändert. Es müssen alle markierten Variablen aus der Basis entfernt werden, da diese ja alle gleich 0 sein müssen! Dies geschieht hintereinander in beliebiger Rei-

henfolge.

Schritt 1: Suche des Pivot-Elements Es wird eine beliebige markierte Basisvariable ausgewählt. Diese bestimmt die Pivotzeile. Als Pivotspalte wird eine Spalte gewählt, in der keine markierte Variable steht und das sich dann ergebende Pivotelement von 0 verschieden ist. Diese Vorschleife wird solange durchgeführt, bis alle markierten Variablen aus der Basis entfernt wurden. Dann geht der Algorithmus in den dualen Simplex-Algorithmus über. Markierte Variablen dürfen dabei nicht wieder getauscht werden. Die

Abbruchbedingung muss noch angepasst werden: in der letzten Zeile (ohne den Wert der Zielmarkierten Variablen gehören, positiv, so zu die nicht funktion), ist das Verfahren beendet. Einträge zu markierten Variablen können durchaus noch negativ sein!

Abbruch: Sind alle

Einträge

Kapitel 2: Lineare Optimierung

73

Beispiel zum Simplex-Algorithmus mit Gleichungen Gegeben sei das folgende Beispiel 2.6: 10 x,

+20x2 +40x3 +20x4

20 x,

+

40 x2

+

20 x,

+

20 x2

+

20 a:, 5 x,

+

40x2 60x3 20x4 40x5 50x6

+

20 x2

z

=

30 x3 20 x3

+ +

+

20 x,

+

+

40 x3

30 x4 30 x4

+

10 x5

+40x6

+

10 x5

+

20 x6

=

+

10 x6

=

+ 20 x5

+

+

=1000


800 50 x2 + 30 x3 + 40 x4 + 40 x5 + 30 x6 min +

+

=

Um das erste Simplex-Tableau aufzustellen, muss die > -Ungleichung umgeformt werden. Außerdem werden alle Gleichungen direkt übernommen und die zugehö-

rigen Variablen markiert: zxmar, z^ar, z3mar. Aufstellen des ersten

Simplex-Tableaus:

20

40

20

40

30

20

20

-20 50

10 20 20 20

40

20

1. Iteration:

40

1000

30

10 10

20

1200

30

20

10

800

60 -40

20

40

50

1800

-30

-20

-20

-800

30

40

40

30

Bestimmung des zweiten Simplex-Tableaus

Es werden die markierte Variable z"mr und x, vertauscht. Die exakten Berechnungen werden hier nicht angegeben. Es wird nur noch das Pivotelement markiert.

1

100

10 -2 -2

-50

-10

-60

-20 -10

-20

10

-50

-20

-10

-60

-800

-10

-70

-1200

-20

20

-30

-200

-20

-15 20

-300 -50

-2000

Kapitel 2: Lineare Optimierung

74

o)

P2(l00,

Man hat den Punkt 0, 0, 0, 0, und z = 2000 erhalten. Es sind noch in markierte Variablen der Basis. Der zulässige Bereich ist noch nicht erreicht. 2. Iteration:

Bestimmung des dritten Simplex-Tableaus

Es werden die markierte Variable z™' und x4 vertauscht.

2_

-60

-1

10

80

10 -20

mar

-2

-10

-1

10

-10

-400

80

-2

40

90

1400

120

1300

-50

-2000

-10

80

10

-50

20

0

P3(-

O)

Man hat den Punkt 60, 0, 0, 80, 0, und z 2.000 erhalten. Es sind noch markierte Variablen in der Basis. Der zulässige Bereich ist noch nicht erreicht. 3. Iteration:

=

Bestimmung des vierten Simplex-Tableaus

Es werden die markierte Variable z™r und x3 vertauscht.

_3_ 10 1 5

~4

14

_3

4

5

5

-10

J_

_3

J_

J_

10

-160

10 -10

120

10

-1800

-170

-10

85

40

-1900

110

2

180

-7

-120

5

40

-1

-30

Kapitel 2: Lineare Optimierung_75 Man hat den Punkt

P4 (l 80, 0, 40, -120, 0, O)

und

Variablen sind reicht.

der Basis entfernt. Der

zulässige

Der

aus

z

=

0 erhalten. Alle markierten Bereich ist noch nicht er-

Algorithmus geht jetzt in den dualen Simplex-Algorithmus über. Bestimmung des fünften Simplex-Tableaus:

4. Iteration:

mar

mar

z3

z2

1_

_6_

1_

85 11 170 9

85

170 38 17 9

85 16 17 1

4_

340

170

85

3_[

JT

2_

34

17

17

17

17

85

34

85 3 170 10 17

1

170 17

40

22 17 23 17 25

400 17 140 17 300

17

17

470 17

200 17 190 17

_4_ 17

25 17

(400

17

440 17

25

Der zulässige

140 190 300 17 17 17 17 Bereich ist noch nicht erreicht.

5. Iteration:

Bestimmung des sechsten Simplex-Tableaus:

Man hat den Punkt Pr

'

'

'

20900 17 20900

0,0 und

17

erhalten.

.

235 21 470 31 470 19 235 7 940 111 94

9 235 3 235 9

235 8

235 1 470

_

19 235 3 470 9 470 4

235 12 235

n_

29

47

47

"

12 235 4

235 23 470

J_ 47

J_ 47

95 47

11

47 45 47 100

_

47

68 47 79 94 2935 47

235 23 470

j>_ 94 17

~470 2

235 44 47

1080 47 360 47 800 47 20 47 530 47

58300 47

76

Kapitel 2:

Der zulässige

1080 530 800 360 20 ) 0, 47 und 47 47 47 47 J Bereich ist noch nicht erreicht.

6. Iteration:

Bestimmung des siebenten Simplex-Tableaus:

Man hat den Punkt

,



P*

Lineare

z

-.-.-.-,



_4_ 75

75

7

150

75

J_ 30

15

J_

4_

75 7 150

75 75

26 15

16 15

4

75 1 150

225 4 225

J_

J_

30

90

_2_

75 17 300

3J_ 30

1

225 11 225 41 45

£7(8,18, 0, 0, 8,12)

Man hat den Punkt Bereich ist erreicht.

7. Iteration:

1_

und

58300 erhalten. 47 ,

=-

45 47

45 20 9 68 45 79 90 587

9 z

=

225 23

450 18 17 450 31 900 203 90

12

-1740

1740 erhalten. Der

zulässige

Bestimmung des achten Simplex-Tableaus: 3

2_

4

115

115

23

115

21_

_6_

23 2 115

23 6 115

_3_

_8_ 23 7

22 23 470 23 25

J_

230 1 115

23 17 23

11

230 7 460

J_

23 1 230

_J_5

46

_n _

23

23 3 115

46 6 115

11 23

22 23 450 23

25 23

_

_

~

~

17 23

360 23 3600 23 200

23 140

7

_4_

_li

115 39

23 440

46 1015

23 290 23 31900

23

23

23

23

,

11

1

_

Optimierung

Kapitel 2: Lineare Optimierung_77

Die

,

n

140)

n

£J-,-,-, 0, 0, 1

optimale Lösung

8. Iteration:

360 290 200 23 23 23 ist noch nicht gefunden. ,

Man hat den Punkt

23

—-

und

J

z

31900 23

=-

erhalten.

Bestimmung des neunten Simplex-Tableaus:

_1_

J_

10

50

12

25

24

J_

J_ 25

16

50

U

-17

23

10

J_

J_

50

3_

20

10

50

11

£9(l2,12,16, 0, 0, 0)

Als Alternative hätte zen können:

jede Gleichung

und

z

=

+

20 x2

20 x4

+

10 x5

+

40 x6




1000 1000

20 x,

+

40 x2

30 x4

+

10 x5 10 x5

+

20 x6




1200

+

10 x6




800

+ +

20 x,

+

20 x2

20 x,

+

20 x2

+

30 x3

+

20 x3

+

20 x3

+

+

30 x4

+

10 x5 20 x5

+

30 x4

+

20 x5

140 12

36

1320

auch durch zwei

10 x,

+

40 x3

man

-17

10

11

Man hat den Punkt Lösung ist gefunden.

120

-1320

erhalten. Die

optimale

Ungleichungen

erset-

50 x6 1800 20 5 x, + 20 x2 + + 30 x4 + 20 x5 + x6 > 800 20 x, + 50 x2 + 30 x3 + 40 x4 + 40 x5 + 30 x6 min z

20 x,

+

40 x2

+

60 x3 40 x3

+

20 x4

+

40 x5

+

=

Nun kann der duale Simplex-Algorithmus gleich im Folgenden durchgeführt wird.


2 +0.4/?3 >g 0.2/>, + 0.5p2 + 0.7/?3 >g 0.4/?, +0.4/?2 +0.3/?3 >g. Fügt man hier noch die Grundbedingung für Wahrscheinlichkeiten p,

+

p2

+

=

p3

1

hinzu und beachtet, dass g sung für dieses Problem.

=

max

gelten soll,

so

Dividiert man das Ungleichungssystem und die lichkeiten durch g > 0, so folgt:

0.8-Q- + 0.4+ 0.4

>

erhält

man

sehr schnell die Lö-

Grundbedingung für Wahrschein-

1

0.2-^- + 0.5-^- + 0.7-^->l 0.4-^- + 0.4-^- + 0.3-^->l 1 =

g



P\

+

g

Pi —

Substituiert

Ps

+

g



=

min.

g



jetzt noch

man

0.8 x,

+0.4x2 + 0.4x3

0.2 x,

+

0.4 x,

+0.4x2 +0.3x3

1 z

=

=

g

0.5 x2

x,

x2

+

+

0.7 x3

+

x3

=

x,

=

—,

g

x2

=



g

und x3

=

—, so

g

folgt

>1 >

1

>1 min



Damit hat

mierung

das

spieltheoretische Problem Kapitel 2 zurückgeführt.

man

aus

Bevor dieses

auf das Verfahren der lineare

Beispiel mit Hilfe des Simplex-Algorithmus gelöst wird, allgemeine Verfahren zur Lösung dynamischer Spiele angegeben.

Opti-

wird das

137

Kapitel 3: Spieltheorie Verfahren

zur

Lösung dynamischer Spiele

X stehen m verschiedene Strategien zur Verfügung, einem Spieler Y stehen n verschiedene Strategien zur Verfügung. Eine Entscheidungsmatrix stellt das Ergebnis des Spiels für Spieler X in Abhängigkeit der gewählten Strategien dar:

Einem

Spieler

Strategien für Spieler Y 7

Strategien

i

=

\

i

=

2

für

7

=

=

2

j

'22

=

n

'2n

Spieler X

es in der Entscheidungsmatrix keinen Sattelpunkt (siehe le), so erfolgt die Lösung mit dem Simplex-Algorithmus.

Gibt

statische

Spie-

Simplex-Algorithmus für Spieler X: Spieler X spielt seine Strategien mit den Wahrscheinlichkeiten ph\'3

>'i

J_ 10

Eckpunkt E2 (5 / 4, 0, O) sung ist noch nicht gefunden.

Man hat den

2. Iteration:

Vi

35 24 1 6

5_ _

6

z

=

-5 / 4 erhalten. Die

Bestimmung des dritten Simplex-Tableaus:

iL _5_ "

12

u_

25

24

24

J_

_

>'2

und

3

_5

3

5_ 4

3 1 6

5 6 15

optimale

Lö-

Kapitel 3: Spieltheorie

142

(25

Man hat den Eckpunkt £3 / 24, 5 / 6, Lösung ist noch nicht gefunden. 3. Iteration:

O) und

z

=

-15/8 erhalten. Die

optimale

Bestimmung des vierten Simplex-Tableaus: 11

27 16

13 16

-2

J'3

)'2 33 16

1_ 16

(l

Man hat den Eckpunkt E4 3 /16, 3 / 4,1 / male Lösung ist gefunden.

2)

und

Nach Rücksubstitution der Variablen gilt mit g ^ g_

92 =^2 £ 93

=

^3 8 '

=

13

26 _L3

16 33

~

33

2 16_L2 4 33

~

33

1 16__8_ 2 33~33'

z

=

=

=

z



-33 /16 erhalten. Die

—:

33

opti-

143

Kapitel 3: Spieltheorie

3.4

Aufgaben

Aufgabe 1

Gegeben seien die folgenden Entscheidungsmatrizen. len Strategien beider Spieler.

Bestimmen Sie die

(a)

Strategien für Spieler Y 7 2 7=1 =

Strategien für Spieler X

1=1

(b)

Strategien für Spieler Y 7=3 7=1 7=2 i=l

Strategien Spieler X

für

r

=

2

i

=

3

7

=

4

-1

(c)

Strategien für Spieler Y 7 2 7=3 7=4 7=1 =

Strategien Spieler X

für

i=l

-5

i

=

2

-2

i

=

3

-1

i=4

i=5

-2

optima-

144

Kapitel 3: Spieltheorie

Aufgabe 2

Gegeben seien die folgenden Entscheidungsmatrizen. len Strategien beider Spieler.

Bestimmen Sie die

(a)

Strategien für Spieler Y 7

Strategien für Spieler X

i

=

l

i

=

2

=

2

-1

(b) Strategien für Spieler Y 7

=

1

7

=

2

7

=

3

j

=

4

1=1

Strategien für

Spieler X

i i

=

2

=

3

(c) Strategien für Spieler Y 7=1 7=4 7=2 7=3 i=l

Strategien Spieler X

für

i

=

2

i

=

3

i

=

4

j

=

5

-2

-5

-2

optima-

Kapitel 3: Spieltheorie

145

Aufgabe 3 Um Entscheidungen zufällig zu fällen, etwa wer bei einem Spiel beginnen darf, wird häufig das Auswahlspiel „Stein-Schere-Papier" oder auch „SchnickSchnack-Schnuck" gespielt. Dabei zeigen beide Spieler gleichzeitig eines der Zeichen Stein, Schere oder Papier. Es gelten folgende Regeln: > Stein gewinnt gegen Schere und verliert gegen Papier, > Schere gewinnt gegen Papier und verliert gegen Stein, > Papier gewinnt gegen Stein und verliert gegen Schere. > Gleiche Zeichen neutralisieren sich.

(a) Stellen Sie die Entscheidungsmatrix auf und zeigen Sie, dass es keine statische Strategie gibt. (b) Zeigen Sie, dass der Simplex-Algorithmus keine Lösung liefert. (c) Addieren Sie zu jedem Element der Entscheidungsmatrix +1 und lösen Sie dann das Problem mit dem Simplex-Algorithmus. Aufgabe 4 Um solche

Entscheidungen etwas spannender zufällig zu fällen wird häufig das Auswahlspiel „Stein-Schere-Papier" um die Auswahlmöglichkeit „Brunnen" erweitert. Dabei zeigen wieder beide Spieler gleichzeitig eines der Zeichen Stein, Schere, Papier oder Brunnen. Es gelten folgende Regeln: > Stein gewinnt gegen Schere und verliert gegen Papier und Brunnen, > Schere gewinnt gegen Papier und verliert gegen Stein und Brunnen, > Papier gewinnt gegen Stein und Brunnen und verliert gegen Schere, > Brunnen gewinnt gegen Stein und Schere und verliert gegen Papier. >

Gleiche Zeichen neutralisieren sich.

(a)

Stellen Sie die Entscheidungsmatrix auf und zeigen Sie, dass es keine statische Strategie gibt. Lösen Sie das Problem analog zu Aufgabe 3. Vor diesem Spiel wird jedem Spieler zufällig eine der vier Optionen weggenommen. Geben Sie die Entscheidungsmatrizen zu all diesen Spielvarianten an und bestimmen Sie deren optimalen Strategien. Das Verfahren von Aufgabenteil (c) wird folgendermaßen abgeändert: Vor dem Spiel muss Spieler X zuerst erklären, auf welche Option er verzichtet. Geben Sie an, auf welche Option dann Spieler Y verzichtet, wenn er die Auswahl von Spieler X optimal beantwortet.

(b) (c) (d)

Kapitel 3: Spieltheorie

146

Aufgabe 5

Eishockey-Club aus Köln stehen drei Varianten für seine Verteidigung zur Verfügung. Die gegnerische Mannschaft aus Berlin verfugt über drei verschiedene Angriffsformationen. Die Erfolgsaussichten für Köln (WK, dass kein Tor fällt) sind in folgender Tabelle zusammengestellt:

Dem

Strategien für Berlin 7=2 7=3 7=1 Strategien für Köln

Bestimmen Sie die

i

=

l

0.4

0.4

0.3

i

=

2

0.7

0.8

0.6

i

=

3

0.4

0.5

0.5

optimalen Strategien der beiden Mannschaften.

Aufgabe 6

Eishockey-Club aus Landshut stehen drei Varianten für seine Verteidigung zur Verfugung. Die gegnerische Mannschaft aus Hamburg verfügt über drei verschiedene Angriffsformationen. Die Erfolgsaussichten für Landshut (WK, dass kein Tor fällt) sind in folgender Tabelle zusammengestellt: Dem

Strategien für Hamburg 7=1 7 2 7=3 =

Strategien

für

Landshut

Bestimmen Sie die

i

=

l

0.4

0.4

0.3

i

=

2

0.7

0.8

0.6

i

=

3

0.4

0.5

0.8

optimalen Strategien der beiden Mannschaften.

Kapitel 4

Transportprobleme Einführung, Beispiel und mathematisches

4.1

Modell Werden von

A{ irgendwelche Mengen eines Transportgutes zu n Nachfragern transportiert und sollen dabei die gesamten Transportkosten minimiert werden, so hat man die Aufgabenstellung von Transport- oder Verteilungsproblemen. m

Anbietern

TV

Das Am

folgende Beispiel 4.1 verdeutlicht diesen Sachverhalt: Vatertag werden die Wanderer durch ein Gewitter überrascht und suchen deshalb in den nahegelegenen Ausflugslokalen Schutz. In den vier Lokalen ist aber nicht genügend Bier vorhanden. Dieses wird unverzüglich bei der zuständigen Brauerei angefordert, die über drei verschiedene Auslieferungslager verfügt, in denen insgesamt die gewünschte Menge zur Verfügung steht. Die vier Lokale N,, N2, N3 und N4 benötigen 10 hl bzw. 30 hl bzw. 15 hl bzw. 35 hl. Diese Gesamtmenge steht in den drei Auslieferungslagern A,, A2 und A3 in folgender Weise zur Verfügung: in A, 25 hl, in A2 25 hl und in A3 40 hl. Die Transportkosten pro hl von den einzelnen Auslieferungslagern zu den jeweiligen Ausflugslokalen betragen Ausflugslokal Nachfrager =

Na 10

c


0 an der Stelle von x21 ein, so muss an den in der folgenden Tabelle ersichtlichen Stellen durch Hinzufugen von +a oder —a korrigiert werden, damit alle Einschränkungen nach wie vor gelten:

Fügt man

Afi 10-a

AM

\5 + a 15-«

10

30

25 10

15

25 35

40

35

90

Kapitel 4: Transportprobleme_163 Danach wird überprüft, wie sich die Kosten von 2550 ändern, wenn a 1 gesetzt wird. Für die Kostenänderung c21 gilt dann c21 c21 -c22 + c12-cu 90-0 + 80-10 160, wobei hier alle Werte der Kostenmatrix mit positivem Vorzeichen berücksichtigt werden, falls a 1 addiert wurde und alle Werte der Kostenmatrix mit negativem Vorzeichen berücksichtigt werden, falls a 1 abgezogen wurde. Da c21 positiv ist, wird in diesem Fall die Kostenfunktion nicht kleiner! =

=

=

=

=

=

Fügt man

a >

0

dagegen an der Stelle von /V,

N, 10

10

so

gilt:

AM

Na

15-a 15 + a

NM

jc13 ein,

25

25

\0-a

30

15

35

40

IT

~90

Für die

Kostenänderung c13 gilt dann c]3 40 50 + 0 80 -90. Da c,3 negativ ist, wird in diesem Fall die Kostenfunktion kleiner! Nun muss nur noch das maximal mögliche a > 0 bestimmt werden. Dies geschieht in den Differenzen 15-a und 10-a. Damit beide Mengen nicht negativ werden, kann a höchstens gleich 10 gesetzt werden. Dann verringert sich die Kostenfunktion aber =

=

-

um

90 10

=

900 Einheiten.

Die neue, verbesserte

N

Basislösung ist dann: AM

Na

AS

10

25

10

25

25

NM

10

-

30

15

Für den Wert der Zielfunktion

gilt:

35

40

35

90

z

=

2550

90 10 •

=

1650.

-

Dieses Verfahren wird so lange gen mehr vorhanden sind.

durchgeführt, bis keine negativen Kostenänderun-

Kapitel 4: Transportprobleme

164

Algorithmus zur Stepping-Stone-Methode Start: Man bestimme eine Ausgangslösung durch eines der beschriebenen Verfahren. Diese wird die erste Basislösung genannt. Danach erfolgen Iterationen zu jeweils 5 Schritten bis zum Abbruch. Schritt 1: An einem freien Feld der vorliegenden Basislösung wird a > 0 eingefügt. Schritt 2: Danach werden Korrekturen der Form +a oder -a an den Stellen der Basisvariablen vorgenommen, so dass alle Einschränkungen gültig bleiben. Es existiert immer ein solcher Pfad entlang der Basivariablen.

Schritt 3: Danach wird die

Kostenänderung

für

a

=

\ berechnet. Dabei

werden alle Werte der Kostenmatrix mit positivem Vorzeichen berücksichtigt, falls a 1 addiert wurde und alle Werte der Kostenmatrix mit negativem Vorzeichen berücksichtigt, falls a 1 abgezogen wurde. =

=

3 werden für alle freien Felder der

Schritt 4: Die Schritte 1

Basislösung durchgeführt. (a) Sind alle Cy >0, so ist -

Schritt 5:

die

vorliegenden

vorliegende Basislösung optimal

und das Verfahren bricht ab.

(b) Gibt es mindestens ein Cy


0 dazu ermittelt. Anschließend wird durch Einsetzen dieses a > 0 die neue verbesserte Basislösung bestimmt. (Hier kann es passieren, dass sich a 0 ergibt. Dadurch werden in der Basislösung nur zwei Nullen getauscht. Anschließend geht das Verfahren wie gewohnt weiter.) Danach erfolgt die nächste Iteration. =

Sind alle Cy > 0 und mindestens ein Cy 0, so existieren mehrere optimale Lösungen. Diese werden durch weitere Iterationen ermittelt.

(c)

=

Kapitel 4: Transportprobleme

165

Beispiel 4.1 zur Stepping-Stone-Methode Gegeben sei ein Transportproblem mit folgender Kostenmatrix und den folgenden Nachfrage bzw. Angebotsmengen: -

Kostenmatrix:

Nachfrager 10

/V,

A,

/V,

80

40

70

50

70

80

10

90

.a e


0,

so

ist die

vorliegende Basislösung optimal

und das Verfahren bricht ab.

(b) Gibt es mindestens ein Cy


0 dazu ermittelt. Dies geschieht durch den Schritt 2 der Stepping-StoneMethode (Korrekturen der Form + a oder a an den Stellen der -

Anschließend wird durch Einsetzen dieses a > 0 die neue verbesserte Basislösung bestimmt. (Hier kann es passieren, dass sich a 0 ergibt. Dadurch werden in der Basislösung nur zwei Nullen getauscht. Anschließend geht das Verfahren wie gewohnt weiter.) Danach erfolgt die nächste Iteration.

Basisvariablen).

=

Sind alle Cy > 0 und mindestens ein cy 0, so existieren mehrere optimale Lösungen. Diese werden durch weitere Iteratio-

(c)

nen

=

ermittelt.

176_Kapitel 4: Transportprobleme Beispiel 4.2 zur MODI-Methode Nachfolgend wird ein etwas größer dimensioniertes Beispiel als das seither mehrfach durchgerechnete Beispiel 4.1 betrachtet.

Gegeben sei ein Transportproblem mit folgender Kostenmatrix und den folgenden Nachfrage bzw. Angebotsmengen: -

Kostenmatrix:

Nachfrager

/V,

Na

AT,

N


oo

Vorg'i, j)

=

05005050

Oy

j 4 =

r0 oo

oo

D(i, j)

.

1 1 1 2 0 0

oo

Schleife 3:

D(i, j)

'1

oo oo

oo

100 40 10 70 30 60 0 00 00 20 CO 00 oo 0 oo 30 30 20

co^

(1

1 4 1 3 4 3

0^

00

02002000

co

00303330 00443430

oo

30 0 60 20 50 15 oo oo 0 oo 10

oo

oo

oo

oo

oo

oo

0 30

oo

00000660

co

oo

oo

oo

5

oo

0 25

00007077

00

00

oo

oo

oo

oo

oo

00 =

00

oo ,

Oy

Vorg{i,j)

=

05005050

00000008

Kapitel 7:

Schleife 5: j

(0

D{U j)

=

Schleife 6:

5

85 40 10 70 30 60 0 oo oo 20 oo 30

oo^ oo

4 1 3 4 3 0A 02002050

45 0

30 30 20 75 30 0 60 20 50 15 co 00 0 oo 10

oo

05303330

oo

00000660

05007077 0 0 0 0 0 0 0 8

oo

(\ 5

oo ,

oo

CO

CO

00

CO

0 30

20

oo

oo

5

oo

0 25

00

00

00

00

00

oo

Vorgii,j)

0

05443430 =

05005050

=

OO CO CO

85 40 10 70 30 60 0 co 00 20 00 30 45 0 oo 30 30 20 75 30 0 60 20 50 15 co oo 0 oo 10

oo

^

'15

4 13 4 3

0^

oo

02002050

oo

05303330 05443430

oo ,

VorgiiJ)

oo

co

co

oo

oo

0 30

oo

05005050 00000660

CO

20

oo

oo

5

oo

0 25

05007077

00

00

00

00

CO

00

0

0 0 0 0 0 0 0 8

00

vco Schleife 7: j

D{U j)

=

j 6

(0

D(Uj)

457

Lösungen der Aufgaben

=

oo

7

CO

80 40 10 65 30 60 85^ 0 oo oo 20 oo 30 55

co

40 0

oo

00 OC

50

oo

oo

CO

20

oo

00

5

CO

0 25

00

00

00

00

CO

00

00

35 0 30 55 0

5 4 1 7 4 3

7^

02002057

25 30 20 45

70 30 0 55 20 50 75 15 oo 00 0 oo 10 35

00

(\

05307337 ,

VorgiiJ)

05447437 05005057 05007667 05007077 00000008

Kapitel 7: Lösungen der Aufgaben

458 Schleife 8:

j 8 =

(0

D(U j)

oo

80 40 10 65 30 60 85A 0 oo oo 20 co 30 55

oo

40 0

oo

oo

25 30 20 45 70 30 0 55 20 50 75

oo

15

oo

oo

oo

50

oo

oo

oo

20

oo

oo

=

0

oo

10 35

(\ 5

4 1 7 4 3 7A 02002057

Vorg{i, j)

35 0 30 55 5 oo 0 25

00000000000000

05307337 05447437 05005057

05007667 05007077

0

K0

0000008

Aufgabe 4

(a) Startiteration: M

D(i)

V(i)

1. Iteration: m

={a} H

D(i)

M

10

V(i) 2. Iteration: M

=

{ß, C,D,e} M

D(i)

V(i)

10 D

N

Kapitel 7:

Lösungen der Aufgaben

3. Iteration: M

=

459

{ß, C, E, F, G} H

D(i)

M

N

M

N

14

V(i) 4. Iteration: M

=

{ß, E, F, G, H } Ii

D(i)

14

17

V(i) 5. Iteration: M

=

{B, F,G, H, / } H

D

D(i)

14

D

6. Iteration: m

M 17

D

={f,G,H,i) D 14

V(i) 7. Iteration: M

D

=

N

M

N

12

D

{G,H,1,J H

D(i) V(i)

M

13 D

D

12

13

15

460 8. Iteration: m

Kapitel 7: =

Lösungen der Aufgaben

{h, i, j, k, l) //

D(i)

13

V(i) 9. Iteration: m

D

=

D

D

=

D

14

13

11

13

15

H

13 D

=

12

14

13

M

N

14

13

M

N

14

13

{H, K, L, M, N)

D(i)

V(i)

M

D

D

12

11

13

15

D

{K, L,M,n} H

D(i)

13

K 12

11

13

15

D

V(i) =

16 K

{l,m, n, p} H 13

D(i) V(i)

15

H

13

V(i)

12. Iteration: m

13

{h,i, k, l, m,n)

D(i)

11. Iteration: M

11

N

D

D

10. Iteration: M

12

M

D

D

D

K 12

11

13

M 15

14

13

15

461

Kapitel 7: Lösungen der Aufgaben 13. Iteration: M

=

{L,M,p) D

13

D(i)

11

13

15

=

13

DO) D

vo) =

15

13

15

M

12

11

13

15

14

N

{p) K

H

13

DO)

Die > > > > > > > > > > > > > >

13

D

D

V(i)

14

{l, p) H

15. Iteration: m

N

D

V(i) 14. Iteration: m

12

M

D

D

kürzesten Wege sind: a->c^b a^c a-^d a^d-^e a-*d->f a-^d^g a-^d^g-^h a-+d^>f->i a^d^g^j a^> d^g-* k a^d^g^l a-+d^>g^>j ->m a^d^g^j-^n a-^d^g^j ->n ->p

12

11

D

mit der Länge 8 mit der Länge 6 mit der Länge 4 mit der Länge 7 mit der Länge 9 mit der Länge 9 mit der Länge 13 mit der Länge 12 mit der Länge 11 mit der Länge 13 mit der Länge 15 mit der Länge 14 mit der Länge 13 mit der Länge 15.

13

15

M

N

14

13

15 N

Kapitel 7: Lösungen der Aufgaben

462

Zur Illustration sei noch das Abschnitt 5.5.5.1 angegeben:

Eingabefenster für den Dijkstra-Algorithmus

(b) Startiteration: B

H

M

N

H

M

N

D(i)

V(i)

1. Iteration: S

D(i)

V(i)

10

=