Hauptinhalt
Komplexitätstheorie (und effiziente Algorithmen)
Wintersemester 2008/2009
| Veranstalter: | Carsten Witt |
| Termine: | Montag | 12:15-13:45 Uhr | OH 14, E 23 |
| | Mittwoch | 12:15-13:45 Uhr | OH 14, E 23 |
| Beginn: | 13. Oktober 2008 |
[
Inhalt] [
Begleitmaterial] [
Vorlesungsfolien]
[
Übungen]
Die Veranstaltung richtet sich an Student(inn)en der
Diplomstudiengänge in Informatik und Angewandter Informatik und
zugleich an Student(inn)en der Masterstudiengänge, dort mit dem
Namen "Komplexitätstheorie" (vgl. Modulhandbuch).
In den Diplomstudiengängen hat diese Vorlesung im Wintersemester
den Schwerpunkt Komplexitätstheorie und im Sommersemester den
Schwerpunkt effiziente Algorithmen. Ein Besuch beider Vorlesungen ist
sinnvoll und für eine Spezialisierung in diesen Bereichen sehr
nützlich.
Wenn wir in der glücklichen Lage sind, einen effizienten Algorithmus
für ein von uns zu lösendes Problem gefunden zu haben, ist eine
naheliegende Frage, ob z. B. dessen Laufzeit noch wesentlich
verbessert werden kann. Kann man zeigen, dass kein Algorithmus für
dieses Problem asymptotisch eine bessere Laufzeit hat? Für viele
praktisch wichtige Probleme sind andererseits bisher überhaupt keine
effizienten Algorithmen bekannt - wie können wir nachweisen, dass
solche Probleme inhärent schwierig sind? Die Vorlesung
Komplexitätstheorie beschäftigt sich mit den aktuell vorhandenen
Möglichkeiten, solche Fragen zu beantworten.
In den Vorlesungen GTI und TIfAI wurde bereits die
NP-Vollständigkeitstheorie als wichtiger Teilbereich der
Komplexitätstheorie vorgestellt. Unter der Annahme, dass P
ungleich NP ist, können wir mit diesem Werkzeug für viele in
der Praxis auftretenden Probleme (bzw. deren Abstraktionen)
nachweisen, dass sie nicht exakt in Polynomialzeit lösbar
sind. Um für Optimierungsprobleme auch die Existenz von
pseudopolynomiellen Algorithmen oder guten Approximationsalgorithmen
ausschließen zu können, werden Erweiterungen der bekannten
Reduktionskonzepte benötigt, die hier in der Vorlesung
vorgestellt werden.
Einen neuen Ansatz zur Untersuchung der Komplexität von Problemen
stellen interaktive Beweissysteme dar, bei denen ein als "Beweiser"
agierender Spieler eine als "Verifiziererin" agierende Partnerin mit
Hilfe eines randomisierten Kommunikationsprotokolls davon überzeugen
soll, Eingaben für ein bestimmtes Problem mit hoher Wahrscheinlichkeit
richtig in Lösungen bzw. Nichtlösungen zu klassifizieren. Die in der
Vorlesung vorgestellten interaktiven Beweissysteme für das
Graphisomorphieproblem liefern ein starkes Argument dafür, warum
dieses bisher nicht effizient lösbare Problem vermutlich nicht
NP-vollständig ist.
Interaktive Beweissysteme stecken auch hinter einer der
revolutionärsten Erfindungen der theoretischen Informatik der letzten
Jahre, der PCP-Theorie (PCP = probabilistically checkable
proof). Diese liefert die Möglichkeit, bezüglich der Güteschranken
viel genauere Nichtapproximierbarkeitsergebnisse zu zeigen, als dies
mit den klassischen Reduktionsmethoden möglich war. In der Vorlesung
werden wir das PCP-Theorem als zentrales Ergebnis dieser Theorie
kennen lernen und dessen Anwendungen diskutieren.
In den Anwendungen spielen randomisierte Suchheuristiken wie
evolutionäre Algorithmen oder Simulated Annealing eine immer
wichtigere Rolle. Diese Algorithmen nutzen nicht die volle Information
über die Eingabe. Die Komplexitätstheorie reagiert auf alle neuen
algorithmischen Entwicklungen und wir stellen eine Theorie vor, die
Probleme darauf untersucht, ob sie mit randomisierten Suchheuristiken
effizient lösbar sind.
Für viele Berechnungsmodelle, z. B. Schaltkreise und eingeschränkte
Turingmaschinen, kann man die Schwierigkeit von Problemen nachweisen,
indem man die zur Verfügung stehende "Hardware" in Teile zerlegt und
argumentiert, dass zur Lösung des Problems viel Kommunikation zwischen
diesen Teilen erforderlich ist. Dies liefert die Motivation für die
Untersuchung von Kommunikationsspielen, bei denen die Teilnehmer
jeweils nur einen Teil der Eingabe besitzen und gemeinsam eine
Funktion auf der Gesamteingabe berechnen sollen, indem sie möglichst
wenig miteinander kommunizieren. Wir behandeln einige wichtige
Beispielprobleme für dieses Modell und wenden die erhaltenen
Ergebnisse zum Nachweis von unteren Schranken an.
rz
Insgesamt ergibt sich ein Einblick in die moderne Komplexitätstheorie
mit überraschend vielen konkreten Ergebnissen, die den Entwurf
effizienter Algorithmen in die richtigen Bahnen lenken.
Die Vorlesung wird sich im Wesentlichen an folgendem Buch orientieren:
Ingo Wegener, "Komplexitätstheorie -- Grenzen der Effizienz von Algorithmen", Springer, 2003.
Geplant ist die Behandlung der Kapitel 7-15.
Vorlesungsfolien: PDF-Datei (Stand 04.02.2009)
- 13.10.2008: Vorstellung, Wiederholung GTI: Turingmaschinen, Ressourcenmessung, Randomisierung und Nichtdeterminismus, randomisierte
Komplexitätsklassen, Rate-Verifikations-Turingmaschinen, NP-Vollständigkeitstheorie, Entscheidungs- versus Optimierungsvarianten,
Reduktionskonzepte Restriktion, lokale Ersetzung, verbundene Komponenten
- 15.10.2008: Wiederholung GTI: Turingreduktion, NP-Äquivalenz,
Problemvarianten und Reduktionen unter den Varianten;
pseudopolynomielle Algorithmen und starke NP-Vollständigkeit,
starke NP-Vollständigkeit von TSP, Definition 3-PARTITION;
Approximationsprobleme: Definition, Güte, Definition
Approximationsalgorithmen, triviale Aproximationsalgorithmen für
CLIQUE, Definition APX, PTAS und FPTAS
- 20.10.2008:
Approximationsalgorithmen: APX-Algorithmen für Vertex Cover,
Max-SAT mit Derandomisierung und Bin-Packing, PTAS für Makespan
Scheduling, FPTAS für Rucksackproblem, Lückentechnik:
Definition Lückenproblem, Anwendung auf TSP, Probleme mit kleinen
Lösungswerten, Nichtexistenz von FPTAS, Nichtapproximierbarkeit
von MIN-GC und MIN-BP, Boosting-Technik für MIN-GC, untere
Schranke für asymptotische Worst-Case-Güte
- 22.10.2008:
PTAS-Reduktionen, Implikationen für APX- und PTAS-Probleme,
Reflexivität und Transitivität der PTAS-Reduktion,
approximationserhaltende Reduktionen an Beispielen, Gegenbeispiel mit
MAX-4-SAT, Klasse NPO, Einschränkung auf NPO-Probleme,
NPO-Vollständigkeit, MAX-W-SAT, NPO-Vollständigkeit von
MAX-W-SAT
- 27.10.2008: Black-Box-Optimierung, Einführung
Black-Box-Algorithmen, Zweipersonen-Nullsummenspiele, Yaos
Minimaxprinzip, untere Schranken für randomsierte Suchverfahren,
Beispiel Needle-in-a-haystack
- 29.10.2008: Black-Box-Optimierung:
Trap-Funktionen, Black-Box-Komplexität unimodaler Funktionen,
Beweis von Satz 9.3.4 bis auf die Argumentation für
Mnah
- 03.11.2008: Beweis der untere Schranke für
Black-Box-Komplexität unimodaler Funktionen beendet,
No-free-Lunch-Theorem, Komplexitätsklassen innerhalb von NP und
co-NP: Klasse NPI, Diskussion von NPI-Problemen, NP vs. co-NP,
Folgerungen daraus
- 05.11.2008: Orakelturingmaschinen,
Orakelklassen P(C) und NP(C), MEC aus NP(NP), Definition der
polynomiellen Hierachie, Inklusionsbeziehungen und Eigenschaften der
Klassen (Lemma 10.4.2), Logikcharakterisierung und Satz von Wrathall
angegeben
- 10.11.2008: Beweis des Satzes von Wrathall (Satz
10.4.3), Implikationen für die polynomielle Hierarchie (Satz
10.4.5 und Folgerung 10.4.6) , SATcirk als
Sigma-k-vollständiges Problem, Definition PSPACE
- 12.11.2008:
Satz von Sipser-Gacs-Lautemann (BPP Teilmenge Sigma2),
weitere Folgerungen, Satz 10.5.6 (NP Teilmenge BPP impliziert NP=RP),
Satz 10.5.5 (Folgerung PH Teilmenge BPP) mit Selbstreduzierbarkeit und
Vertauschungslemma
- 17.11.2008: Relativierte
Komplexitätstheorie, Exkurs Hierarchiesätze, Exkurs zum
universellen Hashing etc., interaktive Beweissysteme, Klasse IP und
IP(k), Einordnung von GI-quer in IP(2) begonnen
- 19.11.2008: letzten Beweis zu Ende gebracht, Quantorenklassen, AM-Protokolle,
Beweis GI-quer in AM begonnen
- 24.11.2008: Beweis GI-quer in AM beendet, Konsequenzen aus NP-Vollständigkeit, Zero-Knowledge-Protokolle: Motivation, Beispiel "magische Tür",
Protokoll für GI, Definition statistische und allgemeine Zero-Knowledge-Eigenschaft
- 26.11.2008: Protokoll mit allgemeiner Zero-Knowledge-Eigenschaft
für HC (Korrektur siehe Folien), Einführung PCP, Def.
randomisierter Beweisverifizierer, PCP-Theorem vorgestellt,
Beweis für abgeschwächtes Resultat angekündigt
- 01.12.2008: NP = PCP(n3,1), Beweisidee vorgestellt,
Details für Beweisverifizierer und Linearitätstest
- 03.12.2008: Beweis von NP = PCP(n3,1) beendet,
Nichtapproximierbarkeitsresultat für MAX-3-SAT bewiesen
- 08.12.2008: Nichtapproximierbarkeit von MAX-CLIQUE, MAX-APX-Vollständigkeit von MAX-3-SAT: Beweis begonnen
- 10.12.2008: MAX-APX-Vollständigkeit von MAX-3-SAT und
Reduktion von MIN-APX auf MAX-APX abschließend bewiesen
- 15.12.2008: Platzkomplexität: Definitionen, Bezug zur Chomsky-Hierarchie, Platz versus Zeit (beachte Korrektur auf Folie 480),
QBF aus PSPACE, WCSL aus PSPACE bewiesen
- 17.12.2008: Abschluss PSPACE-Vollständigkeit, Satz von Savitch, Satz von Immerman/Szelepcsényi, LOGSPACE-Reduktionen
und Vollständigkeit von DSTCON, Klasse #P und vollständige Probleme
- 05.01.2009: Nichuniforme Berechnungsmodelle: Schaltkreise, Simulation
durch (nichtuniforme) TM und zurück, quadratischer Tiefenzuwachs,
Branchingprogramme als alternative nichtuniformes Modell, Verknüpfung
zwischen TM-Platz und Logarithmus der Branchingprogrammgröße,
polynomielle
Schaltkreise für Probleme in BPP
- 07.01.2009: Kommunikationskomplexität: Einführung, Def.
Protokollbaum, Beispiel Medianberechnung, Kommunikationsmatrix,
kombinatorische Rechtecke, Untere-Schranken-Methoden Rechteckmaßmethode,
Anwendung auf EQ und GT, Def. Unterscheidungsmengen und vorige untere Schranken auf diesem Weg
- 14.01.2009: Definition DISJ und IP, Anwendung der Rechteckmaßmtehode
und Unterscheidungsmengenmethode, Rangmethode, verbesserte Schranke für IP
mit Rückgriff auf die Hadamardmatrix, Rechteckreduktionen,
beliebige Partionen der Eingabemenge und balancierte Partionen,
Maskenvarianten,
untere Schranke für MULn-1(a,b) begonnen
- 19.01.2009: Untere Schranke für MULn-1(a,b) beendet, nichtdeterministische und randomisierte
Protokolle, Bezug zu Überdeckungsmaßen
NOR etc., Übertragung von Beweismethoden, Schranken
für die nichtdet. KK von EQ, GT, DIS, IP und MUL
- 21.01.2009: fehlerfreie nichtdeterministische KK,
C(f)=O(CAND(f) * COR(f)), Komplexitätslandschaft
für nichtdet. Protokolle, randomisierte
KK, verschiedene Fehlermodelle, Probability Amplification, Derandomisierung
- 26.01.2009: Randomisierte Protokolle mit öffentlichem
Zufall, Anwendung auf EQ, Simulation durch privaten Zufall (Satz von Newman),
approximierende Protokolle, Zusammenhang zu rand. Protokollen mit
zweiseitigem Fehler über Yaos Minimax-Prinzip
- 28.01.2009: Diskrepanzmethode, Anwendung auf IP, Anwendungen VLSI-Schaltkreise sowie 1-Band- vs- 2-Band-Turingmaschinen
- 02.02.2009: Komplexität boolescher Funktionen: Einführung,
Größe allgemeiner Schaltkreise, Schranke 2n-3 für
Thresholdfunktionen, Tiefe von Schaltkreisen, Bezug zur Formelgröße, Methode von Nechiporuk, Definition ISA
- 04.02.2009: Nechiporuk-Schranke für ISA, Kommunikationskomplexität von Relationen und Tiefe von Schaltkreisen
Übungsgruppen:
| | Zeit: | Ort: | Veranstalter:
|
| Gruppe 1: | Mittwoch, 16.15-17.45 Uhr | OH 14, 304 | Robin Nunkesser/Martin Sauerhoff
|
| Gruppe 2: | Freitag, 12.15-13.45 Uhr | OH 14, 104 | Robin Nunkesser/Martin Sauerhoff
|
Übungsblätter:
- Blatt 1
- Blatt 2
- Blatt 3
- Blatt 4
- Blatt 5
- Blatt 6
- Blatt 7
- Blatt 8
- Blatt 9
- Blatt 10
- Blatt 11
- Blatt 12
- Blatt 13
- Blatt 14
Letzte Änderung am 04.02.2009 von C. Witt