Table Of ContentStephan Zelewski
Komplexitätstheorie
Programm Angewandte Informatik
Herausgeber/Editors
Paul Schmitz
Norbert Szyperski
Wulf Werum/Hans Windauer:
Introduction to PEAR L
Process and Experiment Automation Realtime Language
Joachim Kanngiesser:
Die Abrechnung von ADV-Systemleistungen
Eric. D. Carlson/Wolfgang Metz/Günter Müller/
Ralph H. Sprague/Jimmy A. Sutton:
Display Generation and Management Systems (DGMS)
for Interactive Business Applications
Bernd Rosenstengel/Udo Winand:
Petri-Netze, Eine anwendungsorientierte Einführung
Pau/ Schmitz /Heinz Bons/Rudolf van Megen:
Software-Qualitätssicherung - Testen im Software-Lebenszyklus
Christina Tiedemann:
Kostenrechnung für Rechenzentren
Norbert Szyperski/Margot Eu/-Bischoff:
Interpretative StrukturmodelIierung
Günther Becher:
Datenverarbeitung im Luftverkehr
Gerd Wolfram:
Bürokommunikation und Informationssicherheit
Dieter Eu/er/Ralf Jankowski/Andreas Lenz/
Pau/ Schmitz/Martin Twardy:
Computerunterstützter Unterricht
Stephan Zelewski:
Komplexitätstheorie
Stephan Zelewski
Kom pi exitätstheorie
als Instrument zur Klassifizierung
und Beurteilung von Problemen
des Operations Research
Springer Fachmedien Wiesbaden GmbH
CIP-Titelaufnahme der Deutschen Bibliothek
Zelewski, Stephan:
Komplexitätstheorie: als Instrument zur
Klassifizierung und Beurteilung von
Problemen des Operations Research /
Stephan Zelewski. - Braunschweig;
Wiesbaden: Vieweg, 1989
(Programm Angewandte Informatik)
Das in diesem Buch enthaltene Programm-Material ist mit keiner Verpflichtung oder
Garantie irgendeiner Art verbunden. Der Autor übernimmt infolgedessen keine Ver
antwortung und wird keine daraus folgende oder sonstige Haftung übernehmen, die
auf irgendeine Art aus der Benutzung dieses Programm-Materials oder Teilen davon
entsteht.
Alle Rechte vorbehalten
© Springer Fachmedien Wiesbaden 1989
Ursprünglich erschienen bei Friedr. Vieweg & Sohn Verlagsgesellschaft mbH, Braunschweig 1989
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 unzu
lässig und strafbar. Das gilt insbesondere für Vervielfältigungen,
Übersetzungen, Mikroverfilmungen und die Einspeicherung und
Verarbeitung in elektronischen Systemen.
ISBN 978-3-528-03608-9 ISBN 978-3-663-06863-1 (eBook)
DOI 10.1007/978-3-663-06863-1
Vorwort
Im Rahmen der Komplexitätstheorie wird versucht, die Schwierigkeit von
Problemen durch den Ressourcenverzehr zu messen, der durch die Problem
lösung verursacht wird. Zur Untersuchung dieser Problemschwierigkeit
("Komplexität") werden der Lösungsaufwand für den schlechtest denkmög
lichen Fall (worst case-Analysen) oder der durchschnittlich zu erwartende
Lösungsaufwand (average case-Analysen) betrachtet. Wesentl iche Analyse
konzepte der Komplexitätstheorie stellen Entscheidungsprobleme und
Turing-Automaten dar. Auf ihrer Grundlage lassen sich Komplexitätsklassen
von Problemen bilden. Diese Problemklassen und die ihnen zugehörige Pro
blemschwierigkeit bilden ein Fundament, aus dem Empfehlungen für erfolg
versprechende Lösungsalgorithmen abgeleitet werden können.
Einen Schwerpunkt bildet die Klasse der NP-vollständigen Probleme. Sie
zeichnen sich dadurch aus, daß ihre Lösung einerseits besonders aufwendig
ist. Andererseits besitzen sie für die Bewältigung zahlreicher praktisch inter
essanter Aufgaben aus dem Bereich des Operations Research eine heraus
ragende Rolle. Hierzu gehören beispielsweise die Planung von Transport
routen, das Festlegen von Standorten für Auslieferungslager oder die inner
betriebliche Belegung von Maschinen mit Fertigungsaufträgen. Es werden
neuere Erkenntnisse der Komplexitätstheorie vorgestellt, welche die Klasse
NP-vollständiger Probleme intern differenzieren und über sie hinausführen.
Einschränkungen solcher Analysen werden an hand mehrfacher Validitäts
probleme aufgezeigt.
Die Bedeutung komplexitätstheoretischer Analysen wird aus der Perspektive
des Operations Research an zwei Beispielen konkretisiert. Aktuelle Entwick
lungen auf dem Gebiet der linearen Optimierung verdeutlichen das Spannungs
verhältnis zwischen theoretisch ausgerichteten worst case-Untersuchungen
und praktisch orientierten average case-Untersuchungen. Hierbei werden der
Simplex-Algorithmus einerseits sowie der Khachiyan- und Karmarkar-Algo
rithmus andererseits einander gegenübergestellt. Zweitens wird anhand eines
graphentheoretisch fundierten Problems aus der Petrinetz-Theorie aufgezeigt,
daß komplexitätstheoretische Problemuntersuchungen selbst sehr schwierige
(Meta-)Probleme darstellen können. Ihre Lösung stellt mitunter einen fesseln
den, sich in mühseligen Teilschritten vollziehenden und von kontroversen
Debatten begleiteten Prozeß wissenschaftlicher Erkenntnissuche dar.
Köln, im November 1988 Stephan Zelewski
VI
Inhaltsverzeichnis
seite
Abbildungsverzeichnis 111
1 Einführung in den aufwandsbezogenen
Komplexitätsbegriff 1
2 Konzeptionelle Grundlagen der
Komplexitätstheorie 5
2.1 Rückführung der Komplexitätsbetrach
tungen auf Entscheidungsprobleme 5
2.2 Komplexitätsrelevante Eigenschaften
von Entscheidungsproblemen 11
2.3 Turing-Automaten als allgemeine
Instrumente für die Problemlösung 19
2.4 Die Thesen von Church, Post und Turing 30
2.5 Analysekonzepte der
Komplexitätstheorie 42
2.6 Komplexitätsklassen zur Beur-
teilung des Lösungsaufwands
von Problemen 51
2.6.1 Die Klassen P und NP 51
2.6.1.1 Überblick 51
2.6.1.2 P-komplexe Probleme 53
2.6.1.3 NP-komplexe Probleme 59
2.6.1.4 NP-vollständige Probleme 63
2.6.2 weiterführende
Komplexitätsklassen 74
2.6.2.1 Differenzierungen inner-
halb der Klasse NP 74
2.6.2.2 Probleme außerhalb
der Klasse NP 82
2.7 Validitätsprobleme der
Komplexitätstheorie 94
VII
seite
3 Anwendung der Komplexitätstheorie auf
Probleme des Operations Research 98
3. 1 Überblick 98
3.2 Beispiele 103
3.2.1 Das Erreichbarkeitsproblem
der Petrinetz-Theorie 103
3.2.1.1 Einführung in das Kon-
zept der Petrinetze 103
3.2.1.2 Exemplarische Veran
schaulichung des Er-
reichbarkeitsproblems 112
3.2.1.3 Die allgemeine Lösung des
Erreichbarkeitsproblems 120
3.2.2 Das Problem der linearen
Optimierung 129
Literaturverzeichnis 141
VIII
Abbildungsverzeichnis
seite
Abb. 1: Maschinentafel für einen Turing
Automaten mit 4 Zuständen über
dem Alphabet {O,l,nil} 23
Abb. 2.1: Verhalten des in Abb. 1 (S. 23) durch
seine Maschinentafel beschriebenen
Turing-Automaten für den Start zustand
zl' eine vorgegebene Bandbeschriftung
und ursprüngliche Positionierung des
Schreib-/Lese-Kopfes auf dem zu lesen-
den Symbol "1" (Phasen 1 und 2) 25
Abb. 2.2: Verhalten des in Abb. 1 (S. 23) durch
seine Maschinentafel beschriebenen
Turing-Automaten für den Start zustand
zl' eine vorgegebene Bandbeschriftung
und ursprüngliche Positionierung des
SChreib-/Lese-Kopfes auf dem zu lesen-
den Symbol "1" (Phasen 3 und 4) 26
Abb. 3.1: Netzzustand unter der Markierung M
vor dem Schalten der Transition ti 108
Abb. 3.2: Netzzustand unter der Markierung M'
nach dem Schalten der Transition ti 108
Abb. 4: (Erweiterter) Gozinto-Graph einer
Produktions struktur 113
Abb. 5: Petrinetz für die Produktions
struktur aus der Abb. 4 (S. 113) 114
Abb. 6: Erreichbarkeitsgraph für das
Petrinetz aus der Abb. 5 (S. 114) 119
1
1 Einführung in den aufwandsbezogenen Komplexitäts
begriff
Die Komplexität von Problemen kann - ausgehend von
einer gemeinsamen systemtheoretischen Betrachtungswei
seI) - auf zwei grundsätzlich verschiedenen Ebenen un
tersucht werden. Auf der ersten Ebene wird die struktur
von Systemen analysiert, auf der zweiten dagegen ein
spezieller Aspekt des Systemverhaltens.
Der strukturorientierte Ansatz geht davon aus, daß
Probleme, die es in der Realität zu lösen gilt (Real
probleme), auf Modelle abgebildet werden. Diese Modelle
werden formalsprachlich als Systeme beschrieben (Ideal
oder Formalprobleme). Die Komplexität eines modellier
ten Problems läßt sich durch Größen messen, die auf die
struktur des Systems Bezug nehmen2). Sie stellen Indi
katoren3) zur Operationalisierung eines intuitiven Kom-
1) Vgl. zu abweichenden, hier nicht weiter berührten
Komplexitätskonzepten z.B. Savage (1976), S. 9ff.
2) Vgl. Luhmann (1980), Sp. 1064.
3) Beispielsweise dienen als Indikatoren der Modellkom
plexität: die Anzahl der elementaren Modellkomponen
ten - z.B. die Konstanten und Variablen eines mathe
matischen Modells - (Elemente-Varietät), die Anzahl
und Art der Attribute, die diesen Komponenten je
weils zukommen (Attribute-varietät), die Anzahl und
Art der Relationen, die zwischen diesen Komponenten
definiert sind (Konnektivität), die Anzahl und Art
von übergeordneten Komponenten- (z.B. Variablen mit
charakteristischen Definitionsbereichen) und Rela
tionengruppen (z.B. Relationen unterschiedlicher
Stelligkeit oder Funktionen verschiedenen Grades)
oder die Anzahl und Art möglicher Systemzustände
(Variabilität). Neben die Deskriptoren "Anzahl" und
"Art" können auch die Unschärfe, Unvollständigkeit
oder Widersprüchlichkeit der vorgenannten System
aspekte als Komplexitätsindikatoren treten. Vgl.
hierzu Ulrich (1970), S. 116f.; Beensen (1971), S.
11f.; Kawamura (1977), S. 347; Pfohl (1977), S. 254;
Kirsch (1978), S. 142f.; Luhmann (1980), Sp. 1065;
Szyperski (1983), S. 4f.; Ernst (1984), S. 16.