ebook img

Komplexitätstheorie: Grenzen der Effizienz von Algorithmen PDF

323 Pages·2003·9.805 MB·German
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Komplexitätstheorie: Grenzen der Effizienz von Algorithmen

Springer-Lehrbuch Springer-Verlag Berlin Heidelberg GmbH Ingo Wegener Komplexitäts theorie Grenzen der Effizienz von Algorithmen Mit 18 Abbildungen Springer Prof. Dr. Ingo Wegener Universität Dortmund Lehrstuhl Informatik 11 44221 Dortmund wegener@[s2.cs.uni-dortmund.de Bibliografische Information Der Deutschen Bibliothek Die Deutsche Bibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über <http://nb.ddb.de> abrufbar. ISBN 978-3-540-00161-4 ISBN 978-3-642-55548-0 (eBook) DOI 10.1007/978-3-642-55548-0 Dieses Werk ist urheberrechtlich geschützt. Die dadurch begründeten Rechte, insbesondere die der Übersetzung, des Nachdrucks, des Vortrags, der Entnahme von Abbildungen und Tabellen, der Funksendung, der Mikroverfilmung oder der Vervielfältigung auf anderen Wegen und der Speicherung in Datenverarbeitungsanlagen bleiben, auch bei nur auszugsweiser Verwertung, vor behalten. Eine Vervielfältigung dieses Werkes oder von Teilen dieses Werkes ist auch im Einzelfall nur in den Grenzen der gesetzlichen Bestimmungen des Urheberrechts gesetzes der Bundesrepublik Deutschland vom 9. September 1965 in der jeweils geltenden Fassung zulässig. Sie ist grundsätzlich vergütungspflichtig. Zuwiderhandlungen unterliegen den Strafbestimmungen des Urheberrechts gesetzes. http://www.springer.de © Springer-Verlag Berlin Heidelberg 2003 Ursprünglich erschienen bei Springer-Verlag Berlin Heidelberg 2003 Die Wiedergabe von Gebrauchsnamen, Handelsnamen, Warenbezeichnungen usw. in diesem Werk berechtigt auch ohne besondere Kennzeichnung nicht zu der Annahme, dass solche Namen im Sinne der Warenzeichen-und Markenschutzgesetzgebung als frei zu betrachten wären und daher von jedermann benutzt werden dürften. Text und Abbildungen wurden mit größter Sorgfalt erarbeitet. Verlag und Autor können jedoch für eventuell verbliebene fehlerhafte Angaben und deren Folgen weder eine juristische Verantwortung noch irgendeine Haftung übernehmen. Satz: Druckreife Aufsichtsvorlagen des Autors Vorwort Spätestens seit der Entwicklung der NP-Vollständigkeitstheorie ist die Kom plexitätstheorie ein zentrales Lehr- und Forschungsgebiet der Informatik. Mit dem NP#P-Problem beinhaltet sie eine der großen intellektuellen Herausfor derungen der Gegenwart. Im Gegensatz zu anderen Gebieten der Informatik, in denen oft suggeriert wird, dass mit Rechnerhilfe nahezu alle Probleme lösbar sind, werden in der Komplexitätstheorie Ergebnisse erzielt, die zeigen, was Rechner nicht können. Die Grenze zwischen effizient und nur mit un vertretbarem Aufwand lösbaren Problemen zu markieren, ist eine praktisch relevante Frage, aber auch die strukturelle Frage, was die Komplexität oder vielleicht sogar deutlicher Kompliziertheit von Problemen ausmacht. Die Entwicklung der Komplexitätstheorie wird in diesem Buch im We sentlichen als Reaktion auf algorithmische Entwicklungen dargestellt. Daher steht die Untersuchung praktisch wichtiger Optimierungsprobleme im Vor dergrund. Aus dieser algorithmisch geprägten Sichtweise stellen sich Reduk tionskonzepte als Methoden dar, um Probleme mit Hilfe von Algorithmen für andere Probleme zu lösen. Daraus ergibt sich im Umkehrschluss, dass wir die Schwierigkeit von Problemen aus der Schwierigkeit anderer Probleme ableiten können. In diesem Buch wird ein unüblicher Zugang zum zentralen Konzept des Nichtdeterminismus gewählt. Die für Studierende eher verwirrende Beschrei bung durch Rechner, die den richtigen Rechenweg raten oder für die ein passender Rechenweg existiert, wird durch eine Einführung in randomisier te Algorithmen ersetzt. Nichtdeterminismus erweist sich als der Spezialfall einseitiger Fehler, bei dem die Fehlerwahrscheinlichkeit größer sein darf, als es in den Anwendungen tolerabel ist. Damit sind nichtdeterministische Al gorithmen auf normalen Rechnern ausführbar, ohne aber ein befriedigendes Verhalten für die Problemlösung zu haben. Es besteht die auf Erfahrungen basierende Hoffnung, dass dieser algorithmische Einstieg es Studierenden er leichtert, das Konzept des Nichtdeterminismus zu begreifen. Da hier keine Forschungsmonographie vorgelegt wird, wurde der Stoff auf Ergebnisse eingeschränkt, die für alle Studierenden der Informatik nützlich und wichtig sind. Das Lehrbuch richtet sich explizit auch an die Studieren den, die sich Grundlagen der Komplexitätstheorie aneignen wollen, ohne sich in diesem Gebiet zu spezialisieren. Daher wurde ein besonderer Wert auf in- \TI \Torvvort formelle Beschreibungen der Bevveisideen gelegt, auf die natürlich vollständi ge Bevveise folgen. Moderne Themen vvie das PCP-Theorem, Approximati onsprobleme, Randomisierung und Kommunikationskomplexität vvurden auf Kosten der strukturellen und abstrakten Komplexitätstheorie in den Mittel punkt gestellt. Die ersten neun Kapitel beschreiben das Fundament der Komplexitäts- theorie. Darauf aufbauend können Lehrende Schvverpunkte ausvvählen: Kapitel 10, 13 und 14 beschreiben einen eher klassisch orientierten Einstieg in die Komplexitätstheorie, Kapitel 11 und 12 beschäftigen sich mit der Komplexität von Approxima tionsproblemen und - Kapitel 14, 15 und 16 mit der Komplexität boolescher Funktionen. In dieses Lehrbuch sind viele Ideen eingeflossen, die sich aus Gesprächen ergeben haben. Da oft nicht mehr nachvollziehbar ist, vvo, wann und mit wem diese Gespräche geführt wurden, möchte ich mich bei allen bedanken, die mit mir über Wissenschaft im Allgemeinen und Komplexitätstheorie im Beson deren diskutiert haben. Beate Bollig, Stefan Droste, Oliver Giel, Thomas Hofmeister, Martin Sauerhoff und Carsten Witt haben mein Manuskript ge lesen und mit kritischen Anmerkungen zu Verbesserungen beigetragen. Dafür möchte ich mich bei ihnen ebenso herzlich bedanken wie bei Alice Czerniejew ski, Danny Rozynski, Marion Scheel, Nicole Skaradzinski und Dirk Sudholt für die sorgfältige Erstellung der Druckvorlage. Die hoffentlich kurze Liste der erst nach Erscheinen des Buches entdeckten Fehler ist unter lS2-www.cs.uni-dortmund.de/monographs/kt zu finden. Schließlich danke ich Christa dafür, dass sie mir keine Grenzen für die Zeit, die ich an dem Buch arbeiten konnte, gesetzt hat. DortmundjBielefeld, Januar 2003 Ingo Wegener Inhaltsverzeichnis 1. Einleitung................................................ 1 1.1 Was ist Komplexitätstheorie? . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.2 Zum didaktischen Hintergrund. . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.3 Überblick.............................................. 7 1.4 Weiterführende Literatur. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 10 2. Algorithmische Probleme und ihre Komplexität .......... 13 2.1 Was sind algorithmische Probleme? . . . . . . . . . . . . . . . . . . . . . .. 13 2.2 Einige wichtige algorithmische Probleme. . . . . . . . . . . . . . . . . .. 15 2.3 Wie wird die Rechenzeit eines Algorithmus gemessen? . . . . .. 20 2.4 Die Komplexität algorithmischer Probleme ................ 25 3. Die grundlegenden Komplexitätsklassen . . . . . . . . . . . . . . . . .. 29 3.1 Die Sonderrolle polynomieller Rechenzeiten . . . . . . . . . . . . . . .. 29 3.2 Randomisierte Algorithmen. . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 31 3.3 Die grundlegenden Komplexitätsklassen für algorithmische Probleme. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 35 3.4 Die grundlegenden Komplexitätsklassen für Entscheidungs- probleme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 40 3.5 Nichtdeterminismus als Spezialfall von Randomisierung ..... 44 4. Reduktionen - algorithmische Beziehungen zwischen Pro- blemen ................................................... 47 4.1 Wann sind sich Probleme algorithmisch ähnlich? ........... 47 4.2 Reduktionen zwischen den verschiedenen Varianten eines Pro- blems . . .... .. .. ...... . . . . .. .. ... .. ... ... .... .... .. .... 50 4.3 Reduktionen zwischen verwandten Problemen. . . . . . . . . . . . .. 53 4.4 Reduktionen zwischen nicht verwandten Problemen. . . . . . . .. 58 4.5 Die Sonderrolle polynomieller Reduktionen ................ 65 5. Die NP-Vollständigkeitstheorie ........................... 69 5.1 Grundlegende Überlegungen. . . . . . . . . . . . . . . . . . . . . . . . . . . .. 69 5.2 Probleme in NP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 73 5.3 Alternative Charakterisierungen von NP. . . . . . . . . . . . . . . . . .. 75 VIII Inhaltsverzeichnis 5.4 Das Theorem von Cook ................................. 77 6. NP-vollständige und NP-äquivalente Probleme ...... . . . .. 83 6.1 Grundlegende Überlegungen. . . . . . . . . . . . . . . . . . . . . . . . . . . .. 83 6.2 Rundreiseprobleme ..................................... 83 6.3 Rucksackprobleme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 84 6.4 Aufteilungsprobleme und Lastverteilungsprobleme . . . . . . . . .. 87 6.5 Cliquenprobleme ....... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 87 6.6 Teambildungsprobleme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 89 6.7 Meisterschaftsprobleme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 91 7. Die Komplexitätsanalyse von Problemen. . . . . . . . . . . . .. . .. 95 7.1 Die Trennlinie zwischen einfachen und schwierigen Varianten eines Problems. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 95 7.2 Pseudopolynomielle Algorithmen und starke NP-Vollständig- keit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 99 7.3 Ein Überblick über die betrachteten NP-Vollständigkeits- beweise ............................................... 102 8. Die Komplexität von Approximationsproblemen - klassi- sche Resultate ............................................ 105 8.1 Komplexitätsklassen .................................... 105 8.2 Approximationsalgorithmen .............................. 109 8.3 Die Lückentechnik ...................................... 113 8.4 Approximationserhaltende Reduktionen ................... 116 8.5 Vollständige Approximationsprobleme ..................... 119 9. Die Komplexität von Black-Box-Problemen ............... 123 9.1 Black-Box-Optimierung ................................. 123 9.2 Das Minimax-Prinzip von Yao ........................... 126 9.3 Untere Schranken für die Black-Box-Komplexität ........... 129 10. Weitere Komplexitätsklassen und Beziehungen zwischen den Komplexitätsklassen ...................................... 135 10.1 Grundlegende Überlegungen ............................. 135 10.2 Die Komplexitätsklassen innerhalb von NP und co-NP ...... 136 10.3 Orakelklassen .......................................... 138 10.4 Die polynomielle Hierarchie .............................. 140 10.5 BPP, NP und die polynomielle Hierarchie ................. 147 11. Interaktive Beweise ....................................... 153 11.1 Grundlegende Überlegungen ............................. 153 11.2 Interaktive Beweissysteme ............................... 154 11.3 Zur Komplexität des Graphenisomorphieproblems .......... 156 11.4 Beweissysteme, die kein Wissen preisgeben ................. 163 Inhaltsverzeichnis IX 12. Das PCP-Theorem und die Komplexität von Approximati- onsproblemen ............................................. 169 12.1 Randomisierte Verifikation von Beweisen .................. 169 12.2 Das PCP-Theorem ..................................... 172 12.3 Das PCP-Theorem und Nichtapproximierbarkeitsresultate ... 182 12.4 Das PCP-Theorem und APX-Vollständigkeit ............... 186 13. Weitere klassische Themen der Komplexitätstheorie ...... 195 13.1 Überblick .............................................. 195 13.2 Speicherplatzbasierte Komplexitätsklassen ................. 196 13.3 PSPACE-vollständige Probleme .......................... 199 13.4 Nichtdeterminismus und Determinismus bei Platzschranken .. 202 13.5 Nichtdeterminismus und Komplementbildung bei präzisen Platzschranken . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203 13.6 Komplexitätsklassen innerhalb von P ..................... 206 13.7 Die Komplexität von Anzahlproblemen .................... 209 14. Die Komplexität von nichtuniformen Problemen .......... 213 14.1 Grundlegende Überlegungen ............................. 213 14.2 Simulationen von Turingmaschinen durch Schaltkreise ....... 216 14.3 Simulationen von Schaltkreisen durch nichtuniforme Turing- maschinen ............................................. 218 14.4 Branchingprogramme und Platzbedarf .................... 222 14.5 Polynomielle Schaltkreise für Probleme in BPP ............. 224 14.6 Komplexitätsklassen für Berechnungen mit Hilfsinformationen 226 14.7 Gibt es polynomielle Schaltkreise für alle Probleme in NP? .. 227 15. Kommunikationskomplexität .............................. 231 15.1 Das Kommunikationsspiel ............................... 231 15.2 Untere Schranken für die Kommunikationskomplexität ...... 236 15.3 Nichtdeterministische Kommunikationsprotokolle ........... 245 15.4 Randomisierte Kommunikationsprotokolle ................. 251 15.5 Kommunikationskomplexität und VLSI-Schaltkreise ......... 260 15.6 Kommunikationskomplexität und die Rechenzeit von Turing- maschinen ............................................. 261 16. Die Komplexität boolescher Funktionen .................. 265 16.1 Grundlegende Überlegungen ............................. 265 16.2 Die Größe von Schaltkreisen ............................. 266 16.3 Die Tiefe von Schaltkreisen .............................. 269 16.4 Die Größe von tiefenbeschränkten Schaltkreisen ............ 274 16.5 Die Größe von tiefenbeschränkten Thresholdschaltkreisen .... 279 16.6 Die Größe von Branchingprogrammen ..................... 282 16.7 Reduktionskonzepte .................................... 286 X Inhaltsverzeichnis Schlussbemerkungen .......................................... 293 A. Anhang ................................................... 295 A.l Größenordnungen und die O-Notation ..................... 295 A.2 Ergebnisse aus der Wahrscheinlichkeitstheorie .............. 299 Literaturverzeichnis .......................................... 311 Sachverzeichnis ............................................... 315

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.