Hans-Jürgen Zimmermann
Operations Research
Aus dem Programm Mathematik für Wirtschaftswissenschaftler
Mathematik für Wirtschaftsingenieure Band 1 und 2 von Norbert Henze und Günter Last Fuzzy Methoden in der Wirtschaftsmathematik von Hubert Frank Kreditderivate und Kreditrisikomodelle von Marcus R. W. Martin, Stefan Reitz und Carsten S.Wehn Einführung in die Spieltheorie von Walter Schlee Einführung in die angewandte Wirtschaftsmathematik von Jürgen Tietze Einführung in die Finanzmathematik von Jürgen Tietze Finanzmathematik für Einsteiger von Moritz Adelmeyer und Elke Warmuth Finanzderivate mit MATLAB® von Ansgar Jüngel und Michael Günther Derivate, Arbitrage und Portfolio-Selection von Wilfried Hausmann, Kathrin Diener und Joachim Käsler Zinsderivate von Stefan Reitz, Willi Schwarz und Marcus R. W. Martin
vieweg
Hans-Jürgen Zimmermann
Operations Research Methoden und Modelle. Für Wirtschaftsingenieure, Betriebswirte, Informatiker 2., aktualisierte Auflage
Bibliografische Information Der Deutschen Nationalbibliothek Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über abrufbar.
Prof. Dr. Hans-Jürgen Zimmermann RWTH Aachen Institut für Wirtschaftswissenschaften Operations Research Templergraben 64 52062 Aachen
[email protected] 1. Auflage 2005 2., aktualisierte Auflage 2008 Alle Rechte vorbehalten © Friedr. Vieweg & Sohn Verlag | GWV Fachverlage GmbH, Wiesbaden 2008 Lektorat: Ulrike Schmickler-Hirzebruch | Susanne Jahnel Der Vieweg Verlag ist ein Unternehmen von Springer Science+Business Media. www.vieweg.de
Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Jede Verwertung außerhalb der engen Grenzen des Urheberrechtsgesetzes ist ohne Zustimmung des Verlags unzulässig und strafbar. Das gilt insbesondere für Vervielfältigungen, Übersetzungen, Mikroverfilmungen und die Einspeicherung und Verarbeitung in elektronischen Systemen.
Umschlaggestaltung: Ulrike Weigel, www.CorporateDesignGroup.de Druck und buchbinderische Verarbeitung: Wilhelm & Adam, Heusenstamm Gedruckt auf säurefreiem und chlorfrei gebleichtem Papier. Printed in Germany ISBN 978-3-8348-0455-6
Vorwort Die Meinungen darfiber, was unter ,,Operations Research" zu verstehen ist, gehenvor allem in Deutschland - auseina~der. Es gibt Vertreter der Auffassung, dass ,,Operations Research" weitgehend aus den meist mathematischen Modellen, Methoden und Theorien bestehe, die im Laufe der Zeit auf diesem Gebiete entwickelt worden sind. Andere meinen, dass zum ,,OR" mehr geh6re, ngmlich die Art wie man Probleme angehe, der interdisziplin/ire Arbeitsstil, die Modellierung yon ProNemen auf verschiedenen Gebieten und unter Umst/inden sogar die eigentlieh in die Intbrmatik gehSrende optimale Implementierung von Algorithmen in ,,tools" oder auf elektronischen Rechenanlagen jeder Art. In Kapitel I wird mehr fiber die verschiedenen Auffassungen gesagt werden. Ffir dieses Buch ist die Diskussion um das Selbstverstgndnis des OR yon sekundgrer Bedeutung, da es sich mit Methoden und Modellen und nicht mit dem Prozess des OR befasst, also mit dem Teil des ORs, der unbestritten ist. Operations Research oder auch Unternehmensforschung, wie dieses Gebiet in Deutschland auch genannt wird, war seit den 50iger Jahren in Deutschland weitgehend eine Disziplin mit der man sich primgr in der Betriebswirtschaft und spgter in der Mathematik besch/iftigte. Seit geraumer Zeit gewinnt OR aueh ffir Ingenieure, Intbrmatiker, ja selbst Mediziner a~ Bedeutung. Dies vor allem well die elektronische Datenver0zbeitung in diesen Gebieten Einzug gehalten hat und sich immer st/irker zum notwendigen Werkzeug entwickelt. Um aber EDV Anlagen benutzen zu kSnnen muss man vorher die relevanten Probleme und Abl/iufe formal modellieren, und dabei kann OR sehr hilfreieh sein.
Eine wichtige Rolle spielt das OR ferner bei der Bew/iltigung der dureh die fortsehreitende Globalisierung immer gr0lger werdende Komplexit/it der der Entseheidungsfgllung unterliegenden Systeme. Diese Systeme sind nur noch mit grogen EDVSystemen abzubilden, die gew6hnlich groge Datenbanken (evtl. auch Warehouses), Tra~isaktionssysteme und intelligente entscheidungsvorbereitende Module enthalten. Vor allem ffir die letzteren ist der Einsatz yon OR Verfahren fast eine ,,conditio sine qua non". Hier liegt sicher aueh eine der zukfinftigen Chaneen und Herauslbrderungen ffir das OR: W/ihrend in den Anfangsstadien des OR die Hauptprobleme bei der Anwendung yon OR im Mangel yon EDV-lesbaren Daten, leistungsf'~higer Hard- und Software lagen, ist es heute oft der Uberfluss soldier Daten, der Probleme bereitet. Hierdurch sind im OR ganz neue Problemstellungen-wie z.B. im Data-Mining-entstanden, auf die leider in diesem Bueh nieht eingega~igen werden kann. Auf ein wichtiges Merkmal des OR, das inzwischen sicher nicht mehr auf das OR beschr/i~lkt ist, abet dort wohl zuerst bewusst a~lgewandt wurde, soll noch kurz eingegangen werden: Die interdisziplin/ire Zusammenarbeit. Man ka~m sich sicher
VI
Vorwort
vorstellen, dass ein Algorithmus oder eine neue Modellform yon einer qualifizierten Einzelperson entwickelt werden kann. Hier sind offensichtlich prim/ir Mathematiker gefragt. Will man OR jedoch praktisch anwenden, so ist auf eine interdisziplin/ire Zusammenarbeit nicht zu verzichten. Zu einem solchen Team geh6ren sicher Experten aus dem Bereich aus dem das zu 16sende Problem stammt bzw. die sp/Rer mit dent entwickelten System arbeiten miissen. Dazu solRen Personen kommen, die mit den vorhandenen OR Algorithmen vertraut sind oder sie weiterentwickeln k6nnen bzw. die eingesetzten OR-,,Tools" geniigend kennen. Dariiber hinaus sind unverzichtbar Informatiker, die die benutzten OR-Verfahren optimal implementieten oder in das bestehende EDV-Umfeld integrieren k6nnen. Dies ist vielleicht auch einer der Unterschiede zwischen WissenschaR oder Algorithmenentwicklung und Anwendung. Obwohl auch in wissenschaRlichen Ver6ffentlichungen der Anteil der Beitrgge mit mehreren Autoren zunimmt, kann man bier doch noch eine betrgchtliche Zahl yon Einautorenbeitrggen finden. Bei gr6geren praktischen Anwendungen yon OR ist m.E. die Teamarbeit unverzichtbar. Dies macht auch die gute Lehre yon OR schwierig: Algorithmen lassen sich relativ einfach in Vorlesungen vermitteln. Modellieren, Implementieren und in interdisziplin/h'en Teams kommunizieren erfordert sicher besondere Lehrformen. In den letzten Jahrzehnten ist der Fundus an OR-Verfahren stetig erweitert worden. Bestehende Algorithmen sind verbessert und verfeinert worden, neue Gebiete sind hinzu gekommen und neue, aus der Praxis angeregte, Modellibrmen sind entstanden. Aueh in der Praxis sind neue Sehwerpunkte entstanden, die zu speziell dafiir geeigneten Verfahren gefiihrt haben. So sind z. B. die Gebiete der Multi Criteria Analyse, wissensbasierte AnsStze, Fuzzy Set-Theorie basierte Methoden und andere AnsStze in der Theorie zu grogen Gebieten gewachsen. Heuristiken sind wesentlich verbessert worden. Abet aueh exakt optimierende Verfahren, vor allem auf dent Gebiet der Mathematischen Programmierung, sind so erheblieh verbessert worden, dass heute aueh sehr grotge Modelle exakt optimiert werden k6nnen fiir die man vor 10 Jahren noch auf Heuristiken zuriickgreifen musste. Als ein Gebiet der Praxis, das in den letzten 10 Jahren erheblich in Umfang und Wichtigkeit zugenommen hat, katm z.B. die Logistik geRen. Es ist erfreulieh zu beobaehten, dass aueh kommerzielle Progratnmsysteme (wie z.B. APO yon SAP) in zunehmendem Mage Operations Reseat-& Verfahren enthalten. Es ist daher auch nieht iiberrasehend, dass in den letzten 10 Jahren vide gute Biicher erschienen sind, die sich auf den neuesten Stand sehr spezieller Algorithmen (z. B. in der kombinatorischen Optimierung) oder spezieller Modelltypen (z. B. in der Logistik) konzentrieren. Allerdings setzen diese Werke sehr oft die Vertrautheit des Lesers mit klassisehen OR-Gebieten, wie z. B. des Lineat'en Programmierens, voraus. Dieses Lehrbuch soll Studenten der Informatik, des Ingenieurwesens, der BetriebswirtschaR und anderer am Operations Research interessierter Gebiete den Zugang zum Instrumentarium des OR erMchtern. Dafiir werden Grundkenntnisse in der linearen Algebra, der Differentialreehnung und der Stochastik vorausgesetzt. Da heutzutage Operations Reseat'& und Informatik, insbesondere WirtschaRsinformatim sehr eng miteinander verkniipR sind, soll die Einfiihrung in einer entsprechenden
VII Weise erfolgen, ohne jedoch direkt Algorithmen in Form yon Programmen zu beschreiben. IIierzu existieren spezielle Bficher. IIier werden jedoch in Form yon NassiShneidermann-Diagrammen die Grundstrukturen skizziert~ so dass das Verst~ndnis yon derartigen EDV-Programmen erleichtert werden dfirfte. Darfiber hinaus wird in Absehnitt 3.13 speziell auf die Benutzung yon OR-Sol%ware eingegangen werden. Die Zielgruppe des Buehes sind also, neben Praktikern, die es vielleieht als Nachschlagewerk benutzen mSchten~ primer Studenten der InformatiM des Ingenieurwesens und der Wirtschaftswissenschaften~ die mit dem Studium des Operations Research beginnen. Es ist als ein Grundlehrbuch gedacht~ das ffir eine zweisemestrige Einffihrungsvorlesung besonders geeignet ist. Im Vordergrund steht die Dax'stellung der Grundlagen aller der Bereiche, die man heute zum Kern der OR-Verfaliren und Modelle reehnen kann. Manehe releva~lten Gebiete, wie z. B. das der Wissensbasierten SystemG das Constraint-Programming etc. konnten leider nicht aufgenommen werden~ da sie den Rahmen des Buches gesprengt h~tten. Der gebotene Stoff wurde bewusst auf das eingesehr~nkt~ was ein Student in einer zweisemestrigen Vorlesung erlernen kann. Bei ma~lchen Gebieten (wie z.B. der Netzpla~lteehnik) l~sst sieh in diesem Ralmien der heutige Stand der Teehnik darstellen. Bei a~lderen Gebieten (wie z.B. der Mathematischen Programmierung) musste aufgrund des Umfanges der heute existierenden Literatur auf Referenzen verwiesen werden~ die den heutigen Stand des Wissens darstellen. Didaktische Erw~gungen genossen insgesamt den Vorrang vor dem Streben naeh mathematischer Finesse. Um dem Leser den Zuga~lg zu weiterffihrender Literatur zu erleiehtern, ist am Ende jedes Kapitels Literatur genannt~ die ffir ein vertieftes Studium zu empfehlen ist. Der Student findet an gleicher Stelle Ubungsaufgaben~ deren LSsungen am Ende des Buches zusammengefasst sin& Die im Bueh benutzte Symbolik stellt einen Kompromiss dar: Auf der einen Seite wurde angestrebt~ Symbole m6glichst durehg~higig mit der gleiehen Bedeutung zu verwenden; auf der anderen Seite sollten die benutzten Symbole weitgehend denen entsprechen~ die sich in den einzelnen Gebieten allgemein durchgesetzt haben. Teilweise widersprechen sich diese Ziele. Deshalb wurde eine Teilmenge der Symbole durchg~higig benutzt. Diese sind im Symbolverzeichnis zusammengefasst. Alle a~lderen Symbole werden jeweils l~pitelweise in der Form definiert, wie sie gebr~uchlich sind. Die Struktur des Buches orientiert sich an der Vorstellung, dass einer der zentralen Begriffe im Operations Research der der ,,Entscheidung" ist. Daher widmet sich Kapitel 2 zun~chst der Modellierung yon Entscheidungen in verschiedenen Situationen und aus verschiedenen Sichten. Die Kapitel 3 bis 7 behandeln Verfal~ren zur Bestimmung optimaler oder guter LSsungen, wobei zun~chst die optimierenden und dann die heuristischen Verfahren behandelt werden. Modelle mehr darstellenden Charakters findet der Leser in den Kapiteln 8 und 9. Der Student sollte sich da~'fiber im Kla~'en sein, dass er nach dem Lesen dieses Buches kein versierter Operations Researcher ist. Er wird jedoch in der Lage sein, g~ngige Methoden selbst anzuwenden. Er smite darfiber hinaus einen Uberblick fiber
VIII
Vorwort
die anderen Gebiete des Operations Research haben, der es ihm erlaubt, die neuere Literatur zu verfolgen, selbst vertiefte Studien durchzuffihren oder weitergehenden Lehrveranstaltungen folgen zu k6nnen. Dieses Buch entstand aus der fiber dreigigjghrigen Lehrt/itigkeit an der RWTH Aachen, sowohl in dem seit 1975 bestehenden viersemestrigen Aufbaustudium ffir Operations Research und WirtschaRsinformatik, zu dem Studenten zugelassen wetden, die ein Studium der Mathematik, der Informatik, der Ingenieur- oder Wirtschaftswissenschaften absolviert haben, als auch in Praktikerseminaren und Lehrveranstaltungen in anderen Studienggngen. Die vertretenen Meinungen sind sicher auch dutch eine umfangreiche praktische T/Rigkeit auf dem Gebiet des Operations Research beeinflusst. Bei der Erstellung des Manuskriptes dieses Buches durfte ich die Kooperation verschiedener Personen geniegen. Ich darf mich daffir herzlich bei Herrn Kollegen Univ.Prof. Hans-Jfirgen Sebastian bedanken, der den Abschnitt 4.3 beisteuerte und mir auch in vielen anderen Hinsichten die Arbeit erleichterte, bei Herrn Dr. Stefatx Irnich, der Abschnitt 3.13 schrieb und mich auch sonst in vielerlei Hinsicht unterstfitzte und bei Herrn Stefan Buhr, der unermfidlich an einem Manuskript in I_4TEX arbeitete, die Zeichnungen erstellte und auch in anderen Weisen stets meine Autorenwfinsche verwirklichte, selbst wenn ich dies nicht ffir m6glich hielt. Ohne die Kooperation dieser Kollegen hgtte das Buch nicht entstehen kannen. Aachen 2004 Hans-Jfirgen Zimmermann
Inhaltsverzeichnis Vorwort
V
Inhaltsverzeichnis
IX
Symbolverzeichnis
XlII
Einffihrung Die Geschichte des Operations Research 1.1 1.2 1.3
D e r U r s p r u n g i m m i l i t ~ ' i s e h e n B er ei eh . . . . . . . . . . . . . . . W e i t e r e n t w i c k l u n g im zivilen B e rei ch . . . . . . . . . . . . . . . . L i t e r a t u r zur G e s c h i c h t e des O p e r a t i o n s R e s e a r c h . . . . . . . .
Entscheidungs- und Spieltheorie 2.1 2.2
2.3
2.4 2.5
2.6 2.7
E n t s c h e i d u n g s t h e o r e t i s c h e Richtungen ............... G r u n d m o d e l l e der E n t s c h e i d u n g s l o g i k . . . . . . . . . . . . . . . 2.2.1 D a s G r u n d m o d e l l der E n t s c h e i d u n g s f S l l u n g . . . . . . . . . . 2.2.2 E n t s c h e i d u n g s s i t u a t i o n e n . . . . . . . . . . . . . . . . . . . . 2.2.3 Rationale Nutzenfunktionen bei Sicherheit ........... 2.2.4 RationalitSt yon Ungewissheitsentscheidungen ........ 2.2.5 Entscheidungen bei mehreren Zielkriterien ........... Grundmodelle der Spieltheorie ................... 2.3.1 Spielsituationen und Spielmodelle ................ 2.3.2 Zweipersonen-Nullsummenspiele ................ 2.3.3 Zweipersonen-Nichtnullsummenspiele .............. 2.3.4 N-Personenspiele (Theorie der Koalitionsbildung) ....... Deskriptive Entscheidungstheorie .................. Entscheidungen in schlecht strukturierten Situationen ...... 2.5.1 Einffihrung ............................ 2.5.2 Zadeh's Min/Max-Theorie der Unscharfen Mengen ...... 2.5.3 Unscharfe Entscheidungen .................... 2.5.4 Alternative Systeme ....................... Aufgaben zu Kapitel 2 ........................ AusgewShlte Literatur zu Kapitel 2 ................
Lineares Programmieren 3.1 3.2 3.3
EinKihrung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Grundlegende Theorie . . . . . . . . . . . . . . . . . . . . . . . . Das S i m p l e x - V e r f a t i r e n . . . . . . . . . . . . . . . . . . . . . . . . 3.3.1 E l e m e n t e des S i m p l e x - A l g o r i t h m u s . . . . . . . . . . . . . . .
1
6 6 8 11 12 12 14 14 15 18 21 28 33 33 34 39 45 48 52 52 53 55 60 65 67 68 69 72
77 77
InhMtsverzeichnis
X
3.4
3.5
3.6
3.7
3.8
3.9 3.10 3.11
3.12
3.13 3.14 3.15
4
3.3.2 E r w e i t e r u n g e n des S i m p l e x - A l g o r i t h m u s . . . . . . . . . . . . 86 D u M i t ~ t im L i n e a r e n P r o g r a m m i e r e n . . . . . . . . . . . . . . . 92 3.4.1 DuMit~tstheorie . . . . . . . . . . . . . . . . . . . . . . . . . 92 3.4.2 Die duMe S i m p l e x - M e t h o d e . . . . . . . . . . . . . . . . . . . 101 Postoptimale Analysen . . . . . . . . . . . . . . . . . . . . . . . . 104 3.5.1 Sensitivit~tsanalysen . . . . . . . . . . . . . . . . . . . . . . . 104 3.5.2 Parametrisches Programmieren ................. 106 GanzzMfliges Lineares P r o g r a m m i e r e n . . . . . . . . . . . . . . . 111 3.6.1 Einfiihrung . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 3.6.2 D a s S c h n i t t e b e n e n - V e r f a h r e n yon G o m o r y . . . . . . . . . . . 115 Vektormaximummodelle . . . . . . . . . . . . . . . . . . . . . . . 120 3.7.1 Grundmodell . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 3.7.2 LSsungswege . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 S t o c h a s t i s c h e s u n d Unscharfes Lineares P r o g r a m m i e r e n . . . . . 127 3.8.1 S t o c h a s t i s c h e s Lineares P r o g r a m m i e r e n . . . . . . . . . . . . 128 3.8.2 U n s c h a r f e s Lineares P r o g r a m m i e r e n . . . . . . . . . . . . . . 132 Spezielle S t r u k t u r e n . . . . . . . . . . . . . . . . . . . . . . . . . 138 Lineares P r o g r a m m i e r e n u n d S p i e l t h e o r i e . . . . . . . . . . . . . 147 Dantzig-Wolfe%che D e k o m p o s i t i o n u n d C o l u m n G e n e r a t i o n . . . 150 3.11.1 P r o b l e m s t e l l u n g u n d T h e o r i e . . . . . . . . . . . . . . . . . . 150 3.11.2 D e r D e k o m p o s i t i o n s a l g o r i t h m u s y o n Da~xtzig u n d Wolfe . . . 153 3.11.3 Da~xtzig-Wolfe%che D e k o m p o s i t i o n u n d C o l u m n G e n e r a t i o n . 162 N i c h t - S i m p l e x V e r f a h r e n zur L 6 s u n g Linea~'er P r o g r a m m e . . . . 163 3.12.1 D a s G r u n d v e r f a h r e n yon K a r m a r k a r . . . . . . . . . . . . . . 163 3.12.2 St~rken u n d Schw~chen yon I n t e r i o r P o i n t VerfMlren . . . . . 174 Lineares P r o g r a m m i e r e n u n d Software . . . . . . . . . . . . . . . 176 A u f g a b e n zu K a p i t e l 3 . . . . . . . . . . . . . . . . . . . . . . . . 182 A u s g e w ~ h l t e L i t e r a t u r zu K a p i t e l 3 . . . . . . . . . . . . . . . . 187
Nichtlineare P r o g r a m m i e r u n g
188
4.1 4.2
188 189 189 194 197 203 208 208 210 214 214 217 220 221 222
4.3 4.4
4.5
4.6
Einfiihrung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Optimierung ohne Nebenbedingungen ............... 4.2.1 Grundlegende Begriffe u n d Konzepte . . . . . . . . . . . . . . 4.2.2 Gradienten-VerfMiren . . . . . . . . . . . . . . . . . . . . . . 4.2.3 D a s Newton- u n d die Quasi-Newton-VerfMiren ........ K o n v e x e P r o g r a m m i e r u n g u n d Kuhn-Tucker-Theorie . . . . . . . Quadratisches Programmieren ................... 4.4.1 Grundlagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4.2 Der Algorithmus yon Wolfe . . . . . . . . . . . . . . . . . . . Separables Konvexes Programmieren . . . . . . . . . . . . . . . . 4.5.1 Grundlagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.5.2 A- u n d 6 - M e t h o d e n des Separablen Programmierens . . . . . Strafkostenverfahren . . . . . . . . . . . . . . . . . . . . . . . . . 4.6.1 Penalty-Verfahren . . . . . . . . . . . . . . . . . . . . . . . . 4.6.2 Barriere-VerfMiren . . . . . . . . . . . . . . . . . . . . . . . .
XI
4.7 4.8
4.6.3 S U M T - V e r f a h r e n . . . . . . . . . . . . . . . . . . . . . . . . . A u f g a b e n zu K a p i t e l 4 . . . . . . . . . . . . . . . . . . . . . . . . Ausgew/ihlte L i t e r a t u r zu K a p i t e l 4 . . . . . . . . . . . . . . . .
Entscheidungsbaumverfahren 5.1 5.2
5.3
5.4 5.5
Einfiihrung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Dynamisches Programmieren . . . . . . . . . . . . . . . . . . . . 5.2.1 G r u n d l e g e n d e T h e o r i e . . . . . . . . . . . . . . . . . . . . . . 5.2.2 Verschiedene F o r m e n der S t u f e n o p t i m i e r u n g . . . . . . . . . . 5.2.3 Rectmerische Etlizienz des D y n a m i s c h e n P r o g r a m m i e r e n s . . 5.2.4 Stochastische D y n a m i s c h e P r o g r a m m i e r u n g . . . . . . . . . . Branch and Bound-Verfahren .................... 5.3.1 G r u n d l a g e n . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3.2 B r a n c h a n d B o u n d zur LSsung eines F e r t i g u n g s s t e u e r u n g s m o dells . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3.3 Die B e s t i m m u n g globaler O p t i m a i m Sepaz'ablen P r o g r a m mieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A u f g a b e n zu K a p i t e l 5 . . . . . . . . . . . . . . . . . . . . . . . . Ausgew/ihlte L i t e r a t u r zu K a p i t e l 5 . . . . . . . . . . . . . . . .
223 228 229 230 230 233 233 238 244 245 252 252 254 260 267
270
Heuristische Verfahren 6.1 6.2 6.3 6.4
6.5 6.6
6.7 6.8 6.9
271 K o m p l e x i t g t y o n A l g o r i t h m e n , Modellen u n d P r o b l e m e n . . . . . 271 E i g e n s e h a f t e n u n d A r t e n heuristiseher Verfahren . . . . . . . . . 272 A n w e n d u n g s b e r e i e h e heuristiseher Verfahren . . . . . . . . . . . 277 Die E n t w i e k l u n g heuristiseher Verfahren . . . . . . . . . . . . . . 279 6.4.1 G r u n d l a g e n des Verfahrensentwurfes . . . . . . . . . . . . . . 279 6.4.2 A n a l y s e u n d Synthese heuristischer i t e r a t i v e r Verfahren . . . 280 Die Qualit/it heuristischer Verfahren . . . . . . . . . . . . . . . . 284 Beispiele heuristischer Verfahren . . . . . . . . . . . . . . . . . . 288 6.6.1 ErSffnungsverfahren . . . . . . . . . . . . . . . . . . . . . . . 288 6.6.2 V e r b e s s e r u n g s v e r f a h r e n . . . . . . . . . . . . . . . . . . . . . 297 M e t a - H e u r i s t i k e n : T a b u Search . . . . . . . . . . . . . . . . . . . 298 A u f g a b e n zu K a p i t e l 6 . . . . . . . . . . . . . . . . . . . . . . . . 305 Ausgew/ihlte L i t e r a t u r zu K a p i t e l 6 . . . . . . . . . . . . . . . . 306
Ganzzahlige Lineare Programmierung 7.1
7.2
7.3 7.4
G a n z z a h l i g e O p e r a t i o n s Research Modelle . . . . . . . . . . . . . Verfahren der Ga~lzzahligen L i n e a r e n P r o g r a m m i e r u n g . . . . . . 7.2.1 Sctmitt ebenen-Verfatlren . . . . . . . . . . . . . . . . . . . . . 7.2.2 D e k o m p o s i t i o n s v e r f a h r e n . . . . . . . . . . . . . . . . . . . . 7.2.3 Heuristische Verfahren . . . . . . . . . . . . . . . . . . . . . . A u f g a b e n zu K a p i t e l 6 . . . . . . . . . . . . . . . . . . . . . . . . Ausgew/ihlte L i t e r a t u r zu K a p i t e l 7 . . . . . . . . . . . . . . . .
307 307 310 310 313 322 330 333
Graphen, B~iume, Netze, Netzpl~ine
334
8.1
334
G r u n d l a g e n der G r a p h e n t h e o r i e . . . . . . . . . . . . . . . . . . .
XII
Inh~ltsverzeichnis
8.2
8.3
8.4 8.5 8.6 9
8.1.1 Graphen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.1.2 B s u n d Geriiste . . . . . . . . . . . . . . . . . . . . . . . 8.1.3 Netze u n d Netzwerke . . . . . . . . . . . . . . . . . . . . . . . G r a p h e n t h e o r e t i s c h e Verfahren . . . . . . . . . . . . . . . . . . . 8.2.1 Die E r m i t t l u n g kiirzester Wege in Netzwerken . . . . . . . . . 8.2.2 Die E r m i t t l u n g 1/ingster Wege . . . . . . . . . . . . . . . . . . 8.2.3 Die E r m i t t l u n g m a x i m a l e r Fliisse . . . . . . . . . . . . . . . . Netzpls mit deterministischer Struktur . . . . . . . . . . . . . 8.3.1 Grundlagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.3.2 S t r u k t u r p l a a u n g . . . . . . . . . . . . . . . . . . . . . . . . . 8.3.3 Z e i t p l a n u n g . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.3.4 K a p a z i t i t s p l a a u n g . . . . . . . . . . . . . . . . . . . . . . . . 8.3.5 K o s t e n p l a n u n g . . . . . . . . . . . . . . . . . . . . . . . . . . Netzpls m i t stochastischer S t r u k t u r . . . . . . . . . . . . . . . A u f g a b e n zu K a p i t e l 8 . . . . . . . . . . . . . . . . . . . . . . . . Ausgew~hlte L i t e r a t u r zu K a p i t e l 8 . . . . . . . . . . . . . . . .
Theorie der Warteschlangen 9.1 Grundstrukturen ........................... 9.2 Klassifiziermig u n d Beschreibmig y o n W a r t e s c h l a a g e n m o d e l l e n . Einige stochastische Prozesse . . . . . . . . . . . . . . . . . . . . 9.3 9.3.1 Die B e s c h r e i b u n g u n d Klassifizierung stoch~stischer Prozesse 9.3.2 Markov-Prozesse . . . . . . . . . . . . . . . . . . . . . . . . . 9.3.3 Poisson-Prozesse . . . . . . . . . . . . . . . . . . . . . . . . . 9.3.4 G e b u r t s - u n d Sterbeprozesse . . . . . . . . . . . . . . . . . . 9.4 Die M o d e l l i e r u n g y o n W a r t e s c h l a a g e n s y s t e m e n . . . . . . . . . . 9.4.1 Das S y s t e m M / M / 1 . . . . . . . . . . . . . . . . . . . . . . . 9.4.2 D~s S y s t e m M / M / 1 / R . . . . . . . . . . . . . . . . . . . . . . 9.5 W a r t e s c h l ~ n g e n m o d e l l e als E n t s c h e i d u n g s h i l f e . . . . . . . . . . 9.6 A u f g a b e n zu K a p i t e l 9 . . . . . . . . . . . . . . . . . . . . . . . . 9.7 Ausgew/ihlte L i t e r a t u r zu K a p i t e l 9 . . . . . . . . . . . . . . . .
334
343 345 348 348
353 358 363 363 366 370 375 382 388 393 396 397 397 403 404 404 407 410 411 415 415 421 422 427 428
LSsungen der Aufgaben
429
Index
450
Literaturverzeichnis
457
Symbolverzeichnis
grSt~er, grSger oder gleich
a>>b
a wesentlich grSt~er als b
a-~b
a schlechter Ms b
a~b
a gleichwertig zu b
a~-b
a besser Ms b
a~b
a besser oder gleichwertig zu b
< a~b
a ungef/ihr gleich b oder mSglichst nicht gr6tger als b kleinste ganze Zahl grSger oder gleich a grSgte ganze Zahl kleiner oder gleich a Element yon
E
nicht Element yon
ACB
A ist Teilmenge yon B
ACB
A ist enthalten in oder gleich B
AUB
Vereinigung yon A und B
AnB
Sctmittmenge yon A und B
R+,R
Menge der positiven, negativen reellen Zahlen offenes IntervM1 yon a bis b, a < b abgeschlossenes IntervM1 yon a bis b, a < b
{x I...}
Menge Mler x, fiir die gilt ...
n!
n F~kult/it mit n! n
Hi=I n
Ei=I
ai
al "a2 " . . . ' a r t
ai
al + a2 + ... + a~
1 92 . 3 . . . . .
n, n E N; 0! :
bestimmtes IntegrM in den Grenzen a und b
1
XIV
Symbolverzeichnis
OF Ox
Ableitung yon F nach x
lirnh~o Xn
Limes yon x~ fiir h gegen 0
Id
Betrag yon a mit a :
@h
Zuweisung, wobei h die Reihenfolge der Zuweisung bestimmt
a,
Va > 0
-a,
Va < 0
3-Tupel n-dimensionaler euklidischer Raum P(AIB)
Wahrscheinlichkeit, dass Ereignis A eintritt, wenn Ereignis B bereits eingetreten Erwartungswert der Zufallsvariablen x
hi; hij
nicht negativer gebrochener Anteil, 0 _< hi, hij < 1
B
Basis
B
1
Basisinverse
N
Nichtbasismatrix
Z*
aktuelle Zielfunktionswerte einer Basis B
z o
optimale Zielfunktionswerte einer primal und dual zul/issigen, optimalen Basis B ~
I
Einheitsmatrix
x j; ~j
primale Struktur-/Schlupfvariable
Yi ; rJi
duale Struktur-/Schlupfvariable
Azj
Kriteriumselement
H~
HilNvariable
0
Nullvektor
[]
Ende Beispiel Ende Beweis
Einffihrung Probleme, Modelle, Algorithmen Eine zunehmende Anzatll von Autoren (siehe z. B. Boothroyd, 1978; Miiller-Merbach, 1979; Cheekland, 1983) vertreten die Auffassung, dass es zwei verschiedene Begriffe des Operations Research (OR) gibt: Ein Operations Research aus der Sicht des Praktikers und eins aus der Sicht des Mathematikers. Wghrend das OR aus der Sicht des Praktikers ,,die modellgestiitzte Vorbereitung yon Entscheidungen zur Gestaltung und Lenkung von Mensch-Maschine-Systemen zur Aufgabe hat" (Mfiller-Merbaeh, 1979, S. 295), sieht der Mathematiker das OR ,~ls Teilgebiet der a~gewandten Mathematik" (Gaede, 1974) an. Wie es zu dieser Situation kam, wird n/iher im Kapitel 1 dieses Buches beschrieben. Hier wird allerdings die Meinung vertreten, dass es zwar zwei Teile des Gebietes OR geben mag, dass sie jedoch beide wichtig und notwendig ffir das OR sind und sich aus der Gesehiehte des OR erkl/iren lassen. Um dies f~r den Leser leichter verst/indlieh zu maehen, ist es nfitzlich, zun/iehst auf den hier benutzten Begriff des ,~Problems" etwas nfit~er einzugehen. Abbildung 1 skizziert die hier angenommenen Zusammenhgnge. Diese Darstellung ist jedoch auf keinen Fall Ms ein zeitliches Ablaufschema zu interpretieren. Zum zeitlichen Ablauf des OR-Prozesses lese man insbesondere die Darstellung yon E. Heurgon (Heurgon, 1982). Einige Bemerkungen zu Abbildung 1, die fiir das Verst/indnis der folgenden Kapitel wichtig sind: 1. Gin Problem ist kein objektiv gegebener Tatbestand, sondern hat eine reale Komponente und eine subjektive Komponente, die einen objektiv gegebenen Tatbestand erst zum Problem macht. Man wird z.B. nirgendwo in einem Unternehmen ein ,,Bestandsproblem" sehen k6nnen. Dies entsteht vielmehr dadurch, dass gewisse Bestgnde auf Lager liegen und dass der Problemsteller diese Bestgnde nicht als optimal betrachtet. 2. Da ein ,~Problem" somit erst durch [;berzeugungen und Einstellungen von Menschen entsteht, kann es erst siehtbaz" werden, wenn es akzentuiert, d.h. ausgesprochen, aufgeschrieben oder in einer anderen Weise zum Ausdruck gebracht wird. Diese Beschreibung yon Tatbestand und subjektiver Wertung soll hier als verbales Modell des Problems bezeichnet werden. Die Modellierungssprache muss dem Problem adgquat sein. Ist sie dem Problem nieht a~gemessen, so wird aueh das verbale Modell keine ad/iquate Abbildung des Problems sein.
2
Einfiihrung Realitat "\~
(\ (objektiv)) ~ . "~
/
'~
/
natar. Sprache
Problem
im BewuBtsein )
eines Menschen~
~
~ v~vererbalesl ~'1 Modell /
Formale I Abstrak-.
/ J
Perception -~, BewuBtsein Anspruchsniveaus/
\~(subj ektiv) /
//
~
Anpassung d.er Ansprache, An- | derung des Real-~ tatsausschn tts~
~
(~
icht-quantifizierte~ elevante Probleme ~ atbest•nde ~ /
ia
u(e~) - u(ei) folgt ej >- e~ und umgekehrt u(e0) - u(ei)
u(e~) - u(ei) folgt 60 ~- e~ und umgekehrt
u(eO) - u(ei) > u(eO) - u(e~) folgt e~ ~- ei und umgekehrt u(eo) - u(ei)
u(eo) - u(e~) folgt e~ ~- ei und umgekehrt
7. Transitivitiit von Nutzendifferenzen Dieses Axiom kann man sich leicht an einer Nutzenskala klarmachen. Fiigt man zwei grSgere Abschnitte aneinander, so muss das Ergebnis ein grSgerer Gesamtabschnitt sein, Ms wenn man zwei kleinere Absdmitte aaeinaaderffigt. Aus
Aus
~(~5) - ~ ( ~ ) > ~ ( ~ ) - ~ ( ~ )
und
~(~)
- ~ ( ~ ) _> ~ ( ~ )
- ~(~)
folgt
~(~)
- ~(~) > ~(~)
- ~(~)
~(~5) - ~ ( ~ ) -> ~ ( ~ ) - ~ ( ~ )
und
u(e.~) - u ( e j ) > u(e~) - u(ez)
folgt
2.2 Grundmodelle der Entscheidungslogik Aus
u(cj) - u(ci)
u(c.~)- u(cj)
u(cl) - u(c~)
21
und
u(c~)- u(cl) folgt Werden noch zwei zuss
-
Axio-
-
me, welche aber keine wesentliche inhaltliche Bedeutung haben, gefordert~ so kann gezeigt werden, dass daam die Existenz einer ka~'dinalen, stetigen Nutzenfunktion gew/ihrleistet ist (Alt, 1936; SchneeweiK 1963).
2.2.4
Rationalitiit von Ungewissheitsentscheidungen
Ein relativ einfacher W e g zur Ordnung der bei Risiko fiirjede Aktion vorliegenden Nutzenverteilung ist der, die einzehmn Verteilungen durch reelle Zahlen zu charakterisieren (d. h. fiirdie Verteilungen MaJ~e zu definieren), die daan in der ~iblichen Weise geordnet werden kSnnen. Die elementare Entscheidungslogik schl~gt in Form der ,&lassischen" Entscheidungsregeln und -prinzipien solche Vorgehensweisen vor. Hierbei versteht m a n unter einer ,,Regel" eine vollst~ndig beschriebene Vorgehensweise, w~hrend ein ,~Prinzip" gewShnlich eine Regel beschreibt, in der mindestens ein Parameter noch modifizierbar oder in Grenzen frei festlegbar ist. Festlegen lassen sich Regeln und Prinzipien nur fiir eine Entscheidung darfiber, welche yon zwei Aktionen als die bessere anzusehen ist. M a n kann dann entweder durch einen endlichen paarweisen VergMch die optimale Aktion ermitteln oder aber aM'grund einer solchen Entsdmidungsregel Optinfierungsvorschrii%en entwickeln, die in aaders gearteten Entsdmidungsmodellen (z.B. solchen mit kontinuierlichen LSsungsr~umen) Verwendung finden kSnnen. Ffinf der a m h~ufigsten erw~hnten Regeln und Prinzipien werden im folgenden aufgefiihrt:
i. Dir M,inimax-Regel Hier ist m a n prim~h" auf Sicherheit bedacht: M a n betrachtet lediglich die schlechtesten Ergebnisse der einzelnen Strategien und bezeichnet die Strategie als optimal, bei der das schlechteste Ergebnis a m besten ist. Mathematisch schreibt man: 9 a~ ~ aj~ wenn rnin~ u ~ _> rnin~ uj~, 9 ai~ aj -- Aktionen~ Strategien 9 ui~ uj~ -- Nutzen der Ergebnisse
Es handelt sich hierbei also um eine ausgesprochene
~Pessimisten-Regel".
2. Das Hurwicz-Prinzip Betrachtet m a n die Minimax-Regel Ms zu extrem, so kSnnte m a n neben dem jeweils schlechtesten Ergebnis auch das jeweils beste in Betracht ziehen und eine lineare Kombination dieser beiden Ergebnisse als Kriterium verwenden. Man k o m m t dann zu der Regel:
22
2 Entscheidungs- und Spieltheorie ai ~>- aj, wenn (1 -- A) rnin ui~
> (1 -- /~) rr~n u j k + )~ rnax --
+ )~ rnax
wobei 0 _< A _< 1 als Optimismuspaz'ameter bezeichnet wird. Je nachdem, wie die GrSge A festgelegt wird, spiegelt das Hurwicz-Kriterium ein mehr oder weniger optimistisches Verhalten wider. 3. D i e Laplace-Regel
Einen gewissen Anhaltspunkt fiir die Giite einer Strategie gibt auch die Summe ihrer mSglichen Auszahlungen: k
k
~. D i e B a y e s - R e g e l
Eine der bekanntesten Regeln ist die Mittelwert-Regel. Bei ihr bildet man den Mittelwert oder den mathematischen Erwartungswert der Nutzen der Ergebnisse einer Strategie Ms die Summe der mit ihren Wahrscheinlichkeiten p~ gewichteten Nutzen und betrachtet die Strategie Ms optimal, deren Erwartungswert am hSchsten ist: k
k
5. D a s Hodges-Lehrnann-Pr'inzip
Schlielglich kann man die Regeln 1 und 4 kombinieren und kommt zu: ujk k
k
Hier ist 0 < A < 1 der ,,Vertrauensparameter", da ein grotger Weft yon A ein grotges Vertrauen in die verwandten Wahrscheinlichkeiten ausdriickt, ws man fiir kMne ), mehr dem Pessimistenkriterium zuneigt. Diese Regel spiegelt iibrigens eine sehr verbreitete Haltung yon Entscheidungsf/illern wider: Sie orientieren sich am Mittelwert als einem Hinweis f~r das wahrscheinlich Eintretende, ohne jedoch den schlimmsten Fall ga~z aus den Augen zu lassen. 2.2 B e i s p i e l Zu bestimmen sei die optimale Entscheidung (Aktion) in einer durch folgende Entscheidungsmatrix chm-akterisierten Situation: 8j
81
82
83
84
85
Pai-~
0,2
0,4
0,2
0,1
0,1
al
13
-3
a2
2
12
a3
10
5
6
-4 5
-2
i0 -7
~ j 7~ijpj
m i n d 7~ij
m a x j 7~ij
~ j 7~ij
5
2,9
-3
13
19
3
5,7
-4
12
23
11
5,4
-7
11
24
Die letzten vier Spalten zeigen bereits charakteristische Werte der in den Zeilen der Aktiohen stehenden Nutzenverteilungen, die in den vorher genannten Entscheidungsregeln und -prinzipien Verwendung linden.
2.2 Orundmodelle der Entscheidungslogik
23
In der fblgenden Tabelle sind die Ordnungen der Aktionen at , a2 und a3 aufgefiihrt, die sich bei Anwendung verschiedener Regeln ergeben und zwar fiir:
(i) (2) (3) (4) (5) (6) (7)
Minimax-Regel Laplace-Regel Bayes-Regel tIurwicz-Prinzip mit A
0,4
Hurwicz-Prinzip mit A
0,7
Hodge-Lehmann-Prinzip mit A
0,4
tIodge-Lehmann-Prinzip mit A
0,7.
Regel/Prinzip
0) (2) (3) (4) (5) (6) (7)
(PrMerenzen)-Ordnung a t ~- a 2 ~- a 3 a 3 ~- a 2 ~- a i a 2 ~- a 3 ~- a i a t ~- a 2 ~- a 3 a t ~- a 2 ~- a 3 a 2 ~- a t ~- a 3 a 2 ~- a 3 ~- a i
Wie man sieht, sind die entstehenden Ordnungen sehr verschieden und jede der Aktionen ai wird je nacli benutzter Regel (Prinzip) Ms optimal betrachtet. Mit der Festlegung (Entscheidung) einer Entscheidungsregel wird eine bestimmte Prgferenzenordnung impliziert.D
Uber die Rationa/itit obiger ,Massischer Entscheidungsregeln und -prinzipien"ka~in erst da~m etwas ausgesag~ werden, wenn der Begriff der Rationa/itit for Entscheidungen bei Ungewissheit definiert ist. Dies geschieht wiederum durch bestimmte Systeme yon Axiomen. Dabei kOnnen zwei verschiedene Arten yon Systemen unterschieden werden. A. Axiomensysteme, in denen eine rationale NutzenfunkUon in einer Entscheidungssituation unter Sicherheit zugrunde gelegt wird. B. Axiomensysteme for eine Risikoentscheidung, wobei an die Nutzenfunktion keinerlei einschrinkende Forderungen gestelltwerden. Solche Axiomensysteme stammen z.B.von Ma~'schak (1950), Friedman and Savage (1952), Hurwicz (1951), Chernoff (1954), Milnor (1954), Savage (1954), Markowitz und Bernoulli (1738), wobei die ,Bernoulli-Axiome" 1944 yon yon Neuma~m und Morgenstern neu aufgegriffenwurden. An dieser Stellesollenexemplarisch die Axiomensysteme yon Milnor (stellvertretend for A.) und Bernoulli (stellvertretendfor B.) vorgestelltwerden.
24
2 Entscheidungs- und Spieltheorie
Das Axiomensystem
yon Milnor
Ausgehend von dern in dern einfiihrenden Kapitel dargestellten Grundrnodell der Entscheidungstheorie postuliert Milnor (Milnor, 1964) die folgenden 10 Axiorne, die eine rationale Entscheidungsregel zu erfiillen hat.
1. Ordnung Die Aktionen sollen in eine vollst~tndige Rangordnung gebracht werden.
2. Symmetrie Diese Rangordnung soll unabh~tngig v o n d e r Nurnrnerierung der Zust~tnde und Aktionen (Zeilen und Spalten der Entscheidungsmatrix) sein.
3. Strenge Dominanz Die Aktion ai wird a d vorgezogen, wenn uia > uda fiir alle k gilt.
4. Stetigkeit Streben die Matrizen U(x) lira (uij(x) )
X~OO
(uij(x)) gegen den Grenzwert uij~ d.h.
uij
und werden die Aktionen aa (x) den Aktionen az (x) fiir alle x vorgezogen~ so bleibt diese Pr~ferenzenordnung aueh fiir die Grenzwerte erhalten. Stetigkeit wird verlangt~ damit eine kleine Anderung eines einzelnen Nutzenwertes nieht einen Sprung im aggregierten Nutzenwert naeh sieh zieht.
5. Lineariffit Wird die Matrix (u~j) dureh die Matrix c~ 9 (u~j) + B~ c~ > 0 ersetzt~ so soll sieh die Ordnung nicht ~tndern.
6. Hinzufiigen yon Zeilen Die Ordnung der alten Zeilen der Entscheidungsmatrix soll durch das Hinzuffigen neuer Zeilen nicht ver~tndert werden (m. a.W., die Rangordnung zwischen bisher berticksichtigten Aktionen wird durch die Hinzufiigung neuer Aktionen nicht ver~tndert).
7. Spaltenlinearit~it Die Rangordnung zwischen den Aktionen soll unver~tndert bleiben~ wenn allen Elementen einer Spalte eine Konstante hinzugefiigt wird.
8. S~paltenverdopplung Die Rangordnung zwischen den Aktionen soll nicht ver~ndert werden, wenn eine neue Spalte, die mit einer alten identisch ist, der Entscheidungsmatrix hinzugefiigt wird.
2.2 Orundmodelle der Entscheidungslogik
25
9. Konvexitiit Sind die Aktionen ai und aj gquivalent, so wird eine Aktion mit der Auszahlung 89(ui~ + uj~) keiner yon ihnen vorgezogen. 10. Hinzufiigen spezieller Zeilen Die Ordnung der alten Zeilen soil durch das Hinzuffigen einer neuen Zeile nicht gegndert werden, vorausgesetzt, dass kein Element dieser Zeile einem entsprechenden Element Mler Zeilen vorgezogen wird.
Das Axiomensystem
,con B e r n o u l l i
Das bekannteste Axiomensystem der zweiten Gruppe (Entscheidung unter Risiko) ist das von Bernoulli. Es strebt an, eine Entscheidungsregel zu bestimmen, die es erlaubt, aus einer Anzahl von Wahrscheinlichkeitsverteilungen eine oder mehrere als ,,beste" zu bestimmen. Dies wird mittels eines Prgferenzfunktionals erreicht, welches eine Ordnung yon Wahrscheinlichkeitsverteilungen ermSglicht. Es sollen nun zuerst einige Axiome beschrieben werden, an denen die Rationalit/it einer (noch zu bestimnienden) Entscheidungsregel und der danach gefgllten Entscheidung gemessen wird. Dabei wird, da yon einer Risikosituation ausgegangen wird, verlaagt, dass sich die Axionm auf die Menge der Wahrscheinlichkeitsverteilungen W beziehen. GewShnlich geht man yon folgender Grundannahme aus (Schneeweig, 1967): Auf der Menge W W[u(z)] der Wahrscheinlichkeitsverteilungen fiber die Nutzen existiert eine Prgferenzrelation ~> tblgender Art: Ob die Wahrscheinlichkeitsverteilung wl E W einer anderen Verteilung w2 E W vorgezogen wird (wl >- w2) oder nicht, h/ingt einzig yon wl und w2 ab und nicht yon der Art, wie diese Wahrscheinlichkeitsverteilungen zustande gekommen sind. Ffir wl w2 gilt Indifferenz, d.h. wl ~ w2. Aus dieser Annahme folgt, dass die Prgferenzbeziehung zwischen zwei Aktionen unabhgngig yon allen anderen Aktionen des Entscheidungsproblems ist. Die im folgenden ausffihrlich dargestellten Axiome werden yon dem sogenannten Bernoulli-Prinzip erffillt. Es sin& a) das ordinale Prinzip, b) das Dominanzprinzip, c) das Stetigkeitsprinzip und d) das Unabhgngigkeitsprinzip.
a) Das ordinals Prinzip Ffir Entscheidungen bei Sicherheit wurde eine schwache Ordnung unter den Elementen e E f getbrdert. Gleiches soll nun ffir Wahrscheinlichkeitsverteilungen gelten:
26
2 Entscheidungs- und Spieltheorie
Die Wahrseheinlichkeitsverteilungen aus W sind entsprechend der Pr/iferenzordnung schwach geordnet. (1) Aus wl ~ w2 folgt wl ~- w2 oder wl -< w2 (Forderung nach unbeschrSnkter VergMchbarkeit aller Wahrscheinlichkeitsverteilungen) (2) Aus wl ~ w2 und w2 ~ w3 tblgt wl ~ w3 (Transitivitgt der Pr/iferenzrelationen) Das ordinale Prinzip soil hier in einer anderen Form verwandt werden: Es existiert ein Pr/iferenzfunktional q~:
W--+R ~ q~ [~],
so dass fiir zwei Wahrscheinlict~keitsverteilungen gilt: q~[wl] _> q~[w2]/iquivalent mit wl ~ w2 Mit anderen Worten, jeder Wahrscheinlichkeitsverteilung w E W wird eine reelle Zahl q~[w] derart zugeordnet, dass fiir je zwei wl, w2 E W q~[wl] > q~[w2] gquivalent mit wl ~ w2 ist. Dabei ist das FunktionM q~ nur bis auf eine monotone Transformation bestimmt.
b) Das Dominanzprinzip Sei z w eine Zufallsvariable mit der Wahrscheinlichkeitsverteilung w und g eine Funktion, die jedem Nutzen U einen hOheren Nutzen U* zuordnet, d. h. g(U) U*. Ist wg die Wahrscheinlichkeitsverteilung yon g(z~), dann gilt: wg ~ w 1. Unabh/~ngig yon seiner Risikoneigung hat ein Entscheidungstr/~ger yon zwei Handlungsweisen die vorzuziehen, die bei gleicher Wahrscheinlichkeit einen hOheren Zielbeitrag (Nutzendominanz) bzw. bei gleichem Zielumfa~lg eine hOhere Wahrscheinlichkeit (Wahrscheinlichkeitsdominanz) verspricht.
c) Das Stetigkeitsprinzip Um das Stetigkeitsprinzip formulieren zu kSnnen, muss zuerst der Begriff des Sicherheits/~quivalents einer Wahrscheinlichkeitsverteilung eingefiihrt werden. Das Sicherheits/~quivalent einer Wahrscheinlichkeitsverteilung w ist ein sicherer Nutzen U, der zu w indifferent ist (U ~ w), d.h. ein sicherer Nutzen, der dem Entscheidenden gerade Ms gleichwertig mit einer (unsicheren) Alternative erscheint. Das Pr/iferenzenfunktional q~ nimmt ffir beide GrSffen denselben Wert an: 9 [w]
~[U]
Das Stetigkeitspr'inzip fordert nun: 1 w g n e n n t ma~l d i e d u r c h g t r a ~ m f o r m i e r t e W a h r s c h e i n l i c h k e i t s v e r t e i h n g y o n w .
2.2 Grundmodelle der Entscheidungslogik
27
Jede Wahrscheinlichkeitsverteilung besitzt (mindestens) ein SicherheitsEquivalent. Mit Hilfe des Begriffs des Sicherheits/iquivalents ist es mSglich, die beiden Grundtypen des Verh~ltens, Risikoaversion und Risikosympathie, zu charakterisieren. Ist nfimlich das Sicherheitsiquivalent kleiner (bzw. grater) als der Erwax'tungswert einer Wahrscheinlichkeitsverteilung, so spricht man yon Risikoaversion (bzw. Risikosympathie). Das Stetigkeitsprinzip verlangt also, dass man fiir jede Wahrscheinlichkeitsverteilung ein Sicherheits/iquivalent benennen kann. Spriinge in der Bewertung sind damit nicht zugelassen.
d) Das U'nabhgngigkeitspr'inzip (Substitutionsprinzip) Es seien wl, w2 und w3 drei Nutzenwahrscheinlichkeitsverteilungen, wobei gilt: wl ~ w2. Nun bildet man die zusammengesetzten Verteilungen wl p w3 B1 und w2 p w3 B2. B1 ist dadurch definiert, dass mit der Wahrscheinlichkeit p, (0 < p < 1) die Verteilung wl und mit der Wahrscheinlichkeit (1 - p) die Verteilung w3 gilt; entsprechend tritt bei B2 mit der Wahrscheinlichkeit p die Verteilung w2 und mit der Wahrscheinlichkeit (1 - p ) die Verteilung w3 auf. Das Unabh/ingigkeitsprinzip besagt also, dass zwei zusammengesetzte Verteilungen w~ p w3 und w2 p w3 stets in genau der gleichen Pr/iferenzbeziehung stehen wie die Verteilungen wl und w2. Mit anderen Worten, wenn die Beziehung wl ~ w2 gilt, so gilt auch B l a B 2 bzw. w l p w 3 ~ w 2 p w 3 .
Das Bernoulli-Prlnzlp: Fiir den Entscheidenden existiert eine (subjektive) Nutzenfunktion u(z) mit der Eigenschaft, dass die verschiedenen Aktionen aufgrund des zugehSrigen Erw0x'tungswertes beurteilt werden. Das Pr/iferenzfunktional des Entseheidenden ninunt die Gestalt
an.
In einer Entscheidungssituation ist also diejenige Alternative zu wiihlen, fiir" die
der Erwartungswert des Nutzens Ew[u(x)] ant gvb'flten ist.
Fiir den speziellen Nutzenbegriff, der diesem Konzept zugrunde liegt, sind verschiedene Bezeichnungen wie z. B. Neumann-Morgenstern-Nutzen, Bernoulli-Nutzen, Erw0x'tungs-Nutzen oder Pdsiko-Nutzen gebriuchlieh. Das Bernoulli-Prinzip als Rationalit/itspostulat macht keine Aussage fiber die Form der Nutzenfunktion, sondern nut fiber die Form des Pr/iferenzfunktionals. Es schr/inkt jedoch die Menge der denkbaren Nutzenfunktionen, die fiir eine rationMe Entscheidung bei Risiko denkbar sind, entsprechend der subjektiven Einstellung des Entseheidungstrigers zum Risiko ein.
2 Entscheidungs- und Spieltheorie
28
Wie unterseheiden sich nun die ,&lassisehen Entseheidungsregeln und -prinzipien" vom Bernoulli-Prinzip? Im Unterschied zum Bernoulli-Prinzip ist bei den klassischen Regeln das Prs funktional nicht abhs yon den ganzen Nutzenverteilungen, sondern nur yon statistisehen oder anderen Magzahlen dieser Verteilungen (z. B. Erwartungswert, Varianz, Modus, Minimum, Maximum). Deshalb sind sie aueh in den seltensten Fgllen Bernoulli-rational. Detaillierte Untersuchungen, Ergebnisse und Beweise in dieser Richtung findet man bei Schneeweig (Sctmeeweig, 1967).
2.2.5
Entscheidungen bei m e h r e r e n Zielkriterien
Multi-Criteria-Entscheidungen beziehen sich auf Entscheidungssituationen mit mehreren Zielen, die h~ufig in einem Konfliktverh~tnis zueinander stehen. Fast alle wichtigen Probleme in der Realit~t beinhalten mehrere Ziele. Da ist zum Beispiel der Stellenbewerber, der einen Arbeitsplatz mit folgenden Eigenschaften sucht: hoher Lohn, gute Aufstiegschancen, angenehmes Betriebsklima, geringe Gesundheitsgefahr bei der Arbeit, N~he zur derzeitigen Wohnung, usw. Oder in einer Abteilung ffir Produktionsplaamng wird versucht, geringe Gesamtkosten, wenig {~berstunden, hohe Kapazit/itsauslastung, kurze Durchlaufzeiten, hohe LieferbereitschaR, geringe LagerbestSalde, etc. zu erreichen. Ein Autokgufer sucht einen Wagen, der mSglichst preiswert in der Anschaffung ist, wenig Kraftstoff ben&tigt, wenig reparaturanf~lfig ist, schnell f~hrt, hohen Komfort und hohen Prestigewert besitzt, eine moderne Form hat, wenig Parkraum ben&tigt usw. Die Liste yon Multi-Criteria-Problemen im wirtschaftlichen oder privaten Alltag liel~e sich beliebig ibrtsetzen. Alle besitzen jedoch trotz ihrer Verschiedenheit Iblgende chaa'akteristische Merkmale: a) Mehrere Ziele: Jedes Problem besitzt mehrere Ziele oder gewfinschte EigenschaRen. Die Ziele, die ffir die jeweilige Problemstellung relevant sind, muss der Entscheidungsf~ller aageben. b) Zielkonftikt: 0blicherweise widersprechen sich die Ziele in dem Sinne, dass eine Verbesserung hinsichtlich eines Zieles das Ergebnis bzgl. eines aaderen Zieles verschlechtert. c) Unvetyleichbare Einheiten: GewShnlich werden die Ziele mit unterschiedlichen Ma~st~ben gemessen, die untereinander nicht vergMchbar sind. d) Berechnung/Auswahl einer L6sung:
2.2 Orundmodelle der gntscheidungslogik
29
GelSst wird das Entseheidungsproblem durch die Berechnung oder die Auswalil einer besten Handlungsalternative, das ist die Alternative, die der Entscheidungsfgller im Hinblick auf alle Ziele gemeinsam am meisten bevorzugt. Wenn im voraus die Menge aller Alternativen im einzelnen angegeben ist und diese Menge endlieh ist, dann besteht die LSsung des Problems in der Auswalfl der besten Alternative. Ist dagegen die Menge aller Handlungsalternativen unendlieh oder nur ilnplizit dutch irgendwelehe Nebenbedingungen definiert, dann besteht die LSsung des Problems in der Berechnung der besten Alternative, d.h. in dem Auffinden und der expliziten Angabe der besten Alternative (siehe hierzu Absetmitt 3.7). Wenn mehrere Ziele miteinaader konkurrieren, also wenn ein Zielkonflikt vorliegt, benStigt der Entseheidungsfgller irgendein sinnvolles Kriteriuln, mit dem er die Alternativen beurteilen kann. Er muss fiir jede Alternative die Vor- und Nachteile der verschiedenen ZielgrSgen gegeneinander abwggen. Die Aufgabe der Multi-Criteria-Analyse besteht nun darin, den Entseheidungsf/iller bei diesem Problem zu unterstiitzen. Die Unterstiitzung kaam daraus bestehen, bei der Strukturierung und genauen Definition des Problems zu beraten, die Verarbeitung yon Informationen zu erMchtern, dem Entscheidungsfgller Bewertungskriterien anzubieten, ihm begriindete Handlungsvorschl/ige zu unterbreiten usw. Kurzum, die Multi-Criteria-Analyse soil dem Entseheidungsf/iller mSgliehst w/ihrend des gesamten Entseheidungsprozesses mit Methoden und Instrumenten helfen. Fiir die L/Ssung eines multikriteriellen Problems ist die Unterscheidung in Probleme mit diskretem LSsungsraum (abz/ihlbar vielen L/Ssungen) und stetigem LSsungsraum wichtig. Die ersteren Probleme haben einen kombinatorischen Charakter und werden gew6hnlieh als ,,Multi-Attribut-Entseheidungsprobleme" (MADM) bezeiehnet, w/ihrend die letzteren meist voraussetzen, dass das Problem als mathematisehes Prograanmierungsmodell tbrlnuliert werden kann. Sie werden gew6hnlieh als ,,Multi-Objective-Entscheidungen" (MODM) bezeichnet. Hier sollen zun/ichst nur MADM-Probleme behandelt werden. MODM-Probleme werden in Kapitel 3 unter der deutsehen Bezeiehnung ,,Vektormaximumprobleme" besproehen. Bei MADM-Verfahren ist die Menge der zul/issigen Handlungsalternativen vorbestimmt, sie besteht aus einer endliehen, meist sehr kleinen Zalfl yon Alternativen, die oft sgmtlich im voraus explizit bekannt sind. Man spricht deshalb vielfach yon diskreten LSsungsr/iumen. Beurteilt wird jede Alternative hinsichtlich ihrer Attribute. Attribute verk6rpern in der Spraehe des MADM die Ziele des Entseheidungsf/illers, Attribute miissen nieht notwendig in Zalflen besehreibbar sein. Die abschliegende Entscheidung fiir eine bestimmte der Alternativen wird gef'allt, indem einerseits die Attribute untereinander verglichen werden und andererseits die Ausprggungen verschiedener Alternativen beziiglich jeweils eines Attributs. Beim Vergleieh der Alternativen sind in der Regel ,,Tradeoffs" mSglieh, das heigt, eine Alternative A kann im Vergleieh mit einer Alternative B einen sehleehten Attributwert
30
2 Entscheidungs- und Spieltheorie
durch eine gute Auspr~tgung in einem anderen Attribut ausgleichen (Kompensation).
Die zur L6sung yon MADM-Problernen zur Verfiigung stehenden Methoden unterseheiden sieh u. a. in den ihnen unterliegenden Annahrnen, in ihren Vorgehensweisen und in der Art der yon ihnen errnittelten L6sungen. Hier soll nur eine der verbreitesten Ans~tze besproehen werden: Verfahren, die davon ausgehen, dass die relative Wiehtigkeit der Attribute untereinander vorn Entseheidungsf~ller in Form yon Gewiehten auf kardinalern Skalenniveau angegeben werden kann. Ft~r andere AnsStze wird der Leser auf (Zirnrnerrnann and Gutseh G 1991) verwiesen. Es wird irn folgenden also angenornrnen, dass die relative Wiehtigkeit der Attribute untereinander durch Gewichte ausgedriickt wird. Zu jedem der insgesamt ~ Attribute Cj geh6rt eindeutig ein Gewicht wd. Das Gewicht w d (engl. ,,weight") ist eine nichtnegative Zahl, die auf kardinalern Skalenniveau die Bedeutung des zugeh6rigen Attributs C d irn Vergleich zu den t~brigen Attributen wiedergeben soll. Meist werden die Gewichte w d (1 < j < r~) durch die zusStzliche Forderung n ~ d = l wd 1 auf das Intervall [0,1] norrniert und zu einern Gewiehtevektor w E ]R~ rnit w T (wl, w 2 , . . . , w~) zusarnrnengefasst. Vorausgesetzt wird, dass der Entseheidungsf~ller die relative Wiehtigkeit von je zwei Attributen beurteilt hat, also bei Attributen C1, C 2 , . . . , C.,~ dureh 1 .ft. ( r t - 1) viele Vergleiehe ausgedrtiekt hat, urn wieviel wiehtiger Attribut Ci irn Vergleieh zu Attribut C d ist (1 _< i, j _< rt). Diese Beurteilungen dt~rfen irn folgenden fehlerbehaftet (,,inkonsistent") sein. Es sei A (aid) ~ E R ~• die vorn Entseheidungsf~ller angegebene Matrix der Paarvergleiehe, wo aid die relative Wiehtigkeit v o m / - t e n Attribut gegent~ber dem j-ten Attribut ausdrt~ekt. Beispielsweise k6nnte der Entseheidungsf~ller als Paarvergleiehsrnatrix A ft~r vier Attribute C1, C2, Ca und C4 die Matrix 1
8
A
2
--
4 4 5 2
1
5 8
~1)
angeben, h n Falle v611ig widerspruehsfreier (,,konsistenter") SehStzungen gilt ft~r die Vergleiehsmatrix A die Kor~sister~zbedir~gur~ 9 ai~ .a~ d
aid
ft~r alle 1 _< i,j,h 0
ftir alle 1 _< i,j 0, ~ i = l pi 1 die Walirseheinliehkeiten bezeiehnen, mit der der Zeilenspieler seine Strategien Z,i, i 1 , . . . , rn spMt und mit qj, qj > 0, ?% ~ j = l qJ 1 die Wahrscheinlichkeiten, mit denen der SpaltenspMer seine Strategien Sj, j 1 , . . . , n wfihlt.
2.12 Definition Die Walirscheinliehkeitsverteilung p fiber {Z1, . . . , Z , ~ } heigt gernischte Str'ategie des Zeilenspielers und die Wahrseheinliehkeitsverteilung q fiber {S1, . . . , S,~} die gemischte Strategie des Spaltenspielers.
Wir haben bereits a~lgenommen, dass Spaltenspieler und Zeilenspieler ihre Strategien unabhKugig voneina~lder nur aufgrund der Kenntnis der Auszahlungsmatrix wKhlen. F fir den Zeilenspieler ergibt sich damit eine erwactete Auszalllung (Erwar tungswert der Auszahlungen) yon ?Tt
E(p,q)
n
(2.7) i
lj
1
2.3 Orundmodelle der Spieltheorie
39
Der Spaltenspieler verliert diesen Betrag (Krelle, 1968, S. 211). W/ihlen nun die jeweiligen Gegenspieler jeweils reine Strategien Sj bzw. ergeben sich obere bzw. untere Auszahlungsschranken fiir die Spieler yon:
Z,i, so
a,
rnaxrnir~E(p, Sj)
fiir den Zeilenspieler
(2.8)
a*
rain max E(Z,i, q) q z~
ffir den Spaltenspieler
(2.9)
p
Sj
und
Es stellt sieh dann die Frage, wann a,
a* gilt.
Zun/iehst zwei niitzliehe Definitionen: 2.13 Definition Das Paar der gemischten Strategien (p0, q0) heitgt wichtspunkt des Spieles, wenn
Sattelpunkt oder GMchge-
E(p, q0) -< E(p0, q0) -< E(p0, q)
2.14 Definition P0 bzw. q0 heigen gemischte (optim~le) Minimax-Strategien der Spieler und a, a* W heigt der gemischte Wert des Spieles.
2.15 Satz (Hauptsatz ffir Zweipersonen-Nullsummenspiele) Jedes Zweipersonen-Nullsummenspiel mit endlich vielen (reinen) Strategien besitzt einen gemischten Weft W. Jeder Spieler hat mindestens eine gemisehte Minimax-Strategie Po bzw. qo, mit der er fiir sich den Wert W garantieren kann.
Den Beweis dieses Satzes wollen wir verschieben, bis wir die Theorie der Linearen Programmierung benutzen k6nnen. Er folgt in Abschnitt 3.10. Dort werden wir auch auf Wege eingehen, die Minimax-Strategien nummerisch zu bestimmen.
2.3.3
Zweipersonen-Nieht nullsummenspiele
In Abbildung 2.4 wurde die Auszahlungsmatrix eines Mlgemeinen Zweipersonenspieles gezeigt, deren Komponenten aus Paaren (den Auszahlungen fiir den Zeilenspieler einerseits und den Spaltenspieler andererseits) bestanden. Fiir den Fall
40
2 Entscheidungs- und Spieltheorie
aij -bij erhielten wir daraus die Auszalflungsmatrizen yon Zweipersonen-Nullsummenspielen. Wir wollen diese Einschr/inkung jetzt fallen lassen und kommen damit zu Zweipersonen-Nichtnullsummenspielen oder Bimatrixspielen. Hier sind zwei Fglle zu unterscheiden: A. Der nicht-kooper'ative Fall, in dem offene oder heimliehe Abspraehen zwisehen den Spielern verboten sind. B. Der kooperative Fall, in dem jede Art der Kooperation zwischen den Spielern erlaubt ist. Wir wenden uns zunichst dem nieht-kooperativen Fall zu.
Nicht-kooperatlve Splele Im Gegensatz z u den Nullsummenspielen besteht nun kein einheitlicher Wert des Spieles. Stattdessen k&nnen die Mindestgewinne der Spieler wie folgt definiert werden:
2.16 Definition Bei Bimatrixspielen ist der Mindestgewinn (bzw. die untere Schranke) des Zeilenspielers wt
az*
max rain Ez(p, q) P
q
max rain ~ i=1
n
~ Piqyaiy j=l
Analog ist der Mindestgewinn fiir den Spaltenspieler wt
as'*
max rain Es 3) spielbedingte und pers6nliehkeitsbedingte L6sungen untersueht werden. Ebenso kaan man hier aueh zwisehen Nullsummen- und Niehtnullsummenspielen mit oder ohne Kooperation unterseheiden.
46
2 Entscheidungs- und Spieltheorie
Bei den nicht-kooperativen Spielen besteht kein wesentlicher Unterschied zwischen den Zweipersonen- und den N-Personenspielen, denn in diesem Fall stellt das NPersonenspiel nur eine direkte Verallgemeinerung des Zweipersonenspiels dar. Bei kooperativen Spielen jedoch taucht ein ganz grundlegender, qualitativer Unterschied aufl da Beziehungen zwischen mehreren Personen die MSglichkeit der Koalition zulassen. Der Grundgedanke im Falle einer Kooperation kann wie folgt in zwei Stufen dargelegt werden: (1) A ushandlungspwblem Jeder Spieler bewertet zun~chst -
-
was jede Koalition erreichen kann, welchen Teil innerhalb der jeweiligen KoMition der Spieler erreichen kann 5.
(2) Koalitionsbildung Aufgrund obiger ,,Ordnung" der Koalitionen fiir jeden Spieler entscheiden sich dann die Spieler fiir KoMitionen. In diesem Abschnitt soll die Theorie der Koalitionsbildung, die zu den persSnlichkeitsbestimmten LSsungen yon kooperativen N-Personenspielen z/ihlt, n/iher erl/iutert werden. Jeder der N Spieler hat vor Beginn des ersten Spiels jede der 2N 1 KoMitionen bewertet. (Das Aushandlungsproblem ist bereits gelSst.) Bei den Spielern mSgen die folgenden PrMerenzreihenfolgen bestehen, ausgedriickt in Indexziffern: S 1 ( T l l ) ~> S 1 (T12) ~> S 1 (T13) ~>. : S N (TN1) ~ S N (TN2) ~ S N (TN3) ~ .
Hierbei sei Tij eine Teilmenge der Menge {1, .., N} (Koalition), S t (Tij) bezeichne die Indexziffer des Wertes der Koalition Tij fiir den Spieler k. Das weitere Vorgehen soll an folgendem Vierpersonenspiel (Krelle, 1968, S. 340) erl~utert werden. (Sq(1234))>
$1(123)
>]$1(124)]>$1(134)>$1(12)>$1(13)>$1(14)> $1(1)
($3(3124))>
$3(314)
> $3(324)>5~3(312)>5~3(32)>5~3(34)>$3(31)>~
5 Vgl. zum Problem der AusgleichszMdungen (Bitz, 1981, S. 260 ft.)
2.3 Grundmodelle der Spieltheorie
47
Es k6nnen sich hierbei offensichtlich nut die Koalitionssysteme A: (124) gegen (3) (viereckig umrandet) oder B: (1234) (umkreist) bilden. Bei allen a~deren Koalitionen ist entweder das erste oder das zweite System fiir alle in einer Koalition zusammengeschlossenen Koalitionsteilnehmer besser 6. Krelle definiert den Begriff der Koalitionsdomina~z wie iblgt: ,~Ein Koalitionssystem A mit den Koalitionen T1, T 2 , . . . , T,~ dominiert ein anderes Koalitionssystem B (A >- B), wenn es in A n - 1 Koalitionen gibt, etwa T 1 , . . . , T,~ 1, bei denen der Wert der Teilnahme an einer dieser Koalitionen flit jeden der Koalitionsteilnehmer grS~er ist Ms der Weft ihrer Teilnahme a~ den Koalitionen des Systems B, und wenn es flit die Personen in der iibrigen Koalition T,~ da~m gfinstiger ist, diese eine Koalition zu bilden, als allein oder in Restkoalitionen aufgespalten zu spielen" (Krelle, 1968, S. 341). Zur L5sung eines Koalitionsproblems unterscheidet man:
(~) statische L6sungen und ~4) dynamische LSsungen. Zu ~) Die statische LSsung eines Koalitionsproblems ist ein System, das yon keinem anderen Koalitionssystem dominiert wird (stabile LSsung). Dabei kann ein Koalitionssystem mehrere statische L5sungen haben (A und B des obigen Beispiels sind statische L5sungen).
Die dynamische L6sung eines Koalitionssystems stellt einen Dominanzzirkel yon Koalitionssystemen dar. Dabei dominiert Koalitionssystem A das System/3, dieses ein System C usw., bis das letzte wiederum das System A dominiert. Das fblgende Dreipersonenspiel besitzt als L6sung einen Zirkel der KoalitionssysteA: (12) gegen (3), B: (13) gegen (2), C: (23) gegen (1) und D: (123).
me
Fiir die einzelnen Spieler gebe es folgende Pr~ferenzordnung: Spider 1:
D>-/3 >-A>-C
Spider 2:
A>-C>-D>-/3
Spieler3:
D>-C>-B>-A
Als LSsung besitzt dieses Spiel den Zirkel A >- C >- /3 >- A und zus~tzlich die statisehe LSsung D. 6 z.B. ist das System A besser flit die Spider 1, 2, 4 als ein System C: (134) gegen (2).
48
2 Entscheidungs- und Spieltheorie
2.4
Deskriptive
Entscheidungstheorie
Im Gegensatz zu den bisher besprochenen Gebieten der Entscheidungs- und Spieltheorie, die alle formalen Charakter haben, versteht sich die deskriptive Entscheidungstheorie, die auch als empirisch-kognitive Entscheidungstheorie bezeichnet wird, als eine Realwissenschaft. Ihre wissenschal%lichen Aussagen stellen den Anspruch, Aspekte der Realit//t wahrheitsgetreu abzubilden. Dies bedingt, dass sich die Wahrheit der Aussagen (die Abbildungstreue realer Entscheidungsprozesse) durch Vergleich mit der Realit/it als wahr oder falsch iiberpriifen lassen. Der kognitiv-deskriptive Entscheidungsbegriff unterscheidet sich vom abstrakten axiomatischen entscheidungslogischen - Die Informationsbeschaffung
scheidung.
-
Begriff vor allem in dreierlei Hinsicht:
und -vera1"beitung wird relevanter Teil der Ent-
Eine Entscheidung wird nicht mehr als situations- und kontextunabh/ingig betrachtet.
- Das Instrumentarium der Entscheidungsf/illung, insbesondere der Mensch, wird mit seinen Eigenschal%en in Betracht gezogen. Wird die Informationsfindung und -verarbeitung als Teil der Entscheidung angesehen, so muss zwangsl/iufig der Begriff der Entscheidung erweitert werden. Nicht mehr nur der ,,Wahlakt'; wird betrachtet, sondern der gesamte Entscheidungs- bzw. Intbrmationsverarbeitungsprozess. In der normativen Entscheidungstheorie wird vorausgesetzt, dass die vier Komponenten des ,,Grundmodells der Entscheidungstheorie", d.h. Aktionenraum, Zustandsraum, Ergebnisraum und Nutzenraum, gegeben u n d - deterministisch oder stochastisch-definiert sind. Man bezeichnet dies als ,,geschlossenes Modell". Die Tatsache, dass in der deskriptiven Entscheidungstheorie die Entscheidung als Informationsverarbeitungsprozess verstanden wird, hat drei Konsequenzen: - Die vier oben genannten Komponenten der Entscheidung k6nnen nicht als bekannt, entscheidungsunabh/ingig und vollst/i~ldig definiert angesehen werden. - Die Art der Bestimmung der obigen Rgume muss als eine wesentliche Komponente angesehen und in die Betrachtung einbezogen werden. -
Das Instrumentarium der Informationsverarbeitung (also der Mensch, die Intbrmationstechnologie, die EDV usw.) wie auch das Zustandekommen yon Entscheidungsproblemen und Entscheidungsprfiaiissen muss Beriicksichtigung finden.
Da der Mensch als wichtigstes ,~nstrument" der Entscheidungsfgllung zu betrachten ist, werden seine Eigenschaften in bezug auf die Informationsverarbeitung und sein situationsbedingtes Suchverhalten wichtige Betrachtungsgegenstfiade. Modelle dieser Art werden als offene Modelle bezeichnet. Die Analyse mit offenen Modellen
2.4 Deskriptive Entscheidungstheorie
49
~,
Information Inf.Verarbeitung>
LOsungsraum Inf.Verarbeitung>
Zielfunktion
(Inf. Verarbeitung } Handlungsvorschlag
Nein Ja
Der Entscheidungsbegriff der empirisch-kognitiven Entscheidungstheorie Abbildung
2.8:
Realisation > Kontrolle
}
muss zwangslSufig differenzierter und weniger abstrakt sein, Ms dies bei geschlossehen Modellen der Fall war. Im Gegensatz zur Definition einer Entscheidung Ms Wahlakt, wie sie in der Entscheidungsmatrix in Abbildung 2.2 skizziert wurde, kann der Entscheidungsbegriff der empirisch-kognitiven Entscheidungstheorie eher dutch Abbildung 2.8 charakterisiert werden. Gem~t~ der realwissenschai~lichen Ausrichtung der empirisch-kognitiven Entscheidungstheorie muss auch der Rationalit~tsbegriff im Lichte der menschlichen MSglichkeiten fiberprfift werden. ,,Objektive" Rationalits im Sinne der normativen Entscheidungstheorie setzt voraus, dass der Entscheidungsf~ller - fiber volle Information bezfiglich des Entscheidungsproblems verffigt, -
in der Lage ist, yon vornherein eine ,xationale" Nutzenfunktion zu bilden und alle relevanten Informationen simultan zu verarbeiten (Voraussetzungen geschlossener Modelle) sowie
50
2 Entscheidungs- und Spieltheorie -
Fakten objektiv zu erkennen.
Die dem Individuum zur Verfiigung stehenden Informationen bzw. die yon ibm aufgenommenen Informationen bilden jedoch gewShnlich die RealitMen nut unvollkommen ab. Der Mensch bildet sich aufgrund dieser Informationen ein ,,inneres Modell" seiner Umwelt. Heute ist man geneigt, auch ein Entscheidungsverhalten als rational zu bezeichnen, das miter Zugrundelegung dieses inneren Modells formal rational ist. Man spricht dann yon s~tbjektiver Rationalitiit (Kirseh, 7071, Bd. I, S. 63).
Das ,)nnere Modell", das auch als ,Jmage" bezeichnet wird, k a m man sich aus drei Elementeklassen zusammengesetzt denken (Boulding, 1956; Kirsch, 7071, Bd. 1, S. 77): I. Werten, Zielen, Kriterien, die vom Individuum zugrunde gelegt werden, 2. Uberzeugungen, die die mSglichen Konsequenzen der alternativen Handlungsweisen beschreiben und 3. den mSglichen Verhaltensweisen. Immer mehr wird jedoch akzeptiert, dass die Grenzen mensehlicher RationalitM weitaus beschr/~nkender sin(l, als meist angenommen wird. Simon fasst diese Beschr/inkungen wie folgt zusammen (Simon, 1957b, S. 8): - Rationalit/it erfordert vollstfiadige Kenntnis und Voraussicht der mSglichen Konsequenzen, die sieh bei jeder Wahl ergeben werden. TatsS~chlieh ist die Kenntnis der Konsequenzen stets fragmentarisch. -
-
Da diese Konsequenzen in der Zukunft liegen, muss bei ihrer Bewertung die Einbildungskraft den Maagel aa tats/ichlich erlebtem Gefiihl ersetzen. Werte kOnnen jedoch nut mlvollkommen antizipiert werden. Rationalit/~t erfordert eine Wahl zwischen allen mSglichen Verhaltensweisen. Tats/~chlich werden jedoch jeweils nur sehr wenige aller mSglichen Alternativen erwogen.
,,Die Kapazit/it des menschlichen Verstandes flit die Formulierung und LSsung komplexer Probleme ist sehr klein im Vergleich zu dem Umfang der Probleme, deren LSsung fiir die Verwirkliclmng eines objektiv rationalen Verhaltens in der RealitS~t-oder wenigstens ffir eine vernfinftige AnnS~herung an eine solehe objektive Rationalit/it-eribrderlich ist" (Simon, 1957b, S. 198). Simon geht aufgrund dieser Erkenntnisse noeh welter und sprieht von beschr'iinkter Rationalitiit (bounded rationality) menschlichen Verhaltens, die durch folgende Einschr/~nkungen eharakterisiert wird (Klein, 1971, S. 67): I. ,,Obwohl optimale LSsungen grundsgtzlich erwiinscllt sind, werden im allgemeinen befriedigende LSsungen akzeptiert; weleher Standard als befriedigend gilt, h/iagt yore Anspruehsniveau des Entseheidungstr/igers ab.
2.4 Deskriptive Entscheidungstheorie
51
Das Anspruchsniveau wird durch den Antagonismus zwisehen Erw0ztungsbildung und erreichbarer Befriedigung geprggt und ist selbst Bestandteil des Entscheidungsprozesses. 2. Das Entscheidungsprogramm muss angeben, wie die Informationen zu erh~lten sind, die es beim Entseheidungssubjekt voraussetzt. Haadlungsalternatiyen und deren Konsequenzen werden naeheinaader dureh Suehprozesse ermittelt, deren Erfolg nicht garantiert ist. Fiir die Beschreibung der informationsgewinnenden Prozesse sind nur operation~le Prozeduren zulgssig. 3. Im Laufe der Zeit wird fiir wiederkehrende Situationen eine Sammlung von Aktionsprogrammen (eine ,~Programmbibliothek") entwiekelt, die Ms WahlmSgliehkeiten dienen. Jedes Aktionsprogramm aus dieser Programmbibliothek ist fiir eine begrenzte Anzahl yon Situationen und/oder die Ermittlung bestimmter Konsequenzen bestimmt. Es kann teilweise unabhSngig yon anderen ausgefiihrt werden- d. h. die einzelnen Aktionsprogramme kSnnen als selbstfiadige ,,Unterprogramme" betraehtet werden, die nur lose miteinaader verbunden sind. 4. Das Entscheidungsmodell darf vom Menschen nicht Informationsverarbeitungsprozesse verlangen, deren zeitliche Dauer fiir ihn unertrSglich ist. IIier bietet sich eine Unterteilung der Entscheidungstheorie an, die beriicksichtigt, (a) welehe I-Iilfsmittel dem Mensehen fiir seine Bereetmungen zur Verfiigung stehen, und (b) ob die Situation eine Vorbereitung der Entseheidung gestattet oder nicht. Entscheidungsmodelle fiir Real-Time-Verhgltnisse werden sich yon Modellen, die zur Entscheidungsfindung ohne Zeitdruck dienen, erheblich unterscheiden." Die beschr/inkte Rationalit/it menschlichen Entscheidungsverhaltens/ugert sich gewShnlich in der Vereinfachung komplexer Entscheidungsprobleme. Insbesondere drei Aspekte sind zu nennen (siehe hierzu G/ifgen, 1974, S. 199 frO: - Einschrgnkung der Reichweite der Entscheidungen (in zeitlicher, tectmischer u.a. Hinsicht), - Kondensation des BetrachtungsMdes (VergrSberung der Alternativen etc.) und -
Zerlegung komplexer Entscheidung (selbst bei nicht gegebener Unabh/ingigkeit!).
Die Literatur auf dem Gebiet der empirisehen Entseheidungstheorie hat, wie aueh die empirisehe Ertbrsehung mensehliehen Entseheidungsverhaltens und mensehlicher Entscheidungsfghigkeit, in den letzten Jahren erheblich zugenommen. Da dieses Buch jedoch iiberwiegend formalen Charakter hat, sei der interessierte Leser auf bestehende Literatur auf dem Gebiet empirischer Entscheidungsforschung verwiesen (z. B. Witte, 1981; Witte and Zimmermaan, 1986; Hausehildt and Griin, 1993). Ausdriieklieh zu betonen ist jedoeh, dass dieses Gebiet sehon jetzt fiir das
52
2 Entscheidungs- und Spieltheorie
Operations Reseaxeh eine sehr groge Bedeutung hat und dass in Zukunt% eine stfixkere Interaktion zwischen formMer Entscheidungslogik und empirisch-kognitiver Entscheidungstheorie zu erhoffen und zu erwarten ist.
2.5
E n t s c h e i d u n g e n in schlecht strukturierten S i t u a t i o n e n
Das im folgenden beschriebene Gebiet hat sowohl formal-theoretische wie auch realtheoretische Zfige. Es sei daher am Ende des Kapitels fiber Entscheidungstheorie behandelt.
2.5.1
Einfiihrung
Um sieh bei der L6sung von Entscheidungsproblemen leistungsffihiger Methoden und Verfahren bedienen zu k6nnen, ist es meist natig, die Probleme in einem formalen (mathematischen) Modell abzubilden. Bei Problemen aus dem naturwissenschMtlichen oder ingenieurmggigen Bereich ist dies meist mit Hilfe der klassischen Mathematik u n d - bei stochastischen Strukturen- mit Hilfe der Statistik mSglich. Im Bereieh der Sozialwissensehatten tauehen ott besondere Sehwierigkeiten dadureh auf, dass der Menseh nieht in der Lage oder nieht willens ist, Zielvorstellungen oder Einschrgnkungen des L6sungsraumes in einer Weise zu akzentuieren, die es erlaubt, sie mit einer auf zweiwertiger Logik beruhenden Mathematik adgquat abzubilden. Das gleiche gilt, wenn Ph/inomene oder funktionMe Zusammenhgnge zu berficksichtigen sind, die nieht in diehotomer Weise besehreibbar sind. Beispiele vager Zielvorstellungen sind die Forderungen naeh ,,aagemessenen Gewinhen", ,,befriedigendem Betriebsklima", ,,guter oder akzeptabler Rentabilitgt" etc. Beschr/inkungen des L6sungsraumes k6nnen Formen wie ,,Die Budgetvorgaben sollten nicht wesentlich fiberschritten werden", ,,Die Liquiditgt sollte nicht zu angespannt sein", ,,Unser Ruf darf dutch die Aktionen keine wesentliehe Einbuge erleiden", aanehmen. Sehlieglieh k6nnen Komponenten des Entseheidungsproblems durehaus Besehreibungen wie ,,beunruhigende Geseh/iftsentwieklung", ,,vielverspreehende Zukunftsaussichten", ,,Junge Mgnner", ,,Gefghrliche Praktiken" etc. enthalten. Aussagen der Art ,,Wenn die Gewinnerwartungen schlecht sind, dann ist die Investitionsneigung gering" oder ,,Bei vielverspreehenden Erfolgsaussiehten eines Produktes sind die Entwieklungsaufwendungen erheblieh zu erhShen" haben den gleiehen Charakter wie die oben genannten Ph/inomene. An dieser Stelle ist ausdrficklich darauf hinzuweisen, dass die Unsch/irfe, fiber die hier gesprochen wird, nicht auf stochastische Ph/inomene zurfickzuffihren ist. Sonst k6nnten sie ja durehaus ad/iquat mit Hilfe statistiseher oder wahrseheinliehkeitstheoretiseher Konzepte formuliert werden.
2.5 Entscheidungen in schlecht strukturierten Situationen D e m Modellbauer
53
stehen in diesen Fgllen im wesentliehen drei Wege often:
I. Er kann sieh mit einer zwar zutreffenden, aber meist nieht eindeutigen und un-
scharfen verbalen Modellformulierung begnfigen. Dies wird im allgemeinen die Anwendung leistungsfghiger mathematischer Analyse- und L6sungsmethoden unmSglieh maehen und gleiehzeitig zu einer verbalen, unscharfen und stark interpretationsbedfirftigen L6sung des Modells ffihren. . Er kann das schlecht strukturierte unscharfe Problem
mit Hilfe scharfer mathematischer Methoden approximieren. Hierbei I/iuft er jedoch Gefahr, dass das approximierende Modell stark vom wirklichen Problem abweieht. Da~nit kann unter Umst/inden die L6sung des Modells nieht Ms L6sung des zugrunde liegenden Problems a~xgesehen werden.
. Er kann sich sowohl bei der Formulierung des Modells als auch bei der Be-
stimmung einer LSsung des Konzeptes der Unscharfen Mengen bedienen. Auf dieses Konzept wird im tblgenden Absehnitt n/iher eingegangen werden. Den beiden erstgena~mten Vorgehensweisen seheint es vor allem deshalb fiberlegen zu sein, well die in der Unschgrfe des wirklichen Problems liegende Information-im Gegensatz zu den meisten Approximationen-erhalten bleibt. Darfiberhinaus wird wahrscheinlich die Aussage fiber die LSsung oder die LSsungsmSgliehkeiten intbrmativer und weniger vieldeutig sein, als dies beim Gebraueh verbaler Modelle der Fall wire.
2.5.2
Zadeh's
Min/Max-Theorie
der Unseharfen
Mengen
Die in diesem Kapitel benutzten Begriffe entsprechen im wesentlichen den yon Bellman und Zadeh (Bellman and Zadeh, 1970) eingeffihrten. Als weiterffihrender Text sei auf (Zimmermann, 1983, 1993, 2001; Biethahn, 1998) verwiesen. 2.22 Definition
Ist X eine Menge (yon Objekten, die hinsichtlich einer unscharfen Aussage zu bewerten sind), so heigt A:
{ ( z , # j ( z ) ) , z E X}
eine Unscharfe Menge auf X. Hierbei ist #A : X --~ • eine reellwertige Funktion. Sie wird als ZugehSrigkeitsfunktion (membership fmiction) bezeichnet. GewShnlich wird der Wertebereieh yon #A eingesehr~nkt auf das abgeschlossene Intervall [0,1]. Im Folgenden wollen wir uns auf diesen FM1 beschr~nken, # j ( z ) gibt dann ffir jedes z E X den Grad des FfihrwahrhMtens einer unseharfen Aussage an.
54
2 Entscheidungs- und Spieltheorie
Ist der Wertebereich yon #A die zweielementige Menge {0,1}, so ist A eine gewShnliche (scharfe) Menge. Die klassische Menge ist somit ein Sonderfall (ein Extreln) der Unscharfen Menge.
A {(X,#A(X)), x 9 X} ist in diesem Fall durch folgende Abbildung in eine klassische Menge iiberfiihrbar: E(A)
A
{x 9 X I #A(X)
1}.
2.23 Beispiel X sei die Menge aller mSglichen Autobahn-Reisegeschwindigkeiten. x
(80, loo, 120,140,160,180)
Fiir eine bestimmte Person kSnnte der Begdff ,~siehere Autobalmgeschwindigkeit" durch folgende Unscharfe Menge A gegeben sein:
A
{(so, 0.5), (loo, 0.7), (12o, 1.o), (15o, 0.9), (16o, 0.6), 0so, o.o)}.
[]
2.24 Definition (Normalisierte Unseharfe Mengen) Die ZugehSrigkeitsfunktion #A(') einer Unscharfen Menge A muss nicht unbedingt auf das Intervall [0, 1] abbilden. Ist sup~c X #A(X) 1, so heigt die Unscharfe Menge A normalisiert. Fiir den Fall, class s u p ~ x #A(X) ~ 1, aber > 0, kann eine Unscharfe Menge A immer dadurch normalisiert werden, class man ihre ZugehSrigkeitsfunktion #A(X) (lurch das s u p ~ x #A(X) dividiert.
Bei den im folgenden erws wichtigsten Operationen mit Unscharfen Mengen ist im allgemeinen vorauszusetzen, dass die Suprema der ZugehSrigkeitsfunktionen der Unscharfen Mengen gleich sind. Es sei daher der Einfachheit halber vorausgesetzt, dass alle Unscharfen Mengen normalisiert sind.
2.25 Definition (Enthaltensein) Eine Unscharfe Menge A ist genau dann in B enthalten, wenn gilt:
~A(x) _< ~ . ( x )
w 9 x
Ist A in B und B in A enthalten, heigen die beiden Unschaz{en Mengen gleich.
2.5 Entscheidungen in schlecht strukturierten Situationen
55
2.26 Definition (Durchschnitt) Eine ZugehSrigkeitsfunktion der Schnittmenge zweier Unschazfer Mengen A mid/3 ist punktweise definiert dutch:
,Ar~.(~)
min(,A(~)~ , . (x))
W9 X
2.27 Definition (Vereinigung) Die Zugeh6rigkeitsfunktion der Vereinigung zweier Unscharfer Mengen A und /3 ist definiert als:
2.28 Definition (Produkt) Die ZugehSrigkeitsfunktion des algebrgischen Produktes zweier Unscharfer Mengen A und/3 ist definiert Ms:
,A,(~=)
,A(~=).,,(~=)
w= 9 x.
2.29 Definition (Summe) Die Zugeh6rigkeitsfunktion der algebraischen Summe von A und/3 ist definiert als:
,A§
,A(x)+,.(~)-,A(~)
,.(~)
WeX
Bei der Formulierung yon Modellen sind bisher in der Literatur - die Vereinigungzweier Unscharfer Mengen als Verknfipfung (der durch die Unscharfen Mengen beschriebenen Begriffe) dutch das logische ~nklusive oder" und - der Durchschnitt als Verkn~pfung mittels logischem ,und" interpretiert worden.
2.5.3
Unscharfe Entscheidungen
In der Einfiihrung wurde bereits eingehend diskutiert, dass nur im Grenzfall eine reale Situation dutch ein deterministisches Modell ads beschrieben werden
56
2 Entscheidungs- und Spieltheorie
kann. Nut daan kann also auch ein deterministisches Modell zu einer Entscheidungssituation erstellt werden. Ein deterministisches Entscheidungsmodell im Sinne der Entscheidungslogik wird durch folgende Charakteristika beschrieben (siehe auch Abschnitt 2.2.1): I. Eine Menge erlaubter oder mb'gl{cher" Aktio~ert. Gewbhnlich wird diese Menge durch Bedingungsgleichungen oder -ungleichungen als Teilmenge des ]R~ definiert. 2. Eine Zuordnungsvorsch~'{ft, die den mbglichen Aktionen Ergebnisse zuordnet und eine ,,Ordnung der Vorzugswfirdigkeit" der Ergebnisse. Wfinschenswert ist eine vollst~ndige Ordnung. Genau an diesen Charakteristika muss sich aber die Kritik an deterministischen Ent scheidungsmodellen entzfinden. Z'~ I.
Ein seharfes Abgrenzen erlaubter Aktionen yon unerlaubten Aktionen ist gew6hnlich
nicht m6glich-oder nur mit einem unverhgJtnismg~ig hohen Aufwand an Inibrmationsbeschaffung. Die Unschgrfe kann sowohl in den Phgnomenen selbst liegen, die ein Entscheidungsmodell beschreibt, als auch in dem subjektiven Bewerten des Entscheidenden bezfiglich der Zul~ssigkeit yon Entscheidungen. Konkret: Der Lagerverwalter einer Unternehmung wird beauftragt, eine solche Menge des gerade neu auf den Inlaadsmarkt gebrachten importierten Gutes zu lagern, dass die mbgliche Nachfrage vbllig gedeckt werden kann. Da das Gut noch nicht eingeffihrt ist, liegen keine wahrscheinlichkeitstheoretischen Schgtzungen fiber den Nachfrageverlauf vor. Die Forderung an den Lagerverwalter ist als seharfe Formulierung unsinnig. Es w~re der Situation adiquater zu fordern, dass er so viel lagern soil, dass die Nachfrage mbglichst vbllig gedeckt werden kann. Diese Unsehg~'fe liegt offensichtlieh in der realen Situation begrfindet. Hinzu kommt, dass der Entscheidende (bier der Lagerverwalter) seine ganz persbnliche Erfahrung und subjektive Einstellung zu der Direktive einfliegen l~sst. Was nun wirklich die ,,geeignete Menge" ist, kann also bestenfalls durch eine Unseharfe Menge dargestellt werden. Z,t~ 2.
Vor allem die Bewertung der Ergebnisse ist vom Entscheidenden abh~hlgig. Die vereinfachende Annahme, dass jedem Ergebnis eindeutig ein reeller Zalilenwert als Nutzen zugeordnet werden kann, muss revidiert werden. Ferner spiegelt die klassisehe Differenzierung in Restriktionen einerseits und Zielfunktionen andererseits oft nicht den mbglichen Wunsch des Entscheidenden wider, beide Komponenten eines Entscheidungsmodells gleichartig zu behaadeln.
2.5 Entscheidungen in schlecht strukturierten Situationen
57
In der klassisehen normativen Entscheidungstheorie kann bei Sieherheitssituationen die Entscheidung fiir eine optimale Handlungsalternative als die Entscheidung fiir die Alternative angesehen werden, die sowohl der Menge der zulS~ssigen (mSglichen oder erlaubten) LSsungen angehSrt als auch der Menge der Alternativen mit hSchstent Nutzen. Sie ist also die Sehnittmenge der beiden Mengen: ,,Zul/issigeLSsungen" und ,,optimale LSsungen". Die zweite Forderung wird allerdings (bei eindeutiger optimaler L6sung) oft dadurch berfieksichtigt, dass man in der Menge der zul/issigen L6sungen naeh der mit maximalem Nutzen sueht. Analog dazu kann man nun eine Unscharfe Entscheidnng definieren: 2.30 D e f i n i t i o n Sind in einem Entscheidungsmodell sowohl die Zielfunktion Ms aueh die den L6sungsraum besehrfiakenden Funktionen als Unsehax'fe Mengen dax'stellbar, so ist die Unscharfe Menge ,~Entscheidung' der Durchschnitt aller relevanten Unscharfen Mengen.
Um diese Schnittmenge errechnen zu k6nnen, ist zun/ichst festzulegen, wie die Schnittmenge zweier oder mehrerer Unscharfer Mengen bestimmt wird. Zadeh schlug dafiir in der yon ihm konzipierten Theorie Unscharfer Mengen zun/ehst den Minimumoperator vor (siehe Def. 2.26). Wir wollen zun/iehst diesen Operator akzeptieren, obwohl dazu an sp/iterer Stelle noeh etwas gesagt werden wird. Die Zugeh6rigkeitsfunktion # z der Entscheidung bei gegebener unscharfer ZMvorstellung Z und L6sungsraum L ergibt sieh daan zu:
#E(:c)
#ZNL(:C)
min(#z(cc),#L(:C)), :c E X
(2.10)
2.31 Beispiel Ein Vorstand wolle die ,optimale", den Aktions anzubietende Dividende bestimmen. Diese Dividende solle aus finanzpolitischen Griinden ,~ttraktiv" sein. Die Zielvorstellung einer ,attraktiven" Dividende sei durch die in Abbildung 2.9 gezeigte ZugehSrigkeitsfunktion der Unscharfen Menge Z dargestellt.
Als Einschr~kung gelte die Forderung, dass die Dividende aus lohnpolitischen Erw~igungen heraus ,bescheiden" sein miisse. Die Unscharfe Menge L der als bescheiden zu bezeichnenden Dividenden zeigt Abbildung 2.10. Die ZugehSrigkeitsfunktion der Unscharfen Menge Entscheidung (optimale Dividende) ist bei Benutzung des Minimum-Operators die stark ~usgezogene Kurve in Abbildung 2.11.D Stellt maa die Zugeh6rigkeitsfunktionen der beiden Unschax'fen Mengen Z und L algebraisch dar, so ergibt sich:
58
2 Entscheidungs- und Spieltheorie
~(x) 1,C 0,9 0,8 0,~ 0,6 0,5 0,4 0,3 0,2 0,1 I
1
2
3
4
5
6
x = Dividende
[%]
Abbildung 2.9: Attraktive Dividende
~(x) 1,0 0,90,8O,T 0,60,5 0,4 0,3 0,2 0,1 i
1
2
3
4
5
6
Abbildung 2.10: .Bescheidene" Dividende
x = Dividende
[O/o]
2.5 Entscheidungen in schlecht strukturierten Situationen
59
~(• 1,0 0,9 0,8 0,7 0,6 0,5 0,4 0,3 0,2 0,1 1
2
3
4
5
6
|
7
x = Dividende
[%1 A b b i l d u n g 2.11: ,,Optimale" Dividende fiir z _< 1,2
1
~(~)
~[-29x
~ - 243~ ~ + 16~ + 2388]
[1
fiir z > 6
2@oo[- 2 9 z 3 - 366z2 - 877z + 540]
fiir 1 < z < 5 , 8
0
fiir z < 1
0
#z(:c)
ffir 1 , 2 < z < 6
ffir z _> 5,8
Die ZugehSrigkeitsfunktion der ,,Entscheidung" ist dann nach (2.10): ,E(x)
m i - [ , z ( x ) , , L ( ~ ) ] , ~ ~ X.
Die ,33ntscheidung" ist hier offensichtlich wiederum eine Unschaxfe Menge mit mehr als einem Element. Will man daraus eine spezielle LSsung als ,,optimale Entscheidung ~ selektieren, so kSnnte man z.B. die LSsung wSlllen, die in der Unscharfen Menge ,,Entscheidung" den hSchsten ZugehSrigkeitsgrad hat, d.h. ~o
mumi.[,z(~),,L(x)],
~ ~ X.
In unserem Beispiel w~re das die Dividende 3.5 % mit #E(zo) dung 2.11).
0.338 (siehe Abbil-
60
2 Entscheidungs- und Spieltheorie
2.5.4
Alternative S y s t e m e
Das yon Zadeh vorgeschlagene mathematisehe System ist in sieh konsistent und ffir viele Anwendungsgebiete (wie z. B. die sogenaamte M6glichkeitstheorie oder theory of possibility) auch gut geeignet. Will m a n die Theorie jedoeh dazu verwenden, mensehliches Verhalten, Bewerten und Entseheiden abzubilden, so reicht mathematisehe Konsistenz allein nicht aus. Vielmehr muss das benutzte mathematisehe System aueh menschliehe Reaktionen adgquat nachbilden kSnnen. U m dies zu erreiehen oder sicherzustellen, sind zwei Ans/itze brauehbar: A. Der axiomatische W e g /ihnlieh dem in der Nutzentheorie oder normativen gntseheidungstheorie besehrittenen.
B. Der empirische Weg.
Axiomatische Ableitungen
Verschiedene Formen yon mathematischen Modellen flit den ,,Schnittmengen-Operatof' sind in der Zwisehenzeit axiomatiseh gerechtfertigt worden. Der MinimumOperator wurde yon Bellman und Giertz (Bellman and Giertz, 1973) axiomatiseh abgeleitet. Ha~nacher (1978) leitete ehmn a~lderen Operator ab. Er ging dabei davon aus, dass die ,und"-Verbindung zweier durch Unscharfe Mengen darstellbarer Ziele oder Besehr~nkungen als die Schnittmenge der entsprechenden Unseharfen Mengen repr~sentiert werden k6nne und die ,odef~-Verbindung entspreehend dureh die Vereinigung. Im Iblgenden werden mit A, B und C drei Unscharfe Mengen in X mit den Zugeh6rigkeitsfunktionen #A, #B und #c bezeichnet, x E X. Hamaeher fordert nun yon seinen Operatoren primgr die Erfiillung folgender Axiome, hier abgeleitet fiirden Durchschnitt: Axiom
I: Assoz/ativ/tg/t,d.h.AO (B O C)
( A O B ) OC.
Axiom
2: Sfef/gke/f
Axiom
3: lnjekf/viff/fin jedem Argument, d.h.wenn (A o B)/~ (A o C), dann gilt
Br
A x i o m 4: F/ir die ZugehSrigkeitsgrade gelte: Ist #A(X) ist auch #AnB (z) 0.
0 und #B(x)
0, daam
Es sei darauf hingewiesen, dass hinter jedem Axiom umfangreiche inhaltliche Erw~gungen dariiber stehen, welche Eigenschaft ein Operator im Entscheidungskontext haben sollte (Ngheres siehe Haanacher (Haanacher, 1978)).
2.5 Entscheidungen
in schlecht strukturierten Situationen
61
Die Axiome 1 bis 3 implizieren: I. Gibt es ein x E (0, 1) mit #A(X) weitere x / mit dieser Eigenschaft:
#B(x) #ANB(X), dann gilt ffir jedes #A(X ~) #A(X).
#ANB(x) -- #BNB(X)
II. A~(0,1)fA(X) tauscht.
#B(X) entspr, falls A und B ver-
III. A A B ist streng monoton steigend bzgl. A und bzgl. B. Die Axiome 1 bis 4 schlieglich implizieren: IV.
lirn~A(~)~OfANB(X )
lirn~A(~)~OfBNA(X )
0
V. A~(o,o #.4~A(~) < #A(x) vT. A~ 0
(2.11)
62
2 Entscheidungs- und Spieltheorie
Empirische Ans~itze. Fiir diejenigen, die die Theorie Unscharfer Mengen Ms Realtheorie zur Beschreibung bzw. Modellierung yon Entscheidungen verwenden wollen, stellt sich die Frage, ob die behaupteten oder axiomatisch abgeMteten Operatoren auch tats/ichlich dem entsprechen, was ein Mensch mit der Verwendung yon ,,und" oder ,,oder" bei der Beschreibung yon Entscheidungsmodellen zum Ausdruck bringen will. In den Jahren 1976 bis 1979 wurde das Verkniipfungsverhalten yon Testpersonen empirisch mitersucht. Getestet wurden u.a. folgende Operatoren: Minimum, Produkt, Maximum, Algebraische Summe, Arithmetisches Mittel, Geometrisches Mittel, ein spezieller sogenannter ,,7-Operator" (Zimmermann and Zysno, 1980). Es wurden u. a. die folgenden Resultate erzielt:
1.d
errechnet
#(x)
.9 .8
/
.7 /
9
.6
/
/
/
/
/
/
/
/
/
/
/.
/
.5
/.
.4 .3
/
/
.2
/
/ 0
/
/
9. .'1
9
.2
9
9
.3
9
beobachtet
p(x)
9
.4
.i
.8
.9 1.0
A b b i l d u n g 2.12: Minimum-Operator: beobachtete und errechnete ZugehSrigkeitsgrade
Der ,,-y-Operator" hatte dabei folgende Form:
0
0
Die fiir uns wichtigen Ergebnisse der Dualitgtstheorie seien in folgenden Sgtzen zusa~nmengefasst: 3.22 Satz
Das duale Modell des dualen Modells ist das primale.
BEWEIS. Das duale Modell in Def. 3.20 ist:
94
3 Lineares Programmieren minimiere so dass
Z
b T y,
A T y >_ c
y_>0. Um das duale Modell dazu zu bestimmen, stellt m a n zweckm/igigerweise zun/ichst die Normalform her: Das obige Modell ist ~quivalent zu: -maximiere
so dass
- Z
- b T y,
--ATy
O. Wendet m a n hierauf die Zuordnungsregeln an, so e r h ~ t man: -minimiere so dass
-z
--cTx,
( - - A T ) T x _> - b x>O.
d.h. maximiere
so dass
z
Ax
CT X
< b
x>O.
Satz 3.22 erlaubt uns, die folgenden S~tze nur in einer Richtung zu formulieren. Sie sind dann gleichermal~en auf das jeweilige primale oder duale Modell anwendbar.
3.23 Satz (schwache Dualit~it) Ist x zul/issige L6sung fiir das primale Modell und y zul/ssige LSsung ffir das duale Modell aus Definition 3.20, so gilt z
c T x _< b T y
Z.
BEWEIS.
Es gilt A x < b, x > 0 und A T y >_ c, y _> 0.
Damit gilt auch
xTATy > x T a
cTx
z.
Es gilt Ax
Damit ist
< b ~', ',, x T A T < b T.
(3.10)
3.4 Dualit/it im Linearen Programmieren
x T A T y ~_ bTy
Z.
(3.11)
(3.1o) .nd (3.11) Z
cTx
95
ergeben
_~ x T A T y ~_ bTy
Z
z--c, y >_0},
und d.h. (xo, Yo) ist ein Paax optimaler LSsungen. BEWEIS. Wegen Satz 3.23 gilt fiir jedes zul~issige x cTx _~ bTyo
cTx0,
alSO ist CTX0
r n a x { c T x l n x ~_ b,x >_0}.
Entsprechend gilt
bTyo
rnin{bTylATy ~_ c,y >_0}.
Die Umkehrung yon Satz 3.24, d.h. dass flit ein Paar (xo, Yo) optimaler LSsungen cTxo bTyo ist, gilt ebenfalls (vgl. Satz 3.26). 3.25 Satz (x, x~), (y, y~) seien zul~ssige LSsungen des dualen Paares aus Definition 3.20. x~ bzw. y~ seien die jeweiligen Vektoren der Sehlupfvariablen in den LSsungsvektoren. Es gilt dann: sind genau
dann optimale LSsungen, wenn die ,,Complementary SlacknessBeziehun~' oder der ,,Dualitiitssatz des Linearen Programmierens"
zT " Ys + Xs T " Y gilt.
0
96
3 Lineares Programmieren
BEWEIS. Die Zul~ssigkeit der LSsungen impliziert: A x + I~x~ AT y
b
x~ xs ~ 0 I~y~ c
--
y,y~
und
> O.
Nach Tr~nsponieren und Multiplik~tion mit y bzw. x erh~lt man x T A T y + x~TImy yT A x -- y TL~x
bWy
(3.12)
CTX.
(3.13)
Da xT AT y
yT A x ,
ergibt die Subtraktion (3.13) yon (3.12) x~Ty + y~Tx
bTy -- CTX.
(3.14)
Aus (3.14) folgt, dass genau daan xsT y + ysT x bTy
O~
wenn
cTx.
Dies ist jedoch nach Satz 3.24 gerade die Optimalit~tsbedingung fiir LSsungen der beiden zueinander dualen Paare.
..
3.26 S a t z
Wenn eines der zueinander dualen Modelle in Definition 3.20 eine optimale LSsung hat, so hat auch das dazu duale Modell eine optimale LSsung und die optimalen Zielfunktionswerte stimmen iiberein. BEWEIS. Wir wollen den Beweis konstruktiv ffihren, indem wir aus einer gegebenen optimalen L6sung des Primalen die optimale L5sung des Dualen ableiten: Bezeichnen wir mit x~ den Vektor der Schlupfvariablen des primalen Modells, so l~sst sich dies schreiben Ms: A x + I~x~
b
X~ Xs ~ O. Wir nehmen an~ dass xB eine optimale primMe BasislSsung bzgl. der Basis B sei. cB sei der Vektor, der ~us den ZielkoeiTizienten der Basisvariablen bestehe. Da xB optimal ist, gilt (vgl. (3.8) und (3.2)):
3.4 Dualit~t im Linearen Programmieren
cj 0~
(3.16)
wobei e i d e r Einheitsvektor der /-ten Schlupfvariablen im Ausgangstableau ist. (3.15) und (3.16) zusammen ergeben
cBTB 1
yT _> 0T
(3.17)
d.h. y ist eine zul/ssige duale LSsung. Die duale Optimalit~t fiir y ergibt sich dutch Substitution yon (3.17) in die duMe Zielfunktion:
Z
yTb
cBTB lb
CBTXB maximiere z
..
Dutch Kontradiktion kann entsprechend der iblgende Satz bewiesen werden: 3.27 Satz
Hat das primale 1VIodell keine zul~ssige L6sung, so hat das duale Modell keine optimale L6sung.
Berficksictitigt man Satz 3.22, so kann maa eine Erkenntnis aus dem Beweis zu Satz 3.25 wie folgt formulieren: 3.28 Satz In dem primalen optimMen Endtableau sind die Azj unter den primMen Schlupfvariablen die Werte der Strukturvariablen der optimalen duMen LSsung. Die entsprechenden Werte der dualen Schlupfvadablen findet man in der Azj-Zeile miter den primalen Strukturvadablen.
3.29 Beispiel
Zun~chst sei Beispiel 3.17 dualisiert:
98
3 Lineares P r o g r a m m i e r e n
Primale Normalform (nach Auf~palten der ,, "-Nebenbedingungen in je eine ,,_"-Restriktionen in ,,_ c ist zu ersehen, dass die Dimension der dualen Variablen yi gleich der Dimension
I00
3 Lineares Programmieren
It]
LMStd./Stck.J
LM--g 7. J
sein muss, oder allgemeiner Dimension des Zielfunktionswertes Dimension der Komponenten des Vektors b" Man erinnere sich, dass Variablen des dualen Modells Restriktionen des primafen Modells (und umgekehrt) zugeordnet sind. Die dualen Strukturvariablen, auch Schatteni)reise oder Opportunit/~tskosten genannt, geben in der Tat an, um wieviel der optimale Wert der Zielfunktion sich ver/indert, wenn die Kolnponente des b-Vektors marginal ge/indert wird, der die entsprechende duale Strukturvariable zugeordnet ist. Der im dualen Endtableau in Abbildung 3.8 abzulesende Wert yon yl 6 bedeutet zum Beispiel: Wenn bl in (3.18) yon 80 auf 81 ge/indert wfirde, so wfirde als Folge davon der optimale Zielfunktionswert yon EUR 300 (siehe Abbildung 3.8) auf EUR 306 steigen. Die Interpretation des strukturellen Teiles der dualen optimalen LSsung als ,,Schattenpreise" beruht auf ihrer Eigenseliaft, die ,~Is2nappheit" der jeweils zugeordneten Nebenbedingung bzw. der darin formulierten Ressourcenbeschrgukung anzugeben: Je hSher der Schattenpreis desto knapper die entsprechende Ressource, d.h. desto mehr kSnnte der optimale Wert der Zielfunktion-miter Berficksichtigung aller anderen $ystemzusammenh/inge-(lurch eine ,,Lockerung ~ der Nebenbedingung verbessert werden. Dies heil~t auch: Ist der duale Preis Null, so ist (lurch eine Lockerung der entspreclienden Nebenbedingung eine Zielfunktionswertverbesserung nicht lnSglich, die durch die entsprechende Nebenbedingung abgebildete Ressource (z. B. Mascliine) ist kein Engpass. Die primale Nebenbedingung wird yon der optimalen primalen LSsung nicht als Gleichung erffillt und ihre $chlupfvariable ist positiv. Hier wird aueh die direkte Verbindung zur ,,Complementary Slaekness-Bedingun~ ~ offensichtlich: In $atz 3.25 wird gefordert, dass das Produkt yon primaler $chlupfvariable und entsprechender dualer Strukturvariable des optimalen L0sungspaares Null ist. Es muss also entweder die prilnale Schlupfvariable Null sein (Engpass) oder der ,,$chattenpreis" (Ressource ist nicht einschrgnkend, d.h. also kein Engpass). Gfiltigkeit beh/ilt dieser ,,Schattenpreis" natfirlich nur solange, wie (lurch die Anderungen yon Komponenten des Vektors b im Ausgangsmodell die im Endtableau bestehende Basis ihre primale und duale Zul/issigkeit nicht verliert. Betrachtungen darfiber, welche Auswirkungen Anderungen yon Kolnponenten des Vektors b oder des Vektors c fiber den Bereich primaler und dualer Zulgssigkeit der bestehenden Basis hinaus haben, werden in Abschnitt 3.5 angestellt werden. Auf Besonderheiten der Schattenpreise bei primaler und dualer Entartung weisen Domschke and Klein
(2oo4) tin.
3.4 Dualit/it im Linearen Programmieren 3.4.2
101
Die duale S i m p l e x - M e t h o d e
Bei der in den letzten Abschnitten beschriebenen (primalen) Simplexmethode wurde yon einer primal zul/issigen Basisl6sung ausgegaagen, und es wurden Basistausche in der Weise vorgenommen, dass die primMe Zul/issigkeit erhalten blieb und die duale Zul/issigkeit (primale Optimalit/it) erreicht wurde. In manchen Situationen ist eine dual abet nicht primal zul/issige BasislSsung bekannt. In diesen Fgllen w/ire es sicher nicht sim~voll, erst die primale Zul/issigkeit herzustellen (und dabei die duale Zul/issigkeit zu zerst6ren), um dann dutch weitere Iterationen eine primal und dual zul/issige BasislSsung zu bestimmen. Zwei sinnvollere Wege stehen zur Verfiigung: Man kann auf das dualisierte Problem (fiir das ja eine zul/issige LSsung bekannt ist) die normale (primale) Simplex-Methode aawenden. Oder aber man kann die gleichen Operationen im primalen Tableau durchf~hren, die man bei der ersten Vorgehensweise im dualen Tableau vornehmen wiirde. Dies ist im wesentlichen der Inhalt der ,,Dualen Simplex-Methode". 3.30 A l g o r i t h m u s Es gilt also fiir die duale Simplex-Methode:
A nsgangsbasislSsnng Begonnen wird mit einer dual zul/issigen und primal unzul/issigen LSsung, d.h. einer Basisl/Ssung, f~r die gilt: Azj > 0 j
1,..., rn + n
duMe Zul/issigkeit
(3.20)
und es gibt Komponenten des L6sungsvektors mit < o.
(3.2i)
El,iminationsregel Aus der Menge der dual zul/issigen L/Ssungen soll eine primal zul/issige bestimmt werden. Eliminiert wird also eine Basisvariable, fiir die (3.21) gilt. Gilt (3.21) fiir mehrere Basisvariable, so wird aufgrund heuristischer Uberlegungen die gew/ihlt, fiir die gilt: x~
~fin{~} < O.
(3.22)
A ufnahmer'egel Bei der Suche nach einer primal zul/issigen BasislSsung soll die duale Zul/issigkeit bewahrt bleiben. Das heit~t es muss sichergestellt werden, dass (3.20) auch ffir die n/ichste BasislSsung gilt.
102
3 Lineares Programmieren
Da in der k-ten Zeile (Pivotzeile) nach der Pivotisierung nur dann ein b~ > 0 erscheinen kann, wenn das Pivotelement a~l < 0 ist, ka~m ein dualer SimplexSchritt nut dann durchgefiihrt werden, wenn es in der Pivotzeile negative Koeffizienten gibt. Andernfalls bricht der Algorithmus ab, da es keine primal und dual zul~ssige Lbsung fiir das betrachtete Problem gibt. Nach (3.7) ergeben sich die Azj des neuen Tableaus ( A ~ j )
%
j
zu
1,...,m+n,j~l
(3.23)
und es muss gelten: A~ 5 _> 0
j
1,...,m +n.
(3.24)
Da a~l < 0 und auch A~j _> 0, ist (3.24) genau d a m erfiillt, wenn Azj < --2-Azl a *kj
--
j
1, ..., m + n, a~j < 0.
ak 1
Die aufzunehmende Variable xl wird also so bestimmt, dass C:
Azl
{Azj
.
k*.
r+l, r
:
" • Iil&X T
,
J
J
-....
A b b i l d u n g 3.9: Algorithmus fiir A > 0 Um die Nebenrechnungen (3.26) zu sparen, wird A Ms Variable in das Tableau aufgenolnmen, so dass in der betreffenden Spalte der Vektor -v* abgelesen werden kann. Daz'tiber hinaus wird das Tableau auf der reehten Seite Uln die Spalte b* r 1 ergfiazt, in der die optimale BasislSsung ftir den jeweiligen Weft A* ~i=1 ki ..... angegeben wird. 3.84 Beispiel
Wir wollen folgendes Modell betrachten: mmximiere so dass
z
2xs
+
3x2
-
2xs
+
3x2
-
xa
~
3 +
A
-
z2
-
2z3
>
2-
A
-Zl
xa
xs + x2 + xa Xl~X2~X3 ~
3 0
(3.3o)
3.5 Postoptimale Analysen
109
Als o p t i m a l e s E n d t a b l e a u f i b A~ cj i
~
2
3
-1
371
3?2
x3
x4 x3
0
x2
1
Azj
1
0
1
0 e r g i b t sich: 4 -M
-M
x6
x7
x4
x5
1
4
!
3s
~s
3
1
3
l
1
-
-
3
~s l
~
-
5
0
A
b~
b~,i
0i
2
2
2
2
~s
55
5
5 -
3
3
3
~
3
l
4 3
4 ~
4 3
7 3
2 3
2
3
A~
4_ 3
,
,
1
-
-
+-- Pivotzeile
T Pivotspalte Die S p a l t e 0i ist eine A r b e i t s s p a l t e ; in ihr w e r d e n die Q u o t i e n t e n - b ~ i / v ~ i f i b %% < 0 g e m g g (3.28) gebildet. Die Zeile Q ist ebenfalls eine Arbeitszeile; sie d i e n t d e r B e s t i m m u n g d e r a u f z u n e h m e n d e n V a r i a b l e n xl g e m g g (3.25). W e g e n A~ 0 ist b~,i b~. Die p a r a m e t r i s c h e B a s i s l 6 s u n g l a u t e t m i t As ...... 2:
21 /
5 ~
X3(A1)
1 '~ll
:r2(A1)
1 ~4 + -~A1
z(A1)
4 ~7 + -~A1
0 < 11 < --
--
2
I n d e r Pivotzeile k o m m e n die E l e m e n t e a~l u n d a~s als P i v o t e l e m e n t e in Frage. Willkiirlich w i r d a~s gew/ihlt. E i n d u a l e r S i m p l e x - S c h r i t t liefert folgendes T a b l e a u : cj
2 0~
CBi 2
371
xs
3 x2
-1 xa
1
A x4
x2
Azj 0
-
xr
4
-~
1
1
-1
1
-1
1
0
*
*
-
o
-
-
--1
1
x6
-M
4
-1 3
x5
-M
~
3
A~ A
5
bi
1
"~
1
,
2
3
3
,
2
b2,i
0i
0
--
1
5
1
5
0
2
2
-
--1
3
5
+-- Pivotzeile
T PivotspMte M i t A2
A - As ......
A - 2 l a u t e t die p a r a a n e t r i s c h e BasislSsung (wobei A2 ......
3):
4 Die mit * gekennzeichneten Eintragungen sind wegen M >> 1 sehr grog, die entsprechenden Hilfsvariablen kommen fib eine Aufnahme in die Basis nicht in Betracht.
II0
3 Lineares Programmieren
,~1(A9) ~'3(A9)
1-
x2(A2)
2
z(A2)
'~A91} 1 ~A2
0 < A2 < 3 -
5 +
-
A2
In der Pivotzeile kommt als Pivotelement nur das Element a~5 in Frage. Nach einem dualen Simplex-Schritt erh~ilt man das Tableau: cj CBi
2
2
3
-1
Xl
X9
X3
1
Xl
4
1
X4
-M
-M
x6
x7
A
0
3
-1
x5
~
5
b~
b~,{
0{
1
6
1
1
-1
-1
-5
0
-
-3
0
-3
1
0
-2
-1
-3
2
0
1
*
*
-1
3
8
Azj
0
1
A~
+-- Pivotzeile
T
Pivotspalte Die pm-ametrische BasislSsung in obigem Tableau lautet mit Aa A - 5 (wobei Aa...... 1):
Xl(A3)
1
A - (A1...... + A2...... )
-- A3
xs(A3)
A3
x2(A3)
2 + A3
z(A3)
8 + A3
0 ! A3 ! 1
Ein dualer Simplex-Schrittmit a~4 als Pivotelement liefert das Tableau: cj CBi
2
3
--1
x~ x l
x2
x3
x4 1
X4
--1
4
X5
0
--3
X2
1
AZj
1
1
x5
1
1 4
*
-M
-M
x6
xr
A
b~
b*4,i
0
--3
--1
--6
1
--1
--1
--1
--5
0
0
1
0
3
3
*
*
0
9
9
Da die tra~sformierte Spalte - v * kein positives Element enthglt, kam~ bei wachsendem A keine primale Unzul~issigkeit mehr eintreten. Die parametrische BasislSsung lautet mit A4
3 A -- E i = I
Ai ......
xs(A~)
1 + A~
x2(A~)
3
z(A~)
9
A -- 6:
O 0 gilt: h i j x j >_ 0
und deshalb auch
116
3 Lineares Programmieren
(3.37)
hijccj < hi < 1.
hi j=m+l
Wegen
hi-
hijccj < 1 j=m+l
ist somit
hijxj < O b z w . -
hij m+l
)__s hijxj < - h i
(3.38)
j m+l
eine notwendige Bedingung fiir die GanzzNlligkeit yon II. Fiigt man in (3.38) eine ,,Gomory-Variable" xc _> 0 Ns ,,Schlupfvaziable" hinzu, so erhNt man die Gomory-Restr'iktion:
zc- ~
his5 -hi.
(3.39)
j m+l
Da in (3.34) Nle Nichtbasisvariablen xj, j xc
m + 1 , . . . , n, Null sind, gilt in (3.39):
-hi.
Fiigt man (3.39) Ns Restriktion dem optimNen Simplex-Tableau ffir Modell (3.33) hinzu, so wird die d u n e Zulgssigkeit der Basisl6sung nicht beriihrt. Allerdings wird wegen - h i < 0 die primNe Zul/issigkeit verletzt. Fiihrt man nun eine d u n e SimplexIteration mit der zus/itzlichen Gomory-Restriktion Ns Pivotzeile durch, so wird zwangsl/iufig zweierlei passieren: 1. Die ,,primNe Unzulgssigkeit" der hinzugeffigten Zeile wird beseitigt. 2. Die Gomory-Variable wird Nichtbasisvariable und kann nun Ns ,,Itilfsvaziable" betrachtet werden. Ist eine d u n e Simplex-Iteration nicht mSglich, so ist der LSsungsraum yon Modell (3.31), (3.32) leer; es existiert im LSsungsraum yon (3.31) also keine ganzzahlige L6sung. Aufgrund der bisherigen l~berlegungen kann nun der Schnittebenen-Algorithmus yon Gomory Mcht beschrieben werden:
3.6 Ganzzahliges Lineares Programmieren
117
3.37 Algorithmus
und gehe
1. Schritt:
LSse(3.33) (LP-Relaxation) rnit der Simplex-Methode zu Schritt 2.
2. Schritt:
Sind in der optimalen Basisl0sung alle Ganzzahligkeitsbedingungen erfiillt, ist eine optimale ganzzahlige L6sung gefunden, STOPP; sonst gehe zu Schritt 3.
3. Schritt:
Spalte die Komponenten b* der ,$echten Seite" (BasislSsung) im optimalen Tableau f/Jr die Variablen, die ganzzahlig sein sollen, naeh (3.35) auf. Der Index t fiir die Zeile, fiir die eine GomoryRestriktion gebildet werden soil, werde ermittelt aus max{hi I hi aus Aufspaltung nach (3.35)}.
ht
Ist ht nicht eindeutig bestimmbar, wiihle den kleinsten Zeilenindex. Gehe zu Schritt 4.
Spalte die ai*j der Zeile t des Tableaus gemgg (3.36) auf:
~. Schritt:
+ h,5,
ga.z
alllig, 0 < h,5 _< 1.
Bilde die Gomory-Restriktion nach (3.39) und gehe zu Schritt 5. Ffige Gomory-Restriktion dem aktuellen Tableau hinzu und iteriere mit der dualen Simplex-Methode. Ist eine solche Iteration nicht mSglich, dann ist keine ganzzahlige LSsung vorhanden, STOPP. Andernfalls gehe nach erfolgter Iteration zu Schritt 2.
5. Schritt:
3.38 Beispiel Wir betrachten Beispiel 3.35. 1. Schritt: Das optimale Endtableau der LP-Relaxation ist:
cj CB i
X
~
3
X2
5
Xl
5
3
Xl
X2
X3
1
1 "G
1
L ')7 14
Z2kZj
57
X4 1 18 4 ')7 31
4-5
b~
hi
7
1 3 7 9
3
16 9
143 9
Optimales Tableau ffir relaxiertes Modell 2. Schritt: x l und x2 sind nicht ganzzahlig. 3. Schritt: 7 t
2
118
3 Lineares Programmieren
LSse (3.33) (LP-Relaxation) mit der Simplex-Methode. ~ ~
~ ~
Sind in der optimalen BasislSsung alle Ganzzahligkeitsbedingungenerfillt, ist ~ eine optimale ganzzahlige ~ L S ~ n g gefunden?
Nein
/
/Ja
Spalte die Komponenten b* der ,#'echten Seite" (BasislSsung) im optimalen Tableau fiir die Variablen, die ganzzahlig sein solfen, nach (3.35) auf. Der Index t fiir die Zeile fiir die eine Gomory-Restriktion gebildet werden soll, werde ermittelt aus h t : maxi{hi I hi aus Aufspaltung naeh (3.35)}. Ist ht nieht eindeutig bestimmbar, w/ihle den kMnsten Zeilenindex.
Spalte die ai*j der Zeile t des Tableaus gem~t~(3.36) auf: at*5 kat*sJ+hts, kat*sJganzzahlig, 0 _< htj < 1 Bilde die Gomory-Restriktion nach (3.39)
t
/
Fiige Gomory-Restriktion dem aktuellen Tableau hinzu und iteriere mit der dualen SimplexMethode. Ist eine soMie Iteration nicht mSglich, daan ist keine gaazzahlige LSsung vorhanden, Stopp. Iteration m S g l i c h ~ Nein
K Stopp. Abbildung 3.13: Der Gomory-Algorithmus
0 fiir alle k E {1, ... ,p} ist. Sind die za (x) lineare Fmiktionen mid ist der LSsungsraum ein konvexes Polyeder, so ist (3.44) ein lineaxes Programmiermigsmodell. Zwischen den Nutzenmodellen als Ersatzmodelle fiir ein Vektormaximummodell und dem Vektormaximummodell bestehen z.B. die in folgenden Sgtzen (Dinkelbach, 1969, S. 160) beschriebenen engen Zusammenhgnge:
3.7 Vektormaximummodelle
125
3.43 S a t z Ist x* funktional effizienter Punkt des Modells aus Definition 3.40, daan existiert ein Vektor w E R p, so dass x* LSsung des Modells:
max{E~= 1w z (x) I x W
(Wl,
x}
... ,Wp) T 9 R p, W • O, ~ =Pl W ~
1
(3.45)
ist. BEWEIS.
Es werden zwei I-Iilfssgtze benStigt, die hier ohne Beweis angeffihrt werden (Beweise dazu siehe z. B. Dinkelbaeh, 1969, S. 160).
i. Hilfssafz: Sind C und C' zwei konvexe Teilmengen des (euklidisehen Raumes) R p, die keine inneren Punkte gemeinsam haben, und besitzt C' innere Punkte, dann existieren oz E ]~1 und w' E R p mit w' r 0, so dass ffir (c, c') E C x C' gilt: P
P
Z
_< _ 0, k 1 , . . . ,p} und haben C und C' keine inneren Punkte gemeinsam, dann existiert ein Vektor: p wER pmitw_>0und ~w~ 1 k 1
so dass ffir (c, c') E C x C' gilt: P k
P 1
k
1
C sei die konvexe Hfille yon
Ferner sei c beliebig aus C, dann gilt:
i
1
i
1
Da X konvex, z(x) konkav fiber X und x* funktional emzienter Punkt yon Modell 3.40 ist, gilt:
126
3 Lineares Programmieren
-
4=i C.
C und C' {c' E R p I c~ > 0, h 1 , . . . , p} haben also keine gemeinsamen inneren Punkte und aus Hilfssatz 2 fblgt direkt Satz 3.43. 9
3.44 S a t z 1. Sind alle Komponenten yon w echt positiv und ist x* L6sung des Modells (3.45), dann ist x* funktional effizienter Punkt des Vektormaximummodells 3.40.
2. Ist x . eindeutige LSsung des Modells (3.45), dann ist x* funktional effizienter Punkt des Vektormaximummodells. BEWEIS. Dieser Satz folgt direkt aus der Definition einer funktional efiCizienten Lgsung in Definition 3.42. G/ilte Satz 3.44 nieht, so wfirde dies zu einem Widersprueh mit P
P
>
bz -.
~=1
~=1
P
P
k=l
k=l
ffihren.
9
3.45 Satz
Sind z~(x), k i,... ,p, streng konkav fiber X, dann ist x* genau dann funktional effizienter Punkt des Modells 3.40, wenn x* LSsung des Modells (3.45) ist. BEWEIS. Da mit z~ (x) auch ~=i w~z~ (x) streng konkav ist, ist x* eindeutige LSsung zu 3.40 und die S~ftze 3.43 und 3.44 gelten. 9
3.8 Stochastisches und Unscharfes Lineares Programmieren
127
Die Angabe eines Ersatzmodells stellt hohe Anforderungen an den Entseheidungsfailer, denen er aufgrund seiner beschr~nkten Rationalit~t (vgl. Kap. 2) h~ufig nicht genfigen kann. Daher wurden interaktive Verfahren entwickelt, die auf den vorgestellten Ans5tzen aufbauen und die notwendigen Informationen, wie z.B. die Gewiehte der Zielfunktionen, sehrittweise erfragen, wobei dem Entseheidungsf/iller meist mSgliehe Kompromissalternativen vorgesehlagen werden. Ubersiehten der Verfahren findet man z. B. bei Isermaan oder Hwaag, Masud (Isermaan, 1979; Hwang and Masud, 1979).
3.8
Stochastisches und Unscharfes Lineares P r o g r a m m i e r e n
Bisher wurde davon ausgegangen, dass in dem in Definition 3.3 eingeffihrten Modell: maximiere so dass
z Ax
cTx < b
x>0 mit
c,x E ]R~, b E ]R~ , A~,~
die in c, b und A enthaltenen Koeffizienten reelle Zahlen seien, die zwar vom Entscheidungsfgller nicht zu beeinflussen sind, die jedoch einen exakten Wert annehmen und genau bekannt sind. Entsprechend wurde angenommen, dass die Maximierungsvorsehrift uneingesehr/inkt fiber dem LSsungsraum gelte und dass der dureh das Restriktionensystem definierte LSsungsraum seharf die Menge der zul/issigen von der der unzulgssigen LSsungen trenne. Diese Annahmen sind bei der Modellierung tats/ichlicher Probleme oft nicht gerechtfertigt: Nimmt man z. B. an, dass die Koeffizienten yon c zu erzMende Marktpreise seien, b aus den Kapazitgten yon Maschinen bestehe und A die teehnologisehen Koeffizienten (d. h. z. B. benStigte Bearbeitungszeit pro Stfiek auf einer bestimmten Masehine) enthalte, daan ist nieht sehwer zu erkennen, dass die Komponenten yon c, b und A streng genommen keine Konstaaten, sondern Zufallsvariable sind. Deuten wir diese Tatsache dadurch an, dass wir den zuf'~lligen Charakter durch - ausdrficken, so wird Modell 3.3 nun zu: maximiere so dass
~
fiTx
A x _< b
(3.48)
x>O. Hierbei stellen nun e, D und A Vektoren bzw. Matrizen der in 3.3 gegebenen Dimensionen dax, deren Komponenten jedoch durch Verteilungsfunktionen darzustellende Zufallsvaxiable sin& Haben dozfiber hinaus die Restriktionen bzw. die Optimierungsvorschrift nicht den strengen mathematischen Charakter wie in Modell 3.3 angenommen, sondern sind unscharfe Aussagen im Sinne der in Abschnitt 2.2 dargestellten Theorie unscharfer Mengen, so ist Modell 3.3 eine noch weniger akzeptable
128
3 Lineares Programmieren
Darstellung des wahren Problems. Wir wollen uns zunichst (3.48) zuwenden und anschlieigend das sogenannte ,,Unscharfe Programmieren" betrachten.
3.8.1
Stochastisches Lineares Programmieren
(3.48) ist in dieser Form keine sinnvolle Formulierung eines Modells. Selbst ein als A x < b definierter LSsungsraum h~tte keinen Sinn, da zwar die linke Seite bestimmt
ist, durch den Zufallscharakter der rechten Seite jedoch nicht sichergestellt werden kann, dass A x G b fiir eine beliebige Realisation yon b erfiillt ist. Zwei Auswege aus diesem Dilemma sind denkbar: A. Man beschr/inkt sich auf die LSsung des sogenannten ,,Verteilungsproblems" (ira Englischen wait-and-see approach). B. Man bestimmt sinnvolle deterministische Ersatzmodelle zu (3.48). A. Das Verteilungsproblem
Eine MSglichkeit, aa (3.48) heraazugehen, ist die, zu jeder Realisation der Zufallsvariablen (e, A, b) 9 (c, A, b) das deterministische Modelh maximiere so dass
z
cTx
Ax < b -
x>0
mit
(3.49)
c,x E R ~, b E R ~, A~,~
zu 15sen (falls eine solche LSsung existiert). Man unterstellt also, in der Lage zu sein, ,,abzuwarten und zu sehen", welche Werte yon e, _~ und b die Umwelt realisiert. Die OptimallSsungen yon (3.49) mit ihrer Verteilung dienen dem Entscheidenden Ms Entscheidungshilfe. Das Verteilungsproblem ist ailgemein nicht gelSst. Nur fiir spezielle Zufallsvariable kSnnen Bereiche angegeben werden, in denen LSsungen optimal bMben und die Wahrscheinlichkeit dieser Bereiche. Fiir praktische Probleme ist das Verteilungsmodell als Entscheidungshilfe bisher l~um verwendb0z. Well sehr verwaadt mit dem Verteilungsmodell, soll die Methode der Bestimmung einer oberen und unteren Grenze der ZMfunktion ebenfails in diesem Abschnitt behandelt werden. Nehmen die Zufallsv0Mablen g~j, b~, 5j nur Werte auf endlichen Intervallen an, stellt sich die Frage, ob nicht ein Absch/tzen der optimalen Zielfunktionswerte fiir alle mSglichen Realisationen nach unten bzw. oben mSglich ist. Der Entscheidende wiisste dann, was sich ,,schlimmstenfalls" und ,,bestenfails" als Weft der ZMfunktion ergeben kSnnte, jedoch unter der Voraussetzung, dass er die jeweils optimaie Alternative gew/ihlt h/itte.
3.8 Stochastisches und Unscharfes Lineares Programmieren
129
Die oberen und unteren Grenzen der Koeffizienten (2ij, t)i und 5j des Modells seien wie folgt bekannt: aij < 5ij < Aij
(3.50)
bi _< bi _< Bi
cj < 5j < Cj. Genauer miisste es in der ersten Ungleichung heigen: fiir jede m6gliche Realisation aijN~yon aijN gelte: aij _< aij0 _< Aij. Im folgenden benutzen wir jedoch die ungenau kiirzere Schreibweise wie in (3.50). Man wolle den mSglichen Bereich der Werte der optimalen LSsungen bestimmen, d.h. ein Intervall fiir ~5 des Modells rnaxirniere SO d & s s
z
Ej=laij3:J ~ n
N
n
N
~ j = l cjxj hi,
i
x0 20,
j
1,...,~
(3.51)
1,...,n.
3.46 Satz
Es gilt z ~ < ~ < Z ~ ftir ~ aus (3.51), wenn z ~ und Z ~ definiert sind als optimale Zielfunktionswerte der folgenden zwei Modelle: rnaxirniere z
~3=1 cjxj
so dass
~ j = l Aijxj 0 maximiere
Ej=I cjxj
Z
n
~0=1 aioxO < Bi,
so dass
n
i
1, . .. ,7Y~
x>O.
BEWEIS.
Man betrachte zun~chst die L6sungsr~ume definiert durch:
•
aiSx5 < Bi,
i
1,...,m.
(I)
1,...,m.
(II)
j=l
~5~jxj_ O, i Tft
n
1,...,rn, j
1,...,n
}
(3.64)
n
wobei ~ ai j=l
~ bj und ai, bi _> O. j=l
Dieses Modell entspricht dem LP-Modell aus Definition 3.3 und kSnnte somit auch mit der Simplex-Methode gelSst werden. Die Matrix A aus Modell (3.64) hat jedoch hier folgende Struktur, wobei leere Felder mit Null besetzt sind: Xll
X12
1
1
999
...
Xln
X21
X22
1
1
9 9 9
X2n
1
9 9 9
1
9 ..
X m l
9 9 9
Xrrtn
}
9 1
1
X m 2
1
rrz
Zeilen
1
1 1
1
9 1
1
.
n Zeilen 1
rrt 9n ~palten Die rn Nebenbedingungen, die sicherstellen, dass jeweils der gesamte Bestand a m Ausgangsort ausgeliefert wird, entsprechen den oberen rn Zeilen, die den Bestimmungsorten entsprechenden den unteren n Zeilen yon A. In Kurzschreibweise 1/isst sich A darstellen als: in T in T
A
(3.65)
in T
in T In
In
999 g~
9 . .
tit
140
3 Lineares Programmieren
In (3.65) bilden die Vektoren l~ff (1, 1,..., 1) n-komponentige 1-Vektoren und die Matrizen L~ n-reihige Einheitsmatrizen. Die Folgen der speziellen Struktur yon A sind: 1. Die Elemente yon B 1 sind alle + 1, - 1 oder 0. 2. Da XB B lb, mfissen alle Komponenten einer Basislasung XB dann ga~xzzahlig sein, wenn b ganzzahlig ist. 3. Die Bestimmung des Pivotelements vereinfacht sich. 4. Das Pivotisieren mit den Regeln (3.5) und (3.6) reduziert sieh auf Additionsund Subtraktions-Operationen. (Dadureh aueh keine Rundungsfehler!) 5. Da die Struktur yon A, B und B 1 bekannt ist, ist ein vereinfachtes, ,~symbolisches" Tableau mSglich. 6. Auf jeder Stufe (Iteration) sind lediglieh die Basis, die BasislSsung und die Azj der Niehtbasisvariablen zu bestimmen. Unter Ausnutzung der strukturellen EigenschMten und ihrer Konsequenzen kann zunSchst das ,,Simplex-Tableau" wesentlich verkleinert werden. Ublich ist das in Abbildung 3.17 gezeigte Tableau.
A1
Xll
X12
X13
X14
al
A2
X21
X22
X23
X24
a2
A3
X31
X32
X33
X34
a3
A b b i l d u n g 3.17: Das Transporttableau fiir m
3, n
4
Wiirde Modell (3.64) in einem Simplex-Tableau gelSst, so h/itte dies (m + n) Zeilen, m. n Spalten fiir die ,,Strukturvariablen" und (m + n) Spalten fiir die notwendigen Hilfsvariablen. Das Tra~sporttableau hat dagegen nur m Zeilen und n Spalten. Jedes ,,K/istehen" entsprieht einer Strukturvariablen des zugrundeliegenden LP's, und die Hilfsvariablen werden gaz nieht benStigt. Bei der LSsung sind zwei Stufen zu unterscheiden: Die Ermittlung einer zul/issigen AusgangsbasislSsung und die verbessernden Iterationen zur Bestimmung einer optimalen Basisl6sung.
1. B e s t i m m u n g einer AusgangslSsung Ein Weg hierzu ist die Verwendung der sogenannten ,,Nordwesteckenr'egeP: a) Beginne in der nordwestlichen Ecke und lege Xll
rain{a1, bl} lest.
3.9 SpezMle Strukturen b) Fails 2211 Falls 2211
141
dann w/ihle 2221 rain{a2,/)1 - - 2211}" bl, dann wghle 2212 rain{a1 - 2211,b2}. al,
Ist das Minimum unter (a) nicht eindeutig, d.h. 2211 al lich entweder 2212 0 oder 2221 0 als Basiseintragung.
bl, dann wghle zusgtz-
e) Fahre in dieser Weise fort, bis 22..... festgelegt ist. Die so ermittelte LSsung ist eine zuls BasislSsung f/Jr Modell (3.64).
2. Verbesserung der AusgangslSsungl) Ein etfizientes Verfahren zur Verbesserung der AusgangsbasislSsung ist die sogenannte MODI-Methode (siehe Vajda, 1962, S. 3 ft.) (modified distribution method), auch als U-V-Methode bezeichnet. Sie benutzt zur Ermittlung der aufzunehmenden Vaxiablen und zum Optimalit/Rsnachweis die zugehSrige (die Complementary Slackness-Bedingung erfiillende) LSsung des zu Modell (3.64) dualen Modells maximiere Z ~i~'l aiui + ~ j =n l bjvj so dass ui + vj G cij i 1,...,m,j 1,...,n.
(3.66)
(In (3.66) sind die duMen (Struktur-)Variablen ui, vj wegen der Gleichungsrestriktionen des primMen Problems unbeschrs Ferner kann einer dualen Variablen, da das Gleichungssystem des primMen Problems unterbestimmt ist, ein beliebiger (fester) Weft zugeordnet werden. Aufgrund der Complementary Slaekness-Bedingung gilt f/Jr die Basisvaxiablen ui + vj
cij.
(3.67)
Da die Basis ( r e + n - 1 ) Basisvariable enthglt, ist System (3.67) unterbestimmt. Man legt gewShnlich ul 0 oder vl 0 lest und 15st dann (3.67) fiir alle Basisvariablen. Die f/Jr die Auswahl der aufzunehmenden Basisvaxiablen benStigten Azij (siehe (3.2) und (3.3)) ergeben sich (Ms duale Schlupfvaxiablen in (3.66) zu Azij
cij - (ui + vj).
(3.68)
Eine optimale LSsung ist damn erreicht, wenn ffir alle Nichtbasisvariablen Az~j _> 0 gilt. Ansonsten wird analog (3.3) diejenige Nichtbasisvariable 22~ aufgenommen, ffir die Az~
min{Az~j} < O. z3
(3.69)
Die im Basistausch zu eliminierende Basisvariable wurde im Simplex-Algorithmus nach (3.4) bestimmt. Dazu war die Kenntnis der Koeffizienten a~l der SpaRe der aufzunehmenden Nichtbasisvariablen (der Pivotspalte) notwendig. Da diese Koeffizienten im Transporttableau nicht vorhanden sind, miissen sie auf andere Weise bestimmt werden. Man bestimmt sich dazu im Transport-Tableau einen Pfad aus
142
3 Lineares Programmieren
jenen Basiseintragungen, deren Wert sich bei Erh6hung des Wertes der aufzunehmenden Nichtbasisvariablen /~ndert, damit (lie Gleichungen in (3.64) eingehalten werden (stepping stone path). Dieser Pfad ist eindeutig, und die ibm entsprechenden Basisvariablen seien mit x~ bezeichnet. Dutch Hinzuffigen der Eintragung der Niehtbasisvax'iablen x~ entsteht eine Schleife. Die Abh/ingigkeiten x~ (x~) der Basisvax'iablen im Stepping Stone-Pfad yon der Niehtbasisvariablen x~ besitzen folgende Besonderheiten: I. Die Werte der Variablen x~ /~ndern sich entweder um +x~
oder um -x~.
2. Die Anderungen zweier im Pfad aufeinaader folgender Basiseintragungen folgen jeweils mit alternierendem Vorzeichen. Es reicht daher aus, die Anderungen und ,,-" zu markieren.
er-
im Transporttableau (lurch eine Folge yon ,,+"
Sobald bei Erh6hung der Nichtbasisvariablen eine der mit ,,-" max'kierten Variablen einen Wert kleiner Null aanimmt, wfirde natfirlich Unzul/issigkeit eintreten. B kann nun nach (3.4) Die aus der betrachteten Basis ausscheidende Variable x~z vereinfaehend wie folgt bestimmt werden: z3
B
(3.70)
wobei das Minimum fiber alle z ~ in der Schleife gebildet wird, die mit ,,-" markiert sind. Hierdureh wird nicht nur die zu ersetzende Variable bestimnit, sondern ~ gibt auch den Wert an, den die aufzunehmende Variable minimmt und um den alle Variablen in der Schleife im Sinne der Markierung zu ~ndern sind (Pivotisierung). Das soeben beschriebene Vorgehen, das als eine Grundversion der ,,Transportmethode" anzusehen ist, kann wie folgt beschrieben werden:
3.9 Spezielle Strukturen
143
3.51 Algorithmus
1. Schr'itt:
Ermittle eine zulgssige Ausga~gsbasislSsung z.B. mit HiKe der ,,Nordwesteckenregel".
2. Schritt:
Bestimme mit HiKe des MODI-Verfahrens die Azij fiir alle Nichtbasisvariablen. Sind alle Az~j _> 0, gehe zu Schritt 6. Gibt es Az~j < 0, wghle die Nichtbasisvaz-iable mit min{Az~j} < 0 als aufzunehmende Nichtbasisvariable und gehe zu Schritt 3.
3. Schritt:
Bestimme dutch
3. Schritt:
B in der Menge der in der Bestimme gemg~ (3.70) rnin{x~} x~l B ist die zu ersetSchMfe mit ,,-" markierten Basisvariablen. x~l zende Basisvariable und 0 x~l. B Gehe zu Schritt 5.
5. Schr'itt:
,,Pivotisiere", indem alle Vaz'iablen xij in der Schleife im Sinne der Maz'kierung um 0 erhSht oder erniedrigt werden. Gehe zu Schritt 2.
6. Schritt:
Die BasislSsung ist optimal und zulgssig. Ist sie nicht entartet, so enthglt sie (m + n - 1) yon Null verschiedene Transportmengen, andernfalls weniger.
alternierende Markierung im Tableau den Stepping-Stone-Pfad und gehe zu Schritt 4.
Zur Ubersicht ist der Algorithmus noch einmal im folgenden S t r u k t o g r a m m der Abbildung 3.18 dargestellt. 3.52 B e i s p i e l
Es sei der optimale Transportplan f[ir folgendes Modell zu finden: An den drei Ausgangsorten A1, A2, Aa lagern die Mengen al 20, a2 25, aa 40 eines Produktes P, an den vier Bestimmungsorten B1, B2, Ba, B4 existieren Nachfragen von bl 10, b2 25, ba 15, b4 35. Die Einheitstransportkosten c~j seien durch die Eintr~ige in folgender Matrix gegeben: B1
B2
B3
B4
A1
1
8
4
7
A2
9
0
5
7
A3
3
6
8
1
(3.71)
Die Anwendung der Nordwesteckenregel ergibt folgende AusgangsbasislSsung (leere Felder entsprechen Nichtbasisvariablen und sind mit Null zu besetzen):
144
3 Lineares Programmieren Stelle Transport-Tableau
auf mit ~ bj
~ ai, ai, bj _~ 0.
Bestimme Ausgangsl6sung mit Nordwesteckenregel.
Bestimme Azij mit MODI-Verfahren. Alle Azij .
.
~
> ~
07 ~
/
/ Nein
/
/
/
Bestimme rnin{Azij} Az~ < 0, x~ aufzunehmende Nichtbasisvaxiable. Bestimme SchMfe durch alternierende +/--Markierung.
Optimale LSsung
Bunter Bestimme rnin{x~ } x~l markierten Schleifenelementen.
negativ
Pivotisiere durch J~nderung der Schleifenelemente x i j B im Sinne der jeweiligen Markierung.
/
--...
Stopp. A b b i l d u n g 3.18: Der Transport-Algorithmus
A1 A2 A3 bj
B1
B2
10
10 15
10
25
B3 B4
ai
10 5
35
20 25 40
15
35
85
(3.72)
Zur Bestimmung der Az~j ist (nach (3.67)) folgendes Gleichungssystem (fiir die Basisvariablen) mit vl 0 zu 15sen:
3.9 Spezielle S t r u k t u r e n
us + vs
css
1
us + v2
cs2
8
u2 + v2
c22
0
u2 + v3
c23
5
ua + va
caa
8
~3 @ V4
C34
1
145 us
1
u2
-7
ua
-4
Vl
0
v2
7
v3
12
v4
5
Nun erredmet man nach (3.68) fiir alle Nichtbasisvafiablen A z i j cij - (ui + vj). Zur Schematisierung der Berechnungen lege man ein Tableau /ihnlich dem Traasporttableau an. In der linken oberen Ecke der Felder werden in Klammern die Einhdtstraasportkosten ci3 vermerkt. Sodann werden alle die Felder, die Basisvariablen entsprechen (da die zugeh6rigen Aziy-Werte aufgrund der Complementa'y Slackness-Bedingungen per def. Null sind), mit Null besetzt (bier fett gedruckt). In die rechte Spalte und untere Zeile des Tableaus werden nun die gemgl~ (3.67) zu berechnenden Werte ui und vj eingetragen. Mit Kenntnis dieser Werte lassen sich leicht fiir die Nichtbasisvariablen die Werte Azi3 ci3 - (ui + v 3 ) ermitteln. Mit den Einheitstransportkosten liefert die Ausgaagsbasisl6sung (3.72) folgendes Tableau der angehSrigen dualen LSsung mit den Variablen ui, vj, Azij:
A1
(1)
A2
(9)
A3
(3)
0
16 7
(8) (o) (6)
0 0
3
(4) (5) (s)
-9 0 0
(7) (7) (s)
1 9 0
1
-7
(3.73)
-4
Vd
Die mit der Nordwesteckenregel geflmdene BasislSsung ist nicht optimal, da Azsa < O. xsa wird daher in die BasislSsung aufgenommen. Die xsa als Nichtbasisva-iable enthaltende SchMfe zur BasislSsung (3.72) ist in (3.74) gezeigt:
A1
Bs
B2
lo
loi
A2
15 + ~
A3 bj
10
25
Ba
'+1
B4
ai
20 45
10 5
35
40
15
35
85
(3.74)
In dieser Schleife ist aus der Menge der mit . - " ma'kierten Felder o~s2 und o~2a kein eindeutiges min{xi3} bestimmbar, da xs2 x23 10, es ist jedoch eindeutig 0 10. .Pivotisiert" m a n nun, indem m a n die Elemente in der Schleif'e im Sinne der Ma'kierung u m 10 verMdert, so erhSlt m a n den folgenden, verbesserten Transportplan:
146
3 Lineares Programmieren B1 A1
B2
B3
A2 10
ai 20
25
0
25
5
35
25
15
35
A3 by
B4
10
10
40
Dies stellt eine ,,entartete BasislSsun~' dar, da weniger Ms m + n - 1 3 + 4 - 1 6 Va~-iablen grSi~er Null sin& Welche der Va~-iablen x2a oder x12 als Basisvariable (mit Wert Null) und welche Ms Nichtbasisvariable behaaldelt werden soll, kann in diesem Fall frei entschieden werden. Hier sei x2a Basisvariable. Die Nebenrechnungen liefern folgendes Tableau der Dualvariablen:
A1
(1)
A2
(9)
A3
(3)
(8)
0
(o)
7
(6)
-2
9 0
3
(4)
(5)
(8)
(7)
0
(7)
0
(1)
0
1
10
2
9 0
-4
vj
Da nut zas < 0 ist, ist die aufzunehmende Nichtbasisva~iable x a s . Die sich da~-aus ergebende Schleife ist (x31, x11, x13, x33). (3.70) liefert 0 5. N~ch Umformung ergibt sich folgender neuer Tra~lsportpla~n B1
A1
B2
5
B4
ai
15
20
0
A2 25
A3 bj
B3
10
25
15
25 35
40
35
85
Zur Uberpriifung der Optimalit~it berechnen wit wiederum folgendes Tableau der Dualvariablen:
A1 (X) 0 A2
(9)
A3
(3)
7 0
(8) (o)
(6)
9 0
8
(4)
(5)
(8)
0 0
2
(7) (7) (s)
8
7 0
1
2 3
vj Wie man sieht~ sind nun alle Azij > 0. Damit ist die BasislSsung x s s 5, x s a 15, x22 25, x31 5, x23 0, x34 35 optimal und der entsprechende Transportplan lautet:
3.10 Lineares Programmieren und SpMtheorie 5 15 25 5 35
Einheiten Einheiten Einheiten Einheiten Einheiten
yon yon yon yon yon
P P P P P
nach nach nach nach nach
A1 A1 A2 A3 A3
nach na~h nach na~h na~h
147
B1, B3~ B2, BI~ B4,
und 0 Einheiten auf den iibrigen Routen. Das Beispiel maeht die Effizienz der Transportmethode deutlieh: Um die optimale L6sung zu finden, wurden drei Iterationen benStigt, die im Gegensatz zur normalen LP-Iteration nur Additionen und Substraktionen umfassten! Man mache sich klaz-, dass das entsprechende Lineare Progra~nm sieben Zeilen und 19 Spalten (zwSlf strukturelle Variable und sieben Hilfsvariable) umfasst hgtte. Weitere Effizienzsteigerungen sind mSglich durch den Einsatz heuristischer Verfahten zur Bestimmung einer besseren AusgangsbasislSsung, als dies mit der Nordwesteckenregel der Fall ist. Hierauf soll in Kapitel 6 n~iher eingegaagen werden.
3.10
Lineares Programmieren und Spieltheorie
Zwischen der Theorie der Zweipersonen-Nullsummenspiele und der Lineaz'en Programmierung bestehen Beziehungen, denen wir uns kurz zuwenden wollen. In diesere Zusammenhang kann auch Satz 2.15 mit Hilfe des Linearen Programmierens bewiesen werden. Nach (2.8) kann sich der Zeilenspieler als untere Auszahlungsschranke a,
max rnin E(p, sd) p
sj
und nach (2.9) der Spaltenspieler die obere AuszMflungssehranke a*
rnin rnax E(q, zi) q
zi
sichern. Hier sind sind p und q die gemischten Strategien (Wahrscheinlichkeitsvektoren) der beiden Spieler und sy bzw. zi die Auszahlungsvektoren der j - t e n bzw. /-ten Strategie. Benutzen beide Spieler ihre optimMen Minimax-Strategien pO bzw. qO so gilt nach Satz 2.15 in Verbindung mit Definitionen 2.13 und 2.14 a, a* W, wobei W der Weft des Spieles ist. Fiir den ZeilenspMer (MaximierungsspMer) ls len Strategie wie folgt besehreiben:
sich die Suehe naeh einer optima-
148
3 Lineares Programmieren maximiere a, so dass
?Tt
a, < ~ i = 1 aijpi, ?Tt Z i = l pi 1
j
1,
.,n
Pi _> 0,
i
i,..,m
(3.75)
Der Spaltenspieler will seinen Verlust lninimieren. Er sucht also seine optilnale Strategie qO Ms LSsung Iblgenden Problems: minimiere a* so dass
?%
a* > ~ j = l aijqj,
i
?%
Z j = I qj 1 qj 2 0 ,
1,...,m
j
(3.76)
1,...,n
Wit wollen nun annehmen, dass a, a* W > 0. Ist dies nicht der Fall, so kann es dutch eine einfache Transformation a~j aij + c, c > 0 u n d c geniigend grog erreicht werden. Es sollen nun in (3.75) neue Variable xi 1, 9 . ., m, und in (3.76) yj aP-.-~ ~-~ i qj . 5=, 3 1, . . . , n eingefiihrt werden. (3.75) bzw. (3.76) lassen sieh daan schreiben als tblgende Modelle:
Zeilenspieler: minimiere
so dass
TYt
-a-1.
E i :m I
Xi
~ i = l a i J x i > 1,
j
1,...,n
xi > 0,
i
1,...,m
(3.75a)
Spaltenspieler: maximiere so dass
7% y
--~ 1 ?%
~j=l
aijyj
E j=l ~
1,
i
yj >_ O, j
J
1,...,
m
(3.76a)
1,...,n
Nach Satz 2.15 ist a, a* W. (3.75a) und (3.76a) sind zueinander duale lineare Programme, die die Entscheidungen der Zeilen- bzw. Spaltenspieler abbilden. Damit ist auch ein Weg zur nummerischen Bestimmung optimaler Strategien in Zweipersonen-Nullsummenspielen gewiesen: Man 15se die entsprechenden Modelle (3.75a) oder (3.76a) und man erhglt nach entsprechender Riicksubstitution die Wahrscheinlichkeitsvektoren, die die optimalen Strategien der beiden Spieler daxstellen. Dies wird in Beispiel 3.54 illustriert. Zun/ichst soll Satz 2.15 bewiesen werden, was mit Hilfe des nun bekannten Linearen Programmierens einfacher ist, Ms dies auf andere Weise in Kapitel 2 der Fall gewesen wgre:
3.10 Lineares Programmieren und Spieltheorie
149
3.53 Satz (Hauptsatz der Spieltheorie, vgl. 2.15) Jedes Zweipersonen-Nullsummenspiel mit endlich vielen (reinen) Strategien besitzt einen Wert W. Jeder Spieler hat mindestens eine gemischte MinimaxStrategie pO bzw. qO, mit derer fiir sich den Weft W gazantieren ka~m. BEWEIS. Wir beweisen zungchst die Existenz der optimalen LSsung eines der zueinander dualen Programme (3.75a) und (3.76a). 0. B. d. A. sei aid > 0 fiir alle i 1,..., m u n d j gemS~ig a~y aiy + c m i t c > 0 geniigend groig).
1 , . . . , n (sonst tra~lsformiere
Dann ist der Zulgssigkeitsbereich Z :
y E ]~n
aijyj < 1, y >_ 0
yon Modell (3.76a) offenbar abgeschlossen und im n-dimensionMen Wiirfel { y E R~
O 0, m22 > 0
kX22/ in der x21-x22-Ebene veranschaulichen. Schritt O: E,r,mittlc eine erstc zul/issige BasislSsung zum MasteTproblem 3. 79 Da hier i + mo + r
i + i + 2
4 is% miissen neben xo noch drei Oewichte A~; in die
Startbasis aufgenommen werden. Angesichts der Abbildungen yon P~ und P~ bieten sich die fblgenden drei Extrempunkte dafiir an:
X
1
1
E P I mit Gewicht A11 und Koe~zientenspaRe
X 1
( --cIT~I~ \
x
2
2
/
tgl
xl
12
-~,,8,~176t:}
(i)(ii
E p2 mit Gewicht A12 und Koe~zientenspalte
-(1/2,3/2,o,o,o).
\
e2
/
12
(I) (0
(7/2,1/2, o,o, o).
12
158
3 Lineares Programmieren
12 x
2
2
x2
E p2 mit Gewicht A22 und Koeifizientenspalte
12
(_:o)
12
-(i/2,3/2,o,o, oi.
\
12
/
e2
12
(7/2,1/2,o,o, oi.
12
(:) Daraus ergibt sich das Starttableau, wenn man zusgtzlich eine Hilfsvariable h einffihrt, um eine vollst~ndige Ausgangs-Einheitsmatrix zu erzeugen. Dann lgsst sich in sp~teren Iterationen sehr einfach die aktuelle Basisinverse B 1 ablesen, und zwar steht die i-re Spalte yon B ~ im aktuellen Tableau in der Spalte, in der sich im Starttableau der i-re Einheitsvektor ei befand. Unter BV stehen die Namen der aktuellen Basisvariablen, unter IkKS ihre aktuellen Werte. BV
:CO
h
All
A12
A22
I~HS
,~0
1
0
0
0
-20
0
(A Zielfunktionszeile)
h
0
1
0
o
@
1
(A verbindende Restriktion)
All
0
0
1
0
0
1
CEA~I
1)
A12
0
0
0
1
1
1
C E A~2
1)
Die Hilf~variable h wird aus der Basis eliminiert, wenn wie eingangs motiviert das zu x~ geh6rige Gewicht A22 in die Basis aufgenommen wird. BV
:CO
h
All
A12
A22
tKIS
2C0
1
1
0
0
0
1
A22
o
1/2o
o
o
1
1/2o
All
0
0
1
0
0
1
A12
o
-1/2o
o
1
o
19/2o
Die aktuelle Basisinverse B
1 ist gegeben durch
3.11 D a n t z i g - W o l f e ' s c h e D e k o m p o s i t i o n u n d C o l u m n G e n e r a t i o n
B
1/2o
s
159
o
0
1
-1/2o
o
undderVektorrr cB.B s also rr ~ 1 u n d rr s (0, 0) T.
(1,0,0,0)T.B
SderDualvm-iablendurchzcT
(1,1,0,0),
S c h r i t t i (1. I t e r a t i o n ) : Prii]'e die aktuclle B a s i s l S s u n g a u f Optirnalitiit L6se die zwei U n t e r p r o b l e m e 3.83 u n d 3.84. Ls
r~ss + minimiere so dass 0
[.OTA s _ c sT]
x l
x s E pS
+ minimiere [1. (1,4, 0, 0) - (1, 8, 0, 0)] x s so dass x s E ps minimiere (0, - 4 , O, O)x s so dass x s E ps minimiere - 4 x s 2 so dass x s E ps
(3.83)
Die LSsung yon 3.83 kann graphisch effolgen. L2
rr9s + minimiere [rr ~ so dass 0
2 - c 2T] x2
x 2 E p2
+ minimiere [1. (7/2, 1/2, 0, 0, 0) - (1/2, 3/2, 0, 0, 0)] x 2 so dass x 2 E p2 minimiere (3, - 1 , 0, 0, 0)x 2 so dass x 2 E p2 minimiere 3oc2s - oc22 so dass x 2 E o2
0
Die LSsung yon 3.84 ist mehrdeutig! Dm-aus ergibt sich
(3.84)
160
3 Lineares Programmieren s
arg rain {Lj I L5 < 0 und j arg rain { - 8}
1, 2}
1
Daher ist die Ecke o~9 s bzw. das zugeh6rige Gewicht A21 neu in die Basis aufzunehmen.
Schritt 2 (1. Iteration): Pivotisier'en Die Pivotspalte ~ zu 12s lautet
(
(i) (il (:)
-(1,8,o,o).
__cITxl"~
B
1
Aim1 / eS
1.
B
/
(1,4,o,o).
/
(: oi//i 1/2o
o
0
1
-1/2o
o
8
o
',,-8/2o/
und wird in das letzte Simplex-Tableau eingefiigt.
BV
X0
h
All
A21
A12
A22
RHS
:gO
1
1
0
-8
0
0
1
A22
o
1/2o
o
o
1
1/2o
All
0
0
1
1
0
0
1
A12
o
-1/2o
o
-8/20
1
o
19/2o
~
neu eingeffigte Spalte dient als Pivotspalte
BV
XO
h
All
A21
A12
A22
RHS
XO
1
2
0
0
0
20
2
A21
o
1/8
o
1
o
20/8
1/8
All
o
-1/8
1
o
o
-20/8
7/8
A12
0
0
0
0
1
1
1
Die aktuelle Basisinverse B gegeben durch
1 und der aktuelle Vektor rr der Dualva~-iablen sind daher
3.11 D a n t z i g - W o l f e ' s c h e D e k o m p o s i t i o n u n d C o l u m n G e n e r a t i o n
B
s
1/8 -1/8
o 1
0
0
161
und rr
eBB
s
(1,0,0,0)TB
s
(1, 2, 0, 0) ~, also rr ~
2 u n d rr I
(0, 0) T.
S e h r i t t 1 (2. Iteration): Priife die aktuelle B a s i s l S s u n g a u f O p t i m a l i t g t
L5se die beiden Teilprobleme 3.85 u n d 3.86. Ls
, ~ + minimiere [re~ so dass 0
1 - c 1T] x s
x 1 E pS
+ minimiere [2. (1,4, 0, 0) - (1, 8, 0, 0)] x 1 so dass x s E pS minimiere (1, 0, 0, 0)x 1 so dass x s E pS minimiere xss so dass x s E pS
(3.85)
Die LSsung yon 3.85 kaam graphisch ertblgen u n d ergibt eine Mehrdeutigkeit.
so dass 0
x 2 E p2
+ minimiere [2. (7/2, 1/2, 0, 0, 0) - (1/2, 3/2, 0, 0, 0)] x 2 so dass
x 2 E p2
minimiere (13/2, - 1 / 2 , 0, 0, 0)x 2 so dass
x 2 E p2
minimiere 13/2x21 - 1/2x22 so dass x 2 E o2
0
(3.86)
162
3 Lineares Programmieren
Alle r 2 Kriteriumselemente L5 sind nichtnegativ, also ist die aktuelle BasislSsung fiir das Masterproblem 3.79 optimal. Schritt 3: Bestimme die optimale L6sung zum urspriinglichen L P
Die optimalen Gewichte A~j zum Masterproblem 3.79 lauten, vgl. letztes Simplex-Tableau, ,
All
7 8'
,
A21
1 8'
,
A12
, 1 u n d Xo
2,
alle iibrigen Gewichte besitzen als Nichtbasisva~-iablen den Weft Null. Daher ist x 1.
* ~ * 2 A11"~ +A21"xl
7
1
1/4 \19/4/
x 2*
x0
* x~2 ),~2.
1. (0,0,12, 0,4) T
(0,0,12, 0,4) T
2.
Insbesondere ist im Hinblick auf das urspriingliche LP: 9 2Cll 9
1. (X)l. 2*
IKomp.
0,
* 2C12
(X
0,
* 2C22
2* (X)2.
und optimaler Zielfhnkdonswert = x~
3.11.3
Dantzig-Wolfe'sehe
1.
) 2. Komp. Komp"
1 0
2.
Dekomposition
und
Column
Generation
Die Vorteile der Dekomposidon nach Dantzig-Wolfe beziiglich der benSdgten Rechenzeit zur LSsung groger Linearer Progrmnme lassen sich besonders dann ausnutzen, wenn auf den benutzten Rechenanlagen eine Parallelveraz'beitung m6glich ist. Das urspriingliche LP wird in eine Anzahl kleinerer, unabhSngiger Teilprobleme aufgespalten, deren LSsungen das gewiinschte Ergebnis liefern, wenn sie geeignet koordiniert werden. Die Koordination erfolgt gew6hnlich in einer iterativen Prozedur, hier im Masterproblem 3.79. In jeder Iteration k6nnen die voneinander unabhfiagigen Teilprobleme (3.81) gleichzeidg auf parallelen Prozessoren gelSst werden. Dadurch sinkt die Rechenzeit erheblich. Zur Bestimmung der aufzunehmenden Variablen wurden hier die ZMfunktionswerte der Teilmodelle verwandt. Da die Aufnahmeregeln heuristischen Charakter haben, sind jedoch auch aadere Vorgehensweisen m6glich und denkbar. In der moderneten Literatur, und auch in den exisderenden kommerziellen Softwaz'epaketen findet man zMllreiche solche Vorschlgge, meist unter dem Namen ,,Column Generation". Wir werden darauf noch einmal im Zusammenhang mit der GanzzMfligen Programmierung in Kapitel 9 zuriick kommen.
3.12 Nicht-Simplex Verfahren zur LSsung Linearer Programme
3.12
3.12.1
163
N i c h t - S i m p l e x Verfahren zur LSsung Linearer Programme Das Grundverfahren
von Karmarkar
Das Simplex-Verfahren ist noch immer die a m meisten benutzte Methode zur L6sung Linearer Programmierungsmodelle. Sic ist in vielerleiWeise fortentwickelt und verfeinert worden und bildet in der einen oder anderen Weise auch heute noch die Basis der weitaus meisten Programmpakete ffirdas Lineare Programmieren. Zwei voneinander nicht ganz unabh~ngige Eigenschaften der Simplex-Methode haben jedoch viele Wissenschaftler gest6rt: I. Bei der Simplex-Methode beweg~ m a n sich ,~uJ~en" u m das konvexe Polyeder des LSsungsraumes yon BasislSsung zu benachbarter BasislSsung herum. Bei ,,grogen" LSsungsrgumen erschiene es plausibler, yon einer Ausgangsbasis direkt ,,durch" den L5sungsraum zur optimalen L5sung zu gehen.
2. Der LSsungsaufwand der Simplex-Methode ist schlecht absch/itzbar. Er h/i~gt sicher vonder Zahl der ,,Ecken" des LSsungsraumes und von dem ,,Optimierungspfad" yon der Ausgangsecke zur optimalen Ecke ab. Man weig zwar, dass im Durchschnitt zwischen n (Zahl der Variablen) und 2n Iterationen nStig sind, um ein Problem zu 15sen. Es konnte jedoch laage nicht gezeigt werden, dass LP-Modelle im schlimmsten Fall mit einem Aufwand zu 15sen sind, der polynomial yon der ProblemgrSge abh/i~lgt. Dies fiihrte dazu, dass schon in den sechziger Jatiren versucht wurde, Verfahren zu entwickeln, die mit Hilfe yon Gradientenverfahren ,,durch" den LSsungsraum zu optimieren versuchten. Zwei dieser Verfat~ren sind das Duoplex-Verfahren (Kiinzi, 1963) und das Triplex-Verfahren (Kiinzi and Kleibohm, 1968). Diese Verfahren haben sich allerdings nie durchgesetzt. Erst 1979 gelang es Khachiyan zu zeigen, dass LP-Probleme auch im schlimmsten Fall in polynomialer Zeit gel5st werden kSnnen. Der yon ihm in diesem Zusammenhang vorgeschlagene Algorithmus war allerdings erheblich schlechter Ms das Simplex-VerfMiren. Erst 1984 schlug Karmarkar (Karmarkar, 1984) eine Methode vor, mit der nicht nut die Polynomialit/it gezeigt wetden konnte, sondern die auch Ms etlizient im Vergleich mit der Simplex-Methode angesehen werden konnte. Karmarkars Vorschlgge haben in der Zwischenzeit zu zahlreichen L5sungsverfahren gefiihrt, die fiir spezielle Problemstrukturen etfizienter als der Simplex-Algorithmus sin& Sic im einzelnen zu besprechen wiirde den Rahmen dieses Buches sprengen. Es soil daher K0x'm0x'kars Prinzip aa einer Variante illustriert werden, die 1984/85 in Aachen entwickelt und getestet wurde (Nickels et al., 1985).
3 Lineares Programmieren
164 Idee des Verfahrens
von Karmarkar
Ein gegebenes LP max
s.d.
CT X
(3.8r)
AxO
mit A E R ~x~, b E R ~, c E R ~ und Entscheidungsvariablen x E R ~ im R ~ l/isst sieh in ein Problem im R ~+l iiberffihren, das beziiglieh der L6sungen /iquivalent zu (3.87) ist:
~T~
rnin s.d.
A~
E j=i n + l
0
--
xj
(3.88)
1
~>0 Vorausgesetzt wird, dass eine zul/issige LSsung x ~ E R ~ fiir das Problem (3.87) bekannt ist, deren transformierter Wert in (3.88) durch N0
1 n+l gegeben ist.
(1,..., 1)T E ]~n+l
Es sei nun der k-te Iterationspunkt g~ als zulgssige L6sung von (3.88) gegeben. Mittels einer Transformation T~ wird der Zulgssigkeitsbereich ,:on (3.88) derart in den Einheitssimplex L
g E R ~+l
~gj
1, g _ > 0 , ~ + l
>0
j=l
abgebildet, dass sieh die Transformation T~ ( ~ ) des Iterationspunktes ~ telpunkt
(11
n+l'n+l'""n+l
1)T
im Mit-
E ]~n+l
dieses Einheitssimplex des R "~+1 befindet. Daan wird eine Kugel um T~(~ ~) als Mittelpunkt mit festem, ,:on k unabh/ingigem Radius in den so transformierten LSsungsraum gelegt. Vom Zentrum T~ ( ~ ) der Kugel aus geht man in Richtung des negativen projizierten Gradienten der ZMfunktion mit einer geeigneten Schrittweite c~, d.h., man geht in Pdehtung des steilsten Abstiegs der Zielfunktion. Optimal beziiglieh der Konvergenzgesehwindigkeit ist eine Sehrittweite von c~ 0,5 unabhgngig yon der Nummer k der Iteration (vgl. Beisel and Mendel, 1987, S. 185). Man erreicht dann den Punkt T~ (~+1) im (n + 1)-dimensionalen Einheitssimplex
3.12 Nicht-Simplex Verfahren zur LSsung Linearer Programme
165
Abbildung 3.20: Durchschnitt eines Einheitssimplex im ]R4 mit einem Lineaz'en Raum im ]R2 und durch Riickw~rtstransformation mit T ~ 1 den neuen Iterationspunkt ~ + 1. Der
Punkt ~+i
ist zwar nicht notwendigerweise besser als ~, d.h., es ist nicht un< ~T~k doch nach endlich vielen Schritten wird-ausgehend yon ~k-der Zielfunktionswert ~T~k echt verringert.
bedingt ~T~k§
Alle Hiufungspunkte der erzeugten Folge {7~} ~cN sind OptimallSsungen yon (3.88).
Grundversion der Projektionsmethode
a) Normiernng der Problemstellnng Das Verfahren yon Karmarkar dient zungchst in seiner Grundversion dazu, folgendes sogenannte Standard LP-Problem zu 15sen: rain
cTx
- - C*
s.d.
Ax
b
x>O
(3.89)
mit b E ]R~, c E ]R~, A E ]R~ • Hierbei werden folgende einschr~nkende Bedingungen zus~tzlich vorausgesetzt: (i) c* sei so gew~hlt, dass der optimale Zielfunktionswert yon (3.89) gleich 0 ist, (ii) eine zul/ssige AusgangslSsung x ~ > 0 sei bekaant und existiere. Wie sich das Verfahren yon Karmarkar dahingehend erweitern lgsst, dass es auch fiir allgemeine LP-Probleme eingesetzt werden kann, wird im Anschluss an die Beschreibung der Grundversion dargestellt.
166
3 Lineares Programmieren
Um nun das Verfaliren yon Kaz-maz-kar anwenden zu k0nnen, muss das Problem (3.89) als erstes einer sogenannten projektiven Transformation unterworfen werden, mit der es gelingt, den LSsungsraum yon (3.89), der eine Teilmenge des R ~ darstellt, in einen Einheitssimplex im R ~+l einzubetten, wobei die AusgangslSsung ins Zentrum dieses Simplex abgebildet wird. Ein Einheitssimplex im • n § L
x 6 R n§
ist dabei wie iblgt definiert:
~xj j=l
1, x :> 0, Xn§ 1 :> 0
(3.90)
Aus Problem (3.89) ergibt sieh nun mittels einer solehen Projektion folgendes Problem: rnin
~T~
s.d.
AT
0
(3.91)
x>0 m
~-~n§ 1
L j = l xj -
-
1
Es 1/isst sich zeigen, dass Problem (3.89) und (3.91) (Kaz-maz-kar, 1984; Beisel a i d Mendel, 1987) gquivalent in dem Sinne sind, dass jede zul/issige LSsung des ersteren genau einer zulgssigen LSsung yon (3.91) entsprieht und dass die Werte der beiden Zielfunktionen genau dann gMch sind und den Wert 0 annehmen, wenn die LSsungen OptimallSsungen der Probleme darstellen (Beisel and Mendel, 1987). Das bedeutet, dass aus einer OptimallSsung fiir (3.91) mit dem Zielfunktionswert 0 eine OptimallSsung fiir (3.89) ermittelt werden ka~in. Falls allerdings der Optimalwert yon (3.91) gr61ger 0 ist, besitzt (3.89) keine LSsung. Die Translbrlnationsvorsehrii~, durch die die beiden Probleme ineinander iiberfiihrt werden und mit der es gelingt, die Aquivalenz zu zeigen, ist wie folgt definiert: T" R~ ~ E n+l X
~
X
1
1 +1((D ix) T v ] )T v
wobei D
diag(x ~
"-.
0)
(3.92)
und e E R ~ m i t e T ( 1 , . . . , 1) sind und a ~ > 0 eine zulgssige LSsung yon (3.89) daz'stellt. Hiermit gilt ffir a E R ~, a _> 0:
3.12 Nicht-Simplex Verfahren zur LSsung Linearer Programme
167
T ( x ) >_ 0 und
(f(x))j : ~ j
Ejn 1225/220 @ i
fiir alle j
1, ..., n
und n
j=0
Wie man zeigen kann, gilt nun (Beisel and Mendel, 1987; Karmarkar, 1984): T(R~0 C_ L Damit wird also jede Teilmenge des IR~ mittels T in eine Teilmenge des Einheitssimplex L abgebildet. Ferner ist T eine umkehrboz eindeutige Abbildung, d.h., es existiert eine inverse Abbildung S T 1, mit S ( T ( x ) ) x fiir alle x E R ~, die sich wie folgt ergibt:
s. L ~ ~--~ x
_1
(3.93)
D P (~ )
P ist die Projektion auf den R n, die die ersten n Komponenten eines Yektors ~ E ]R~+I auf den Yektor des ]R~ abbi]det, der aus diesen Komponenten besteht, also:
p.
Rn§ 1 ~ ~"
(~'1,...,37n,3:n+1)
Rn
I~ (~'l,...,~'n)
37.
(3.94)
Somit gilt also: ~
xj
~n+ 1
fiir j
1, ..., n
Mittels T, S 1/isst sich nun das Problem (3.89) in das Problem (3.91) fiberfiihren. b) Der Algorithmns yon Karmarkar Das yon Karmarkar vorgeschlagene Verfahren wird nun auf Problem (3.91) wie folgt angewendet (Nickels et al., 1985; Murty, 1988; Beisel and Mendel, 1987; Karmarkar, 1984):
Ausgehend vonder zul/issigen L6sung x T ( x ~ wird iterativ eine Folge von Punkten ~ im L6sungsraum bestimmt, die gegen eine Optimall6sung von (3.91) konvergiert. Hierzu wird jeweils der Punkt g~ mittels einer Transformation T~, die der Abbildung T sehr/ihnlich ist, in den Mittelpunkt des Einheitssimplex abgebildet. Dies geschieht mit der Intention, in den solcherart deformierten modifizierten LSsungsraum des Problems P~ (s. u.) jeweils eine Kugel mit einem konstaaten Radius zu legen, auf deren Rand in Richtung des negativen projizierten Gradienten, vom Zentrum ausgehend, eine neue LSsung fiir das deformierte Problem P~ bestimmt wird. Anschliegend wird der Punkt Y~+I mittels der Umkehrabbildung S~ in den Punkt ~ + 1 iiberfiihrt, und die Prozedur wiederholt sich.
3 Lineares Programmieren
168 Die hierzu verwendeten Abbildungen T~ und (T~) definiert:
1
S~ sind dabei wie tblgt
Fiir k E N und g~ E L, beliebig aber fest, ~ E L, sei: T~:
L
--~ R ~+l
"~
~
y
(3.95) eT D~I-~
wobei D~
diag(~), r E
]Rn§ cT
(i,
. ..,
])
sin& Sk :
L
--4 R n+l D~T b-+
(3.96)
eTDk T
Hiermit ergibt sich in jedem Iterationsschritt das deformierte Problem P~ zu: (P~) : rnin ~:hTy s.d. B~:#
0
(3.97)
~_>0 mit
{-AD~ ] Die Deformation des Problems geschieht hierbei mit der Intention, eine Schw~che herk6mmlicher Projektionsverfaliren zu fiberwinden. Diese ist dadurch bedingt, dass bei herk6mmlichen Projektionsverfaliren sehr schnell Punkte erreicht werden, die in der N/ihe bzw. auf dem Rand des LSsungsraumes liegen. Hierdurch lassen sich nur noeh kleine Sehrittweiten in den n/iehsten Iterationsstufen realisieren, was sehr sehnell zu Rundungsfehlern fiihren kann, die sieh auf die Qualit/k bzw. auf die Genauigkeit der L6sung sowie auf die Reehenzeit /iugerst negativ auswirken kSnhen. Dies wird (lurch die Transformation in den Mittelpunkt des Einheitssimplex verhindert, da in dem solcherart modifizierten Problem in jedem Schritt gleich groge Schrittweiten realisiert werden kSnnen. Diese in allen Iterationen konstaate Sehrittweite c~ bedingt dadiber hinaus die polynomiale Besehr/inktheit des Verfahrens und hat somit Einfluss auf die Effizienz des Verfahrens. Die Wahl einer solehen Sehrittweite und der Nachweis der Polynomialitgt des Verfahrens wird yon Karlnarkar anhand einer logarithlnisdlen Potentialfunktion vorgenommen, fiir die nachweislidi in jedem Iterationsschritt eine konstante Mindestverbesserung erreieht werden kann. Allerdings igsst sich das nieht fiir die Zielfunktion des Problems (3.89) beweisen. Es gilt jedoeh, class nach endlieh vielen Iterationssehritten eine echte Verbesserung des Zielfunktionswertes yon (3.89) erreicht wird.
3.12 Nicht-Simplex Verfahren zur LSsung Linearer Programme
169
Der Algorithmus kann nun wie tblgt besehrieben werden: 3.57 Algorithmus
0. Schritt (Initialisiere) T O
k
id, s ~
3~
(i/(~+i),...,i/(~+i)
T
0
I. Schritt (Transformation
T~)
2, Sehrltt (Projizierter Gradient) grad ~
cTD/c [I--B/cT(B/cB/c T) 1B/c]
A ~ grad
grad ~
II grad~ II
3, Schritt (Verbesserung der Zielfunktion) Setze: ~k+l
a0 _ ~ g~rad k
(c~ konstant vorgegeben) 4. Schritt (Riicktransformation) Bestimme ~ + 1
S~ (,#~+1).
5. Schritt (Abbruch-Kriterium) Wenn der Wert der Zielfunktion nicht klein genug ist, gehe zu (2. Schritt), sonst gehe zu (6. Schritt). 6. Schritt
~ + 1 ist die OptimallSsung yon (3.91). Bestimme x ~ S(~ ~+1) als OptimallSsung yon (3.89).
Im 2. Schritt wird der projizierte Gradient, das heigt, die Projektion des Oradienten
170
3 Lineares Programmieren
der Zielfunktion yon P~ bestimmt, u m im L6sungsraum des modifizierten Problems P~ die Richtung des steilsten Abstiegs der Zielfunktion festzulegen. Diese Berechhung erfordert den grSgten Aufwand des gesamten Verfahrens, da in jedem Schritt die Inverse yon (B~B~ T) bestimmt werden muss. Zur Bestimmung dieser Matrix sind in der Literatur unterschiedliche Verfahren vorgeschlagen und getestet worden, auf die hier nicht weiter eingegaJlgen werden soil. Im 5. Schritt des Verfahrens ist dann ein Optimum erreicht, wenn weniger als eine Minimalverbesserung mSglich ist, wie sie in nachfolgendem Theorem angegeben wird (Karmarkar, 1984; Nickels et al., 1985). 3.58 Satz
FOr jedes beliebige q E N I/isst sich mittels obigen Algorithmus (9 (n(q + in(n))) Schritten ein ffir (3.91) zul/issiges z bestimmen, ffir das (a) entweder gilt cT~
in
0
(b) oder Z_X_ < 2 q.
Fails es also mit obigem Verfahren gelingt, eine Optimall6sung yon (3.91) zu bestimmen, deren Zielfunktionswert 0 ist, so kann mittels der Umkehrfunktion S die Optimall6sung yon (3.89) ermittelt werden. Andernfalls ist der Nachweis der Nichtexistenz eines solchen Optimums erbracht.
LSsung allgemeiner LP-Probleme Zum Abschluss des Abschnitts soil gezeigt werden, wie es gelingt, jedes Mlgemeine LP-Problem mittels des Verfahrens yon Karmarkar zu 15sen. Hierzu ist zu zeigen, wie die Bedingungen (i) und (ii) nach (3.89)erf011t werden k6nnen, um jedes LPProblem der Form (3.91) in die sogenannte Standardtbrm (3.89) zu fiberf0hren bzw. eine solche iterativ anzunShern. Als erstes soil gezeigt werden, wie man verf'~hrt, wenn keine zulgssige LSsung z ~ > 0 bekannt ist. In diesem Fall wird mittels eines Hilfsproblems zun/ichst eine zulgssige AusgaJ~gsl6sung ermittek, die die Bedingung (i) erf011t. Dazu sei 2 > 0 ein beliebiger Vektor 2 E R% Sei weiter res einer Phase (1) folgendes Problem gelSst werden:
A 2 - b, dann muss in
Min A s.d. Az - Ares z,A>O
b
(3.98)
3.12 Nicht-Simplex Verfahren zur LSsung Linearer Programme Offbnsichtlich ist x Eigenschaften 1. x
5:, A
5:, A
171
1 eine zulissige L6sung fiir (3.98) mit fblgenden
1 ist strikt positiv,
2. wenn eine zulissige L6sung fiir (3.89) existiert, daam ist der Optimalwert yon (3.98) gleich 0. Da alle LSsungen, die mittels des Verfahrens yon Karmarkar ermittelt werden, strikt positiv sind, kann die OptimallSsung yon (3.98) als zul/issige AusgangslSsung fiir (3.89) verwendet werden. Uln das Verfahren yon Kaz'maz'kar fiir allgemeine LP-Problelne der Form (3.91) anwenden zu kSnnen, ist es ferner n5tig zu zeigen, wie man verf/ihrt, wenn der optimale Zielfunktionswert nicht bekannt ist. Hierzu wird yon Karmarkar das sogenannte Verfahren der ,,gMtenden ZMfunktion" vorgeschlagen (Karmarkar, 1984; Murty, 1988). Hierzu nimmt er an, dass eine untere Schranke 1 und eine obere Schranke u fiir den Zielfunktionswert yon (3.91) belmamt sind. Als Testwerte werden dann
l'
l+ 1
l) und u'
l+ 2
l)
(3.99)
gesetzt, und das Verfahren yon Karmarkar beginnt, indem c* diesem Wert wird das Verfahren solange fortgesetzt, his
l' gesetzt wird. Mit
1. entweder die Potentialfunktion nicht mehr um einen konstanten Wert verbessert werden kann. In dem Fall ist 1' kleiner Ms das tats~chliche Optimum, es wird 1 1~ gesetzt, und 1~ und u ~ werden g e m ~ obiger Definitionen neu ermittelt, und das Verfahren yon Karmarkar beginnt mit diesem neuen c* 1~ yon neuem 2. oder der Wert der Zielfunktion yon (3.91) unter u' sinkt. In diesem Fall wird
u u' gesetzt, und das Verfahren Yon Karmarkar Setzungen yon vorne.
startet mit diesen neuen
Von Karmarkar ist nachgewiesen worden, dass eine dieser Situationen nach endlich vielen Schritten, deren Anzahl polynomial beschr/iakt ist, eintritt, so dass die Polynolnialitit des Verfahrens auch fiir den Fall eines unbekannten Zielfunktionswertes gew/ihrleistet bleibt. Fiir das oben beschriebene Verfahren sind eine Reihe yon Modifikationen entwickelt worden. Diese betreffen sowohl Methoden der Aktualisierung und Speicherung der Inversen, die MSglichkeit der Beriicksichtigung diinn besetzter Matrizen, weitere Verfahren zur AnnKherung des unbekannten optimalen Zielfunktionswertes sowie Tests mit grSl~eren Schrittweiten, die im Durchschnitt zu einer Verringerung des Rechenaufwandes beitragen. Auf diese Weiterentwicklungen wird hier nicht welter eingegangen. Dazu sei auf die nachfolgend aufgefiihrte Literatur verwiesen (Lisser et al., 1987; Nickels et al., 1985; Adler et al., 1989).
3 Lineares Programmieren
172 Efllzienz des Verfahrens
Festhalten I/isst sich, dass mit der Verfahrensidee yon Kaz-maz-kar und diversen Weiterentwicklungen vielversprechende Rechenergebnisse erzielt werden komlten. In Aachen wurde unter anderem das Simplex-Verfahren, das im Marsten Code (Nickels et al., 1985) und APEX IV yon Control Data implementiert war, mit einem modifizierten Projektionsverfahren naeh Karmarkar, das in Fortran IV implementiert wurde und bei deln keine Methoden zur Beriicksichtigung diinn besetzter Matrizen verwaaldt wurden, verglichen. Hierzu wurden 8 Testprobleme heraalgezogen: P 4, P 8 stellen Assignment Problelne dar, P 3 hat tridiagonale Struktur und P 7 ist ein Transportproblem. Diese Vergleiche der Verfahren wurden zur Zeit der Entwicklung auf Grol~rechnern durchgefiihrt, da zu dieser Zeit leistungsfghige LP-Codes (wie z. B. APEX) nut auf Grolgrechnern liefen. Die Verhgltnisse der Rechenzeiten diirften aber auf den heute gelgufigen PCs nicht aaiders sein. Die Dimensionen der Testprobleme werden in Abbildung 3.21 gezeigt. Problem-
m
n
Nr.
Schlupfvariablen in n
Anzahl Gleichheitsrestrikt.
Dichte
P 1
15
21
14
1
0,14
P 2
34
86
34
-
0,10
P 3
40
40
-
40
0,10
P 4
40
400
-
40
0,07
P 5
80
321
80
-
0,03
P 6
200
441
200
-
0,02
P 7
80
1200
-
1200
0,03
P 8
80
1600
-
1600
0,03
A b b i l d u n g 3.21: Testprobleme Das Konvergenzverhalten des Karmarkar-Verfahrens wird in Abbildung 3.22 charakterisiert. Es zeigt sich, dass die Anzahl an Iterationen kaum abh/ingig yon der Dimension der Probleme ist. Dariiber hinaus ist auffgllig, dass bei konstantem m u n d variierender Anzahl Spalten die CPU-Zeiten nahezu konstant bMben. Demzufolge ist ein Verfahren nach Karlnarkar insbesondere bei Problemen mit vielen Va.riablen und wenigen Restriktionen als vorteilhaft zu erachten.
3.12 Nicht-Simplex Verfahren zur LSsung Linearer Programme P1 IT 1
P2
P3
P4
P5
P6
173 P7
P8
2
5
2
2
2
3
2
2
0.012
0.136
0.085
0.113
0.524
6.139
0.587
0.650
6
14
1
14
14
12
10
14
0.024
0.319
0.030
0.628
2.468
32.698
3.381
4.550
8
19
3
16
16
15
12
CPU
0.036
0.455
0.115
0.741
2.992
38.837
3.968
IT 1
Anzatil der Iterationen (Phase 1)
IT 2
Anzatil der Iterationen (Phase 2)
CPU 1 IT 2 CPU 2 IT
CPU
I
CPU-Zeit in Sek. (Phase 1)
CPU
2
CPU-Zeit in Sek. (Phase 2)
IT
Gesamtzatfl der Iterationen
CPU
gesamte CPU-Zeit in Sek.
5.200
Abbildung 3.22: Konvergenzverhalten des modifizierten Karmarkar-Verfahrens Des weiteren f/ilk auf, dass es mit einem ,,Karmarkar-Verfahren" gelingt, ziemlieh schnell eine sehr gute LSsung zu generieren, die nur noch 1% vom Optimum abweicht. Dazu ist im Durchsctmitt nur die Hglfte der Iterationen nStig, die man zum exakten Erreiehen des Optimums aufwenden muss. APEX hingegen benStigt 75 % der Gesamtiterationszatll, um eine LSsung zu finden, die immer noeh bis zu 25 % vom Optimum abweieht. CPU
P1
P2
P3
P4
P5
P6
P7
P8
MKAR
0.036
0.453
0.115
0.741
2.992
38.837
3.968
5.200
MARS
0.092
1.249
0.690
9.473
7.474
18.347
7.086
APEX
0.074
0.151
0.081
0.405
0.419
0.478
1.524
MKAR
Modifiziertes Karmarkar-Verfatiren
MARS
Marsten-Code mit primalem Algorithmus und der 2-Phasen-Methode
APEX
APEX IV
1.213
Abbildung 3.23: CPU-Zeiten der 3 LP-Codes Auger experimentellen Versuchen etwas fiber die Effizienz bzw. die Komplexitgt yon
174
3 Lineares Programmieren
Verfallren zur L6sung von LP-Problemen auszusagen wurde aueh versucht, fiber eine Abschgtzung der Zahl der Ecken der LSsungsrgume zu Aussagen zu kommen (siehe z. B. Bartels, 1973). Praktisch brauchbare Ergebnisse liegen sich aber auch auf diese Weise kaum ermitteln.
3.12.2
St~irken u n d S c h w ~ i c h e n v o n I n t e r i o r P o i n t V e r f a h r e n .
In den letzten 10 bis 15 aatiren sind fiber 1000 Ver6ffentlichungen auf dem Gebiet der hiterior Point Verfahren ersehienen. Insgesamt imam man diese Verfahren in vier Familien aut%eilen (den Hertog and Roos, 1991): - P r o j e k t i v e M e t h o d e n , wie sie ursprfinglich yon Karmarkar vorgeschlagen wur-
den, wie sie auch in diesem Buch detaillierter beschrieben wurden und wie sie z.B. von Anstreieher (1990) studiert wurden. - R e i n e aJfine S k a l i e r u n g s m e t h o d e n , wie sie sehon 1967 von DaMn vorgesehla-
gen und spgter yon zahlreichen Autoren welter entwickelt wurden (siehe z. B. Barnes, 1986). - Pfadfolgende M e t h o d e n , die Methoden bezeichnen, die in kleinen Schritten das
Optimum aastreben und wie sie yon zatflreichen Autoren, wie z. B. Monteiro and Adler (1989) vorgeschlagen werden und -
A f f i n e P o t e n t i a l - R e d u k t i o n s m e t h o d e n . Diese wurden z.B. yon Freund (1991) und anderen vorgeschlagen. Sie benutzen eine primale Skalierung, projizierte Gradienten der Potentialfunktion, in die die Werte der primalen Strukturvariablen und der dualen Schlupfvariablen eingehen und sie setzen nicht die Kenntnis des Optimalwertes der Zielfunktion voraus.
Im Rahmen dieses Lehrbuches ist es offensichtlich nicht mSglich, die Vielzahl der Interior Point Verfahren im Detail zu beschreiben. Sie unterscheiden sich primgr in der Art der vorgenommenen Traasformationen und Rficktransibrmationen, der Suchrichtung und der Schrittl/inge. Daraus resultieren verschiedene obere Schranken ffir den Rechenaufwand im schlechtesten Falle. Allerdings sagt dies noch nicht Mlzu viel fiber ihren durchschnittlichen Rechenaufwand bei praktischen Anwendungen aus, der wiederum erheblich yon der Struktur des zu 15senden Modells abh/ingen kaan. Moderne, kommerziell erh/iltliche LP-Soi~ware (siehe z.B. Fourer, 2001) enth/ilt datier sehr oI~ verschiedene LP-Solver (Simplex-basiert und hiterior Point) sowie Presolver und andere Algorithmen. Hier sei nur versucht, einen grunds/itzlichen Vergleich yon Simplex Verfahren und Interior Point Verfahren durchzuffihren (siehe auch Illes and Terlaky, 2002): Dieser Vergleich ist aus verschiedenen Grfinden nicht ganz einfach: Zum einen sind die Verfat~ren zu verschiedenen Zeiten entstanden und befinden sich daher in verschiedenem Entwicklungsstand. Zum anderen gibt es sowohl auf der Seite der
3.12 Nicht-Simplex Verfahren zur LSsung Linearer Programme
175
Simplex-Verfallren, als auch auf der Seite der hiterior Point Verfahren eine Vielzahl yon Algorithmen, die auch in ihren Eigenschaften sehr voneinander abweichen. Schon allein die ,,Standardverfahren" des Simplex Algorithmus (Primale, Duale, Primal-Duale, Criss-Cross Simplex Verfahren) weichen z.B. in ihrer Emzienz je nach Problemax't sehr voneina~ider ab. Dax'fiber hinaus hat sich das Problemumfeld in den letzten Jalirzehnten sehr gegudert. Wghrend in den 50er Jahren noch Probleme mit einigen Hundert Vax'iablen als grog angesehen wurden, kann mein heute schon auf Laptops Modelle mit mehreren zehntausend Variablen in Minuten 15sen. Das Ausgangsmotiv ffir die Entwicklung yon Interior Point Verfahren (IPV) waren sicher Komplexitiitsbetr'achtungen. Es konnte lange nicht gezeigt werden, dass der Simplex Algorithmus LP Probleme in polynomialer Zeit (worst-case Aussage) 15sen konnte. Es bestand la~ge Zeit eine sehr groge Abweichungen zwischen solchen worst-case Aussagen und dem praktischen Verhalten des Simplex Algorithmus. Fiir dieses wurde gezeigt, dass die Zalil der Pivot Schritte min(n,rn) ist. Allerdings ist dies nur eine unvollst/i~dige Aussage, da auch der Rechenaufwand pro Iteration zu beriicksichtigen ist. Wie schon am Anfa~g dieses Unterkapitels ausgefiihrt wurde, konnte Kashian mit seinem ellipsoiden Verfat~ren zeigen, dass eine LSsung des LPProblems in polynomialer Zeit mSglich ist und seit Karmarkar existieren hierfiir auch zahlreiche Verfahren, die dies auch in ihrem Durchschnittsverhalten schaffen. IPV zeigen ein polynomiales worst-case Verhalten. Die beste bisher bekannte Schranke fiir die Zahl der Iterationen ist O (x/:~L). Eine optimale Basis ka~m mit fast 7 t Schritten ermittelt werden, die insgesamt O (n 3) arithmetische Operationen erfordern (siehe z.B. Illes and Terlaky, 2002). Diese Aussagen miissen allerdings fiir spezielle Problemstrukturen spezifiziert werden. Insofern ist eine allgemein giiltige Aussage dariiber, welche Verfat~ren etlizienter sind, nicht zu machen. In vorha~denen SoI~ware Paketen sind fiir Simplex Verfatiren zatllreiche moderne Heuristiken iraplementiert wurden, die die Effizienz deutlich erhShen und die FlexibilitSt schaffen, automatisch zwischen primaler und dualer Simplex Methode zu wechseln. Die duale Simplex Methode hat sich vor allem auch bei der Ganzzahligen Linearen Programmierung bestens bewfit~rt. Demgegeniiber sind IPV sehr etfizient wenn Probleme mit sehr mager besetzten Matrizen zu 15sen sind. Aus diesen Griinden enthalten moderne Software Pakete sowohl Simplex Verfahren als auch IPV.
R e d u n d a n z u n d Entartung: Es wurde schon friiher erwShnt, dass (absolute) Redunda~lz die Basis und ihre Inverse beim Simplex Verfatiren unnStig vergrSgern kann. Bei den erwfitinten Duoplex- und Triplexverfatiren bestand augerdem die Gefahr, dass der Gradient eine absolut redundante Nebenbedingung schnitt und dass dadurch eine unzul/issige LSsung ermittelt wurde, yon der aus man schlecht wieder in den LSsungsraum gelangte. Dies ist bei IPV nicht mSglich, da sich diese Verfaliren streng im zulSssigen Raum bewegen. Es wurde ebenfalls bereits erwfitmt, dass in der Praxis Entartung kaum elne Rolle beim Verlauf des Simplex-Verfatirens spielt. Probleme kSnnen allerdings auftreten, wenn man-ausgehend yon einer entarteten optimalen Ba-
176
3 Lineares Programmieren sis-Sensitivit~itsanalysen oder Pa~'ametrisches Progra~nmieren Bei IPV stellt Entartung keinerlei Problem dar.
unternimmt.
LSsungspfad: Beim Simplex-Verfahren kann der Iterationspfad auf versehiedene Weisen festgelegt werden. Meist sind dies heuristische AnsStze (wie auch die Auswahlregel yon Dantzig). Der L6sungspfad kann auch dadurch verkfirzt werden, dass man mit einer BasislSsung starter, die schon in der N~he der optimalen BasislSsung liegt (sogenannter Warmstart). Bei der Simplex-Methode ist dies einfach m6glich, auch dann wenn (wie beim Parametrischen Programmieren) sich z. B. Teile des b- oder c-Vektors ~ndern. Bei IPV ist dies nicht so einfach m6glich. Durch die relativ aufwendigen Iterationsschritte sind solche Wa1"mstarts nicht zu empfehlen. Zusammenfassend kann man wohl sagen, dass in der praktischen Anwendung keiner der existierenden AnsStze dominiert. Theoretische ErwSgungen seheinen zwar ffir IPV zu sprechen, bisher ist es jedoch noch nicht gelungen eine klare l~berlegenheit der IPV fiber Simplex-Verfahren zu erreichen. F fir sehr groJSe Probleme mit mager besetzten Matrizen scheinen IPV besser geeignet zu sein, daffir haben Simplex Verfahren grSl~ere Vorteile beim ganzzalfligen Programmieren.
3.13
Lineares P r o g r a m m i e r e n und Software
Modellierungssprachen dienen dazu, Modelle der lineazen und gemischt-ganzzahligen Programmierung in Software umzusetzen. Moderne Systeme unterstfitzen heute den gesamten Prozess, ausgehend yon der Entwieklung des Modells, dem Analysieren und Testen des Modells und seiner Daten, bis bin zur Umsetzung in eine SoiZware, die auch yon Nicht-Experten zur Optimierung praktischer Problemstellungen eingesetzt werden kann. Die Modellierungssprache OPL Studio der Firma ILOG wird naehfolgend exemplarisch an folgender Aufgabenstellung beschrieben6: Ein Unternehmen stellt verschiedene Fazbprodukte her. Dem Unternehmen liegt eine Reihe yon Produktionsauffr~gen f/Jr den kommenden Monat vor. Aufgrund yon Lieferengp/issen in der Zulieferung weit~ man bereits, dass nicht alle Kundenauftr~ge bedient werden k6nnen. Pro Produktionsauftrag (gegeben durch die Anzatfl der jeweiligen Produkte) sind daher neben dem Verkaufspreis und den Produktionskosten auch Opportunit~tskosten ffir den Fall der Nicht-Bedienung des AuiZrags zu berficksichtigen. 6 Die ModellierungsspracheOPL ist in ihrer Syntax eng an die Programmiersprache C§247 angelehnt, siehe z.B. Stroustrup (1991).
3.13 Lineares Programmieren und Software
177
Die hergestellten Farben entstehen durch Mischen verschiedener Vorprodukte und Rohstoffe, in diesem Beispiele durch Wasser, zwei Pigmentmischungen und zwei verschiedene Mischungen. Diese unterscheiden sich in ihrer Zusammensetzung, d.h. den enthaltenen Inhaltsstoffen (hier Wasser (//20), LSsungsmittel, Weilgpigment, Buntpigment, Bindemittel, Konservierungsmittel und Additive). Jedes Produkt ist durch die in ibm enthaltenen Inhaltsstoffe beschrieben, genauer durch die Angabe yon unteren und oberen Schranken ffir den jeweiligen Anteil. Eine Modellierungsprache hilft bei der strukturellen Beschreibung eines Problems. Es zwingt den Modellierer dazu, die wesentlichen Komponenten des Modells, also Entscheidungsv0Mablen, Zielfunktion und Nebenbedingungen, exakt zu spezifizieren.
Ffir die Entscheidungsvariablen sollten zuerst folgende Fragen beantwortet werden" - Welche Entscheidungsvariablen enth/It das Modell fiberhaupt? - Welchen Typ haben diese (kontinuierlieh, ganzzahlig/diskret oder bin~h'?
- Lassen sich Entscheidungsvariablen gMch Typs zu logisehen Gruppen zusammenfassen (Felder oder Matrizen yon Entscheidungsvariablen, indiziert fiber verschiedene Indexmengen)? OPL Studio kennt als entsprechend kontinuierliche Entscheidungsv0Mablen ( f l o a t ) und gaazzahlige (int) Entscheidungsvariablen. Bin/ire Entscheidungsvariablen sind ganzzahlige Variablen mit Wertebereich {0, 1}. Eine Indizierung der Variablen kann durch ein Range (z. B. 1.. 10) oder eine Indexmenge (beispielsweise enum) erfolgen. Auch mehrdimensionale Indexmengen sind mSglich. Im vorliegenden Beispiel gibt es bin/ire Entscheidungsvariablen x ffir die Entscheidung, ob der jeweilige Auftrag angenommen werden soll oder nieht, kontinuierliche Variablen einerseits ffir die Produktionsmengen pm der Produkte und andererseits ffir die Mengen der Vorprodukte und Rohstoffe in jedem der Endprodukte y. Ein wesentlicher Vorteil, den die Verwendung einer modernen Modellierungssprache bietet, ist die Trennung yon Modell und Daten: Die inhakliche Logik des MILPModells kaan unabhfiagig von konkreten Daten tbrmuliert werden. Damit erreieht man, dass - d a s Modell fibersichtlicher wird, - sieh ein Modell in einfaeher Weise mit versehiedene Daten testen 1/isst, - nachtrggliche Anderungen und Erweiterungen leichter implementiert werden k6nnen - und sich die unterliegenden Daten separat z. B. in einer Datenbank speichern lassen, so dass sieh die Datenbasis des Optimierungsproblems stfiadig aktuell halten 1/isst. Dies ist insbesondere daan notwendig, wenn Optimierungsmodelle in regelm/igigen Zyklen angewandt werden, wie z.B. bei einer rollierenden
178
3 Lineares Programmieren Planung.
Im vorliegenden Beispiel sind die relevanten Eingangsdaten in einer Textdatei abgelegt, siehe Abb. 3.24.
//grundlegende O~ekte
P r o d u k t e = { F a r b e l Farbe2 Farbe3 }; Vorprodukte = { Wasser PigmentMischungl PigmentMischung2 Mischungl Mischung2 }; Inhaltsstoffe = { H20 Loesungsmittel WeissPigment BuntPigment Bindemittel Konservierungsmittel Additive };
/ / D a t e n zu den Vorprvdukten beschaffungskosten = [ 0.01, 1.58, 1.62, 2.10, 2.25 ]; v e r f u e g b a r e M e n g e = [ 100000, 12500, 3000, 20050, 18750 ] ;
/ / D a t e n zu den Endprodukten verkaufspreis = [ 10.95, 13.25, 17.20 ]; produktionskosten = [ 1.45, 1.55, 1.70 ];
/ / f i i r jedes Vorprodukt der Anteil der Inhaltssto ff e anteil = [ [99.9 1.1, 0.0, [0.0 95.3, [0.0 [0.0 3.6, [0.0 0.0, [0.0 0.0, [0.0 0.0,
1.4, 38.0, 36.0 ] , l / H 2 0
0.0, 2.8,
1.1 ],
/ / Loesungsmittd
7 5 . 2 , O. 1, 0.4 ], / / WeissPigment 2 3 . 4 , 0.1, 0.4 ], / / BuntPigment 0 . 0 , 1 0 . 0 , 12.0 ], //Bindemittel
0.0, 2.0, 1.8 ], //Konservierungsmittel 0.0, 1.1, 2.4 ] ]; l/Additive
/ / f i i r jedes Produkt der rain./max. Anteil der Inhaltsstoffe minAnteil = [ [ 42.0, 41.0, 45.0 ],
[ 0.0, 0.0, [ 1 5 . 0 , 18. O, [ 0.5, 0.0, [ 7.5, 7.5,
[ 0.5, [ 1.0, maxAnt eil [ [ 45.0,
], / / Loesungsmittel ], / / WeissPigment ], //BuntPigment ], //Bindemittel 0.25 ], //Konservierungsmittel 1.0 ] ];//Additive
0.3, 1.1, = 43.5, 49.0
[ 1.8, 1.3,
], l/H20
[ 16. O, [ 0.8, [ 9.5,
[ 2.0,
1.5 ], 20. O, 4.5 ], 2 . 0 , 10.0 ], 9 . 5 , 9.5 ], 3.0, 2.0 ],
[
1.9,
1.5,
//II20
1.0 3.0 1.2 7.5
/ / Loesungsmittel / / WeissPigment //BuntPigment //Bindemittd //Konservierungsmittd 2.7 ] ];//Additive
3.13 Lineares Programmieren und Software
179
//Daten zu den Kundenau#r@en numKundenauftraege
= 5;
/ / j e Kundenauftrag jewei~ Oppo~unit~kosten undMengen der bestellten Produkte auftraege
[ < < < <
, 12000, 100, 0 ] >, O, 5500, 1300 ] >, 3300, 17000, 1900 ] >, 700, 13000, 4500 ] > ] ; A b b i l d u n g 3.24: Eing~lgsdaten
Einige wenige Kommentaxe zur Syntax sind aagebracht (eine vollstgudige Beschreibung wiirde den R a h m e n dieses Abschnitts sprengen): K o m m e n t a r e sind jeweils durch die Z e i c h e n / / e i n g e M t e t . Aufz/ihlenden Datentypen werden durch die Aufzghlung der Elemente in Mengenklammern { A B C } beschrieben. Eindimensionale Felder, zur Besehreibung von Koefllzienten mit einem Index, werden in der Form [ 1 , 2 , 3 ] reprgsentiert. Koetlizienten mit zwei oder mehr Indizes werden dureh mehrdimensionale Matrizen der Form [ [ 1,2 ] , [ 3 , 4 ] ] angegeben. Das Modell zu obiger gemischt-ganzzahliger Problemstellung ist in Abb. 3.25 zu sehen.
//elernentare Objekte enum P r o d u k t e
... ;
e n u m V o r p r o d u k t e ... ; enum Inhaltsstoffe ... ;
//Beschreibung derKundenau#r@e struct Kundenauftrag { float+ opportunitaetskosten; int+ m e n g e [ P r o d u k t e ] ;
l/in Eu~v/kg
//jewei~ in kg
}; int numKundenauftraege = ...; range rangeKundenauftraege 1..numKundenauftraege; Kundenauftrag auftraege[rangeKundenauftraeg~ = ...;
//Beschreibung der Vorprodukte
float+ beschaffungskosten[Vorprodukte] = ...; //in float+ verfuegbareMenge[Vorprodukte] = ...; / / i n k g
//Beschrvibung der Pwdukte verkaufspreis[Produkte] = ...; float+ produktionskosten[Produkte] = ...; float+
Euro/kg
/ / i n Euro/kg / / i n Euro/kg
180
3 Lineares Programmieren
//Beschreibung der Zusammensetzung von (Vor)Produkten, jeweils in
lO..fl
float+ anteil[Inhaltsstoffe, Vorprodukte] float+ minAnteil[Inhaltsstoffe, Produkte] float+ maxAnteil[Inhaltsstoffe, Produkte]
= ... ; = ...; = ... ;
/ / Entscheidungsvariablen : // Erfiillung eines Kundenauftrags 5a/nein) vat
int+
//
he~yestellte Mcnge des Pwdukt~
x [rangeKundenauftraege]
in O.. 1 ;
var float+ pm[Produkte] ;
//
Menge von Vorprodukt in dem Produkt
var float+ y[Vorprodukte,
//das
Produkte];
eigentliche MILP
maximize sum ( p i n P r o d u k t e
)
//
Vcrkaufserloes
sum ( k in rangeKundenauftraege ) verkaufspreis[p] * auftraege[k] .menge[p] * x [k] - sum( v in Vorprodukte ) //Kosten der Beschaffung sum ( p in Produkte) beschaffungskosten[v] * y[v,p] - sum(p in Produkte) //Kosten der Produktion produktionskosten[p] * pm[p] sum ( k in rangeKundenauftraege ) //Opportunit~itskostenfiir -
nicht erfiillte Auftriige
( auftraege[k] .opportunitaetskosten subject to
) * ( i - x[k] )
{
/ / Stelle genug fiir alle ausgewiihlten Produktionsauftraege her forall ( p in Produkte ) pm [p] sum ( k in rangeKundenauftraege 9 x[k]
) auftraege[k] .menge[p]
>= O;
/ / Gesamtmenge eines Produkts ist Summe seiner Vorprodukte forall ( p in Produkte ) pm[p] = sum (v in Vorprodukte)
y[v,p];
//minimaler und maximaler Jnteil der Inhaltsstoffe
am Endpwdukt
forall( p in Produkte, i in Inhaltsstoffe ) sum( v in Vorprodukte ) anteil[i,v] * y[v,p] >= minAnteil[i,p] * pm[p]; forall( p in Produkte, i in Inhaltsstoffe ) sum( v in Vorprodukte ) anteil[i,v]*y[v,p] 3 -
89 A
x2 _< 5 + 0,5),
zl, z2 _> 0 Hinweis:
(a) Untersuchen Sie, ob das Modell fib ), 0 eine zul/issige Lgsung besitzt. Wenn nicht, bestimmen Sie ein zulgssiges X, indem Sie ), Ms unbeschrfi~lkte Variable betrachten. (b) Fiihren Sie eine parametrische Analyse durch und geben Sie die optimalen Lgsungen und den optimalen Zielfunktionswert Ms Funktion yon ), 021.
14. LSsen Sie das folgende LP mit dem Algorithmus yon G o m o r y maximiere z so dass
0,5zl + z2 -zl
+ z2 < 1
2xl + x2 _< 6 22 1
0 und ganzzahlig. 15. Gegeben sei das folgende Modell
3.15 AusgewShlte Literatur zu Kapitel 3 maximiere z
sodass
187
2xl + 5x2 2xl - x2 < 9 2xl + 8x2 < 31 xl, x2 _> 0 und gaazzahlig.
(a) Bestimmen Sie die 1. Gomory-Restriktion. (b) Stellen Sie diese Restriktion graphisch dar (in einem (xl, x2)-Koordinatensystem). (c) Fiihren Sie einen Iterationsschritt dutch.
3.15
Ausgew~ihlte Literatur zu Kapitel 3
Anstreicher 1990; Barnes 1986; Baz'tels 1973; Burkhard 1972; Chung 1963; Chvital 1983; Daatzig 1963; Dantzig and Thapa 1997; den Hertog and Roos 1991; Dinkelbach 1969; Domschke and Klein 2004; Fandel 1972; Fourer 2001; Freund 1991; Garfinkel and Nemhauser 1972; Goldfarb and Xiao 1991; Hadley 1962; Hamacher 1978; Hu 1969, Hwang and Masud 1979, Ignizio 1976; Ignizio 1982; Illes and Terlaky 2002; Isermaan 1979; Johnsen 1968; Khachiyan 1979; Kall 1976a; Kallrath 2003; Kreko 1968; Llewellyn 1960; Monteiro and Adler 1989; Miiller-Merbach 1970a; MfillerMerbach 1972; Niemeyer 1968; Peng et al. 2002; Roos et al. 1997; Saaty 1970; S~lkin and Satia 1975; Schmitz and SchSnlein 1978; Sengupta 1972; Simmonard 1966; Terlaky 2001; Todd 1989; Vogel 1970; Zimmermann and Zielinski 1971; Zimmermann 1975a; Zimmermaan and Rbdder 1977; Zimmermaan 1983; Zimmermaan and Gal 1975
4
Nichtlineare Programmierung
4.1
Einffihrung
Die Nichtlineare Programmierung beschS~ftigt sich mit der Bestimmung L&sungen zu dem Grundmodell der mathematischen Programmierung
optimaler
maximiere f(x) sodass
gi(x)
bi,
i
1, . . . , m ,
> wobei allerdings im Gegensatz zur Linearen Programmierung angenommen wird, dass mindestens die Zielfunktion f oder eine der Nebenbedingungen g~ eine nichtlineare Funktion ist. Fiihrt man sich die Vielfalt mSglicher mathematischer Funktionstypen und ihrer Kombinationen in Modellen vor Augen, so ist es nicht verwunderlich, dass es, wiederum im Gegensatz zur Linearen Programmierung, bis jetzt weder eine geschlossene ,,Theorie des Nichtlinearen Programmierens" noch ein LSsungsverfahren, das alle nichtlinearen Programmierungsaufgaben 15st, gibt oder je geben wird. Es kSnnen insbesondere tblgende Beobachtungen gemacht werden: 1. Die in Abschnitt 3.1 genaanten Eigenschaften, die yon der Simplex-Methode ausgenutzt werden, kSnnen teilweise oder vollstgndig nicht mehr vorausgesetzt werden: a) Der LSsungsraum ist nicht notwendig ein konvexes Polyeder. Er kaan nichtkonvex sein, braucht nicht einmal kompakt oder zusammenhfiagend zu sein. Selbstverstgndlich muss der LSsungsraum auch kein Polyeder sein (sondern z. B. eine Kugel u. ~.). b) Ist eine ZMfunktion nichtlinear, so liegen LSsungen gleichen Wertes nicht mehr unbedingt auf Hyperebenen, die zueinaader parallel verlaufen. c) Daraus ergibt sich, dass optimale LSsungen nicht mehr unbedingt an den Ecken (falls vorhanden) des LSsungsraumes liegen. Sie kSnnen genauso gut im Innern des LSsungsraums oder am Rand zwischen Ecken liegen. d) Im allgemeinen Fall gibt es nicht nut das globale Optimum, sondern auch lokale Optima.
4.20ptimierung ohne Nebenbedingungen
189
2. Man hat sich im Operations Research weniger darum bemfiht, eine m6glichst allgemeingiiltige Theorie zu entwickeln, sondern eher um LSsungsverfaliren, die spezielle Typen yon Modellen der Nichtlinearen Programmierung 15sen. Die Vielfalt der inzwischen angebotenen Verfaliren ist augerordentlich grog. hn Rahmen dieses Buches kgnnen davon exemplarisch nut einige behaadelt werden, die entweder mathematisch besonders interessant sind oder vom Gesichtspunkt der Anwendung her sehr leistungsf/ihig sind. . Die Verfahren basieren zum grogen Teil auf: a) klassischen Optimierungsansitzen wie der Differentialrechnung (Gradientenverfahren etc.), b) kolnbinatorischen Ansitzen, die fiir diskrete Problelnstellungen zum grogen Teil im OR entwickelt wurden, c) Algorithmen, welche die etfizienten Verfaliren des Linearen Programlnierens ausnutzen. Wir werden uns zunichst einigen allgemeingiiltigen {Jberlegungen zuwenden und anschliegend exemplarisch einige besonders wichtige Modelltypen und Verfahren darstellen.
4.2 4.2.1
Optimierung ohne N e b e n b e d i n g u n g e n Grundlegende Begriffe und Konzepte
Zun/ichst sollen einige fiir die nichtlineare Prograanmierung grundlegende Begriffe bereitgestellt werden. Wir betrachten das folgende Optimierungsproblem minimiere f(x) so dass x EM
(4.1)
Dabei sei / eine auf dem ]R~ definierte reellwertige Funktion und IU/c_ ]R~, IU/~ ~. Ein Punkt x E M heigt zuliissige LSsung yon (4.1).
Ein Punkt & E M heii~t globaler Minimalpunkt yon f auf M oder auch optimalr LSsung yon (4.1), falls
f(k) 0, derart gibt, dass
f(x) 0 mit U~(x*) A M
U~(x*).
Bei Problemen der Linearen Programmierung gilt, dass jeder lokale Minimalpunkt gMchzeitig ein globaler Minimalpunkt ist. Diese Eigensctiaft gilt in der Nichtlinearen Progra~nmierung nicht generell. Wir werden aber s p i t e r in Absctmitt 4.3 die Klasse der konvexen Progra~nmierungsprobleme betrachten, ffir die lokale und globale Minimalpunkte iibereinstimmen. Beim Simplexverfahren der Linearen Programmierung sind wir yon einem Eckpunkt
4 . 2 0 p t i m i e r u n g ohne Nebenbedingungen
191
X2
-M \\
/ /
/
\
f
/
/
/
D,-
x1
4. zul&ssige Richtung - 9 nicht zul&ssige Richtung
A b b i l d u n g 4.2: Zul/issige und nicht zul/issige Richtungen zu einem (benachbarten) n/iehsten Eckpunkt in Richtung nicht abnehmender Zielfunktionswerte f tbrtgesehritten. Will man zur L6sung nichtlinearer Optimierungsprobleme ebenso eine Folge yon Punkten konstruieren, deren Zielfunktionswerte nicht fallen (maglichst wachsen), muss maal zun/iehst Riehtungen definieren, 1/ings deter man ausgehend von einem P u n k t x E M mindestens ein endliehes Stiiek vorwgrtsgehen kaam, ohne den zulgssigen Bereieh M zu verlassen. Ein Vektor d E R ~ heitgt ztd5ssige Richtt~,zg in x E M, wenn ein e* > 0 existiert, so dass x + e 9d E M fiir alle e, 0 < e < e*. Die Menge aller zul/issigen Richtungen im P u n k t x sei mit Z(x) bezeiehnet. Ist x x* ein innerer P u n k t von M (siehe Abb. 4.2), daam ist jede Pdehtung zulgssige Pdehtung in x*, Z(x*) R ~. Ist x ein Randpunkt von M, daam gibt es i.a. sowohl zul/issige als aueh nieht zulgssige Richtungen in x. Nachfolgend setzen wir die einmalige, stetige Differenzierbarkeit der Funktion f im P u n k t x E R ~' voraus. Bezeiehnet mast die ersten partiellen Ableitungen yon f naeh den Komponenten zl, z2, 9" . , z~ von x mit 0o/~ 1 , 0o/~ 2 , ' " , oo/~ , so wird der Gradient yon f in as E R ~ Ms Spaltenvektor wie tblgt dargestellt:
192
4 Nichtlineare Programmierung
M
:C 1
x1 chen (im R 2 HShenlinien)
C 1 < C 2 < C 3 < C4
A b b i l d u n g 4.3: Richtungen des steilsten Anstiegs und Abstiegs yon f. Dabei bezeichnet ~ (x) die partielle Ableitung ~of Ms Funktion yon x an der Stelle x x, i 1 , . . . , n . Partielle AbMtungen ~0x~ werden gelegentlieh aueh mit f ~ der Gradient gradf(x) auch mit V f ( x ) bezeiehnet. Von der letzteren Bezeichnung wollen wit naehfolgend Gebraueh machen. Der Gradient V f ( x ) steht senkrecht auf der durch den Punkt 2 gehenden Niveauhyperfls f(x) c und zeigt in die Riehtung des steilsten Anstiegs der Funktion f ( x ) (siehe Abb. 4.3). Folglich ist die Richtung - V f ( x ) die Riehtung des steilsten Abstiegs der Funktion f ( x ) im Punkte x x. Mit diesen Bezeichnungen und unter der Voraussetzung der stetigen Differenzierbarker yon f gilt: Wenn mit x, d E R" die Ungleichung d T. Vf(x) < 0
(4.5)
gilt, dann gibt es ein e' > 0 mit f ( x + c. d) < f(x)
fiir 0 < c _< c'.
Schreitet man also yon 2 ausgehend in Richtung d fort, nehmen unter der Bedingung (4.5) die Zielfunktionswerte f ab. Ist zudem d eine zul/issige Richtung und
4 . 2 0 p t i m i e r u n g ohne Nebenbedingungen
193
~
/
j..
f(x) = c
/
-Vf(x)
Vf(x~ Abbildung 4.4:
d
Abstiegsrichtung yon f ausgehend von z x E M, dann gelangt man yon x aus in Richtung d zu einer besseren zulgssigen LSsung. Die Bedingmig (4.5) sagt, dass das Skalarprodukt der Vektoren d mid Vf(x) negativ ist, d. h. dass die Vektoren d und -Vf(x) einen spitzen Winkel bilden (siehe auch Abb. 4.4). Abstiegsrichtungen miissen also einen spitzen Winkel mit dem negativen Gradienten bilden. Die oben eingefiihrten Konzepte zeigen, wie man ein nummerisches Verfahren zu L6sung nichtlinearer Optimierungsprobleme konstruieren kann. Man verschaffe sich eine zulgssige LSsung x und eine zulgssige Richtung d. Wenn d eine Abstiegsrichtung ist, gehe man in Richtung d ein Stiick bis zu einer besseren zulgssigen LSsung ~. Danach fibernimmt ~ die Rolle des x und der beschriebene Schritt wird wiederholt. Ist die Zielfunktion f differenzierbar, kaan man als Abstiegsrichtung die Richtung des negativen Gradienten oder eine Richtung w~hlen, die mit diesem einen negatiyen Winkel bildet. Ist x ein innerer Punkt yon M, muss man dabei keine weiteren Bedingungen beachten. Ist x ein Randpunkt yon M, muss die gew/~hlte Abstiegsrichtung zul/~ssig sein. Im Falle M ]R~, den wir nachfolgend in diesem Abschnitt im Detail betrachten, ist jede Pdchtung yon jedem Punkt x E R ~ zul/issig, so dass wir diesbeziiglich keine Probleme haben. In beiden F/illen interessiert aber noch die Frage, wann dieser iterative Prozess abgebrochen werden kann. tIierzu ist es niitzlich, notwendige und hinreichende Bedingungen fiir einen Minimalpunkt zu kennen. Auf der Grundlage solcher Bedingungen kann dann das Terminierungskriterium des entsprechenden nummerischen Verfahrens technisch geeignet realisiert werden.
194
4 Nichtlineare Programmierung
4.1 Satz ( N o t w e n d i g e B e d i n g u n g flir einen lokalen M i n i m a l p u n k t ) Es seien f eine stetig differenzierbare Funktion und x ein lokaler Minimalpunkt yon f auf M. Dami gilt: d T 9V f ( x ) _> 0
(4.6)
fiir a l l e d E Z(x).
Diese Bedingung bedeutet, dass es keine zulSssige Richtung gibt, 15ngs deter der Zielfunktionswert im Vergleich zu f(x) abnimmt. Ein Punkt x E M, der diese Bedingung (4.6) erffillt, heiJgt stationiirer Punkt yon f auf M. Ist x ein innerer Punkt yon M, so gilt Z(x) nut gelten, wenn V f ( x ) 0 ist. Dann gilt:
]g~. Die UngMchung (4.6) kann dann
4.2 Satz Seien f eine stetige differenzierbare Funktion und x ein innerer Punkt yon M, der gleichzeitig Minimalpunkt yon f auf M sei. Dann gilt: V/(x)
0.
Dieser Satz ist besonders fiir die Klasse der nichtlinearen Optimierungsprobleme ohne Nebenbedingungen yon Interesse, die wit nachfolgend untersuchen wollen. In dieseln Fall gilt ngmlich M ]g~, d. h. jeder Punkt yon M i s t innerer Punkt. Abschliegend definieren wir noch die Matrix der zweiten partiellen Ableitungen einer zweimal stetig differenzierbaren Funktion f , die auch Hesse-Matrix H genannt wird I
H(x)
02F OX2 02F OX2OXlo
02F OXlOX2 02F
02F
02F
9. .
02F
\
(~)X 1 (~)X ~
9. .
02F
|
~)x2~)x~. I 9. .
02F
]
o~?, /
Die Eigenschaft der positiven Definitheit der Hesse-Matrix H(x) im Punkt x ist wichtiger Bestandteil hinreichender Bedingungen fiir einen lokalen Minimalpunkt x (siehe z. B. Neumann and Morlock, 2002).
4.2.2
Gradienten-Verfahren
Nachfolgend setzen wir M Optimierungsproblem
]g~ voraus, betrachten also das unrestringierte (freie)
4 . 2 0 p t i m i e r u n g ohne Nebenbedingungen
195
f(x)~ f(X k)
/
/
/
/
/
/
/
/
/
/
D,-
/
X2 J
,r~
x k + a k dk
Xk M -R 2
Abbildung
4.5: Abstiegsrichtung und Schrittweite
minimiere f ( x ) , so dass as E ]g~
(4.7)
1nit einer reellwertigen, einmal stetig differenzierbaren Funktion f . Dann ist jeder Vektor d E lg~ eine zulSssige Richtung in einem beliebigen Punkt x E]R ~.
Die Idee numlnerischer Verfahren ist nun, ausgehend yon einem Startpunkt x ~ E lg~, eine Folge {x~}, x ~ E lg~,/c 1, 2 , . . . yon NgherungslSsungen zu konstruieren, die sich einem lokMen Minimalpunkt yon f ann/ihern. Dazu bengtigen wir fiir beliebiges /c, also im Punkt x ~ eine zul5ssige Richtung d ~, die gMchzeitig eine Abstiegsrichtung ist. In Abbildung 4.5 sieht man, dass nachdem die Richtung d ~ (Abstiegsrichtung) gew/ihlt wurde, die Aufgabe {ibrigbleibt, eine eindilnensionale Strahllninimierung durchzufiihren. Das bedeutet, es ist eine Optimierungsaufgabe minimiere~>0 f ( x ~ + a d ~) zu lgsen. Es sei a man x ~+1
x~+ ~
~
(4.8)
die exakte optimale L/Ssung dieser Aufgabe. Dann w5hlt
9d ~
als den auf x ~ tblgenden n/ichsten Iterationspunkt.
(4.9)
196
4 Nichtlineare Programmierung
Bemerkungen: 1. Bis zu diesem Punkt der Beschreibung haben wir unser nummerisches Verfahren zur L6sung yon Problem (4.7) noch nicht so weit spezialisiert, dass man es Gradientenverfahren nennen k6nnte. 2. Eine exakt optimale LSsung c~ des Strahlminimierungsproblems ist eigentlich nicht notwendig. Es genfigt ein c~ derart zu bestimmen, dass
f ( x ~ + c~*~d~) < f(xa),
(4.10)
also die strenge Monotonie des Verfahrens gilt. 3. Auf die Problematik geeigneter Verfahren zur Strahlminimierung soll hier nieht n/iher eingegaagen werden. Wiehtig ist, dass man erkennt, dass unabh/ingig yon der Dimension n des Ausgaagsproblems in jeder Iteration ,;ediglieh" eine eindimension~le Optimierung durchzufiihren ist, nachdem man eine geeignete Abstiegsrichtung gew/ihlt hat. Was ist nun abet eine geeignete Abstiegsriehtung? Wir wissen aus 4.2.1, dass in jedem Punkt x a die negative Gradientenriehtung d a - V f ( x a) die Pdehtung des steilsten Abstiegs bestimmt. Wenn man sieh also ,,greedlr verhNt, wNfit man diese Richtung und erhglt das Gradientenverfahren: 1. Starte mit x ~ E R ~. 2. F i i r h _> 0, ganzzahlig setze man x ~+l
x ~ - c~ 9V f ( x ~ ) ,
(4.11)
wobei c~a eine exakt optimale LSsung des entspreehenden Strahlminimierungsproblems (Schrittweitenalgorithmus) sei. Fiir die so erzeugte Punktfolge {z a } gilt strenge Monotonie, d.h. f ( x a+l)
(4.12) Frage ist, wann man das grob skizzierte Verfahren 4.2.1 ist Vf(x a) 0 eine notwendige Bedingung ffir yon f auf dem JR% Deshalb kann man z.B. fiir ein 0
IVf(xa)l < c
(4.13)
als Abbruchkriterium fiir das Gradientenverfahren benutzen. Man kaam sich andererseits vorstellen, dass fiir eine in der Umgebung eines lokalen Minimums sehr flach verlaufende Funktion f , groge Unterschiede in den x a, x a+ 1,... auftreten, obwohl die Gradienten dieser Punkte betragsmggig sehr klein sin& Man beobachtet auch tatsgchlich h/iufig schlechtes Konvergenzverhalten des Gradientenverfahrens in der Nghe des Optimums (sogenannter Zick-Zack-Kurs).
4.20ptimierung ohne Nebenbedingungen
197
Das wirff die Frage auf, ob der ,steilste Abstieg" tatsgchlich eine gute Suchrichtung ffir ein Verfahren darstellt. Hierzu betrachten wir das spezielle Optimierungsproblem minimiere f ( x ) SO dass f(x)
89
x E ]Rn
(4.14)
wobei A eine positiv definite Matrix sei. Ffir das Gradientenverfahren mit exakter eindimensionMer Minimierung kann man ffir beliebige k > 0, ganzzMilig die folgende AbschMzung beweisen: f(xa+l) -
0 und fiir alle z E U~(x*). Dann konvergiert das Quasi-Newton-Verfahren mit exakter Schrittweitenbestimmung lokal superlinear gegen x*, d.h. falls Q0 positiv definit ist und x ~ hinreichend nahe bei x* liegt, gilt: lira IIx~+l - ~*11 -
x*ll
0
(4.27)
d.h. es gibt eine N,allfolge { ~ } mit IIx ~ + l
-
*ll
-
0 fiir alle k. In diesem Falle werden die Suchrichtungen unniitz.
4.3 Konvexe Programmierung und Kuhn-Tucker-Theorie
203
Ein Ausweg ist, aastelle die Quasi-Newton-Matrizen Q~, deren Inverse B~ : Q~ 1 zu iterieren. Man erhglt dann z.B. das inverse BFGS-Verfahren, fiir das man die positive Definitheit der B~ garantieren kann (siehe z.B. Neumann and Morlock, 2002). Fiir die Quasi-Newton- bzw. inversen Quasi-Newton-Verfal~ren gibt es sehr gute Implementierungen, die yon ihren Autoren frei im Internet verfiigbaz gemacht werden.
4.3
Konvexe Programmierung
und Kuhn-Tucker-Theorie
Es wurde schon erw/ihnt, dass bei nichtkonvexen L6sungsrgumen-selbst bei lineazer Zielfunktion-nieht gazantiert werden kann, dass ein gefundenes lokales Optimum gMchzeitig das globale Optimum ist. Daher liegt es nahe, zungchst die Gesamtheit der Nichtlinearen Programmierungsmodelle, fiir die man nach L6sungsalgorithmen sueht, auf die Menge der Modelle einzusehrfiaken, bei der diese Gefahr nieht besteht, d.h. auf Modelle mit konvexem L6sungsraum und konvexer oder konkaver Zielfunktion. Da die mathematische Terminologie auf diesem Gebiet nicht ganz eindeutig ist, zun/ichst einige Definitionen und Sgtze, die wir im folgenden ben6tigen werden:
4.6 Definition
Eine Menge M E R" heigt konvex, wenn mit je zwei Punkten Xl, x2 E M aueh jede konvexe Linearkombination yon Xl und x2 zu M gehSrt.
Das folgende Abbildung zeig~ konvexe Mengen (Fall a) und Fall b)) und nichtkonvexe Mengen (Fall e) und Fall d)).
(a)
(b)
(c)
(d)
A b b i l d u n g 4.6: Konvexe und nichtkonvexe Mengen
204
4 Nichtlineare Programmierung
4.7 Definition Ist M eine konvexe Menge in IR~, so heigt eine auf M definierte Funktion dann konvex, wenn fiir beliebige x l , x2 E M gilt:
f(Axl + (1
f(x)
-- A)X2) _< A f ( x l ) + (1 -- A)f(x2) O__f ( X l ) . Esseinun),E
0 , ~
undx3:
(1-),)xl+),x2.
Es gilt dann x3 E U~ A M und damit f(x3) Funktion auf M, so folgt fiir f(x2) < f ( x l ) :
f(xa)
>_ f ( x l ) .
Ist jedoch f eine konvexe
f((1 - a ) x 1 @ aX2) __< (1 -- A)f(Xl) +
Af(x2)
< (1 -- A)f(Xl) + Af(Xl)
f(Xl). Dies ist ein Widerspruch zu
f(x3) >>_f ( x l ) .
9
4.3 Konvexe P r o g r a m m i e r u n g und Kuhn-Tucker-Theorie
4.10
205
Satz
Ist f 9 R ~ --* R konvexe Funktion und a E JR, dann ist die Menge M, M : {x R I f ( x ) _< a}, konvex.
BEWEIS. Es seien x l und x2 E M. Also ist f(xl) 0 10 + 4x2 -
gl + g2 - 393 ~> 0
- 6 + 2xs -
x2 < 0
--10
--
Xl
@
X2
0, j
1,2; i
8
1,2,3
3. S c h r i t t
E i n e z u l ~ s i g e L 6 s u n g liegt n o c h n i c h t vor. D a h e r H i n z u f i i g e n v o n Hilfsvariablen h i u n d h2. D a m i t e r g i b t sich folgendes T a b l e a u : ci
hi s12
0
s21
0
s22
0
h2
;el
;e2
us
u2
ua
sll
6
0
2
-1
-2
-1
1
-1
-M
0
-4
2
-1
-1
-M -8M
s21
s22
3
hi
h2
(~ @
2M
M
0
0
0
3
10 -1
M
0 10 -5-
6 (~)
-2M
b
20 10
3 -3M
s2a
(~
1
2
A~
s12
(~)
M
0
8
4
0
Zun~chst erfolgt ein normaler Basistausch, da zl aufzunehmen ist und s11 nicht in der Basis enthalten ist. s21 verlfisst die Basis. Dies ergibt das folgende Tableau: ci hi s12
0
xl
0
s22
0
h2
xl
x2
us
u2
u3
sll
3
2
-1
-2
-1
1
-1
-M
-4 1
-M AZj
0
-7M
3
s12
s21
s22
s23
-3
hi
h2
1
1 1
2
7
7
1
7
4
-1
1
M
2M
M
0
01
02
~2
1
10
1
-2M
b 2
4M
10
3 1 -1 0
M
1 0
13
26
2
7
1
0
N u n miisste x2 a u f g e n o m m e n werden. I n d i e s e m Falle wiirde h2 die Basis verlassen u n d s12 in Basis bleiben. Dies wiirde j e d o c h (4.43) verletzen. DMler A u f n a h m e y o n us. h i verl~isst die Basis. D a s n e u e T a b l e a u l a u t e t :
4.4 Quadratisches Programmieren Ci "81
0
ss9
0
:gl
0
822
h9
Xl
"82
1
s 2
ss 1
"83
811
-1
s
9 1 2
4
9
812
821
s 2 s
1
7
"81
0
"83
0
Xl
0
"81
"82
1
5 8 1 8
1
0
~tt3
1
0
811
812
821
3 8 1 8
1 4 1 4
9
0
0
M
0
822
1 2
2 2
i2 0
0
0
0
h2
0
2
b
0
1,,~3 4 9 4
26
3
1
-1
-4M
823
8 3 8
i2 4
-M
M
1
a u f g e n o m m e n werden. D a h e r A u f n a h m e von "sa:
1 8 11 8
0
-1
812
X2
0
9
3
-4M
Xl
0
0
13
1
-1 0
b 9
0
0c9 k a n n nicht wegen
h2
a -~
-~-
4
Ci
823
1
1
~-
-M
822
a2 1 "~
1
0
s22
"81
a ~-
AZj
h9
X2
213
M
0
-1
1
M
0
13
26
2
1 2
O p t i m a l e s Tableau: Ci "8s
Xl
X2
~ttl
~tt2
1
5 8
0
"83
0
ms
0
s22
0
x2
0
s
8
~tt3
1
811
812
821
3 8
1 4
35
s
s
s
g
g
a2 3""~
5
o
o
4
o
0
0
0
0
0
57
olo o,,o
ss
~o'~('"
3,25
1
1c~ t-TLz
1
0,50
4
0
b
1
8s 1
1
1
823
32
ga
1
AZ5
822
0
Die L6sung zu diesem S y s t e m ist: xl
3,25
"81
3,1875
x2
0,50
"sa
2,9375
s22
12,75
D a m i t ist die o p t i m a l e L6sung u n s e r e s Beispiels xl
3,25
x2
0,5.
[]
214
4.5
4 Nichtlineare Programmierung
Separables Konvexes Programmieren
4.5.1
Grundlagen
In diesem Abschnitt soil wiederum die Simplex-Methode zur LSsung nichtlinearer Modelle verwendet werden. Allerdings sollen die zu 15senden Modelle nicht die Struktur der Quadratischen Programmierung haben, sondern sie sollen entweder aus separablen Funktionen bestehen oder in solche iiberfiihrbar sein. Hierbei versteht man unter einer separablen Funktion eine, die Ms Summe yon Funktionen jeweils einer Voziablen ausgedriickt werden kSmmn.
So lasst sich z. B. die Funktio. F H
h l ( ~ ) + h2(~2) + h3(x3)
hi
~+~;
x~ + x~ + 4~2 + 5~: sd~reibe. als
mit
h2
4~2; ha
5~
Die Funktion f :c1:c2ist zungchst nicht separabel. Fiihrt man jedoch die zwei Variablen hi : 89 + x2), h2 89 - x2) ein, so ist f h~ - h~ eine separable Funktion. Betrachtet werde also das
4.23 Modell (der Separablen Programmierung) minimiere z
E j = I fj(xj)
so dass
~d=lgid(xd) 0 .
Approximierende Modelle
h(:c) sei eine stetige, nicht unbedingt konvexe Funktion, wie sie in der ngchsten Abbildung gezeigt wird. Wit legen im Intervall 0 < x < c~ Stiitzstellen zj, j 1, . . . , n, fest. Betrachten wir nun das Intervall xl _< x _< x2, so lgsst sich in diesem Bereich die Funktion h(:c) approximieren durch ]~(z) %h(:cl) + (1 - %)h(:c2), 0 _< % _< 1. Schreibt man fiir % %1 und fiir (1 - %) %2, so gilt:
/44
~h(~:~) + ~h(~:~),
ffir AI+A2
1, Ai ~ O.
4.5 Separables Konvexes Programmieren
h(x) 6(x)
215
X2-X1
i
~
.
!
h(x2)-h(x1)
~~.----.~
~
h(x)
~X h..._
X1
X
X2
X3
X 4 = (2
A b b i l d u n g 4.8: Nichtlineare Funktion und ihre lineare Approximation Allgemein kann man die Funktion die Funktion
h(:c)
im Bereich 0 < z < c~ approximieren durch
T
k 1 wobei
(I) X (2) ~k=l
~,~:1
Ak
Akxk, ],A k ~ 0,~
],...,r,
(3) nicht mehr als zwei A~ > 0 sin(l,
(4) positi.e
benachbart sina.
(4.44)
Enth~t Modell 4.23 auch lineare Restriktionen oder sind Teile yon Restriktionen oder der Zielfunktion linear, so brauehen diese offensiehtlich nicht approximiert werden. Der Klarheit halber definieren wir eine Indexmenge
L
{J I fj und .qij linear fiir i
1 , . . . , m}.
Modell 4.23 1/isst sich nun approximieren dureh folgendes Modell:
216
4 Nichtlineare Programmierung
4.24 Modell
minimiere 2
Ej~c h(xJ)
+ E j ~ c E~21Aj~fj(xj~)
SO dass
Ejcn.qiJ(2CJ) + E j ~ L E k = I ~Jk.qiJ(2CJk) ~ bi~i
rj
rj
Z ~ = I )'J~ 1, flit j ~ L Aj~ _> 0, fiir k 1 , . . . , r j , j xj _> 0, f i i r j ~ L H6chstens zwei benachbarte ),y~ > 0, k
1~...~7~
~L
1 , . . . , ry, j ~ L.
4.25 Satz
Man betrachte Modell 4.23. L sei die Indexmenge L {j [ fj und .qij linear fiir i 1 , . . . , m}. Fiir j ~ L sei fj streng konvex und .qij sei konvex fiir i l , . . . , m. Um Modell 4.23 durch Modell 4.24 approximieren zu kSnnen, muss gelten: 1. Fiir jedes j ~ L sind hSchstens zwei Aj~ positiv und benachbart. rj
2. Ist 2j ~ = 1 Aj~xj~ fiir alle j ~ L, so ist der Vektor x, dessen j-te Komponente 2j fiir j l , . . . , n ist, zulgssige L6sung yon Modell 4.23.
BEWEIS.
Zu 1:
Fails fiir j ~ L Ajl positiv sind, mfissen sie benachbart sein. Nehmen wit an, dass Ajl und Aj; > 0 existierten und xjl und zj; seien nicht benachbart. Es wiirde dann eine Stiitzstelle xj~ E (zjz,zjp) existieren, die geschrieben werden kann als Xjk OZlXjl + c~2xj; mit OZl, Oz2 ~> 0 und OzI @ Oz2 1. Betrachten wir die optimMe LSsung zu Modell 4.23. Es seien ui _> 0 fiir i 1, ..., m die optimMen LagrangeMultiplikatoren fiir die ersten m Nebenbedingungen und fiir alle j ~ L vj die entrj sprechenden Multiplikatoren fiir die Nebenbedingungen ~ = 1 Aj~ 1. Daan sind die tblgenden notwendigen Kuhn-Tucker-Bedingungen yon dieser optimalen L6sung zu erfiillen: Tft
fj (xjl) + E ui.qij (xjl) + vj i 1
0
(4.45)
0
(4.46)
Tft
fj(xj;) + ~ui.qij(xj;) + vj i 1 Tft
fj (xj~) + E ui.qij (xj~) + vj >_0 fiir k i 1
1 , . . . , r'j.
(4.47)
Bei strenger KonvexitSt yon fj und Konvexit/~t yon .g~j gilt nach (4.45) und (4.46):
4.5 Separables Konvexes Programmieren
217
TVt
i=1 Tft
i=1
Das widerspricht jedoch (4.47); daher m~ssen z3z und z3v benachbart sein und 1. ist bewiesen. Z,g 2:
Alle gi3 fiir j ~ L sind definitionsgem/i6 konvex fiir i 1 , . . . , m. Weiterhin erfiillen alle 25 for j E L und k3~ fiir k 1, . . . , r 3 und j ~ L die Nebenbedingungen von Modell 4.24. Wir erhalten daher:
g (2)
Z g3(2) + Z g3(23)
jcL
j~L
jcL
jfL
\k=l rf
-
0 fiir j E L und 2j ~ = 1 kj~xj~ _> 0 fiir j ~ L, da kj~,xj~ _> 0 for j ~ L, da kj~, xj~ _> 0 fiir k 1 , . . . , rj. Daher ist 2 zul/issig fiir Modell 4.23 und 2. ist bewiesen. ,,
4.5.2
)~- u n d 5 - M e t h o d e n
des S e p a r a b l e n P r o g r a m m i e r e n s
4.26 Beispiel Zu 16sen sei: minimiere z
oc~ -
sodass
xs +
x~ -
6xx + x92 -
8x2 -
1 goca
x2 + x3 < 5
x2 XllX21X3
_< a ~> 0
.
LSsung. L {3}, d a beziiglich xa keine nichtlinearen K o m p o n e n t e n vorliegen. Ferner miissen 0 _< x s , x 2 _< 5 sein. Als Stiitzstellen sollen for beide Variablen die Werte 0, 2, 4, 5 b e n u t z t werden. Die entsprechenden Punktionalwerte fiir die nichtlinearen Terme sind in folgender Tabelle z u s a m mengefasst:
218
4 Nichtlineare Programmierung :Cil b z w .
fl
:ci9
0
.ls
./2 0
gl
0
0
2
-8
-12
4
-8
-16
16
5
-5
-15
25
:c~ - 6:cs, .12
4
:c~ - s:c2, .gs
:c~
N a c h H i n z u f i i g e n d e r Schlupfvm-iablen x4 u n d x5 e r g i b t sich als erstes S i m p l e x - T a b l e a u : cj
0
ci
Ass
-8
-8
-5
0
A2s
Aas
A4s
As2
-12
-16
A22
-15
Aa2
A42
-0,5
0
0
xa
x4
x5
b
x4
0
0
2
4
5
0
2
4
5
1
1
0
5
x5
0
0
4
16
25
0
--2
--4
--5
0
0
l
3
All
0
1
1
1
1
0
0
0
0
0
0
0
1
0
0
0
0
0
1
1
1
0
0
0
1
Azj
0
8
8
5
0
12
16
15
0,5
0
0
A12
(~
0 5
1
E r s t e Basis ist :c4, :c5, As s, As2. A u f z u n e h m e n - u n d a u f ~ m h m b a r - ist Aa2, d a dm-eh dessen A u f n a h m e As2 a u s d e r Basis e l i m i n i e r t wird. cl
Ass
A2s
Aas
As2
A22
-4
-2
Aa2
:C4
0
0
4
5
:c5
0
0
4
16
25
4
2
0
-~11
0
1
1
1
1
0
0
0
0
0
0
0
0
1
1
1
Azj
0
8
8
5
--16
--4
0
Aa2
@
Arts
A42
0
1
:ca
:c4
:c5
b
0 s 7
1
1
0
1
0
0
l
7
7
0
0
0
1
1
1
0
0
0
1
--1
0,5
0
0
-i 0
N u n mtisste eigentlich Aas a u f g e n o m m e n werden. Dies ist n i c h t m6glich wegen Ass. D e s h a l b A u f n a h m e v o n A2s. (2/
A21
/~ll
/~31
/~41
/~12
/~22
-2
-1
0
1
2
_5
x5
0
0
0
8
15
12
Ass
0
i
0
a 2
2
-16
0
0
Azj
0
0
As2
-8
/~21
-i
0 -8
2
0 -15
6 (~ ~
/~32
/~42
0
i
0
-3
0
1
1
1
0
4
0
2
s 2
1 -5
:C3
k 2
-2 s 2
0 r2
:C4
:c5
b
k
0
k
1
5
!6
s 2
0
s 2
s 2
0
0
1
1
2
-2
-4
0
0
2
4.5 Separables Konvexes Programmieren
219
Endtableau: C,/
A21
All
A21
A31
A41
A12
A22
A32
A42
23
24
25
i
i
i
i
0
0
0
0
0
0
0
i
0
14
24
0
0
0
0
1
1
1
2
2a
2
i
0
21
21
21
0
71
-1
0
1
~
1
1
0
1
--8
0
0
--3
a2
--2
0
--8
x5
0
A22 -12 .Xa2 - 1 6 Azj
-6
1
0
-1
-1
0
1
~
--4
0
--4
--9
2
2
2
2
b
2
Die L6sung zu Beispiel 4.26 ist also /~21
1, A22
0,5, Aa2
0,5, x5
2.
Die approximierende LSsung zu unserem Beispiel ist damit: 21
2A21@ 4A31 @ 5A41
2
x2 xa
2A22+ 4Aa2 + 5A42 0.
3
Da die Zielfunktion und die Nebenbedingungen die Bedingungen yon Satz 4.25 erffillen, hgtten wit in diesem Fall die gleiehe L6sung erhaRen, wenn wit den besehrgnkten Basiseintritt nieht beriieksiehtigt hgtten. Die bisher beschriebene Methode wird gewShnlich als die A-Methode bezeichnet. Alternativ dazu kSnnte als approximierendes Modell auch das sogenannte d-Modell verwendet werden: Hierzu werden neue Variable eingefiihrt, und zwar sei in Modell 4.24:
AIs
f(xs )-f(xs,
Axj~
xj~ - xj,~ 1
1) k
1 , . . . , rj
Liegt nun x j im Bereich xj,~ 1 < xj < xj~, so ist xj 6j~ < 1, wobei (~js
X j -- X j , s
xj,~ 1 + (Axj~)6j~; 0
O, i .qi(x) O, i
1,2,...,1
(4.51)
/+ 1,/+2,...,rn.
(4.52)
4 Nichtlineare P r o g r a m m i e r u n g
224
Es existiere wenigstens eine L6sung mit gi(x) > O, i funktion ist dann:
P ( x , sa)
f(x)
+
8k
gi2 (x) mit s~ > 1.
-gi(x) + s~
--
i=1
1, 2, ..., 1. Die Strafkosten-
(4.53)
i=l+ l
Start-LSsung:
sei x ~ mit gi(x ~ > O, i
1, 2 , . . . , 1 gegeben.
Niichster Schritt:
benutze in (4.53) ein s~, 1 < s~ < s~+l, etc.
Stopp:
W e n n x ~ die N e b e n b e d i n g u n g e n yon Modell 4.31 bis auf eine vorgegebene Toleranz e erfiillt.
4.32 B e i s p i e l (aus B r a c k e n a n d M c C o r m i c k (1968, S. 18))
minimiere so dass
f(xl,
x2)
(xl - 2) 2 + (x2 - 1) 2
.9s(xs,x2) .q2(xs,x2)
4
-
:c2
+ 1 >_ 0
xs-2x2+l_>
0
X2] 3sj
// /,/
(Xl,X2):(1;~7 1+~7'~ '
4
/~
g2(x~,x2)=x x;). Daher ist F[f2(xl, z2),
fl(xl,
t2(x2, z2))] >
F[f2(x2, z2), fl(xll', t2 (x2, z2))].
Fiir alle Werte von x2 und z2 gilt jedoeh:
fl(x*l,t2(x2, z2))
max fl(xl,t2(x2, z2)) >_fl(xl,t2(x2,z2)).
Daher muss bei Monotonie fiir alle zl auch gelten:
F[f2(x2, z2), fl(X*l, t2 (x2, 2:2))] _~ F[f2(x2, z2),/1(Xl,
t2(x2, 2:2))].
Dies gilt aueh fiir den Maximalwert:
F[f2(x2, z2), fl(x*l,t2(x2,
z2))] _> maxF[f2(x2,
z2), fl(xl,t2(x2,
z2))].
Das wiederum heigt: FO' (z2)
max F[/2 (x2, z2), ~2
fl(X*l, t2(x2,
z2))]
_> m xm xF[f2(x2, 2), f1(x1,t2(x2, 2))] ~2
~1
Fiir mehrstufige dynamische Programmierungsmodelle erhglt man als rekursive Zielfunktion:
F?(Zi)
maxfi(xi, zi) oE? l(ti(xi, zi)),
/710(Z 1)
iTI~tX/1(Xl, Z 1). 9131
Vi
2,...,n
236
5 Entscheidungsbaumverfahren
Der O p e r a t o r ,,o" steht hier fiir jede Verknfipfung, f/Jr die Ei (zi) eine m o n o t o n nichtfallende Funktion yon f,i, i 1 , . . . , n ist. W i r wollen hierfiir stets eine additive Verkniipfung annehmen.
5.5 Definition Jeder Vektor xi fiir den
Ei~ wird eine
maxfi(xi, zi) oF, ~ 1(ti(xi, zi)),
i 0 und positive ),~ aufeina~dertblgend (Nachbarschaftsbedingung)
(5.22)
k
),~
1
1, ),~ > 0, k
1 , . . . , r"
Abbildung 5.13 zeigt die stiickweise lineare Approximation einer (beliebigen) stetigen nichtlinearen Funktion h(:c) mit den Stiitzstellen x l , . . . , x5 durch das Polygon It(z). Alle Punkte des Streekenzuges It(z) ergeben sich (lurch Konvexkombinationen benachbarter Punkte (:c~, h(:c~)), (x~+l, h(x~+l)), k 1 , . . . , 4. Wiirde die Bedingung (5.22) fallen gelassen, so w/iren sgmtliche Punkte des in Abbildung 5.13 (lurch Schratlierung hervorgehobenen konvexen Polyeders zul/issig. Die Nachbozschaftsbedingung (5.22) lgsst sich mit I-Iilfe binSzer Voziablen abbilden (vgl. Da~ltzig, 1960). I-Iierzu fiihre man fiir jedes Intervall [x~,x~+l], k 1 , . . . , r" - 1, eine (0, 1)-Variable yi, i 1 , . . . , r" - 1, ein, wobei die Variablen yi folgende Bedeutung besitzen:
262
5 Entscheidungsbaurnver fahren 1, O,
Yi
falls h(x) fiber d e r n / - t e n Intervall approxirniert wird sonst
bzw. 1, Yi
0,
~==> )`~
{ >0 -
0
ffirk
i,i+l (5.23)
sonst
sonst
Da h(x) stets fiber genau einern Intervall angenornrnen wird, besteht ferner folgende Multiple Choiee-Bedingung (vgl. Absehnitt 3.6.1): r
1
1
(5.24)
i=1
Uber (5.23) sind die kontinuierlichen Variablen )`~ rnit den bin~iren Variablen Yi verknfipft. Die darin definierten Implikationen lassen sieh auf folgende Weise abbilden: )`l _< Yl )`k _ O, Yi E {0, i}, i
i,...,4
1
(5.26)
5.3 Branch and Bound-Verfahren
263
Zur Behandlung yon (5.26) kann im Prinzip das in Abschnitt 7.2.2 beschriebene Branch and Bound-Verfahren nach Dakin angewandt werden. Allerdings ist es wenig emzient. Denn beim Verzweigen yon yi* 0 wird das Intervall i* zwar auf den ersten Eindruek ausgeschlossen, aber dadurch, dass in der LP-Relaxation sgmtliehe Konvexkombinationen yon Punkten aus den restlichen, noch nicht nach yi 0 verzweigten Intervallen zulgssig sind, k6nnen auch weiterhin Punkte aus dem Intervall i* zulgssig sein. Aus diesem Grunde wurden fiir die Behandlung dera1"tiger nichtkonvexer Optimierungsprobleme sogenannte Special Ordered Sets, d. h. Mengen yon Variablen mit einer speziellen Ordnung dieser Variablen eingeffihrt (siehe (Beale and Tomlin, 1970) und (Tomlin, 1970); siehe auch (Land and Powell, 1979)). Dabei ist zu unterscheiden zwischen Sl-Sets, in denen h6chstens eine Variable positiv sein darf, und S2-Sets, in denen h6chstens zwei Variable positiv sein diirfen nfit der zus/itzlichen Bedingung, dass im Falle yon zwei positiven Variablen diese aufeinanderfolgen miissen. Sind mehrere Special Ordered Sets vorha~iden, so lnfissen ihre Indexlnengen sein.
disjunkt
Offensichtlich bilden die Multiple Choice-Bedingungen (5.24) SI-Sets, deren Variablen sich zu Eins addieren. Die Ganzzahligkeitsbedingung fiir die Variablen yi ist dann aufgrund der Sl-Set-Bedingung automatiseh erfiillt. S2-Sets definieren gerade die Bedingungen (5.22), wobei sich die Set-Variablen wegen (5.21) zu Eins addleten. Besteht also die MSglichkeit, S2-Sets zu definieren, so kmm man in (5.26) auf das Einfiihren der bin/iren Variablen yi und der Beziehungen (5.24) sowie (5.25) verzichten. Stattdessen sind die jeweils zu einer Variablen zi geh6renden Variablen Aj~ zu S2-Sets zu erkl/~ren. Die Behandlung yon Special Ordered Sets unterscheidet sich voln Vorgehen yon Dakin in der Art der Verzweigung an einem Knoten k. Es wird die LP-Relaxation gel6st, jedoch werden nicht einzelne Variablen, sondern Teilmengen yon Variablen eines Special Ordered Sets unter Beachtung ihrer Reihenfolge auf Null gesetzt. Bezeiehnet v den Verzweigungspunkt eines Special Ordered Sets, so wird im Falle eines SI-Set {yl, 9 .., y~} an Knoten k wie folgt zu den Knoten l und m verzweigt:
Yv+l ..... Yr = ( ~ K ~ I
..... Yv = 0
Im Falle eines S2-Set {A1,..., A~} ergibt sich unter dem Verzweigungspunkt v die Trennung:
"~v+l ..... Ar = 0
/k'~
Z~l ..... Av-1 = 0
264
5 Entscheidungsbaumverfahren
Der Vorteil dieser Art yon Verzweigung besteht daa'in, dass sie der Transibrmation (5.20) R e c h n u n g t r g g t u n d zu einem zweckmggigen Verzweigen bzgl. der Variablen xj fiihrt. Das prinzipMle Vorgehen soil a m folgenden BeispM illustriert werden. 5.12 Beispiel Zu 16sen sei das Modelh maximiere z so dass
2,25ocs - 3oc~ + oca + 21oc2- 0,51 + 0,3oca 2o~ + 3o~92+ 3o~a _> 8 1,5ms + m2 + 0,5ma > 2,5 o~s - o~2 o~a 0 o~1~o~2~o~3 > 0
Fiir das approximierende Modell (siehe Modell 4.24 in Abschnitt 4.5.1) werden folgende Approximationen gew&hlt: o~z~ 0
0,25
0,5
0,75
1
1,25
1,5
1,75
2,0
0,42
0,25
0,08
0
0,11
0,5
z(o~z~)
0
0,39
0,5
g(o~z~)
0
0,13
0,5
1,13
2,0
3,13
4,5
6,13
8,0
o~2~ 0
0,25
0,5
0,75
1
1,25
1,5
1,75
2,0
z(o~2~)
1
0,5
0
0,5
1
1,5
2,0
2,5
3,0
g(o~2~)
0
0,19
0,75
1,69
3,0
4,69
6,75
9,19
12,0
wobei ~(~,) g(~,)
2,25~,-3~+~ 2~
~ J
0O xj ganzzahlig flitj
l,...,p
(7.4)
w o b e i A .....,bEIRUt, G x E ] R ~ und l_ dy' v o ( b - B y o ) . Ist dies der Fall, kSnnen wit dutch LSsen yon (7.14) den optimalen Vektor x* errechnen. Bei diesem Verfahren weit~ man allerdings nicht, wie vide duale Ecken untersucht werden miissen. Bei sehr vielen Ecken kann dies durchaus problematisch sein. Dafiir kann bei jedem Iterationsschritt jeweils eine untere und eine obere Schranke yon Z bestimmt werden. Eine detailliertere Beschreibung des Algorithmus findet der Leser in Balas (1965) oder Burkhard (1972).
Branch-and-Price-Verfahren
Die Philosophie der ,~Branch-and-Price" Verfahren ist sehr ~hnlich der der Branchand-Cut Verfahren. Anstatt sich allerdings auf die Generierung yon Schnitten (Zeilen) zu konzentrieren, steht beim Branch-and-Price die Generierung yon Spalten im
322
7 Ganzzahlige Lineare Programmierung
Mittelpunkt. Im Prinzip sind Bra~lch-and-Cut und Bra~lch-and-Price zueinander duale Wege, die LP-Relaxation zu verst/irken. Bei Branch-and-Price Verfahren werden Klassen yon Spalten bei der LP-Relaxation unberiicksichtigt gelassen, da deren Beriicksichtigung zum einen nicht effizient w/ire und da die ihnen entsprechenden Vaxiablen in der optimalen LSsung sowieso Null sein werden. Um die Optimalit/it der LP-LSsung zu iiberpriifen wird dann ein Teilproblem (das sogenannte Pricing-Problem) gelSst, um die Spalten zu bestimmen, die in die Basis aufgenommen werden sollen. Werden solche Spalten gefunden, wird das LP reoptimiert. Verzweigt wird im (Braach-and-Bound-)Baum immer daan, wenn keine solchen Spalten mehr gefunden werden k6nnen und die vorliegende LP-LSsung die Ganzzahligkeitsbedingungen noch nicht erfiillt. Man verwendet also column generation (siehe Abschnitt 3.11) w/itirend der Abarbeitung des gesamten Branch-andBound-Baumes und versucht dadurch diesen so friih wie mSglich zu terminieren. Diese Vorgehensweise bietet sich besonders dann an, wenn das Modell sehr viele Variablen enth/ilt. Dies wiederum ist oft dadurch bedingt, dass kompakte Formulierungen yon ganzzahligen Problemen (mit weniger Variablen) oft sehr schlechte LP-Relaxierungen haben. Dariiber hinaus bietet die Dekomposition (column generation) oft die MSglichkeit, das Problem so in ein Masterproblem und Unterprobleme zu zerlegen, dass die Unterprobleme in sich je nach Kontext sinnvoll interpretiert werden k6nnen. Die ersten VerSffentlichungen yon Braach-and-Price-Verfahren waren daher auch oi~ speziellen Modell-Klassen, wie z.B. dem allgemeinen Zuordnungsproblem, gewidmet (siehe z.B. Savelsbergh, 1997).
7.2.3
Heuristische Verfahren
Bei den heuristischen Verfahren der ganzzahligen Programmierung sollte man wieder unterscheiden zwischen Verfahren, die speziell auf 0/l-Modelle ausgerichtet sind und solchen, die allgemeine ganzzahlige Modelle 16sen. Wit wollen zun/ichst die erste Art betrachten. Hierbei findet man wiederum Er0ffnungsverfahren, Verbesserungsverfahren und Verfahren, die beides integrieren. Zur Illustration fiir 0/l-Verfahren wird sehr oft das TSP verwandt und zwar sowohl im Operations Research, wie auch in anderen Gebieten. Daher werden wir dies auch hier tun:
ErSffnungsverfahren In Kapitel 6.6.1 haben wir bereits das sogenannte ,SavingsverfaJiren" besprochen. Hier soll zus/itzlich das vielleidit ,#laJmliegenste" VerfaJxren des besten Nachfolgers skizziert werden . Wir setzen hierbei als Netz in dem eine Rundreise bestimmt werden soll ein ungerichtetes vollst/indiges Netz (also keine Einbahnstrassen!) und eine symmetrische Kostenmatrix voraus (symmetrisches TSP).
7.2 Verfahren der G a n z z a h l i g e n L i n e a r e n P r o g r a m m i e r u n g
323
Vor'gehen: M a a b e g i n n t bei e i n e m beliebigen K n o t e n i, u n d w~ihlt Ms n i c h s t e n K n o t e n j denj e n i g e n , zu denl y o n K n o t e n i aus die kleinste E n t f e r n u n g (Kosten) besteht. Sind die E n t f e r n u n g e n zu n l e h r e r e n K n o t e n gleich, so wKhlt n l a n den m i t denl k l e i n s t e n (oder a l t e r n a t i v grSiRen) Index. Dieses Verfahren wird so lange fortgesetzt, bis m a n a m e r s t e n K n o t e n a n g e k o m m e n ist. "/.12 Beispiel
Das zugrunde gelegte Netz bzw. die angenommene Kostenmatrix sind:
1
2
O~
8
8
3
4
5
6
7
8
6
8
8
14
16
16
4
12
6
12
16
14
2
8
12
10
6
4
~
8
8
12
8
~
10
8
8
10
8
6
2
10
~
6
10
8
14
12
8
8
6
~
6
4
7
16
16
12
8
10
6
~
2
8
16
14
10
10
8
4
2
Wenden wit darauf das oben beschriebene Vorgehen an, so erhalten wit bei der Wahl des minimalen Knotenindex (bei nichteindeutigen Minimalkosten) die Rundreise (1-a-5-2-4-6-8-7-1) mit Gesalntkosten yon 56. WKhlen wit bei Nichteindeutigkeit jeweils dell hbchsten KilOtenindex so erhalten wit die ]Zundreise (1-3-5-6-8-7-4-2-1) mit Gesamtkosten yon 48. SelbstverstKndlich bedeutet dies nicht, dass die letztere Vorgehensweise immer zu besseren Ergebnissen fiihrt. Bei anderer Netz- oder Kostenmatrixstruktur kann dies ganz anders aussehen. Es existieren zahlreiche weitere heuristische Er6ffnungsverfahren, die im Allgemeinen zu besseren Ausga~lgsl6sungen fiihren, dafiir aber auctl aufwendiger sin& Der interessierte
324
7 Ganzzahlige Lineare Programmierung
Leser sei verwiesen auf Christofides (1975); Karp (1979); Golden and Stuart (1985); Reinelt (1994) und auf Domschke (1997). []
Verbesserungsverfahren Ausgehend yon einer mit einem ErSffnungsverfahren gefundenen zulgssigen LSsung kann mit Verbesserungsverfahren eine AnnNmrung an die optimale LSsung dadurch erreieht werden, dass man versucht, lokal Verbesserungen zu erreiehen. Bleiben wir beim Beispiel des Handlungsreisenden, so kSnnte dies z. B. dadureh geschehen, dass man einzelne Kanten oder Untermengen yon Kanten in der jeweils bekannten LSsung austauscht und damit die Reihenfolge der besuchten Kunden gndert. Solche Verfahren bezeichnet man Ms r-optimale Verfahr'en, wobei r die Anzahl der jeweils ausgetausehten Ka~ten angibt. Je grSffer r wird, desto grSffer wird verst/indlieherweise auch der LSsungsaufwand und die LSsungsgiite steigt in dem Sinne, dass ffir rj > ri die LSsung fiir ein j-optimales Verfahren nie schlechter sein kann als die fiir ein i-optimales Verfahren. Der LSsungsaufwand ist allerdings (9 (n~), wobei n die Zahl der zu besuchenden Kunden ist! Fiir ein
2-optimales Verfahr'en wiirde man wie folgt vorgehen:
i, j und h seien Indizes der besuchten n Knoten. ci,j seien die Kosten der Reise yon Knoten i zu Knoten j. Man bestimmt zungchst fiir i 1 bis n - 2 und j i + 2 bis n die Summen dl,~ (c~,~+1+ c5,5+1) und d2,~ (c~,5 + c~+1,5+1). Ist dl,~ > d2,~, so /i~ldere die Rundreise ( 1 , . . . , n, 1) in (1, . . . , i, j, j - 1 , . . . ,i + 1, j + 1 , . . . , n, 1). Diese ,,Austausche" werden sola~xge vorgenommen, bis keine dl,~ > d2,~ mehr gefunden werden kSnnen. Wit wollen dieses Vorgehen, ausgehend v o n d e r im Beispiel 7.12 zuerst bestimmten Rundreise, im ngchsten Beispiel illustrieren: 7.13 B e i s p i e l
Die AusgangslSsung (mit an den Kanten stehenden Kosten) ist die folgende Rundreise:
4
6
56 Nach dem ersten Tausch erhalten wir die Rundreise (1, 2, 5, 3, 4, 6, 8, 7, 1) mit Kos~en K 54.
7.2 VerfMlren der Ganzzahligen Line~ren Programmierung
325
54
Iin 2. Schritt erhalten wit die Rundxeise (1, 2, 5, 3, 4, 7, 8, 6, 1) mit den Kosten K
t2) ''(5"(
50.
Z=50
Eine weifGere Verbesserung isfGnicht m6glich.
Stm-ten wit nun das Verbesserungsverfahrenmit der L6sung Nr. 2 aus dem Er6ffnungsverfahren, die wie folgt aussieht:
48 so erhalten wit nach einem Schritt die LSsung (1, 2, 3, 5, 6, 8, 7, 4, 1) mit Kosten K Dies ist in diesem Fall die optimale LSsung.
42.
7 Ganzzalilige Lineare Programmierung
326
42 Wie man sieht, hgngt das Ergebnis des Verbesserungsverfahrens stark yon der Ausgangs15sung ab. Im ersten Fall hgtten wir zur weiteren Verbesserung mindestens ein 3-optVerfahren oder ein anderes Verbesserungsverfahren anwenden miissen. Im 2. Fall fiihrte das 2-opt-Verfahren sogaz zur optimalen LSsung. Uber die r-opt-Verfahren hinaus existieren eine groge Anzahl weiterer Verbesserungsverfahren. Als Spezialfall des r-opt-Verfahren ist hier das sogenannte Or-opt-Verfahren (Or, 1976) zu nennen. Sehr verbreitet ist auch das Verfahren yon Lin und Kernighan (Lin and Kernighan 1973, siehe dazu auch Domschke 1997), das wesentlich aufwendiger ist als normale r-opt-Verfaliren, dafiir aber in den meisten Fgllen bereits optimale L6sungen liefert. Das Gleiche gilt fiir OCTANE, das neuere Verfaliren yon Balas (Ceria et al., 2001), das eher als ein heuristisches Verfaliren zur LSsung yon 0/1-Problemen als als VerbesserungsverfMiren zu bezeichnen ist. []
Heuristische Verfahren zur LSsung allgemeiner ganzzahliger M o d e l l e Die in den letzten beiden Abschnitten beschriebenen Verfahren waren primgr zur LSsung yon 0/1-Modellen gedacht. Heuristische Verfahren existieren jedoch auch fiir die LSsung rein gaazzahliger oder gemischt-ganzzahliger Modelle. Zu nennen sind bier z.B. die Verfahren yon Hillier (1969), Kreuzberger (1968) und Gozfinkel and Nemhauser (1972) sowie Nemhauser and Wolsey (1988). Wir wollen hier exemplarisch das Verfaliren yon Garfinkel und Nemhauser vorstellen. Betrachtet wird wiederum das Modell (7.3) bis (7.4), ffir das nun p n gilt. Es haadelt sich also Uln ein rein gaazzalfliges Modell. Der Einfachheit halber wird es in leicht Inodifizierter Form noch eimnal angegeben: maximiere
mit
z X
cTx,
x E X
{x l a x _< b, x _> 0, x ganzzahlig }
(r.lr)
7.2 Verfahren der Ganzzahligen Linearen P r o g r a m m i e r u n g
7.14
327
Definition
Ist x / ein Vektor aus X mit n Kompor~enten, so sei unter einer U m g e b u n g N,.(x/) die Menge der ganzzahligen Lasungen (Vektoren) verstanden, die von x / in nicht mehr als r K o m p o n e n t e n abweichen.
Wir wollen zun~chst betrachten, wie sich N1 (x/) far eine zul~ssige Lasung entsprechend (7.17) berechnen l~sst (hath Garfinkel and Nemhauser, 1972, S. 327). Ist x / ein Vektor mit n K o m p o n e n t e n , so massen zur B e s t i m m u n g des Teiles von N1 (x/), der in I liegt, n Modelle der folgenden F o r m gelSst werden: rnaxirniere
z~
c~x~ + ~ j # ~ c s }
ai~x~ 0, x~ ganzzahlig. Bezeichnet m a n nun die ,,Umgebung" der k-ten K o m p o n e n t e bezaglich X / mit /kxk xk x I~, so kann (7.18) geschrieben werden als -
-
z~
maximiere
c~A:c~ + ~ j = l cj:c} ?%
a ~ A x ~ - z ~/, Ax~ ganzzahlig. Aufgabe (7.19) wiederum ist ~quivalent zu rnaxirniere c~Ax~
Ax~ > I/ a~~' l/ --
i E I2
,
{i
Ia~
- z ~ . Hierbei reprSsentiert LaJ die grSBte ganze Zahl kleiner oder gleich a und Fa] die kleinste ganze Zahl gr6fier oder gleich a. Definiert m a n nun: ql
q2
/
[
rninici1 Lyi/ai~J , oc,
kyJ
(
t
J, oc,
far I 1 / ~ 2~ far I1 (7.21)
fax"h r far/2
2~
so gilt far eine optimale L6sung von 7.20: Ax ~
ql
wenn c~ _> 0
zxx ~
m~x{q~ - x~}
wenn ~ _> 0
(7.22)
328
7 Ganzzahlige Lineare P r o g r a m m i e r u n g
Aus (7.21) u n d (7.22) folgt, dass (7.20) genau daam unbeschr/ialkt ist, wenn c~ > 0 u n d I~ ~ ist. Nach diesen B e t r a c h t u n g e n 15sst sich nun leicht der Algorithmus fiir die U m g e b u n gen N1 (z') formulieren:
7.15 Algorithmus i. Schritt
W/ihle eine zul/issige LSsung zu (7.17). W/ihle ein x' E X , seize z__ gehe zu Schritt 2.
cx' und
2. Schritt
LSse Modelle (7.18) Kir k
1 , . . . , n d u t c h A n w e n d u n g yon (7.21).
3. Schritt
Existiert ein k mit c~ > 0 u n d I1 ~, so ist (7.18) und d a m i t auch (7.17) unbeschrgnkt: Stopp. AnderenfMls b e s t i m m e den Index k mit der maximalen LSsung ( z ~ ~ in (7.18). Ist z ~ > z_, setze x ' x ~ und gehe zu Schritt 2. W e n n z ~ _z, gehe zu Schritt 4. 3. Schritt
x ~ ist ein lokales O p t i m u m in der gew/ihlten U m g e b u n g N1 (x'). Fails nach einer besseren LSsung gesucht werden soil, setze x' x ~ und gehe zu Schritt 2. Sonst: Stopp. x ~ ist die beste bekannte LSsung fiir 7.17. Selbstverstgndlich kSnnen im 2. Schritt auch andere U m g e b u n g e n B2, gewShlt werden. Der A u f w a n d einer Iteration ist damn entsprechend h o c k
r.16 Beispiel (Garfinkel and Nemhauser (nach 19r2, S. 328)) Gesucht sei eine gute ganzzMflige LSsung zu maximiere z so dass
7ms + 2x2 + 4xa + 5x4 + 8x5 + 6x6 + 2mr + 10ms + 3x9 - x s + 4x2 + 3x4 + x5 + 2x6 - 2 x r 2xs + 3xa - x4 - 2x5 + 7xr + ms + x2 + 2xa + 3x4 + 2x5 + 4x6 - 6mr + xs , . . . , xg >_ O, ganzzahlig
+
2x8 3xs
i. Schritt
~'(o,...,o),~
o.
2. Schritt
Die Errechnung der q2 ist irrelevant, da alle cj > 0. Ausgehend von x' aus Schritt i ergeben sich zungchst folgende Werte fiir qs:
x0
1 Knoten hat folgende Eigensehai~en: I. Zwei beliebige Knoten yon B sind dureh genau eine Kantenfolge miteinander verbunden. 2. Hat H rn Knoten, so enthfilt er rt
rn - 1 Kanten.
3. Verbindet man zwei beliebige Knoten yon H miteina~ider durch eine zus/itzliche Kante, so entsteht genau ein Kreis (Zyklus). 4. Ein Baum
hat mindestens zwei Endknoten
mit der Valenz I.
8.18 Definition
Ein zusammenh/ingender, alle Knoten eines gegebenen zusammenh/ingenden Graphen G enthMtender Teilgraph mit minimMer Kantenzahl heigt Geriist H yon G. Ein zusammenh~ngender Graph mit wenigstens einem Zyklus (Kreis) kann durchaus mehrere Gerfiste besitzen. So ist es zum Beispiel in der Theorie der elektrischen Netzwerke wichtig, alle unterschiedlichen Gerfiste eines vorgegebenen Graphen zu kennen. Auf zu ihrer Bestimmung existierende Algorithmen kann an dieser Stelle nicht eingegangen werden. H~iufig sind in praktischen Problemstellungen in Graphen Gerfiste minimaler Gesamtlgnge gesucht (sogenaante Minimalgerfiste). Offensichtlich sind in diesen F/ilfen nieht alle Kanten des Graphen gleieh jangt (Statt der L/~nge kann auch die Minimierung anderer Grggen erwfinscht sein!) Man bewertet daher zun/iehst die Kanten des zugrunde liegenden Graphen, sagen wig mit den Gewichten dij, i i,..., rn, j i,..., n (bei rn Knoten bedeutet i den Index des Anfa~igsknotens einer Kante und d den des Endknotens) und man sucht dann nach dem Gerfist, ffir das ~ , ~scH dij --+ rnin. Ein solches Problem liegt zum BeispM bei der Einrichtung eines Fernsprechnetzes vor, bei dem jeder Ort mit jedem anderen verbunden werden soll. Diese Verbindung kann natfirlieh entweder direkt erfolgen oder fiber andere Orte. Verzweigungen sollen nur in den Often selbst m6glieh sein. Eine Darstellung dutch einen bewerteten gerichteten Graphen k6nnte dann so erfolgen, dass jeder Ort durch einen Knoten bezeictmet wird, und dass die Kanten zwischen den Orten mit den Inst~llationskosten einer jeweils direkten Leitung zwischen den Orten bewertet werden. Gesucht wird dann das Gerfist des abbildenden Graphen, bei dem die Gesamtinstallationskosten minimal sind.
8.1 Grundlagen der Graphentheorie 8.1.3
345
Netze und Netzwerke
8.19 D e f i n i t i o n Ein zyklenfreier Digraph mit genau einer Quelle und einer Senke heigt Netz. Ordnet man dutch eine Abbildung von E (Menge der Kanten!) in den R ~' den PMlen dieses Netzes Zahlen (Gewichte) zu, so wollen wit dieses bewertete Netz Ms Netzwerk bezeichnen. Hgufig ist eine Abbildung yon E in den R l, die dann je nach Zusammenhang verschieden zu interpretieren ist: Die ,,Gewichte" mSgen Entfernungen, Kosten, Fliisse, Gewinne etc. darstellen. In Erggnzung der zwei bereits definierten Abbildungen q~l und q~2 wollen wit beispielhaft eine Abbildung q~3 definieren, die Entfernungen daz'stellen soll. Um nicht existierende Knotenverbindungen kennzeictmen zu kSnnen (bei endlichen Entfernungen), wNllen wir q~3 : E --* R1 U { oc }, wobei nicht-existente Kanten bezeichne. Die Abbildung q~3 kann nun wiederum in Form einer Matrix D dargestellt werden, deren Elemente dij bei einem zugrunde liegenden Netzwerk mit m Knoten
und n Pfeilen wie iblgt definiert sein kOmlte:
wenn Pfeil e~ yon Knoten vi zu Knoten vj fiihrt
(i,j
0%
wenn
i,
i,
kein Pfeil zwischen Knoten
vi und Knoten
vj existiert.
8.20 Beispiel Zugrunde gelegt sei das in Abbildung 8.7 gezeigte Netzwerk. Der Einfachheit halber sei aagenommen, dass die Verbindungen nur jeweils in einer Richtung benutzbar seien (Einbahnstra~en, Rohre mit Riickschlagventilen etc.). Vl
V4 12
A b b i l d u n g 8.7": Entfernungsnetzwerk
V3
11
Die Entfernungs- oder Distanzmatrix fiir dieses Netzwerk ist dann:
V5
346
8 Graphen, Bgume, Netze, Netzpls Vl
D
V2
V3
V4
V5
V6
Vl
oc
6
10
12
13
oc
V2
oc
oc
7
oc
oc
oc
v3
oc
oc
oc
14
11
oc
v4
oc
oc
oc
oc
oc
5
v5
oc
oc
oc
oc
oc
7
v6
OO
OO
OO
OO
OO
OO
Von vs nach v6 bestehen z. B. sechs Wege: (vs, v2, va, v4, v6), (vs, v2, va, vs, v6), (vs, v4, v6), Der kiirzeste Weg yon vs nacll v6 ist (vs, v4, v6) mit 17 Einheiten.
[]
Verbreitet sind auch ,,kapazitierte" N e t z w e r k e , d.h. Netzwerke, deren Pfeile mit HSchst- und Mindestbeschr/~nkungen versehen sin& Man stelle sich z. B. ein Rohrsystem vor, dessen Teilverbindungen Rohre verschiedener St/irke bilden (MaximMkapazit/iten) und ffir dessert Funktionieren ein Mindestverh/iltnis yon Rohrdurchlnesser und Durchflieglnenge gewghrleistet werden muss (Mindestvorschrit~!). Eine dies charakterisierende Abbildung qJ4 : E ~ R 2 liege sich wiederum durch eine Matrix darstellen, deren Elemente nun allerdings Tupel (aij, bij) w/~ren. Ffir solche kapazitierten Netzwerke existieren auch eindeutig definierte MaximMbzw. Minilnalfl/isse yon der Quelle zur Senke und dadurch induzierte Teilfliisse in den Pfeilen, die wiederum als eine Abbildung qJ5 : E --~ R 1 aufgefasst werden kSnnen. Ffir diese Teilfliisse gelten allerdings einschr/~nkende Qualifikationen: Sie mfissen im R a h m e n der Kapazitgtsbereiche der Pfeile liegen und Fliisse dfirfen sich in Knoten nicht ,#tauen", d. h. die Sumlne der Zufl/isse in eineln Knoten muss gleich der Sulnme der Abfliisse sein. Ausgenolnmen davon sind natiirlich Quelle und Senke. Damit gilt ffir Abbildung qJs: q*5(eij) E [aij,bij] .
.
.
~!'5(eit,) i=l
Vi, j
. - ~ ! ' 5 ( e t , j) j=l
1,...,m
(8.1)
-f,
wenn vt, Quelle
f,
wenn vt, Senke
(8.2)
0~ fiir alle fibrigen Knoten
f i s t der im Netzwerk vorhaadene Fluss. Will m a n die Teilflfisse in den P M l e n analog zu Beispiel 8.20 in einer Flussmatrix F daxstellen, so sind deren Elemente
As: f~J
{ qJs(eij) E [aij, bij], 0~
falls ein Pfeil yon vi nach vj existiert sonst
(8.3)
8.1 G r u n d l a g e n der G r a p h e n t h e o r i e
347 V2
V4
V3
V5
y" Abbildung 8.8: Kapazitiertes Netzwerk
8.21 Beispiel Abbildung 8.8 zeigt ein kapazitiertes Netzwerk. An den Pfeilen sind die jeweiligen Mindest- und Maximalkapazit~ten gegeben. Da die Mindestkapazit~iten hier iiberall 0 sind, geniigt es, in der dieses Netzwerk charakterisierenden Kapazit~itsmatrix K die MaximalkapazitSten der Pfeile anzugeben:
K
Vl
V2
V3
V4
V5
V6
vl
0
8
6
0
0
0
v2
0
0
0
5
11
0
v3
0
0
0
5
4
0
v4
0
0
0
0
0
4
vs
0
0
0
0
0
9
v6
0
0
0
0
0
0
Offensichtlich kann der Fluss yon Knoten vs nach v6 verschieden grog sein. Die Bestimmung des maximal maglichen Flusses in einem solchen Netzwerk wird im n~chsten Kapitel betrachtet werden. Einen zul~sigen Fluss zeigt die fblgende Matrix F :
F
V5
V6
Zeilensumme
0
0
0
12
4
4
0
8
0
4
0
4
0
0
0
4
4
0
0
0
0
8
8
0
0
0
0
0
0
0
0
8
4
4
8
12
Vl
V2
V3
Vl
0
8
4
V2
0
0
0
V3
0
0
0
V4
0
0
V5
0
V6
Spakensumme
V4
In Matrix F stellen die Spaltensummen die Zufliisse zu den Knoten din', die Zeilensummen die entsprechenden Abfliisse. Wie man sieht~ sind bei allen Knoten~ auger bei Quelle und Senke, die Zufliisse gleich den Abfliissen. Insgesarnt existiert ein Fluss yon 12 durch das Netzwerk. Alle Teilfliisse erfiillen (8.1) und (8.2). []
348 8.2
8.2.1
8 Graphen, Bs Graphentheoretische
Netze, Netzpl~ne
Verfahren
Die E r m i t t l u n g kfirzester W e g e in N e t z w e r k e n
Fiir die Ermittlung kfirzester Wege in Netzwerken existieren eine Reihe von Algorithmen, die sich zum einen in ihrer Effizienz und ihrem Speicherplatzbedarf unterscheiden und zum anderen in der Art der yon ihnen vorausgesetzten Graphen und in der genauen Zielsetzung der Algorithmen (z. B. Ermittlung kiirzester Wege yon einem Knoten zu einem bestimmten anderen Knoten oder zu allen aaderen Knoten des Graphen etc.). Einer der bekanntesten Algorithmen ist der von Dijkstra (Dijkstra, 1959), der die kiirzesten Wege von einem beliebigen Knoten eines bewerteten gerichteten Graphen zu allen anderen Knoten bestimmt, falls die Bewertungen nicht-negativ sind. Zyklen sind zwar zugelassen, wir wollen jedoch bei der Betrachtung yon Netzwerken der in Definition 8.19 beschriebenen Art bleiben. Das prinzipielle Vorgehen des Verfahrens kaan wie folgt besehrieben werden: Man betraehtet zungehst alle yon einem Knoten v~ ausgehenden Pfeile. Der kiirzeste fiihre zum Knoten vh. Der kiirzeste Weg yon vi nach vh ist damit der Pfeil eih. In einer n/ichsten Stufe werden nun yon vh ausgehende Pfeile betrachtet. Man addiert zu den L/i~lgen dieser Pfeile die kfirzeste Entfernung yon vi naeh vh und vergleieht sie mit den L/ingen der Pfeilfolgen von vi zu denjenigen Knoten, zu denen im Verlauf des Verfahrens zwar Wege, nieht aber unbedingt kfirzeste Wege ermittelt worden sind. Die Pfeilfolge minimaler L/inge fiihre zu einem Knoten vj. Damit ist der kiirzeste Weg yon vi zu einem weiteren Knoten vj im Netzwerk bestimmt. Ausgehend yon vj werden nun kiirzeste Wege zu allen yon v~ aus erreichbaren Knoten bestimmt. Hierbei werden die bereits gefundenen Wegl/i~lgen jeweils dutch gefundene kiirzere Wege aktualisiert. Den Dijkstra-Algorithmus gibt es in zwei Versionen: 1. die sogenannte Pfeilversion (S. 270 Dijkstra, 1959) und 2. die sogenannte Matrix-Version (Yen, 1971), die sich besser fiir manuelle Benutzung eignet. EffizienzvergMche findet man bei Streitferdt (1972, S. 253-256) und bei Kfipper st al. (1975, S. 40). Wir wollen hier nut die Matrix-Version betraehten:
8.2 Graphentheoretische Verfahren
349
8.22 A l g o r i t h m u s ( K i i p p e r et al. siehe 1975, S. 35 iT.) Es seien Vi
:
d,~5 :
gew~ihlter Bezugsknoten Distaaz - L~h~ge des Pfeiles
r
AnzMfl der Knoten, zu denen bereits yon Knoten Weg bestimmt wurde
a
Vektor, dessen Komponenten a~+1 his a~ die Indizes der Knoten sind, zu denen noeh keine oder noeh keine kfirzesten Wege yon Knoten vi aus ermittelt wurden
V i
:
l~ :
Vektor der Indizes der Vorggngerknoten Knoten vi
auf dem
vi aus ein kfirzester
kfirzesten Weg
yon
Lgngenvektor, der die Pfadlgngen der bisher kfirzesten Wege yon Knoten vi auf der r-ten Stufe angibt.
Initialisierung Setzer
:
1,
a :
(al, a 2 , . . . , a ~ )
vi:
(0,0, ...,0),
1. Schritt W~hle aus a eine K o m p o n e n t e at~ aus, fiir die l i ~ Setzeq at~; at~: a~; r : r+l.
min{li~5 I r _< j _< m}.
2. Schritt Bestimme fiir Mle aj, r _< j _< m s :
liq + dq~5
Ist s < l ~ 5 s e t z e l ~ 5 :
sundv~ 5
q.
3. Schritt F i i r r < m gehe zu Schritt 1. Fiir r m: Der zuletzt ermittelte Vektor vi gibt die Vorggnger auf den kiirzesten Wege zu Mien yon v~ erreichbaren K n o t e n an. Der Vektor l~ ~ enthKlt die entsprechenden Wegl~h~gen.
350
8 Graphen, Bgume, Netze, Netzpl/ine
8.23 Beispiel Fiir das in A b b i l d u n g 8.7 gezeigte Netzwerk seien alle kfirzesten Wege v o m K n o t e n 1 aus ermitteln.
zu
Initialisierung
r:
1,
a :
(1,2,3,4,5,6)
vs :
(0,0,0,0,0,0)
Fiir l~ empfiehlt sich die Erstellung einer M a t r i x L~, die sich yon der D i s t a n z m a t r i x D dadurch unterscheidet, dass sie sich auf jeder Stuf'e/ialdert und dass sie fiir r 1 in der H a u p t d i a g o n a l e n den Vektor lis enth/tlt. In der M a t r i x L~, werden auf jeder Stufe Zeilen u n d Spalten gestrichen. Die H a u p t d i a g o n a l e enth/tlt jeweils den aktuellen l~-Vektor. Fiir unser Beispiel ergibt sich Vl
V2
V3
V4
V5
iiiiiiiiiiiiiiiiiigiiiiiiiiiiii 6 Vl
10
12
la
7
oc
oc
oc
14
11
oc
oc
5
::::::::::::::::::::::::::::::::::::::::::::
V2
oc
V3
oc
oc
V4
oc
oc
oc
V5
oc
oc
oc
oc
V6
OO
OO
OO
OO
......................::::::::::::::::::::::
V6
7
......................i...................... OO
1. S c h r i t t
ls~t~ q:
min{/s~ 5 } 1; az:
as
lss
O; 1 _< j _< 6
1; r :
2;a
(2, 3, 4, 5, 6)
2. S c h r i t t j
2 : s:
lss+ds2
0 +
6
6
j
3: s:
lss+dsz
0 + 10
10
j
4 :s :
lss + d14
0 + 12
12
j
5 : s:
lss+ds5
0 + 13
13
j
6 :s :
/11 + d16
0 + oc
oc
Der Vektor l~ (Hauptdiagonale der L - M a t r i x ) u n d der Vektor vl werden entsprechend gegndert: Fiir d 2, 3, 4 und 5 ist jeweils l~ < oc und muss entsprechend aktualisiert werden. D a r a u s ergeben sich weiterhin folgende Aktualisierungen: vs2 :
1, v s a :
1, vs4 :
1, vs5 :
Es ergibt sich folgende L - M a t r i x :
1.
8.2 G r ~ p h e n t h e o r e t i s c h e
Verf~hren
Vl
V2
351
V3
V4
V5
V6
iiiiiiiiiiiiiiiiii6iiiiiiiiiiiiiiiiii 7
oo
oo
OO
14 iiiiiiiiiiiiii~i0iiiiiiiiiiiii
11
OO
OO
Vl
oo
V2
...................... i......................
r~
V3
oo
oo
V4
oo
oo
oo
V5
O0
O0
oo
oo
V6
O0
O0
0
1
1
1
2
Vl
(
iiiiiiiiiiiiiiiii2iiiiiiiiiiiiii oo
...................... ::::::::::::::::::::::
5 7
1
0
)
3. Schritt Da r
2 < 6~ wird mit Schritt 1 fbrtgefMlren.
1. Schritt Es ist 11~ min{/l~ 5 } 112 6. D i e erste Zeile u n d Spalte @1) wird gestrichen. q : 2; a2 2; r 3, a (3, 4, 5, 6)
2. Schritt j:
3: s:
112+d23
6 +
j:
4: s:
112+d24
6 + ~
j:
5 : s:
112+d25
6 + ~
j :
6 :8 :
112 + d26
6 + ~
D a fiir j
3 s
7
13 > 10 bleibt 113
13
10 u n d v13
1.
D a r a u s ergibt sich: Vl
Vl
......................
o~
V5
•
•
•
V6
o~
n
iiiiiiiiiiiiiifi~iiiiiiiiiiiiiio ~
V5
~
~
V6
~
~
~
1
1
1
(0
3. Schritt r
V4
iiiiiiiiiiiiiiiii~iiiiiiiiiiiii ~4
V3 V4
3 Vl
V3
I iiiiiiii7i~ii~iiiii~iii
V2
r~
V2
3 < 6: --+ Schritt 1.
1
5
iiiiiiiiiiiiiiiii~iiiiiiiiiiiiii 7 iiiiiiiiiiiiiiiiiiiiiiiiiiij
0)
352
8 Grgphen, Bgume, Netze, Netzpl/ine
i. Schritt
min3 13
j
6; s:
l~a+da6
lO+oc
oc
Vl
Vl
L~
V2
:::::::::It:::::::::
V3
V4
9~
9~
V5 9o
V6 C-5
V2
I iiiiiiiii6ii,-iiiiiii~cc cc cc
V3
t iiiiiiii~iii14 iiii n
V4 V5 V6 4
vl
(
o
? T T
1
~ iiiiiiiiiiiiiiiiiiiiiiiiiiiiii~ ....... ~ ~ iiiiiiiiiiiiiiiiiiiiiiiiiiii~ ......... ~ ~ ~ iiiiiiiiiiiiiiiiiiiiiiiiiii,
1
1
1
o)
V3
V4
V5
V6
~o
~2
~
3. Schritt
r
4 < 6 :--~ Schritt 1.
i. Schritt
min4<j f~j
f,7~ - f~i > O.
(8.6)
Sind qij die ,,freien", d.h. nach Berficksichtigung eines Teilflusses noch zur Verfiigung stehenden Pfeilkapazits so bietet sich folgendes Verfahren zur Bestimmung maximaler Flfisse an:
8.2 Graphentheoretische Verfahren
359
i. Schr'itt Setze fiir alle Pfeile gid :
bid.
2. Schr'itt Bestimme einen aus Pf'eilen mit verfiigbarer Kapazit/it bestehenden Pfad von der Quelle zur Senke. Die minimale auf diesem Pfad bestehende verfiigbare Teilkapazit/it bestimmt den maximalen Teilfluss des Pfades. 3. Schritt Die neuen verfiigbaren Teilkapazitgten ergeben sich zu gij :
gij-fij
4. Schr'itt (~berpriife, ob sich weitere Pfade wie in Schritt 2 bestimmen lassen. Wenn ja, gehe zu Schritt 2, wenn nein, sind alle mSglichen Teilfliisse bestimmt und der maximale Gesamtfluss ergibt sich als Summe der ermittelten Teilfliisse. 8.26 Beispiel Zu bestimmen sei der maximale Fluss in folgendem Netzwerk: q
h
4
,,~
Als erster Pfad werde die Pfeilfblge 1 - 2 - 4 - 6 gewfililt, in der ein maximaler Fluss von .[1 4 mSglich ist. Fiir die noch zur Verfiigung s~ehenden K a p a z i ~ e n gij ergibt sich dann: q
h
0
~?,
360
8 Graphen, Bs
Als zweiter Pfad gelte: i-3-4-6, der einen maximalen Fluss yon .[2 verbleibenden verffigbaren Kapazit~ten ergeben sich zu:
Netze, Netzpl/ine
4 ermSglicht. Die
i 2
J
3
--\
W i r d als n/tchster Pfad die Pfeilfolge 1 - 3 - 5 - 6
mit .[3
3 gew/thlt, so ergibt sich:
i 2
J
o
-\
Als letzter mSglicher Pfad bleibt die Pfeilfolge 1 - 2 - 5 - 6 mit ]~ 1. Danach lgsst s i c h wie aus folgender Abbildung ersichtlich-kein weiterer positiver Pfad yon Knoten 1 zu Knoten 6 finden: o
i 1
~/
0
Damit ergibt sich der maximale Fluss von Knoten
.]'
[email protected]@f3@f4
12.
vs
zu I(noten v6 in diesem Netzwerk zu []
F i i r gr6gere N e t z w e r k e b i r g t d a s s o e b e n b e s c h r i e b e n e Verfahren die G e f a h r des
8.2 Graphentheoretische Verfahren
361
Verrectmens oder des Vergessens yon ,,fiktiven Flfissen". Deswegen greift man in diesen Fgllen auf den yon Ford-Fulkerson vorgeschlagenen Markierungsalgorithmus zuriick, in dem die oben beschriebene Vorgehensweise weiter formalisiert wird: Besonderheiten Erweiterung auf reale Gegenfliisse: Bisher wurde gefordert, dass der Nettofluss in Pfeilrichtung zu verlaufen hat. Nun soll der reale Fluss auch entgegen der Pfeilrichtung verlaufen dfirfen. Bezeichnet bji die Kapazitit fiir die Aufnahme eines Flusses fj~ entgegen der Pfeilrichtung, so gilt:
-bj~ 0.
8.28 Algorithmus 1. Schritt Setze fiir alle verfiigbaren PfeilkapazitMen gij :
5ij
.qji : byi 2. Schmtt Die Quelle (Knoten 1) erh/ilt die Marke M (i, fy) (0, oc). Die Marke My des Knotens j ist aus zwei GrSgen, i und fj, zusammengesetzt. Hierbei ist i der Index des Knotens, yon dem aus der Knoten j mazkiert wurde, und fy ist der mSgliche Fluss yon der Quelle bis Knoten j.
362
8 Graphen, Bgume, Netze, Netzpl/ine
Von jedem markierten Knoten aus wird jeder in Betracht kommende unmarkierte Knoten j markiert, sofern gij > 0 ist. Es gilt dabei fiir fj min{fi, gij}. Um Fehler zu vermeiden, ist es sinnvoll, eine geeignete Reihenfolge bei der Markierung zu vereinbaren. Man kaan z.B. schrittweise vorgehen: Im ersten Schritt werden die Marken derjenigen Knoten bestimmt, die vonder Quelle aus erreichbar sind. Daaach w/ihlt maa unter den markierten Knoten denjenigen mit der kleinsten Nummer aus und bestimmt wiederum alle m6glichen Marken. Anschliegend markiert man vom ngchstgrSgeren Knoten aus usw., bis die Knoten des ersten Schrittes erschapft sind. Analog ertblgt die Markierung von denjenigen Knoten aus, die im zweiten und den weiteren Schritten markiert wurden. Der Markierungsprozess wird abgebrochen, sobald die Senke markiert wird. Danach erfolgt der 0bergang zu Schritt 3. 3. S e h r i t t
Ist die Senke markiert worden, so gibt deren f,~ den mgglichen Fluss yon der Quelle bis zur Senke auf dem Pfad an, den man durch ein Riickwgrtsverfolgen der jeweiligen Markenelemente i bestimmen kaan. Dieser Teilfluss f~ : f,~ wird nun vermerkt (urn sp/iter den maximalen Fluss bestimmen zu k6nnen) und die GrSgen der freien Pfeill~pazititen werden unter Beriicksichtigung des Flusses f~ auf folgende Weise berichtigt: Bei VorwSrtsmarkierung: gij :
gij-
fk
.qji :
.qji + f~
Bei Riickw/irtsmarkierung: gid :
gid+f~
.qdi: .qdi-f~ Danach werden alle Marken gelSscht und die Schritte 2 und 3 solaage wiederholt, bis die Senke nicht mehr markiert werden kann. Die Summe der bis dahin gefundenen Fliisse vonder Quelle zur Senke ist der maximale Fluss in dem betrachteten Netzwerk.
8.3 Netzpl/ine mit deterministischer Struktur
8.3 8.3.1
363
Netzpl~ine mit deterministischer Struktur Grundlagen
Stg_rken u n d Schw~ichen klassischer P l a n u n g s - u n d S t e u e r u n g s h i l f s m i t t e l
Ein Planungsverfahren, das auf den Beginn der wissenschaftlichen Betriebswirtschat~slehre zuriickgeht, ist das Verfahren von Henry L. Gantt. Die heute noch praktizierten konventionellen Planungsmethoden zur zeitlichen Festlegung yon Arbeitsabl/iufen sind in der Hauptsache Weiterentwicklungen des Ganttschen Planungsbogens. Hierbei werden gewShnlich auf der horizontalen Achse die Zeit und auf der vertikalen Achse die durchzuffihrenden Arbeitsggtige aufgezeichnet. Werden geplante Ablgufe und wirklich ertblgte Ablgufe voneinander unterscheidbar festgehalten, so ka~m die Gantt-Chart auch Ms Kontrollinstrument des Arbeitsablaufes angesehen werden. In Abbildung 8.10 wird eine solche Gantt-Chart gezeigt, mit deren Hilfe die Arbeitsg/i~ge A bis M zeitlich geplant werden sollen. M und damit das gesamte Projekt sollen offensichtlich nach 52 h abgeschlossen sein.
C D E F G H I J K L M 0
10
20
30
40
50
St d.
A b b i l d u n g 8.10: Ga~ltt-Chaxt
Geht man nun davon aus, dass nach 20 h e i n e Fortschrittskontrolle durchgefiihrt wird, bei der die bereits geleistete Arbeit durch Schraifierung der Balken angedeutet ist, so ka~m man iblgendes daxaus ersehen: - Vorggnge A, B und F sind ordnungsgem/ig ausgefiihrt.
364 -
-
8 Graphen, Bgume, Netze, Netzplgne Vorggtige D und G haben Rfickstgtide. E und I sind bereits weiter gediehen Ms geplant.
Nichts kann jedoch fiber die Auswirkungen der Planabweichungen auf das Gesamtprojekt gesagt werden. Die Vorteile einer solchen Darstellung sind: -
-
-
Die L/inge der Balken steht in Beziehung zur Zeit. Das Diagramm selbst wird zur Aufzeichnung des Arbeitsfortschrittes verwendet. Das Gantt-Schema ist auch ffir Nichtspezialisten sehr intbrmativ; der geplante Arbeitsfortschritt kann jederzeit mit dem erreichten Ergebnis verglichen werden. Ihr Anwendungsbereich ist sehr welt entwickelt.
Die ofMlsichtlichen Schw~chen yon Gantt-Charts sind: - Simultane Struktur- und Zeitplaaung. - Geringe Aussagef'ghigkeit bezfiglich der Reihenfolge bzw. Verknfipfung der Vorg~nge. - Feste Terminierung oiler Vorg~nge, die zu einem Projekt gehOren. - Geringe AnpassungsmOglichkeit an ver~h~derte Bedingungen bei der Projektfiberwachung. - Geringe Aussagef~higkeit bezfiglich der MSglichkeiten zur Verbesserung der Abl~ufe. - Begrenzung der Anzahl der Vorg~hige aus Grfinden der 0bersichtlichkeit. -
Keine MSglichkeit des Einsatzes yon Datenverarbeitungsanlagen.
Der heutige Anwendungsbereich des Ganttschen Planungsbogens liegt nach dem Abschluss einer Netzplaauntersuchung haupts~chlich zur Verdeutlichung der Ergebnisse ffir die Ffihrungskriit%e. (Bisher sind fiber 50 abgeleitete Verfahren wie LESS, PD, RAMPS, SINETIK etc. entwickelt worden.) Zum Zwecke der Darstellung, Analyse und Steuerung werden die zu planenden oder steuernden Komplexe in Elemente zerlegt. Hierbei bedient man sich einer Terminologie, die inzwischen in DIN Normblatt 69900 festgeschrieben ist. So wird die Gesamtheit des zu Planenden Ms Projekt bezeichnet. Dieses wird in zwei Arten yon Elementen zerlegt:
1. Vorg5nge, Ms Projektteile mit zeitlich definierbarem Anfang und Ende (also zeitbeanspruchende Elemente) und 2. Ereignissr als definierte Zust~nde im Projektablauf (also Zeitpunkte).
8.3 Netzpl/ine mit deterministischer Struktur
365
Symbolisch werden diese Elemente in NetzplKtmn durch Pfeile (Kanten) bzw. Kreise (Knoten) dargestellt. Dies kann auf zwei Weisen erfolgen (Darstellungsart): -
Die Vorg~nge werden durch Pfeile und die Ereignisse durch Knoten (Kreise) dargestellt (Pfeildarstellung).
- Die Vorg~nge werden dutch Knoten dargestellt (Kreisdarstellung). In diesem Fall verzichtet man auf eine explizite Darstellung der Ereignisse. Die PMle deuten bei dieser Darstellungsform lediglich die Zusammenh~nge zwischen den VorgSngen an. Ein weiteres Unterscheidungsmerkmal ist die ,, Orientieruny' yon Netzpl~mn: -
-
Beschreibt man die Vorg~nge eines Projektes in Bezug auf Inhalt und Zeitdauer, so ergeben sich die Ereignisse automatisch als Anfangs- bzw. Endzeitpunkte der Vorgs Man spricht in diesem Fall yon ,,vorgangsorientierten Netzpliinen". Sie sind immer dann angebracht, wenn man besonders an den einzelnen ArbeitsgKtlgen (z. B. zu Steuerungszwecken) interessiert ist. Beschreibt oder definiert man dagegen die Ereignisse in ihrem Inhalt, sozusagen als Kontrollpunkte im Projektablauf, so bMben die Vorg~nge, die zu den einzelnen Ereignissen fiihren, im wesentlichen undefiniert, man spricht dann yon ,,ereignisorientierten Netzpliinen", die haupts~chlich zu Kontrollzwecken Anwendung finden. Ereignisorientierte Netzpl~m enthalten i.a. weniger Information als gleieh groge vorgaagsorientierte Netzpl/ine, da die Zahl der im vorgangsorientierten Netzplan beschriebenen Kanten (Pfeile) meist gr6ger ist Ms die Zahl der im ereignisorientierten Netzplan beschriebenen Knoten (Krei-
se).
Im deutsehen Spraehgebraueh hat man die mSgliehen Darstellungs- und Orientierungs0zten zu drei Netzplaatypen kombiniert:
A. Das Voryangspfeilnetz: Dies ist ein vorgangsorientierter Netzplan in Pfeildarstellung.
B. Das Voryangsknotennetz: Dies ist ein vorga~tgsorientierter Netzpla~t in Kreisd0zstellung.
C. Das Ereignisknotennetz: tIierbei handelt es sich um ein ereignisorientiertes Netz in Pfeildarstellung (d. h. die Ereignisse werden ~ls Knoten dargestellt). Die Grundverfahren der Netzplaateetmik bedienen sieh jeweils eines dieser Netzplantypen, und zwar: CPM
: Vorgangspfeilnetze
MPM : Vorgangsknotennetze P E R T
:
Ereignisknotennetze
Heute lassen sieh die folgenden vier" S t @ n (Phasen) der Netzplanteehnik unterseheiden: (Die Grundmethoden umfassten nur die ersten beiden Stufen!)
366
8 Graphen~ Bs
Netze~ Netzpl~ne
1. Die Strukturanalyse Inhalt: Darstellung der Abhs der Vorg~nge auf graphische Weise (Netzplan), tabellarisch oder durch eine Matrix (Inzidenz- oder Adjazenzmatrix). 2. Die Zeitanalyse Inhalt: Bestimmung der friihesten und sp~testen Anfangs- und Endzeiten der einzelnen Vorg~nge, der Gesamtprojektdauer und verschiedener Pufferzeiten. 3. Die Kapazitiitsanalyse (-Optimierung) Inhalt: Sind die zur Durchfiihrung der geplanten Vorg~nge notwendigen Betriebsmittel nicht in ausreichendem Ma~e vorhanden, so entstehen Engp~sse, die zur ErhShung der Gesamtprojektdauer gegeniiber der in der zweiten Stufe errechneten fiihren. Ziel der dritten Stufe ist die Bestimmung der optimalen Reihenfolge der Vorggnge, d.h. der Reihenfolge, in der die Vorg~nge durchzufiihren sind, damit unter Beriicksichtigung der vorhandenen Kapazitgten und der bestehenden technologischen Vorgangsabh~ngigkeiten eine minimale Projektdauer erreicht wird.
4. Kostenanalyse (Optimierung) Inhalt: Bisher wurde angenommen~ dass die Vorgaagszeiten unver~lderbaz" seien. Kann die Dauer der Vorgs (z. B. dutch l~berstunden) verkiirzt wetden (was gewShnlich Kostenkonsequenzen hat), so l~sst sich nicht mehr eine eindeutige Projektdauer berechnen. Man kann jedoch dann in Phase 4 die Vorgaagsdauern ermitteln, die zu der Projektdauer fiihren, bei der die geringsten Gesamtkosten aui%reten. Die Phasen 1 und 2 sind also reine Darstellungs- oder Berechnungsphasen, die Phasen 3 und 40ptimierungsphasen. Im iblgenden sollen die soeben genaanten vier Phasen der Netzplaatechnik daz-gestellt werden. Diese sollen unter Zugrundelegung eines Netzplantypes, n~flich der bei CPM benutzten Vorgaagspfeilnetze, illustriert werden. Fiir die anderen Verfahten gilt Analoges. Hierzu sei auf die Spezialliteratur hingewiesen (siehe z. B. Kiipper et al, 1975; Zimmermann~ 1971).
8.3.2
Strukturplanung
Bei Netzpl~nen haadelt es sich immer um Netzwerke nach Definition 8.19~ wobei die den Pfeilen zugeordneten Gewichte Dauern sind. Wie bereits in Abschnitt 8.1.1 erw~uit, k6nnen Graphen auf verschiedene Weisen dat-gestellt werden. In der Netzplantechnik-vor allem bei Vorgangspfeilnetzen-hat sich neben der graphischen
8.3 Netzpl/ine mit deterministischer Struktur
367
Darstellung als Pfeillisten (hier Vorgaaigslisten) mit Angabe der unmittelbaz vorangehenden Pfeile die Darstellung mit Hilfe yon Adjazenz-Matrizen durchgesetzt. ghe diese drei Darstellungsformen in der in der Netzplantechnik fiblichen Form gezeigt werden, noch einige Bemerkungen zu der in der NPT iiblichen graphischen Darstellung: Bin Netzplan besitzt einen eindeutigen Anfang und ein eindeutiges Ende (Quelle und Senke). Bin Netzplanelement besteht aus einem Vorgang und dessen Anfangs- und gndereignis.
Abbildung 8.11: Netzplanelement
(i, j)
~
Gin Vorgang imam entweder eine eigene Benennung erhalten oder durch das Tupel (i, j) jener beiden Ereignisse bezeichnet werden, zwischen denen er stattfindet, i und j sind ganze positive Zahlen.
Grund'r'egeln 1. Jeder Vorga~lg begimit mit einem Ereignis und endet mit einem nachfolgenden Ereignis. 2. Miissen ein oder mehrere Vorggnge beendet sein, bevor ein weiterer beginnen kann, so enden diese alle im Anfangsereignis des naehfolgenden Vorganges.
J
3. KSnnen mehrere Vorggnge beginnen, nachdem ein vorausgegangener beendet ist, so beginnen diese alle im gndereignis des vorangegangenen Vorganges.
368
8 Graphen, Bgume, Netze, Netzpl/ine
4. Haben zwei Vorggnge gemeinsame Anfangs- und Endereignisse, dann wird die eindeutige Kennzeichnung durch einen Scheinvorgang hergestellt.
Scheinvorgang
i
"iI
,I
\\.
\. \
\\\
Der Scheinvorga~lg stellt keinen realen Vorgang dar; er wird jedoch wie ein normaler Vorgang behandelt, besitzt aber die Zeitdmter N~tll. Er wird gew6hnlich durch einen gestrichelten Pfeil dargestellt. . Enden und beginnen in einem Ereignis mehrere Vorg/i~lge, die r~icht alle voneinaader abh/i~gig sind, wird der richtige Ablauf ebenfalls mit Hilfe von Scheinvorg/i~gen hergestellt. Vier Vorg/i~ge, A, B, C, D, seien gegeben. C kann erst nach Abschluss yon A ~nd B beginnen. D kann nach Abschluss yon B beginnen. Die Darstellung ist dann:
6. Kann ein Vorgang beginnen, bevor der vorhergehende vollstgndig beendet ist, kann der vorhergehende unterteilt werden.
8.3 Netzpl~ne mit deterministischer Struktur
369
7. In einem Netz diirfen keine Schleifen ~uftreten.
/ An einem Beispiel sollen nun die Darstellungsformen illustriert werden: 8.29 Belsplel Abbildung 8.12 zeigt die graphische Daxstellung eines Netzplanes als Vorgangspfeilnetz.
B
k
H
K
A b b i l d u n g 8.12: Vorgangspfeilnetz Die dazugehSrende Vorgangsliste (bier unter Einschluss der Vorgangsdauern) hat dann fblgendes Aussehen:
370
8 Graphen, Bgume, Netze, Netzpl/ine u n m i t t e l b a r vorangehende Vorg~nge (Vorg~hlger)
Vorgang
Vorgangsdauer
A
16
B
6
m
C
8
m
D
24
E
18
F
4
G
6
H
3
I
18
J
6
K
6
L
14
M
12
m
A A B C A, F A, F D E, H E, H G, I, K Vorgangsliste
Stellt m a n den gleichen N e t z p l a n in einer b e w e r t e t e n A d j a z e n z m a t r i x dar, so ergibt sich fblgende Matrix:
A
Vl
V2
V3
V4
V5
Vl
-
16
6
8
.
V2
.
.
.
V3
.
.
.
V4
.
.
.
.
.
V5
.
.
.
.
.
V6
.
.
V7
.
.
.
.
.
V8
.
.
.
.
.
.
V6
.
.
0 .
.
24
4
.
V7
.
6
.
.
.
.
.
.
.
-
-
.
-
-
-
3
18
-
.
. .
V9
.
18
.
V8
6
6 .
.
14 12
V9
I m Unterschied zu der in A b s c h n i t t 8.1.1 gezeigten A d j a z e n z m a t r i x sind hier start der ,,1" die Vorgangsdauern fiir existierende Pfeile eingetragen. D a d u r c h erhalten die Zeilenu n d S p a l t e n s u m m e n auch eine andere B e d e u t u n g Ms bei der eigentlichen Adjazenzmatrix. S t a t t der Nullen sind hier ,,-" eingesetzt worden, u m Scheinvorg/inge durch 0 angeben zu k6nnen. []
8.3.3
Zeitplanung
Die zeitliche Berechnung des Netzplanes erfolgt in drei Stufen: I. Die Errechnung fr/ihester und sp~tester Zeiten fiir jeden Knoten (Ereignis).
8.3 Netzplgne mit deterministischer Struktur
371
2. Die Errechnung frfihester und sp~tester Anfaags- und Endzeiten ffir alle Pfeile (Vorg~nge). 3. Die Errechnung der Puffer und die Bestimmung des kritischen Weges. Zu l
Die Errechnung yon Ereigniszeiten. Die Errechnung der i?iitiestmSglictien Ereigniszeiten FZ,~ entsprictit der Bestimmung 19mgster Wege yore Anfangsknoten (Quelle) zu allen anderen Knoten. Hierzu k6nnte z. B. Algorithmus 8.24 eingesetzt werden. Die friiheste Zeit des Endknotens (Senke) ergibt dann die kiirzestmSgliehe Projektdauer, wenn man mit Null bei der Quelle beginnt. Abbildung 8.13 zeig~ die friihesten Ereigniszeiten fiir den in Abbildung 8.12 gezeig~en Netzplaa. Die spgtesten (spgtestzulgssigen) Ereigniszeiten 16
Abbildung
40
8.13: Netzplan mit friihesten Ereigniszeiten
SZi erhs man, indem man yon der Senke beginnend die ls Wege zu allen Knoten berechnet. Man kann dies dadurch erreichen, class man alle Pfeilbewertungen umdreht und wiederum Algorithmus 8.24 einsetzt. Abbildung 8.14 zeigt die so errechneten spgtesten Ereigniszeiten.
Zu 2 Die Errechnung von ti'iihesten und spitesten Voryangszeiten. Bezeichnet man mit Index i die Anfangsknoten und mit Index j die Endknoten yon Vorggngen, so kann man unter Verwendung der bereits errechneten Ereigniszeiten die Vorgaagszeiten wie tblgt bestimmen:
372
8 Graphen~ Bs
~0~6 ~-"~
Netze~ Netzpl~ne
4 I~1:::-" ~ 3~7-" ~ 14 ~:~
~34
6 ~
A b b i l d u n g 8.14" Netzplan mit spS,testen Ereigniszeiten FriihestmSglicher Beginn:
FAij
FZi
FriihestmSgliches Ende:
FE~5
FZ~ + d,~5
Sps
Beginn:
SA~5
SZ5 - d~5
Sps
Ende:
SE~5
SZ5
Ma~ximal verffigbare Zeit:
SZj - FZ~
Zu 3 Errechnung der Puffer und des kritischen Weges. Unter Pufferzeiten versteht ma~ die Zeitreserve, um die ein Vorga~lg verschoben werden kann bzw. seine Dauer ausgedehnt werden kann, ohne dass der Endtermin des Projektes beeinflusst wird. Man unterscheidet drei Arten yon Pufferzeiten:
A. Gesamtpufferzeit (total float): GP~j
SZj - FZ~ - d~j.
Die Gesamtpufferzeit gibt an, um wieviel sich ein Vorgang bestenfalls verschieben l~sst. Alle Vorg~nge ls des kritischen Weges haben die Gesamtpufferzeit GP 0. B. Freie Pufferzeit (free float): FP~j
FZj - FZ~ - d,~j.
Die Freie Pufferzeit gibt an, um wieviel Zeiteinheiten der Vorgang (i,j) verschoben werden kann, ohne dass der friihestmSgliche Beginn des nachgeordneten Vorga~xges beeinflusst wird.
C. Unabhiingige Pufferzeit (independent float):
8.3 Netzpl/ine mit deterministischer Struktur FZi
~Vorg&nger
8Z i
von (i,j)
FZj
373
SZj
Nachfolger yon (i,j)
A b b i l d u n g 8.15: Puffer im Netzplan UPij
max{0, FZj - SZi - dij }.
Die Unabh/ialgige Pufferzeit gibt den Zeitrauln aal, in deln sich ein Vorgaalg (i, j) verschieben 1/~sst, wenn alle vorgeordneten VorgSnge (h, i) zum sp/~testmSglichen Abschluss enden und alle nachgeordneten Vorg5nge (j, k) zum friihestmSglichen Anfang beginnen sollen. Graphisch lassen sich diese Zusammenhfialge wie folgt darstellen. Abbildung 8.15 veranschaulicht die verschiedenen Puffer.
Kritiseher Pfad
Wenn die maximal fiir einen Vorgang verfiigbare Zeit gleich dessen Dauer ist: SZ5 - FZ~
d,~5
wird der Vorgaa~g als kritisch bezeichnet. Zieht sich eine ununterbrochene Folge von kritischen Vorg/ia~gen vom Beginn bis zum Endereignis des Projektes, wird diese Folge als kritischer Pfad bezeichnet (critical path). Die Verz6gerung eines kritischen Vorganges verlgngert im gMchen Mage die Dauer des gesamten Projektes. Fiir kritische Vorg/inge gilt: FZ~
SZ~; FZj
SZj,
d.h. friihestmSgliche und spgtestmSgliche Zeiten fallen zusammen.
374
8 Graphen, Bgume, Netze, Netzplgne 16
jJ
40
%..... - - . $ -..
j
jJ
0
~
46 --.
$
18
22
~
34'.,~.
34
Abbildung
/ ~ 52
40
8.16: Kritischer Weg im Netzplan
kS
\
GP = 26 FP=O UP=O
GP = 26 FP = 26 UP=O
A b b i l d u n g 8.17: Vorgaagspuffer auf nicht-kritischeni Weg Der kritische Weg des betrachteten Netzplanes ist in Abbildung 8.16 gepunktet
angedeutet. In Abbildung 8.17 sind fiir den nicht-kritischen Weg ~ gen Vorgangspuffer eingetragen.
die jeweili-
Insgesanit stehen auf dieseni Pfad 40 - 14 26 Einheiten fiber die ben6tigten Vorgaagsdauern hinaus zur Verffigung. Vergleicht man dies mit den ausgewiesenen Puffern, so d/iri%e iblgendes klar werden: 1. deder Vorgang auf einem nicht-kritischen Weg weist als Gesamtpuffer den
gesamten Puffer eines Pfades aus. Wenn ein beliebiger Vorgang auf diesem Pfad seinen Gesamtpuffer verbraucht, so werden alle verbleibenden Vorg/inge dieses Pfades kritisch. 2. Die S~rarae der Freien Vorgangspuffer auf diesem Pfad ist gerade gMch der
8.3 Netzpl~ne mit deterministischer Struktur
375
zur Verf/igung stehenden Pfadpufferzeit. Jeder Vorgang kaan also seinen Freien Puffer verbrauchen, ohne den Status der anderen Vorggnge dieses Pfades zu beeinflussen. Allerdings sind diese Puffer nicht sehr sinnvoll auf die einzelnen Vorggnge verteilt. (Ira Beispiel hat der kiirzere Vorgang adle Pufferzeit, der 1/iagere hat eine Pull'erzeit yon Null!). Will man die Vorgangspuffer zum Steuern des Projektablaufes verwenden, empfiehlt es sich deshadb, die zur Verf/igung stehenden Freien Puller simivoll auf die Vorg/iage zu verteilen (siehe Zimmermann, 1971, S. 106 ff.).
8.3.4
Kapazit~itsplanung
Bei den Standardverfadiren der Netzplantechnik werden die Vorgangszeiten unter dem Gesichtspunkt eines wirtschad~lichen Produktionsmitteleinsatzes geschgtzt bzw. errechnet. Die Annahmen fiber die aufzuwendenden Kapazititen werden bei obigen Verfahren nicht in die Berechnungen mit einbezogen. Dies ffihrt daher oft zu unbrauchbaten Ergebnissen, obgleich die funktionellen und zeitlichen Angaben des Netzplanes einwaadfrei sin& Der Netzplan verliert an Aussagekrad%, wenn aufgrund yon Kapazititsmangel T~tigkeiten nicht oder nur verzSgert ausgef~ihrt werden kSnnen. Das ffihrt dazu, dass die im Netzplan errechneten Projektdauern m6glicherweise fadseh, d.h. zu kurz sin& Die VerIAngerung der wirkliehen Projektdauer ist darauf zurfickzuf~hren, dass Vorg~nge, die simultan geplant sind und aus rein technologischen Erw~gungen auch simultan durchgeffihrt werden kSnnen, inlblge knapper Betriebsmittel nacheinander ausgeffihrt werden miissen. Das entspricht der Einffihrung neuer, zusitzlicher Reihenlblgebeschr~nkungen und damit mSglicherweise einer Verl~ngerung eines kritischen Weges. Die Reihenfolge, in der die ursprfinglich simultanen Vorg~nge ablaufen, beeinflusst wesentlich die zu erreichende Projektzeit. Das Problem besteht haupts~chlich daxin, die optimade Reihenlblge der Vorg~nge zu finden, d.h. diejenige Reihenfolge zu bestimmen, die zu der k~irzesten Projektdauer fiihrt. Die Ermittlung optimader oder nadioptimader Reihenfolgen kann auf vier versehiedene Weisen durchgef~hrt werden: a) Dutch Enumeration, d.h. Durchrechnung adler m6glichen Reihenlblgen. b) Dutch verschiedene N~lerungsverfadlren. c) Dutch Entscheidungsbaumverfahren. d) Dutch lineares Progra~nmieren. Die vollst~ndige Enumeration fiihrt gewShnlich zu einem prohibitiven Rechenaulwand und ist daher kaum ads effiziente L6sungsmethode anzusehen. Die LP-Formulierung ffihrt auf eine ganzzahlige Modellformulierung, die mit den entsprechenden
376
8 Graphen, Bgume, Netze, Netzpl/ine
Verfatiren prinzipiel115sbaz" ist. Allerdings ist die Etlizienz hierbei auch noch zu gering, um diesen Ansatz als praktisch verwertbar anzusehen. Wir wollen uns daher auf die beiden mittleren LSsungsanss beschrs
Niiherungsverfahr'en Am iiblichsten ist die Verwendung sogenannter Priorit/itsregeln. Solche Prioritgtsregeln kSnnten z. B. sein: 1. Kleinste Pufferzeit. 2. Kleinste T/itigkeitsdauer. 3. Friihester ,lriihester Anfang'. 4. Friihester ,~spgtester Anfang". 5. Friihestes ,~sp/testes Ende". 6. Kleinste Summe aus maximaler Pufferzeit und Vorgangsdauer. 7. Von augen gesetzte Prioritgtsnummer. Eine mSgliche Vorgehensweise ist: Zun/ichst erfolgt die iibliche Berechnung der ti'iihesten Anfangs- und Endtermine der freien T/itigkeiten, also der Vorg/inge, die kein Betriebsmittel benStigen, bis keine freie Tgtigkeit mehr zu finden ist, die keine gebundene Tgtigkeit, Mso einen der Vorg/inge, die knappe Betriebsmittel benStigen, Ms Vorg/inger hat. Anschliegend wird unter den gebundenen Tgtigkeiten, deren Anfangstermine festliegen, mit Hilfe yon Priorit/tsregeln diejenige T/tigkeit ausgesucht, bei der als n/ichster die freie Kapazit/t eingesetzt werden soll. Nach der Bestimmung des Endtermines fiir diese ,,bevorzugte" T/itigkeit wird die Terminberechnung fiir die freien T/~tigkeiten fortgesetzt, bis alle Vorg/~nge reihenfolgem/~gig festgelegt sind. Mit Hilfe dieses Algorithmus wird der gesamte Netzplan durchgerechnet. Folgendes Beispiel illustriert das Vorgehen: 8.30 Beispiel Abbildung 8.18 zeigt ein Vorgangspfeilnetz mit 15 VorgEngen, von denen sechs ein knappes Betriebsmittel beanspruchen, das nur jeweils bei einem Vorgang eingesetzt werden kann.
Die folgende Tabelle zeigt die Ergebnisse der Zeitanalyse bei Vernachl~ssigung der Betriebsmittelbesctir~nkungen.
8.3 N e t z p l S n e m i t d e t e r m i n i s t i s c h e r
Struktur
8
377
16
OJ
9
B~ ~
12J
23
9
7X
9
29
y
V ::E 9
Abbildung
Vorgang
vi
A B
22
8.18: Netzplan mit Betriebsmittelbeschr/inkungen
vj
Dauer
1
2
8
1
3
9
C
2
4
1
D
3
4
3
E
3
5
F
2
6
G
4
H
4
Betriebsmittel
FAij
SAij
Ges.Puffer
1
0
3
3
-
0
0
0
-
8
ii
3
1
9
9
0
6
1
9
16
7
4
-
8
13
5
5
7
-
12
15
3
6
4
-
12
13
1
I
4
7
8
1
12
12
0
K
6
8
3
-
16
20
4
L
7
9
4
-
20
25
5
M
5
9
7
-
19
22
3
N
6
7
3
1
16
17
1
0
7
8
3
-
20
20
0
P
8
9
6
1
23
23
0
Der kritische W e g l~uft offensichtlichfiber die Vorg~inge B - D - I - O - P und hat eine L&nge yon 29 Einheiten. Wendet m a n nun die oben genannten Prioritgtsregeln (in lexikog~-aphischer Ordnung) an, so ergibt sich der in der folgenden Tabelle gezeigte zeitlicheProjektablauf:
378
8 Graphen, B~ume, Netze, NetzplSne
Vorgang
FAij
FEij
A B C D E F
0 0 8 9 12 8
8 9 9 12 18 12
G
12
19
H
12
16
I
18
26
K
16
19
L
29
32
M N O P
19 26 29 32
26 29 32 38
Die Gfite solcher AnnKherungsl6sungen ist zun~tchst unbekannt. Daher ist es besonders wichtig, Schranken ffir die Projektdauer zu wissen, um durch ihren Vergleich mit einer gefhndenen L6sung etwas fiber deren Gfite aussagen zu k6nnen.
Untere Schranken der Projektdauer ergeben sich aus zwei Bedingungen: 1. Im gfinstigsten Fall k6nnen die T~tigkeiten unter Ausnutzung ihrer Pufferzeiten so verschoben werden, dass keine ~-berschneidung des Betriebsmitteleinsatzes eintritt. 2. Die Projektdauer kann die insgesamt erforderliche Betriebsmittelzeit ffir die knappe Kapazitiit nicht unterschreiten. Die gr6gere der Zeitschranken aus beiden Bedingungen ergibt die untere Schra~ke der Projektdauer. Eine Bem-beitungsfolge, deren Projektdauer die untere Schra~ke erreicht, stellt eine optimale L6sung dar. Dieses Kriterium ist jedoch nur eine hinreichende, aber nicht eine notwendige Optimalit~itsbedingung. Liegt ffir eine Bem-beitungsfolge die Projektdauer fiber der unteren Schranke, so kann z. B. mit HiKe von Branch and Bound-Verfahren versucht werden, eine bessere L6sung zu finden. Ffir unser BeispM ist die ,,unbeschrKnkte Projektdauer" 29 Einheiten und die insgesamt ben6tigte Betriebsmittelzeit 34 Einheiten. Damit liegt die gefundene NSJlerungsl6sung fiber der Schra~ke von 34 Einheiten! []
Anwendung yon Branch and Bound-Verfahren Zur Anwendung kommen k6nnte ein Verfahren der Art, wie es in Abschnitt 5.3.2 beschrieben wurde. Verzweigt werden k6nnte hier nach der Reihenfolgeposition der ,,gebundenen VorgSnge".
8.3 Netzpl~ne mit deterministischer Struktur
379
Terminiert werden kSnnte zum einen aufgrund der schon bestimniten N~herungs15sung mit einer Projektdauer yon 38 ZE oder aufgrund besserer LSsungen, die im Verlauf der Rechnung ermittelt werden. Als Schranke (Bound) kgme eine (relaxierte) Projektdauer in Frage, die man wie iblgt bestimmen kann: Die freien Vorg~hige werden terminiert, sobald die Zeiten ihrer Anfangsereignisse festliegen. Danach wird jeweils eine der in Frage kommenden gebundenen Vorg~nge in die Bearbeitungsfolge aufgenommen und es wird untersucht, ob auf den sich ergebenden Asten des Entscheidungsbaumes eine bessere LSsung Ms die bisher beste zu finden ist. Dazu wird das frfiheste Ende des betreffenden gebundenen Vorgaages bestimmt und die Mindestprojektdauer nach zwei Kriterien berechnet: a) Wird die Kapazit~tsbeschrgnkung fiir die restlichen Vorg~nge aufgehoben, so ergibt sich die Mindestprojektdauer als Summe aus dem friihesten Ende und der Mindestzeit his zum Projektende. b) Berficksichtigt man die Kapazititsbeschr~nkung des Betriebsmittels, so ergibt sich die Mindestprojektdauer (keine Brachzeit) als Summe aus dem friihesten Ende und der fiir die restlichen gebundenen Vorg~nge noah erforderlichen Betriebsmittelzeit. Der grSgere der beiden Werte stellt die auf dem betrachteten Zweig bestenfalls zu erreichende Projektdauer daz'. Liegt dieser Weft nicht unterhalb der oberen Schraake, so wird der Aufbau der Folge abgebrochen und die Untersuchung bei den anderen Zweigen fortgesetzt. Beim Unterschreiten der Schranke wird die Folge welter aufgebaut und nach Hinzunahme eines weiteren Vorganges erneut untersucht, ob eine bessere LSsung gefunden werden kaan. Finder man eine bessere LSsung, deren Projektdauer nicht mit der unteren Schranke zusammenfgllt (sonst optimale LSsung!), so wird die Enumeration mit diesem Wert als neuer oberer Schranke fortgesetzt. Das Verfahren ist beendet, wenn keine Folge mehr aufgebaut werden kann, die eine geringere Projektdauer ergibt. 8.31 Beispiel Abbildung 8.19 zeigt den vollstKndigen Entscheidungsbaum fiir das in Beispiel 8.25 daxgestellte Problem.
380
8 Graphen, Bgume, Netze, Netzpl/ine
N
9
N
0 0
D
/ N
\
\
\
\
\
\
\
A
0 N 0
N/'~=-- t) Da jedoch P ( Z > t) gerade die Wahrscheinlichkeit dafiir ist, dass keine Ankunft im Intervall (0, t) erfolgt, also gleich P0 (t) ist, ergibt sieh
F(t)
1 - Po(t).
Nach (9.5) ist P0 (t) e at im Falle der Poisson-Verteilung, d. h. fiir die Zwischenaa~kunt~szeiten ergibt sich
F(t)
1-e
at, t >_0.
(9.6)
Die Zwischenankunftszeiten eines Poisson-Prozesses sind also exponential verteilt.
9.3.4
Geburts- und Sterbeprozesse
In den Abschnitten 9.3.1 bis 9.3.3 haben wir die Grundstrukturen verschiedener stochastischer Prozesse kennengelernt. Nicht behandelt wurden z. B. Semi-M0zkovProzesse, Erneuerungsprozesse und Zufalls-Pfade (Random-walks). Fiir den yon uns betrachteten Bereich bietet sich als ein Ordnungsratm~en sehr gut das Konzept der Geburts- und Sterbeprozesse (birth-death-processes) an. Hierdurch lassen sich iibrigens auch die meisten elementaren Warteschlangenmodelle beschreiben.
412
9 Theorie der Warteschlangen
Betrachten wir noeh einmal Beispiel 9.9: Die Uberga~lgsmatrix resultierte aus zwei Prozessen: dem Bestellprozess des Hgndlers, der dem Lager neue Kfihlschrgnke zuffihrte, und dem Verkaufsprozess, der den jeweiligen Lagerbestand solange verminderte, wie er noch nicht Null war. Der Zufallsprozess ,,Lagerbewegungen" bzw. die Zufallsvariable ,,Lagerbestand" hatte die Markovsehe VergessenseigensehatZ, fiber die Verteilung der Zufallsprozesse ,,Lagerzugang" bzw. ,,Lagerabga~lg" waren allerdings keinerlei weitere Annahmen gemaeht worden. Bleiben wit bei der Betraehtung des eindimensionalen Falles (hier Lagerbestand): Im Beispiel 9.9 war es durchaus mSglich, dass der Lagerbestand sich yon Tag zu Tag (falls man die Indexmenge als diskret auffasste) oder innerhalb eines bestimmten Zeitintervalles (Indexmenge sterig) um mehrere Kfihlsehrfi~xke gnderte. Bei Geburts- und Sterbeprozessen sehrgnkt man die mSgliehe Zusta~ldsgnderung von Stufe zu Stufe (diskret oder stetig) auf eine Nachbarschaft yon I ein. 9.11 Definition
Sei T C_ R +. {Xt I t E T} sei ein homogener Markov-Prozess mit Zustandsraum S und ()bergangsmatrix P (pij).
{xt It E T} heigt Geburts- und Sterbeprozess, wenn gilt: p~5
0
v(i,j) mit j ~ {i - 1, i, i + 1}
Es sind also nicht zwei oder mehr Geburten bzw. Sterbefglle gMchzeitig mSglich. Einen l~bergang des Zustands yon k auf k + 1 bezeichnet man dann Ms Geburtsfall und einen ()bergang yon k nach k - 1 als Sterbefall. Man beachte, dass die ()bergangswahrscheinlichkeiten yon k nach k + 1, p~,~+l, yon k - 1 nach k, p~ 1,~, etc. nut vom Zusta~d des Systems abh/i~gen und nieht von z. B. der Zeit t. Um einen einfaehen Geburts- und Sterbeprozess - sehon in Hinsieht auf Wartesehla~genprozesse-betrachten zu k6nnen, definieren wir eine Geburtsrate A~ p~,~+l, die die Rate angibt, zu der Geburten erfolgen, wenn das System im Zustand k ist (5 wenn k Elemente im System sind) und eine Sterberate #~ p~,~ 1, die analog definiert ist. Die (;berga~gsmatrix eines Geburts- und Sterbeprozesses hat da~m die folgende Form:
9.3 Einige stochastische Prozesse
413
[i - Ao
Ao
0
0
0
...
0
#i
i - AI - #i
AI
0
0
...
0
0
#2
I-A2-#2
A2
0
...
0
"..
"..
"..
"..
0
0
0
~i
Ai
0
:
:
:
"..
"..
:
:
:
:
:
:
:
P
1-Ai-~i "..
""~
U m die .Umgebmlgs-Einschr~nkung" des Geburts- und Sterbeprozesses (GS-Prozesses) zu berficksichtigen,sind auger den Eigensch~ften einer homogenen M~rkovKette folgende Bedingungen einzuhMten: Befindet sich das System zum Zeitpunkt ftir das Zeitintervall (t, t + h) gelten: - Die Wahrscheinlichkeit
tim
Zustand
k, gilt also Xt
k, so muss
fiir genau eine Geburt
+ o(h)
(9.7)
- Die Wahrscheinlichkeit fiir genau einen Sterbefall
#~h + o(h).
(9.8)
- Die Wahrscheinlichkeit fiir genau Null Geburten 1 - A~h + o(h).
(9.9)
- Die Wahrscheinlichkeit fiir genau Null Sterbef/ille 1 - # ~ h + o(h).
(9.10)
Man sieht, dass dutch (9.7) his (9.10) Mehrfachgeburten oder -sterbefs in dem kleinen Zeitintervall h praktisch ausgeschlossen werden, da sie nur eine Wahrscheinlichkeit der Gr5t~enordnung o(h) haben. Wit wollen nun die Wallrscheinlichkeit P~ (t + h) dafiir berechnen, dass sich zur Zeit (t + h) k Elemente im System befinden. Zur Zeit (t + h) befinden sich k Elemente im System, wenn eine der folgenden voneinander unabhs Entwicklungen (0bergSnge) eintritt: 1. dass zur Zeit t k Elemente im System waren und kein Zustaadswechsel eingetreten ist (keine Geburt, kein Sterbefall). 2. dass zur Zeit t k Elemente im System waren und sowohl eine Geburt als auch ein Sterbefall eingetreten ist. 3. dass sich zur Zeit t (k - 1) Elemente im System befanden und im Intervall (t, t + h) eine Geburt, abet kein Sterbefall stattfa~ld.
414
9 Theorie der Warteschlangen
4. dass sich zur Zeit t (k + i) Elemente im System befanden und im Intervall (t,t + h) ein Sterbefall, aber keine Geburt stattfand. Da diese mSglichen Uberggnge offensichtlich unabhgngig sind und sich gegenseitig ausschliegen, kSnnen wir direkt unter Verwendung yon (9.7) die Wahrscheinlichkeit fib/c Elemente im System zum Zeitpunkt (t + h) angeben. P~(t + h)
P~(t) . [A~h + o(h)] . [#~h + o(h)]
+P~(t).
[1 - A~h+ o(h)]. [1 - # ~ h + o(h)]
@Pk l ( t ) " [Ak l]g@o(h)] 9[l--#k
lh@o(h)] + P~+l(t)" [1 - /~k+lh @ o(h)]. [#k+l h @ o(h)] P~(t). [1 - A~h - #~h + o(h)]
(9.11)
@Pk l(t) " [A]~ -- ]h@o(h)] + P~+l(t)" [#k+l h @ o(h)]
+ o(h),
k _> ].
Ebenso erhglt man
Po(t + h)
Po(t)[] - ~oh + o(h)] +
P1 (~)[#lh
+ o(h),
+
o(h)]
k
o.
(9.12)
Hierbei wurde bereits beriicksichtigt, (lass #o
0 und Ao k 0.
Multipliziert man nun (9.11) und (9.12) aus, subtrahiert P~(t) yon jeder Seite der beiden GMchungen (9.11) und (9.12) und dividiert dutch h, so erhglt man:
P~(t + h) - P~(t) + #k+lPk+l(t) + To(h) ' Po(t + h) - Po(t) h
_ AoPo(t) + # l P l ( t ) + To(h)
k > 1
k
(9.13)
0
(9.14)
Fib" den Grenziibergaag h -~ 0 bilden die linken Seiten yon (9.13) und (9.14) die ersten Ableitungen yon P~ (t) nach t (man erinnere sich, dass h ein kleines Zeitintervall ist). Die jeweils letzten Terme @ gehen gegen Null und wir erhalten:
dP~(t)
d-----~ dPo(t)
d-~-~
(A~ + #~)P~(t) + A~ 1P~ 1(t) + #~+lPk + l(t),
AoPo(t)+ # l P l ( t ) ,
]~
0
k _> 1 (9.15)
(9.15) stellt Differentialgleichungen dar, die das VerhaAen unseres GS-Systems beschreiben und auf die wir im ngchsten Abschnitt zuriickkommen werden.
Abbildung 9.4 symbolisiert die Zusammenhgnge der bisher besprochenen Arten stochastischer Prozesse.
9.4 Die Modellierung yon Warteschlangensystemen
415
Mackov-Prozesse P~j beliebig
f(x)~- vergesslich Oeburts- und Sterbeprozesse PU
0fiirlj-il>0
f (:c)~ vergesslieh Reine Geburtsprozesse #i - 0
Poisson-Prozesse A~
A
Abbildung 9.4: Markov-Prozesse 9.4 9.4.1
Die Modellierung yon Warteschlangensystemen Das System M / M / 1
Wir sind nun soweit, Warteschlangensysteme modellieren zu kSnnen, die im wesentlichen als Geburts- und Sterbeprozesse gesehen werden kSnnen. Hierbei entspricht dem Geburtsprozess offbnsichtlieh der AnkuntZsprozess zu bedienender Elemente im System, d.h. normalerweise an der oder einer der Wactesehlangen. Der Sterbeprozess entsprieht dem Abtbrtigungsprozess der Elemente durch die Bedienungsstatiohen oder Kan/ile. Die Modellierung und Analyse yon Warteschlangensystemen, soweit man sich dazu nieht direkt der Simulation bedient, geschieht gewShnlieh in 5 Schritten:
i. Schr'itt Ableitung von Differenzengleichungen ffir P~ (t).
2. Schritt Bestimmung yon Differential-Diffbrenzen-Gleichungenffir P~ (t). 3. Schritt
Bestimmung
yon L6sungen ffir das zeitabh~ingige Verhalten ffir P~ (t).
416
9 Theorie der Warteschlangen
3. Schritt Bestimmung yon LSsungen und Maigzahlen ffir den station~h'en, d.h. yon der Zeit unabh~higigen Zustand des Systems.
5. Schritt Errechnung yon Kennzahlen. Im allgemeinen ist man primer an den Ergebnissen des 4. Schritts interessiert. Kann man diese ohne eine detaillierte Durchfiihrung des recht komplizierten und rechenaufwendigen 3. Schrittes ermittehi, so schr~nkt man den Aufwaad im 3. Schritt so welt wie m6glich ein, es sei denn, man ist gerade am Verhalten des Systems in Ubergaagsstadien (Anlauf etc.) interessiert. Wit wollen hier das grundss Vorgehen an einem der einfachsten Schlangensysteme illustrieren. Fiir kompliziertere Systeme muss wiederum auf die reichlich zur Verfiigung stehende Spezialliteratur verwiesen werden (z. B. Kleinrock, 1975, 1976; Schassberger, 1973). Das hier betrachtete System M/M/1 wird dutch folgende Eigenschaften charakterisiert: 1. Die Zahl der yore System zu bedienenden Elemente (GrSt~e der Population) ist unendlich (d. h. ihre Ankuni%sverteilung ~h~dert sich nicht in der Zeit oder mit der Anzahl der aagekommenen Elemente). 2. Die Elemente treffen einzeln im System ein. 3. Die Ankiinfte sind Poisson-verteilt mit der Ankunftsrate A. 4. Es besteht eine Waz'teschlange, die in ihrer L~h~genicht beschr~nkt ist. 5. Es herrscht strenge Schlangendisziplin, d.h. die Elemente werden in der gleithen Reihenfolge abgefertigt, in der sie in der Schlange eintreffen. 6. Es besteht eine Bedienungsstation (Engpass, Kanal). 7. Die Abfertigungszeiten sind negativ-exponential verteilt mit der mittleren Abfertigungsrate #.
8. Der Ausstol~ des Systems (abgefertigte Elemente) hat keinen Einfluss auf das Verhalten des Systems (kein Blockieren etc.). Damit entspricht dieses Schlaagensystem im wesentlichen dem schon in Abschnitt 9.3.4 behandelten Geburts- und Sterbeprozess, so dass wir uns der dort schon gewonnenen Einsichten hier bedienen kSnnen:
1. Schritt Ableitungen der Differenzen-Gleichungen fiir P~(t I. Die mSglichen Zustandsiiberg~nge und ihre Wahrscheinlichkeiten wurden bereits in Abschnitt 9.3.4 betrachtet. Unter Zugrundelegung yon (9.7) bis (9.10) ermittelten wir dort bereits die
9.4 Die Modellierung yon Warteschlangensystemen
417
Differenzen-Gleichungen (9.11) und (9.12), die auch hier prinzipiell Gtiltigkeit haben. Man beachte jedoch, dass zwar die Wahrscheinlichkeiten sowohl yore Zustand k des Systems als auch yon der Zeit t abhgngig sind, dass jedoch A und #, die Ankunfts- und Abfertigungsraten als durchschnittliche yore Systemzustand unabh~h~gige Parameter betrachtet werden. Dadurch lassen sich die in (9.11) und (9.12) gegebenen Differenzen-Gleichungen schreiben Ms
P~(t + h) Po(t + h)
P~(t)[1 - )Jr - #hi + P~+l (t) [#h] +Pk l(t)[/~h] + o(h), ~ :> 1 P0(t)[1 - )J~] + Pl(t)[#h] + o(h).
(9.16) (9.17)
2. SchHtt Fiir den Grenziibergang yon h --~ 0 ergibt sich, ausgehend yon (9.16) und (9.17) statt yon (9.15) in Analogie zu Abschnitt 9.3.4:
gtPk (t) dt dPo(t) d--T-
(/~ + #)Pk (t) +/~Pk l(t) + #P~+l(t), ~Po(t) + #Pl(t),
k
k > 1
0
(9.18) (9.19)
Dies sind Differenzen-Gleichungen in k und Differentialgleichungen in t.
3. SchHtt In diesem Fall kSnnen die Ergebnisse Eir den station~'en Zusta~id, die hier als einziges interessieren, auch ohne die Ergebnisse yon Schritt 3 ermittelt werden, der daller fibersprungen werden soll.
3. Schritt Wir sind nun daran interessiert, die Wahrscheinlichkeit P~ zu bestimmen, mit der sich k Elemente dann im System befinden, wenn es den station~'en Zusta~d erreicht hat, d. h. wenn t --+ oe. Existiert eine solche LSsung, daml muss fiir sie die J~nderung yon P,~(t) nach der Zeit Null sein, d.h. dF~(t) 0. dt Setzt man die Ableitungen (9.18) und (9.19) gleich Null, so erh~t man
P/~+I P1
/~ + # P ~ - -~P~ 1, # # -~Po. #
~~ l
(9.20) (9.21)
Diese Differentialgleichungen sind nun zu 15sen. Hierfiir stehen verschiedene MSglichkeiten zur Verfiigung. Da Moment-erzeugende Funktionen und lineare Operatoren, die auch verwendet werden kOmiten, in diesem Buch nicht besprochen wurden, wollen wir die L6sung iterativ bestimmen. Der interessierte Leser sei jedoch auf die Mare vergleichende Gegeniiberstellung dieser drei mSglichen LSsungswege bei Gross und Harris (Gross and Harris, 1974) auf den Seiten 44 bis 51 hingewiesen. Wir folgen hier den genannten Autoren bei der iterativen Bestimmung der LSsung:
418
9 Theorie der Warteschlangen
Direkt aus (9.21) folgt:
etc.
9.12 Satz
Im M/M/1-System ist die Wahrscheinlichkeit Zustand k Eiemente im System befinden
dafiir, dass sich im station/iren
BEWEIS.
Der Beweis soil induktiv geffihrt werden. Ffir P1 und P2 gilt off'ensidltlich, dass die Aussage in Satz 9.12 fiir k und k - 1 gilt. Wir zeigen, dass sie auch fiir k + 1 Gfiltigkeit hat: Setzt m a n in (9.20) die Ausdriieke aus Satz 9.12 flit P~ und P~ 1 ein, so erh~lt m a n p~+~
1+ # #
Po - #
p
(1 -
p> Z k=O
kp
(9.2,5)
420
9 Theorie der Warteschlangen
Es gilt jedoch oo
(9.26) k=O
Da ~ o
~
k=l
P~
~
und da die erste Ableitung yon ~ o
P~ nach p gleich
kp~ 1
k=l
ist, gilt
41/1-p]
~kp~ 1 (1--p)2
dfl
~=1
(9.27)
Benutzt man nun (9.26) und (9.27), so ergibt sich fiir (9.25) 1
N~,
(i - p)p. (i - p)2
N~,
1 -
bzw.
P
p'
P< 1
(9.25a)
ads die erwa~'tete Zadll der Elemente im System. A Schreibt man statt p wiederum ~, so kann man (9.25a) auch schreiben ads
Ns
A A< # # - A~
(9.25b)
B. Erwartete Schlangenliinge
Der Erwartungswert der in der Wox'teschlange wox'tenden Elemente sei mit N w bezeichnet und ist oo
Nw
Z(k
- 1)P~
k=l oo
oo
Z P -ZP k:l x~,
k:l -
(1 -
P0).
Unter Verwendung yon (9.25b) und (9.23) ergibt sich p2
Nw bzw.
1 -p'
(9.28)
9.4 Die Modellierung yon Warteschlangensystemen Nw
#(# _ s
421 (9.28a)
Es gilt ferner ganz allgemein fiir Systeme mit 1 Kanal
Nw
1 #
Ns
C. Erwartete Wartezeiten in System und Schlange 1961 hat Little (Little, 1961) den tblgenden Zusammenhang zwischen der Zahl der im System bzw. der Warteschlange wartenden Kunden und mittleren Wartezeit eines Kunden Ts, (erwartete Zeit eines Kunden im System) und Tw (erwartete Zeit eines Kunden in der Schlange) unter recht geringen Einschrgnkungen bewiesen: T~,
-~-
(9.29)
bzw. ~w
Nw ~
(9.30)
Dieser Zusammenhaag ist Ms ,,Little's Formel" bekaant geworden. Daraus lisst sich direkt miter Verwendung yon (9.25b) bzw. (9.28a) ableiten: T~,
1 #-A
Tw
,(,
bzw.
9.4.2
(9.29a)
A -
~)
(9.30a)
Das System M/M/1/R
Vom System M/M/1 k6nnte man nun in verschiedene Richtungen weitergehen: Maa k6nnte andere Ankunfts- und Abfertigungsverteilungen annehmen, das Vorhandensein mehrerer KanSle, die Verwendung anderer Priorit~tsregeln und schliet~lich Beschr~nkungen beziiglich der Population oder der im System maximal waxtenden Kunden. Wit wollen, um wenigstens zwei verschiedene Systeme sinnvoll gegeniiberstellen zu k6nnen, eine zusitzliche Beschr~nkung beziiglich der im System befindlichen Kunden in das M/M/1 einffihren, und zwar sollen insgesamt maximal R Kunden im System Platz finden.
422
9 Theorie der Warteschlangen
Die Analyse 1/tuff analog zu der in Abschnitt 9.4.1 gezeigten, weshalb wit hier die Ergebnisse bezfiglich des Systems M / M / 1 / / ~ nicht im einzelnen ableiten wollen. In diesem Zusammenhang sei auf die Aufgaben am Ende des Kapitels und auf folgende Referenzen verwiesen, die detaillierte AbMtung der Ergebnisse enthalten: (9.16) und (9.17) gelten oflbnsichtlieh solange, wie die Zahl der Elemente im System K < R ist. In den Differenzengleiehungen des Systems M/M/I tritt jedoeh eine zusgtzliche Situation ein, die das Systemverhalten fiir K _> R charakterisiert: Im Sehritt 4 ergibt sieh dann statt (a) bzw. (a): 1 p
P0
1 pR@l, 1
I{+1
p~
(p7/i)
(p
(1 p)p~ ~ ,
(p 7/ 1)
R+I~
(p
1
(9.31)
1)
(9.32)
1)
Aufgrund yon (9.31) und (9.32) lassen sieh nun in Analogie zu Absehnitt 9.4.1 einige Kennzahlen errechnen, die wir bier nun fiir p 7/1 angeben wollen: Erwartete Zahl der Elernente irn System Es ist
N~,
p[1 - (• + 1)p R + Rp R+I]
(1 --
(9.33)
fiR+l)(1 --fl)
Evwartete Schlangenliinge
Wegen N w
NW
Ns - (1 - p 0 ) ergibt sich hier: p(1 - p~) NS
1 --
(9.34)
pR+l
Little's Formeln (9.27a) und (9.30a) fiir die Wartezeiten gelten wenigstens angenghert auch fiir das System M / M / 1 / R .
9.5
Warteschlangenmodelle
als Entscheidungshilfe
Es wurde bereits erwgtmt, dass Warteschlangenmodelle prim/ir beschreibende Modelle sind. Dies bedeutet selbstverst/indlich nicht, dass sie nicht zur Verbesserung oder Vorbereitung von Entseheidungen eingesetzt werden k6nnen. Im Gegenteih Abgesehen yon Ver6ffbntliehungen wird man wohl kaum Wartesehlaagenmodelle batten, ohne dabei zu f/illende Entseheidungen im Hintergrund zu haben. Eine solche Entscheidungsunterstiitzung findet gewShnlich auf eine der drei folgenden Arten statt:
9.5 Warteschlangenmodelle als Entscheidungshilfe
423
1. Das Modell dient dazu, eine Anzatfl von Fragen im Sinne des ,,Wenn-datm" zu beantworten, und der Entscheidungsfgller tastet sich auf diese Weise an die Systemkonzeption heran, die seinen Vorstellungen nahe genug kommt. 2. In manchen Fgllen ist es m6glich, die Auswirkungen yon Systemgnderungen kostenm/igig zu bewerten. Hierbei ist prim/ia" an die Kosten fiir Wartezeiten, Ausfallzeiten etc. auf der einen Seite und Kosten der Bedienungsstation auf der anderen Seite gedacht. Man kann nun eine Gesamtkostenfunktion formulieren und die S y s t e m p a r a m e t e r (Zahl der Kangle oder Schlangen, mittlere Bedienungsrate etc.) so bestimmen, dass die Gesamtkostenfunktion minimiert wird. 3. In komplexen Systemen, wie z.B. mehrstufigen Produktionsbetrieben, in denen jede Maschine mit den davor wartenden Auftr/igen bereits ein Warteschlangensystem darstellt, ist die analytische Modellierung sehr schwierig oder gar unm6glich. Man benutzt dann oft in heuristischer Weise Ergebnisse, die fiir sehr viel einfachere Systeme im Rahmen der Warteschlangentheorie bewiesen sind oder zu denen m a n durch Simulation gelang~ ist, um die Systemstruktur oder Verhaltensweise zu verbessern. In den meisten Fgllen geschieht dies durch Verwendung verschiedener lokaler Priorit/itsregeln fiir die Bedienungsreihenfolge der in den Schlangen befindlichen Elemente (siehe z.B. Miiller, 1972; Conway et al., 1967). I m tblgenden seien fiir die ersten beiden Arten yon Anwendungen einige Beispiele gegeben:
9.13 Beispiel Herr Dr. Dent sei ein junger Zalmarzt, der sich in einer Universitgtsstadt neu niedergelassen habe und primgr studentische Patienten hat. Er behandelt deshalb auch nicht aufgTund yon Voranmeldungen, sondern in der Reiheniblge, in der die Patienten in seinem mit vier Sesseln ausgestatteten Warteraum eintreffen. Da Dr. Dent sich nach kurzer Zeit ziemlich fiberlastet ffihlt, zieht er in Erwggung, evtl. einen Kollegen mit in die Praxis aufzunehmen und dann allerdings einen weiteren Behandlungsraum schaffen und sein Wartezimmer vergr6gern zu mfissen. Da Dr. Dent w/thrend seines Studiums an einigen OR-Vorlesungen teilgenommen hat, m6chte er sich vor der Entscheidung ffir eine Erweiterung Klarheit fiber seinen jetzigen Systemzustand verschaffen. Er hat dazu fiber eine gewisse Zeit yon der Sprechstundenhilfe Aufschreibungen machen lassen und darauflfin festgestellt, dass die Ankfinfte seiner Patienten Poissonverteilt sind und sich seine Behaaldlungszeiten (er ffihrt keine Kieferchirurgie durch) durch eine Exponential-Verteilung angen/thert beschreiben lassen. Im Schnitt treffen bei ihm ffinf Patienten pro Stunde ein und er kann sechs Patienten in der Stunde durchschnittlich behandeln. Zun/tchst interessiert ihn die durchschnittliche Zahl der Patienten in der Praxis und im Wm'teraum. Er entscheidet sich ffir die Verwendung eines M/M/1-Modelles, da er davon ausgeht (sich dessen jedoch nicht ganz sicher ist), dass Patienten, die ankommen, wenn alle Sessel im Wartezimmer besetzt sind, stehend win-ten, bis sie sich setzen k6nnen. Bekannt ist also: M/M/1
424
9 T h e o r i e der W a r t e s c h l a n g e n Mittlere AnkunRsrate: Mittlere Abfertigungsrate: Verkehrsintensitgt:
A
# p
5/h 6/h 5
Hieraus ergibt sich nach (9.25a): Die erwartete Zahl der Patienten in der Praz'is ist gleich N~,
5/6
5.
1/6
Die mittlere Zahl an Patienten im Wartezimmer wird nach (9.26) oder (9.28b) berechnet:
5--g5
Nw Die mittlere nach (9.30a):
Tw
4!6
Wartezeit sine8 Patienten~ ehe er zur Behazldlung kommt~ betrggt 50 rain.
Es ergibt sich eine Wahrscheinlichkeit daftir, dass ein Patient nicht zu warren hat
(nach (9.23~)) von 1
d.h. 83,3 % seiner Patienten miissen win-ten. Schlieglich ist die Wahrscheinlichkeit dafiir~ dass ein Patient stehen muss~ nach (9.24a)
P(x_> s)
p5
0.402.
Dr. Dent mSchte n u n wissen, wie sich seine Systemkennzahlen gndern, wenn seine Patienten nicht warten, wenn sie im Wa~'tezimmer alle Sessel besetzt finden (also Annalmm
M/M/I/4).
Dafiir ergibt sich nach (9.33)
N~,
1.64
u n d nach (9.34)
Nw
0.92.
Fiir T~, -~- miissen wir bier A dutch A' zungchst aus (9.32)
P~,
A(1 - P~,) substituieren. Dazu errechnen wit
o.11.
Dann ist 1.64 2P&, - 4.45
36.9 rain,
und
Tw
Tw A
20.6 rain.
Schlieglich m6chte Dr. Dent wissen~ wie viele Patienten er dadurch verliert~ dass er nut vier Sessel im Wartezimmer hat u n d Patienten gar nicht erst warren, wenn sie sehen, dass alle Sessel besetzt sind:
9.5 Warteschlangenmodelle als Entscheidungshilfe
425
Diese Zalfl ergibt sich als das Produkt der Wahrscheinlichkeit, dass sich vier Elemente in der Schlange bzw. fiinf in der Praxis befinden mit der mittleren Ankunftsrate, also AP~
5 90.11
0.55 (Patienten pro Stunde).
9.14 Beispiel Ein klassisches Beispiel fiir die zweite Art der Anwendung der Warteschlangentheorie ist eine bei Boeing Anfang der fiinfziger Jahre durchgefiihrte Studie, bei der die kostenoptimale Zahl der BeschMtigten in der Werkzeugausgabe bestimmt werden sollte. Sie wurde 1955 verSffentlicht (Palm and Fetter, 1955). Da sie fiir den Studenten in Deutschland schlecht zugSnglich ist und bier der Platz fiir eine detaillierte Darstellung fehlt, sei sie an einem kleineren fiktiven Beispiel nachempfunden: Eine Maschinenfabrik hat 50 Automaten aufgestellt, die durch Mechaniker gewartet werden sollen. Die Frage ist nun, wie viele Mechaniker zur Wartung eingestellt werden sollen. Es sei A
mittlere Anzahl der Reparaturf'~lle pro Maschine (Reparaturfglle pro h pro Maschine)
#
mittlere Abfertigungsrate (durchschnittlich ausgefiihrte Reparaturen pro h)
tw
Stillstandszeit der Maschinen (h) pro Tag
t~-
Reparaturzeit der Maschinen
tz
Laufzeit der Maschinen
(h) pro Tag
(h) pro Tag
n
Zalll der zu bedienenden Maschinen je Mechaniker
p
Abfertigungszalfl (Verkehrsintensitgt)
k~
Stillstandskosten der Maschine pro h
kl
Lohnkosten des Technikers pro h
Weitere Voraussetzungen
A/#
seien:
I. Die Maschinenausffille sind rein zufgllig, d.h. es bestehen keine f'esten Relationen zwischen der P~eparaturanf~lligkeit und einer bestimmten Maschine; dies kann durchaus angenommen werden, solange es sich um gleichal-tige Maschinen handelt. Wir wollen Poisson-verteilte Maschinenausffille annehmen. 2. Die Repal-atm-zeiten seien exponential-verteilt mit der mittleren Rate yon #. Dies ist meist eine recht realistische Annahme. 3. Die Maschinen werden in der Reihenfblge repal-iert, in der sie ausfallen. Zu bestimmen ist, wie viele Maschinen optimalerweise ein Mechaaiker bedienen sollte. Zugrunde gelegt wird ein Modell der Form M/M/s, bei dem A, # sowie die variablen I(osten pro Einheit Wal-tezeit (k~r~) und pro Zeiteinheit Bedienungskanal (kl) bekannt sind und s so zu bestimmen sei, dass die erwarteten variablen Gesamtkosten minimiert werden, d.h. bier, dass s 9 kz + N w (Nw
9 k~r~ ---* nfin.
sei wie bisher die erwa~-tete Schlangenl~lge.)
426
9 Theorie der Warteschlangen
In diesent Beispiel bilden also die Mechazfiker die Kazt/ile (Engp/isse) und die zu repm-ierenden Maschinen die Warteschlange. Die analytische Bestimmung des optimalen s ginge fiber den Ralmmn dieses Buches hinaus. Jedoch kSnnen wit uns,/~hnlich wie dies in der Boeing-Studie getan wurde, verSffentlichter Tafeln bedienen, die ffir das M / M / s - M o d e l l die optimalen s als Funktion der Verkehrsintensitgt p und des Kostenverh/iltnisses ~ a~tgeben. Folgende Daten seien ermittelt worden: Die Gesamtlaufzeit der Maschinen pro Tag, h, sei 1025 Maschinenstunden und die Gesamtrepm-aturzeit pro Tag betrggt t,71,9 h. Die Personalkosten eines Reparaturschlossers pro h betragen EUR 28,- und die Stillsta~tdskosten einer Maschine pro Stunde seien als EUR 17,70 ermittelt worden. Es gilt nun: A
t,t,- + tl + t w ' #
tl t,- + tl + t w
und daher LP
--. rl
Ffir unser Beispiel ergibt sich also p
0,07 und k~r~/kl
0,632.
Abbildung 9.5 zeigt eine vereinfachte und leicht modifizierte Darstellung aus Palm und Fetter (Paint and Fetter, 1955).
04 0,2 0,1 o
._.G 0106 o
>o
0,04 0,02 0,01
0,02 0,040,060,1
0,2
0,40,6
'
2
4
6 810
20
40 60
O0
Kostenverh<nis kk~n
Abbildung
9.5: Optimale Maschinenzuteilung bei exponentiell verteilten R e p a r a -
turzeiten
Ffir -gTz ~'~ 0,632 und p 0,07 ergibt sich als optimaler Wert, dass ein Mechaadker ungef/~hr 9 bis 10 Maschinen bedienen sollte. Fiir die zu wartenden 50 Maschinen wgren also 5 bis 6 Repax-aturschlosser einzustellen. []
9.6 Aufgaben zu Kapitel 9
9.6
427
A u f g a b e n zu Kapitel 9
1. Nehmen Sie in Beispiel 9.9 axl, dass der H/ialdler am Anfang des Monats drei Kiihlschr/~nke am Lager hat und dass die l~bergangsmatrix (9.3) lautet: 0.07
P
0.10 0.30 /001~00 0.44
0.40 0.10 0.36
0143]
\0.13
0.24
0.43/
0.20
Was gilt dann fiir das Monatsende? 2. Nehmen Sie in Beispiel 9.13 an, dass eine Verkehrsintensitgt yon 4/5 vorliege und dass in seinem Wax'teraum 5 Sessel vorhanden seien. Bereehnen Sie unter diesen Umst/inden alle in Beispiel 9.13 erreehneten Kenngr6gen. 3. Die Autorent PKW-Vermietung hat zu entscheiden, in welcher yon zwei m6glichen Reparaturwerkstgtten ihre Wagen gewartet werden sollen. Sie sch/itzt, dass alle 40 min ein Wagen zur Wartung eintrifft. In der ersten Werkstatt bestehen zwei parallele Wax'tungsstationen, yon denen jede durehsehnittlieh 30 rain pro Wax'tung ben&tigt. In der zweiten Werkstatt besteht eine modernere Wartungsstation mit einer durchschnittlichen Abfertigungszeit yon 15 min pro Wagen. Nehmen Sie an, dass jede Minute, die ein Wagen in der Wartung verbringt, den Gewinn yon Autorent um eine Geldeinheit verringert, gs seien G1 bzw. G2 die Kosten pro Minute Wax'tungszeit in den Werkst/itten I bzw. 2. Bestimmen Sie den Kostenuntersehied G2 - G1, bei dem Autorent bei beiden Werkst/itten gleieh gut bedient wgre. 4. Die gDV-Abteilung einer mittleren Firma hat drei Standleitungen zu einem kommerziellen Rechenzentrum gemietet, in dem sie die meisten ihrer gDVAufgaben erledigen lgsst. Es seien c die Kosten einer Stax~dleitung pro Stunde. Die gDV-Aufgaben fallen naeh einer Poisson-Verteilung mit einem grwartungswert yon 10 an und die L/ialge der Ubertragungszeiten der Aufgaben sei exponentiell mit grwartungswert 15 min verteilt, gs seien nun w die Kosten pro Stunde fiir das Warten eines Mitgliedes der gDV-Abteilung auf eine freie Leitung. Bestimmen Sie fiirc 1 die Werte yon w, die das Mieten yon drei Stax~dleitungen optimal erseheinen lgsst. 5. Bestimmen Sie fiir die in Abschnitt 9.3.4 diskutierten Geburts-Sterbeprozesse die P~ fiir den stationgren Zustand fiir (a)),0 (b) A~
1, ),1 71 fiir k
89 ),2
88 ),~
0,1,2 und A~
0 fiir k _> 3; #1 0 fiir k _> 3;ttl
#2
89 #~ 1
7,tt2
1gk _> 3 1
7,tt3
i
428 9.7
9 Theorie der Warteschlangen Ausgew~ihlte Literatur
zu Kapitel 9
Bhat 1969; Cox asid Smith 1961; Ferschl 1970; Fisz 1973; Gillet 1966; Gross as~d Harris 1974; Karlin 1966; Kleinroek 1975, 1976; Morse 1958; Prabhu 1965; Ruiz-Pala 1967; Saaty 1961; Schassberger 1973; Takacs 1962
LSsungen der Aufgaben Kapitel 2 1.
(a) al ~ a2 >- a3
(b)
k
LSsung
0
a3 ~ al >- a2
0 < A < 6/7
a3 >- al >- a2
6/7
a3 >- al ~ a2
6/7 < A _< 1
a3 >- a2 >- al
(c) a2 >- a l >- a3
(d) ~2 >- ~l >- ~3 (e)
k k O- al >- a3
(4) A wa~lt ~ ( ~ ) (b) Faire Sattelpunkt-LSsung ist: a263 (c) Ein Sattelpunkt des Spiels liegt vor, wenn eine Auszahlung gleichzeitig SpMtenmaximum und Zeilenminimum ist. In diesem Fall ist es bei Ungewissheit tiber die Strategie des jeweiligen Gegenspielers nicht sinnvoll, yon der Sattelpunktstrategie abzuweichen.
3. Der Sattelpunkt ist a33. 4. Es liegt ein Sattelpunkt vor. Das optimMe Strategienpaar ist a263. 5. Die optimalen Strategien lassen sich a m besten durch Lineares Programmieren (s. Abschnitt 3.10) bestimmen. Sie sin& Zeilenspieler {17/46, 20/46, 9/46} Spaltenspieler {7/23, 6/23, 10/23}
430
LSsungen der Aufgaben
Kapitel 3 B1 B2
.
3
K1 K2
2
Ka
11
/(4 bj
B3
0
B4
ai
7
10
17
19 11
9
13
Optimale Gesamttransportstrecke 193 krn
12
9
17
7
49
2. Formulierung als Tra~lsportproblem: B1
B2
B3
ai
A1
5
3
4
20
A2
3
4
3
30
bj
10
20
20
50
Die Optimall6sung lautet: x2
20; x4
z~
150
10; x6
20;
minimiere ~ i ~ j cij 9xij
.
so dass
Z j :cij
ai
Z i zi5
b5
2Cij ~ 0 mit xij -- Menge Erz, die vom Bergwerk i nach Hochofen j zu tra~:sportieren ist. c~j - Kosten pro Tra~tsporttonne von i nach j. ai - Hachstf6rdermenge des Bergwerks i. bj - HSchstverhiittungsmenge des Hochofens j. Matrix-Schreibweise:
431
/Xll~ X12 X21
minimiere (100, 80, 120, 90, 140,150) 9
3:22 X31
lOOO)
X12
so dass
0110
X21
9
X22
0001
X31
(:OlOlOl) 1010
X21 X22
(b) Optimales Transporttableau
E1
H2
ai
1000
500
1500
2000
2000
E2 E3
1000
bj
2000
1000 2500
4500
Die optimalen Transportkosten betragen 460.000. .
(a) Vollstgndiges Endtableau Xl
X2
0
-5
1
xl
1
- 51
Azj
0
0
x3
(bl) b
X3
X4
2~5
1 0
-3 2
1
0
5
(10, 5) T ersetzt durch b
x6
bi
3 1
32 1
0
2
1
25
(10, 6) T.
5
/ ooo! \1ooo/
X12
X31
H1
1500~
2000~
\25oo]
432
Lasungen der Aufgaben A k t u a l i s i e r u n g yon b m i t t e l s B * 1. W i e d e r h e r s t e l l e n d e r p r i m a l e n Zu1/issigkeit rnittels eines d u a l e n Sirnplexschrittes. x~
6;
x~
2;
ZFW ~
26
(b2) Einfiigen d e r V a r i a b l e n xs: A k t u a l i s i e r u n g des a s - S p a l t e n v e k t o r s m i t t e l s B * a5*
Az~
1
0
Also p r i m a l u n d d u a l e n t a r t e t e LSsung, w e i t e r h i n d u a l zulassig. Auflmhrne von 3:5 in o p t - B a s i s rnSglich
.o 5.
5/2;
.o
15/2;
minimiere z so dass
zFw ~
25
8xl +
10x2 +
12x3
EIWEISS
0 , 1 x l + 0,1x2 + 0,2x3 _> 0,15 9 200
MINFETT
0 , 2 x l + 0,2x2 + 0,1x3 _> 0,15 9 200
MAXFETT
0 , 2 x l + 0,2x2 + 0,1x3 _< 0,15 9 200
K O H L E H Y D 0 , 2 x l + 0,3x2 + 0,4x3 _> 0,15 9 200 FUTTER I
xl
F U T T E R II
x2
MENGE
xl +
x2 +
8O 2OO
x3
x j _> xj 6.
0
j
Menge des F u t t e r r n i t t e l s j in DZ
(a) Duales P r o b l e m : rninirniere 3yl - 2y2 + 8y3 - Y4 so dass
-yl
-
Yl -
y2 + 2y3 - y4 _~ --2 Y2 +
>
Y3
y~ _>
1 0
(b) L a s u n g des D u a l e n P r o b l e m s : Yl
Y4
1
Yi
0 sonst
LSsung des P r i r n a l e n P r o b l e m s aus A z i - K r i t e r i u r n xl
1; x2
4; x4
3; x5
2
(c) Prirnaler Sirnplexalgorithrnus Nachteil: E i n f i i h r u n g zweier Hilfsvariablen 2 • 6-Matrix
i
1, . . . , 4
1,...,3
433 Dualer Simplexalgorithmus 2 x 4-Matrix
~o .
21/la
(a) O p t i m a l l S s u n g :
~o x~
lO/la 8; x ~
12; 20
14
(b) D u a l e s P r o b l e m : m a x i m i e r e 32yl - 42y2 + 56y3 so dass
Yl --
2y2 +
4y3
0
y2 u n b e s c h r g n k t D u a l e s P r o b l e m b e s i t z t keine zulgssige LSsung (Hilfsvariable nicht e l i m i e r b a r ) , zugehSriges p r i m a l e s P r o b l e m b e s i t z t u n b e s c h r g n k t e L5sung. 10.
(a) x ~
4;x~
1
ZFW ~
2
(b) D u a l e s P r o b l e m m a x i m i e r e 2 y l -- 4y2 -- 4 y 3 + Y4 SO dass
- - Y l -- 3Y2 +
Yl - @2 +
Y3
>1 +y4_ 0 ZFW ~
i 2
1,...,4
434 11.
LSsungen der Aufgaben ParaJneterintervall
22o
22o
z~
ZFW
keine zulSssige LSsung
- o c < )` < - 5
0
15+3)`
0-24)`
0
75 + 15)`
0+8),
15 - 9)`
0
0
75 - 13)`
20 - 4)`
0
0
- 3 0 + 18)`
80 - 16)`
-5