Script zur Vorlesung Komplexitätstheorie - Automaten und Formale ...

theoinf.tu.ilmenau.de

Script zur Vorlesung Komplexitätstheorie - Automaten und Formale ...

Komplexitätstheorie WS 2000/2001 3Beispielaufgabe: Berechne das Maximum von ¾ ½ ¾ Ò , wo anfangs Ò ½ in Ê ¼und ½ Ò in Ë ¼ Ë Ò ½ steht.Falls Ò ¼(leere Folge), soll auch in der Ausgabe Ê ¼ ¼sein.Idee: Durchmustere ¾ ½ ¾ Ò , halte bisheriges MAX in Ë ¼.Konkretes Programm P: Quadratisches Maximum0: Ê ¼ ¼ÓØÓ ¾¿ Schluss jetzt wissen wir: Ò ½1: Ê ¾ ½ Konstante laden2: Ê ¿ ¾ Konstante laden3: Ê ½ Ê ¼ ½ Ò ½4: ´Ê ½ ¼µ ÓØÓ zur Behandlung des Falls Ò ¾5: Ë ¼ Ë ¼ £ Ë ¼ Ò ½, Maximum ist ¾ ½6: ÓØÓ ¾¿ Schluss jetzt wissen wir: Ò ¾7: Ë Ê¼ Ë ¼ ½ nach Ë Ò8: Ê ½ Ê ½ · Ê ¿ Ò ·½9: Ë Ê½ Ë ½ ¾ nach Ë Ò·½10: Ë ¼ ¼¼ reelle Konstante ¼11: Ê ½ Ê ½ · Ê ¾ Ò ·¾Initialisierung des Schleifenzählers.12: Ê ½ Ê ½ Ê ¾ Schleifenbeginn, Zähler dekrementieren13: Ê Ê ½ Ê ¾14: ´Ê ¼µÓØÓ ¾¾ auf Schleifenende ´Ê ½ ½µtesten15 : Ë ½ Ë Ê½ Ë Ê½ holen16: Ë ½ Ë ½ £ Ë ½ Quadrieren17: Ë Ê½ Ë ½ Speichern18: Ë ½ Ë ¼ Ë ½19: ´Ë ½ ¼µ ÓØÓ ½¾ teste ob Maximum sich ändert, falls nein, Rücksprung20: Ë ¼ Ë Ê½ neues Maximum21: ÓØÓ ½¾ Rücksprung22: Ê ¼ ½ Ausgabe in Ë ¼23 : STOP.Natürlich wollen wir hier nicht lernen, wie reelle RAMs zu programmieren sind; dasBeispiel dient nur zur Illustration der Tatsache, dass man Probleme mit reellen Zahlenauf diesem Modell lösen kann. Um zu Programmen für die reelle RAM zu kommen,schreibt man z.B. C-Programme und übersetzt sie mechanisch in RRAM-Programme.Der Zeitaufwand zur Ausführung eines RRAM-Programms P auf einer Eingabe Ü ´ ½ Ò µ ¾ R Ò ist einfach die Anzahl von ausgeführten RRAM-Programmzeilenwährend der Ausführung.


Komplexitätstheorie WS 2000/2001 4Bei unserem Quadrat-Maximum-Programm beträgt die Anzahl der ausgeführtenBefehle:½ ÐÐ×Ò ¼ ÐÐ×Ò ½ÞÛ×Ò ½·ÒÙÒ½ · ½¼Ò ÐÐ× Ò ¾ .Wir können also sagen, die Anzahl der ausgeführten Schritte ist Ç´Òµ , d.h. Òfür eine Konstante und Å´Òµ, d.h. Ò für eine Konstante . Insgesamt: ”lineareLaufzeit” ¢´Òµ. Geschicktere Implementierungen könnten den konstanten Faktorverringern, aber nicht die Tatsache, dass eine lineare Zahl von Schritten nötig ist.Grob kann man sagen: Die Anzahl von Schritten, die die RRAM ausführt, ist proportionalzur Anzahl ausgeführter Maschinenbefehle auf Basis eines klassischen C-Programms. Wir befassen uns ausführlich mit der Frage, wieviele Schritte eine RRAMzum Sortieren von ½ Ò braucht.Definition 1.1:(a) Ein Weg (ohne Unterbrechung) von ¾ R Ò nach ¾ R Ò ist eine stetigeFunktion« ¼ ½℄ R Ò ÑØ «´¼µ «´½µ .Beispiel: Die Funktion «´Øµ · Ø £ ´ µ definiert die gerade Streckevon nach .(b) ÄquivalenzrelationFür Ï R Ò beliebig definieren wir: Ï ¸ ¾ Ï undes existiert ein Weg « von nach ganz in Ï , d.h. Ø ¾ ¼ ½℄ «´Øµ ¾ Ï


Komplexitätstheorie WS 2000/2001 9Wir betrachten noch die Funktion ÐÓ´Òµ È Ò½ÐÓ .Es handelt sich um eine Riemannsche Obersumme zum Integral Ê Ò½ÐÓ ÜÜ.Ê Ò½ÐÒ ÜÜ ÐÒ Ê Ò½ ÐÒ ÜÜ ÐÒ ¡ Ü ¡ ´ÐÒ Ü ½µ℄Ò ½Ò ÐÒ Ò ½ ¡ ÒAlso gilt:ÐÓ ¾´Òµ Ê Ò½ ½ ¡ Ò ÐÒ Ò ½ ¡ Ò ÐÓ Ü ¾ ´ÐÓ µ ¡ Ê Ò¾ ½ÐÓ ÜÜ Ê Ò½ÐÒ ÜÜ ´ÐÓ ¡ ¾ Ü´ÐÒ Ü ½µ℄Ò ½ ½ ¡ ´Ò ÐÒ Ò Òµ. Also macht eine RRAM, die EU löst, mindestens ¼Ò ÐÓ ¾Ò¾¼Ò Schritte.Müsste auch in stetigen Komponenten i, j stetigen Weg definieren.(ai,aj)xj(bi,bj)xiaixi=xjAus der unteren Schranke für ELEMENT UNIQUENESS erhalten wir untere Schrankenfür praktisch wichtige Probleme.


Komplexitätstheorie WS 2000/2001 10Zentrales Konzept: Reduktion von Problem auf Problem .Das heißt: Wir erstellen ein Programm zur Lösung von unter Benutzung eines(Unter-) Programms (einer Wunschprozedur, eines importierten Moduls) für . Wennman auf reduzieren kann, schreibt man mit einem entsprechend markierten Zeichen. Hier interessieren uns Linearzeitreduktionen, mit dem Zeichen Æ .Schematisch sieht eine Linearzeitreduktion aus wie folgt:Programm È für Problem :Eingabe ´ ½ Ò µ ¾ R Ò .Berechne (in Ç´Òµ Schritten) Eingabe ´ ½ Ò µ für Problem , wobei konstant ist.Starte Programm È für auf ´ ½ Ò µ, mit Resultat Ö× È .Berechne (in Ç´Òµ Schritten) eine Ausgabe Ö× für ´ ½ Ò µ, gib diese aus.Definition:Für ein RRAM-Programm È , das Problem auf beliebige Inputs ´ ½ Ò µ löst, seiÌ È ´Òµ ÑÜØ ÈÙ´ ½ Ò µ macht Ø Schritte, ´ ½ Ò µ ¾ R Ò .Dann sei Ì ´Òµ ÑÒÌ È ´Òµ È löst auf Inputs aus R Ò die RRAM-Komplexitätvon Problem für Ò-stellige Inputs. Der folgende Satz erlaubt die Übertragung vonunteren Schranken von auf , falls Ò gilt.Satz 1.3: Zwischen Problemen A und B gelte A Æ B mittels einer Reduktion wie dereben beschriebenen.(a) Dann gilt: Ì ´Òµ Ì ´ ¡ Òµ ·Ç´Òµ.(b) Wenn für eine untere Schranke der Form Ì ´Òµ ¡ Ò ÐÓ Òist, so folgtÌ ´Òµ ¡ Ò ÐÓ Ò Ç´Òµ, für Ò, die Vielfache von sind.Ç´Òµ bekanntBeweis:(a) Wir benutzen in der Reduktion als È ein optimales Programm für , also einesmit Ì È ´Òµ Ì ´Òµ. Damit ergibt sich Ì ´Òµ Ç´Òµ·Ì ´Òµ·Ç´Òµ Ì ´Òµ·Ç´Òµ.(b) Nun ist nach Annahme Ò ÐÓ Ò Ì ´Òµ·Ç´Òµ also mit (a) Ò ÐÓ Ò Ì ´Òµ·Ç´Òµ.Wenn also Ñ Ò ist, gilt:


Komplexitätstheorie WS 2000/2001 11 ¡ Ñ ÐÓ Ñ Ì ´Ñµ ·Ç´Ñµ oder ´ ¡ Ñ ÐÓ Ñ Ì ´Ñµ ·Ç´Ñµ · Ñ ¡ÐÓ Ì ´Ñµ ·Ç´Ñµ. [x]Anmerkung:Da üblicherweise gilt, dass Ì ´Òµ Ì ´Ñµ Ì ´´ ·½µÒµ für Ò Ñ ´ ·½µÒ,gilt in der Situation von (b) Ì ´Ñµ Ñ ÐÓ Ñ Ç´Ñµ im Normalfall für beliebigeÑ; wir werden Satz 1.3 auch stets so benutzen.Satz 1.4:(a) ELEMENT UNIQUENESS Æ SORTIEREN.(b) Sortieren auf der Real RAM braucht Å´Ò ÐÓ Òµ Rechenschritte.Beweis:Algorithmus für EU:Input ´ ½ Ò µ Aufruf eines Programms für SORTIEREN für liefert´ ½ Ò µ .Teste (in Zeit Ç´Òµ)ob ½ Ò .Falls ”Ja” : Output JAFalls ”Nein” : Output NEIN.Es ist klar, dass dieser Algorithmus das korrekte Ergebnis liefert. Nach Satz 1.3 folgt:Ì ËÇÊÌ ÁÊÆ´Òµ ¼Ò ÐÓ Ò Ç´Òµ. (Hier ist ¼ und ½.)Probleme aus der Algorithmischen Geometrie1. Konvexe Hülle von Ò PunktenEingabe: Ô ½ Ô Ò ¾ R ¾Ausgabe: Õ ½ Õ Ñ ¾ R ¾ , Õ ½ Õ Ñ gibt die Punkte der konvexen Hüllevon Ô ½ Ô Ò im Gegenuhrzeigersinn an.


Komplexitätstheorie WS 2000/2001 12Satz 1.5: Jedes Programm für die RRAM, das zu Ò Punkten ihre konvexe Hülle berechnet,benötigt Å´Ò ÐÓ Òµ Schritte.Beweis:Wir zeigen: SORTIEREN Æ KONVEXE HÜLLE (und benutzen Satz 1.3).Algorithmus für SORTIEREN:Input ´ ½ Ò µ , bilde (in O(n) Zeit Ò Punkte im R ¾ ):Ô ½ ´ ½ ¾ ½ µ Ô ¾ ´ ¾ ¾ ¾ µÔ Ò ´ Ò ¾ Ò µ .Uhrzeigersinna2 a4 a1 a3Da die Funktion Ü Ü ¾ konvex ist, liegen alle Punkte Ô ½ Ô Ò in derkonvexen Hülle.Aufruf: KONV HÜLLE ´Ô ½ Ô Ò µ.Resultat: Õ ½ Õ Ò ´ ½ ¾ ½ µ´ Ò ¾ Ò µ .Eventuell zyklisch vertauschen, so dass ½ ÑÒ ½ Ò , dann Ausgabe ´ ½ Ò µ.Dies ist ´ ½ Ò µ in sortierter Reihenfolge.Satz 1.6: Die Berechnung der konvexen Hülle von Ò Punkten im R ¾RAM benötigt Å´Ò ÐÓ Òµ Schritte.auf der RealProblem: TRIANGULATIONEingabe: Ò Punkte ´ ½ ½ µ´ Ò Ò µ ¾ R ¾ .Zeichne Verbindungslinien (liefere Liste aller verbundenen Paare) , so dass aufgespanntesPolygon in Dreiecke zerlegt wird.(hier: (1,2);(2,3);(2,9);(1,9);(3,8);(9,8);(1,5);(5,6);(6,7);(7,4);(8,4);(2,8);(5,2);(2,6);(6,3);(3,7);(7,8))


Komplexitätstheorie WS 2000/2001 13657123849Graphentheorie:Diese Liste besteht aus ¿ ¡ Ò Kanten (planarer Graph).Reduktion: SORTIEREN Æ TRIANGULATIONEingabe: ´ ½ ... , Ò µ ¾ Ê ÒBilde Ò ·½Punkte Ô ½ ´ ½ ¼µ , ... , Ô Ò ´ Ò ¼µ Ô ¼ ´¼ ½µ.yp2 p7 p1 p3 p5 p4 p6xp0Leicht zu sehen: nur eine Triangulation möglich.TRIANGULATION ´Ô ½ Ô Ò µÏ ÙÒ×ÔÖÓÞÙÖ liefert ungerichtetenGraphen auf Ô ¼ Ô ½ Ô Ò als Ò ·½Adjazenzlisten.Streiche Ô ¼ und seine Ò Kanten´Ç´Òµ Zeitµ.Es bleibt: Ein Pfad, der die Ô in sortierter Reihenfolge besucht.Ausgabe: in der Reihenfolge des Weges Ç´Òµ ZeitWissen: SORTIEREN von ´ ½ Ò µ auf reeller RAM : ¼ ¡ Ò ÐÓ Ò Ç´ÒµSatz 1.7: TRIANGULATION für Ò Punkte auf reeller RAM benötigt mindestens ¼ ¡ Ò ÐÓ Ò Ç´Òµ Schritte.


Kapitel 2NP-Vollständigkeit(NTIME, Polynomialzeitreduktion, Satz von Cook , ... )14


Kapitel 3Grundlegende NP-vollständigeProbleme3.1 Reduktionsmethode und 3-SATLemma 3.1.1: Sei Ä Sprache, Ä ¼ ¾ ÆÈ.Falls:(i) Ä ¾ ÆÈ und(ii) Ä ¼ Ô Ä dann ist Ä ¾ ÆÈ.Beweis:zu zeigen: Wenn (ii) gilt, dann ist ÄÆÈ ×ÛÖ.Für Ä ¼¼ ¾ ÆÈ beliebig ist Ä ¼¼ Ô Ä ¼´Ä ¼ ÆÈ Î ÓÐÐ×ØÒµ, Ô ist transitiv.Ä ¼ Ô ÄÄ ¼¼ Ô ÄMethode für Behauptung Ä ¾ ÆÈ : wähle passendes Ä ¼ ¾ ÆÈ, zeige Ä Ä ¼ .Oft: Ä ¼ ¿ ËÌ, in Praxis viele andere.³ ist ¿ ÃÆ ÓÖÑÐ ¸ ³ ×Ø ÃÆ ÓÖÑÐmit ¿ Literalen pro Klausel.¿ ËÌ ³ ³ erfüllbare ¿ ÃÆ ÓÖÑÐ.Satz 3.1.2: 3-SAT ist ÆÈ ÚÓÐÐ×ØÒ.Beweis:(i) ¿ ËÌ ¾ ÆÈ.(ii) Wir zeigen: Es existiert À ¾ È,À ³ ³ÃÆ ÓÖÑг ³¿ ÃÆ ÓÖÑÐ und ³ ¾ ËÌ ¸À´³µ ¾ ¿ ËÌ für alle ÃÆ ÓÖÑÐÒ ³.Aber: Formal falsch, brauche À ¦ £ ¦ £ !!Lemma 3.1.3: Sei ¾ È , ¦ £ ¾ È Ä Ä ¼ ¦ £ (nicht Ä ¼ ¦ £ ),Ü ¾ Ü ¾ Ä ¸ ´Üµ ¾ Ä ¼ .15


Komplexitätstheorie WS 2000/2001 18Alle Zahlen haben Ö ·Ñ Stellen, die den Klauseln bzw. Variablen zugeordnet sind.rm1 23r r+1 r+mC 1C rx 1x m ½Ñ(entspricht Ú´Ü µ½)j ... j ... j i1 2 t0 1 0 0 1 0 ... 0 1 0 0 ... 0 1 0 ... 0wobei: Ü kommt genau in ½ Ø vor.Beispielformel: ³ ´Ü ½ Ü ¾ Ü ¿ µ ´Ü ½ Ü ¾ Ü µ ´Ü ½ Ü ¿ Ü µ separat ½ ½¼½½¼¼¼ (oktal !) ¾ ¼½¼¼½¼¼ ¿ ½¼¼¼¼½¼ ¼½¼¼¼¼½l ...1 l ... l i2s ÑØ ½Ñ(entspricht Ú´Ü µ¼) = 0 1 0 0 1 0 ... 0 1 0 0 ... 0 1 0 ... 0wobei: Ü kommt genau in н Ð× vor. ½ ¼½¼½¼¼¼ ¾ ½¼¼¼½¼¼ ¿ ¼¼½¼¼½¼ ¼¼½¼¼¼½ ”zum Auffüllen”j ½ Ö :0 0 0 0 1 0 ... 0 0 0 0 ... 0 0 0 ... 0 ½ ½¼¼¼¼¼¼ ¾ ¼½¼¼¼¼¼ ¿ ¼¼½¼¼¼¼


Komplexitätstheorie WS 2000/2001 19j... ½ Ö:0 0 0 0 2 0 0 0 0 0 ... 0 0 0 ... 0 ½ ¾¼¼¼¼¼¼ ¾ ¼¾¼¼¼¼¼ ¼¼¾¼¼¼¼ 4 4 4 4 4 4 ... 4 4 4 1 ... 1 1 1 ... 1 [Überlegen: Aus ¿ ½ ½ ½ ½ ist ³ rekonstruierbar]Achtung/Beobachtung: Addieren von beliebigen Elementen aus ½ ½ ½ ½ funktioniert komponentenweise, ohne Stellenüberträge, dies entspricht Vektoraddition.¯ Im ”Variablenteil”: nur 2 Zahlen mit 1 Ziffernposition Ö · ½ Ñ.¯ Im ”Klauselteil”: Ziffernposition : enthält 3 Literale µ ¿ Einsen aus ½ ½ plus ½·¾ ¿ aus , zusammen . [Summe von allen: ¾¾¾¾]Behauptung: ³ ¾3-SAT¸ ´³µ ¾Rucksack* , d.h. Ú Ú´³µ ½ ¸ Auswahl an ½ ½ die sich zu addiert.Beweis: ”µ” Sei Ú´³µ´½, d.h. jede Klauselµ enthält wahres Literal. ÐÐ× Ú´ÜFür ½ Ñ, wähle µ½. ÐÐ× Ú´Ü µ¼ ÐÐ× ¿ ÛÖ ÄØÖÐ Ø Für ½ Ö, wähle ÐÐ× ¾ ÛÖ ÄØÖÐ Ø ÙÒ ÐÐ× ½ ÛÖ× ÄØÖÐ ØSumme aller ausgewählten Zahlenin i-Position: 1in j-Position: # wahrer Literale in ( aus )Beiträge aus gewählten .Also : Summe .Im Beispiel: Ú´Ü ½ µ¼Ú´Ü ¾ µ½Ú´Ü ¿ µ½Ú´Ü µ¼Wir wählen: ½ ¾ ¿ ½ ½ ¾ ¿ ¿, Summe:½½½½.Andere erfüllende Belegng führt zu anderer Auswahl.”´” Sei A Auswahl ( ½ ½ ½ ½ mit Summe . Klar, wegen ´4 4 4 4 4 4 ... 4 4 4 1 ... 1 1 1 ... 1 in ¸ nicht in Setze Ú´Ü µ µ½ ÐÐ× Ò Für ½Ñ Weil ¼ ÐÐ× Ò zur Summe 4 in Position nur ¿ beitragen.1. Fall: in mit Position in ist ½, dann enthält Ü Ú´Ü µ½


Komplexitätstheorie WS 2000/2001 213.2.1 Das Binpacking-ProblemGegeben sind Ò Objekte mit der Größe ½ Ò ¾ N. Verteile diese auf möglichstwenige Bins (Eimer) jewails von der Kapazität .a 3a a 21 2 311 2 41 22 2 4 2 2a a C C C4 5(=5)...Lösung: ³ ½ÒN mit Verteilung È ½Ò³´µ (entspricht È ³ ½´µ , für ¾ N).Wert: Ñܳ´µ ½ ÒZiel: MINIMIERE Wert.Entscheidungsvariable:BINPACKING=´ ½ Ò µ ³ ½Ò½ È ¾ ³ ½´µ Satz 3.2.4: BINPACKING ist NP-vollständig.Beweis:(i) BINPACKING ¾NP : wie üblich ?(ii) Reduktion PARTITION ´ Ô BINPACKING µ´¾ ½ ½µ Ë ÙÒÖ ´ ½ Ò µ , wobei Ë È ½Ò ´ ½ Ò µ Ë ÖBeachte: Ë ungerade µ Ü ¾ PARTITION;´¾ ½ ½µ ¾ BINPACKINGS gerade: Ü ¾ PARTITION¸ ´ ½ Ò Ë ¾µ ¾ BINPACKING (klar).¾[x] Uminterpretation von BINPACKING und PARTITION mit 2 Bins(Schedulingproblem für 2 Prozesse):Gegeben: n Tasks mit bekannten Laufzeiten ½ Ò´Ë È ½Ò µ,kann man diese auf 2 Prozessoren abarbeiten lassen, so dass man in der Zeit˾fertig ist ? Weitere Scheduling Aufgabe mit 1 Prozessor (SEQUENCING WITHINTERVALLS-SWI):


Komplexitätstheorie WS 2000/2001 22Input: Ð ½ Ð Ò Ö ½ Ö Ò ½ Ò (Ð-length; Ö-release; -deadline) charakterisiertÒ Tasks.Task beginnt frühestens Ö , endet spätestens und dauert Ð CPU-Zeit (garantiert Ö Ð ).Sind diese Tasks auf 1 Prozessor ausführbar ?SWI:=´Ð ½ Ð Ò Ö ½ Ö Ò ½ Ò µ × ½ × Ò mit ´× × · Ð µ ½ Ò,disjunkt, × Ö × · Ð .Satz 3.2.5: SWI ist NP-vollständig.Beweis:(i) SWI ¾ NP. (wie üblich)Rate × ½ × Ò ÑÜ ´½ Ò, in Binärdarstellung)(ii) Reduktion PARTITION Ô SWI.Ü ´ ½ Ò µ ;Ë È ´µ´¾ ¼ ½µ ¾ ËÏÁ ÐÐ× Ë ÙÒÖ½Ò ´Üµ ´ ½ Ò ½ ¼ ¼ Ë Ë ·½ Ë ·½ Ë ÐÐ× Ë Ö ¾ ¾Klar: 1 Task ist fixiert auf ( Ë ¾ Ë ¾ ·½). ´ ½ Ò µ in 2 gleichgrosse Teile partitionierbar¸ Ò Tasks in ¼ Ë ¾ ℄ Ë ¾·½Ë·½℄einpassbar. [x]3.2.2 Das Cliquenproblem und VariantenClique Î ¼ Î in Graph ´Î µ: vollständiger Teilgraph, d.h. : ¾ Î ¼ ´ µ ¾ .Grösse: Î ¼ Optimierungsproblem: “Finde Clique maximaler Grösse”CLIQUE ´µ G hat Clique der Grösse ÑØ´µ Ò´µ.Satz 3.3.1: CLIQUE ist NP-vollständig.Beweis:(i) CLIQUE ¾NP.(ii) Wir zeigen 3-SAT Ô CLIQUEBrauchen: (nach Lemma 3.1.3) ³ ³ 3-KNF-Formel ´ µ Graph mit Ñ Knoten, Ñ ½ mit ¾ und ³ erfüllbar¸ ´³µ ¾CLIQUE¸ ³ hat Clique der Grösse ³ , wobei ´³µ ´ ³ , ³ µ.Gegeben: ³ ½Î ÎÖ ´Ð ½ÏоÏп µ mit Ð ½ Ð ¾ Ð ¿ LiteraleDefiniere: ³ ³ !


Komplexitätstheorie WS 2000/2001 23 ³ ´Î ³ ³ µ ³ ÖÎ ³ Ú ½ Ö ½ Ö kann per Ú ´ ½µÖ · Ñؽ¿Öidentifiziert werden. ³ ´Ú Ú ¼ ¼µ ¼ Ð Ð ¼ ¼ sind nicht entgegengesetzte Literale} ´³µ ³ Ò´ ³ µOffensichtlich: ¾ È. Beispiel:³ ´ ½Ï¾Ï¿ µ δ ½Ï¿Ï µ δ ½Ï¿Ï µÎ´½Ï¿Ï µ δ ½Ï¾Ï µ ³ Î ³ hat Ö Spalten a‘ 3 Knoten :__X X X1 1 1__XX1 1__XX__X2 3 332U.S.W.__XXX__XX3 4 4XX4 4Behauptung: ³ erfüllbar ¸ ³ hat Ö-Clique.“µ”Sei Ú Belegung ,Ú´³µ ½. Für jedes ¾½Ö wähle ´µ mit Ú´Ð ´µ µ½.Î ¼ Ú_´µ ½ Ö Î ¼ ÖÎ ¼ ist Clique denn ¼ µÚ´Ð ´µ µ Ú´Ð ¼ ´ ¼ µµ ½ µ Ð ´µ Ð ¼ ´ ¼ µ können nicht gegensätzliche Literale seinµ ´Ú ´µ Ú ¼ ´ ¼ µµ ¾ ³ .“´”Sei Î ¼ Clique in ³ Î ¼ Ö. Keine Kanten in Spalten ¸ Î ¼ hat in Spalte genaueinen Knoten. Definiere:´µ½ ÛÒÒ Belegung Ú´ Ø Ð ÙÖ ÒÒ ÐÕÙÒÒÓØÒ Ú ¾ Î ¼Ø µ¼ ×ÓÒ×ØÏ ÏNun betrachte ´Ð ½ о п µ, wähle j so dass v ¾V’.


Komplexitätstheorie WS 2000/2001 241. Fall: Ð ist eine Variable Ø . Dann Ú´ Ø µ½, also Ú´ µ½.2. Fall: Ð ist negierte Variable Ø . Dann ist für jedes andere Ú ¼ ¼ ¾ Î ¼ ´Ú Ú ¼ µ ¾Ð×Ó Ð ¼ ¼ Ø . Damit folgt Ú´ Ø µ¼, also Ú´ µ½. [x]Verwandte Probleme (mit simplen Reduktionen von CLIQUE):Î ¼ Î heisst unabhängig oder “stabil” falls Ù Ú ¾ Î ¼ ´Ù Úµ ¾ .Ziel: Zu finde möglichst unabhängige Menge in .(IS) INDEPENDENT SET:=´ µ Graph hat unabhängige Menge derGrösse unabhaengig !Satz 3.3.2: IS ist NP-vollständig.Beweis:(i) IS ¾NP (wie üblich)(ii) Wir zeigen: CLIQUE Ô ISTrick: Komplementärgraph von ´Î µ ist definiert als ´Îµ,wo ´Ù Úµ Ù Ú ¾ Î Ù Ú ´Ù Úµ ¾ µÎ ¼ Î Clique in ¸ Î ¼ unabhängig in . ´ µ ´ µ


Komplexitätstheorie WS 2000/2001 25Clique !Klar: ¾ È und ´ µ ¾CLIQUE ¸ ´ µ ¾ ÁË. [x]Bemerkung 3.3.3: IS Ô CLIQUEDieselbe Funktion ´ µ ´ µ ÙÒ CLIQUE.IS und CLIQUE sind ”polynomialzeitisomorph”½´ µ ¾ IS ¸ ´ µ ¾3.2.3 3.4. GraphfärbungenDefinition: Ein Graph ´Î µ heisst -färbbar, falls eine Abbildung Î ½ mit ´Ú Ûµ ¾ µ ´Úµ ´Ûµ existiert eine legale “k-Färbung”.Klar: Statt ½ auch ÊÇÌ Ä ÄÍ Ö oder ¼ ½½Definition:k-COLORING:= ×Ø ÖÖÖ ÖÔCOLORING:=´ µ ½ist -f"arbbarer GraphFakt (Übung):1-COLORING ¾ P (entspricht G hat keine Kanten)2-COLORING ¾ P (Test: ist G bipartitionierbar ?)Satz 3.4.1: 3-COLORING ist NP-vollständig.Folgerung (Übung): ¿ µ -COLORING ¾ NPC und COLORING ¾ NPC.Anwendung: Scheduling mit Konflikten.Î =Menge der Vorlesungen in INF, ET ... in WS ´ ½ ¾ µ Student, der ½ und ¾ besucht.Frage: Reichen Tage um alle Prüfungen konfliktfrei zu veranstalten (nicht: 2 an 1Tag)Verwandt:


Céréales françaises : prix à l’exportation220210200190180• 27315300285270($/t)17016025524022521019518016502/04/1423/04/1416/05/1406/06/1430/06/1421/07/1411/08/1401/09/1422/09/1413/10/1403/11/1425/11/1416/12/1408/01/1529/01/1519/02/1512/03/1502/04/15$/t, FOB02/03/1504/03/1506/03/1510/03/1512/03/1516/03/1518/03/1520/03/1524/03/1526/03/1530/03/1501/04/15207204203192178Blé FCW 1 (Rouen) Orge (Rouen) Maïs (Bordeaux)Blé FCW 2 (Rouen) Blé FCW 3 (Rouen)Source : FranceAgriMer


Mises en œuvre de céréales par les FABblé t.orgemaïs50007/14390,9122,8293,445040008/1409/14417,5455,1105,498,2222,5216,11 000 t35030025020010/14462,690,7264,415010011/14350,673,3291,950012/1401/15359,0327,981,877,8340,6356,7juil-14août-14sept-14oct-14nov-14déc-14janv-15blé t. orge maïsfévr-1502/15281,469,2338,18 m3 0457192 324hyp FAB :Par moisrestant33995344total B, O, M : 9,2dont : orge 1,1 / maïs 3,7 / blé t. 4,4• 28


Komplexitätstheorie WS 2000/2001 31 ´ ¿µKlar: 3- färbbar ¸ ´ ¿µ ¾ COLORING. [x]Behauptung: ³ erfüllbar ¸ ³ hat Hamiltonkreis (HK / HCycle)Beweis:“µ”Sei Ú Belegung, Ú´³µ ½, konstruiere HK !Ausserhalb der À Bauteile : ½ Ö:Ú´ µ½: Kanten des WegesÚ´ µ¼: Kanten des Weges( alle Kanten in ) WeilÚ´ µ ½, ist Ú´Ð µ ½ für ein . 1. Fall: genau einwahres Literal in , oBdAÚ´Ð ½ µ½HKHK lj1 Weg2. Fall: genau 2 wahre Literale in , oBdA Ð ½ , Ð ¾lj1 WegHKlj1 WegHKlj2 Weglj2 Weg


Komplexitätstheorie WS 2000/2001 323. Fall: 3 wahre Literale in lj1 Weglj2 Weglj3 Weg´ µ´ µ½Nun sind alle - Wege für Ú´ µ vollständig, ¼jeder Knoten wird einmal berührt µ HK.“´”Sei à ein HK in . Wie verläuft à in À ? à kann man À 1x / 2x / 3x betreten /verlassen. Falls 1 Besuch:Weg durch Komponenten muss so aussehen:Xlj1 WegoBdA hier EingangmussXWeg durch Komponenten muss so auXXXmussXXXmussXFalls 2 Besuche :Wegabschnitte müssen so aussehen:


Komplexitätstheorie WS 2000/2001 33lj1 WegoBdA hier EingangXXXWegabschnitte muessen so aussehXXXlj2 WegXFalls 3 Besuche:lj1 WegXXXXXXXlj2 Weglj3 WegDurch Zusammensetzen: à verlässt Û auf µ-Wegµ à benutzt komplett diesenWeg, kein Wechsel möglich Ú´ µ ´´½ à ÒÙØÞØ Ï¼ à ÒÙØÞØ ÏµDefiniertBelegung: jedes À wird besucht µ jedes hat ein unter V wahres Literal. [x]HP (Hamilton Path) : genauso, bis auf Unterschied dass Û Ò·½ Û ½ , also Wegstatt Kreis.Satz 3.5.3: HC und HP sind NP-vollständig.


Komplexitätstheorie WS 2000/2001 34Beweis:(i) HC ¾NP. (wie üblich)(ii) DHC Ô HC* (gerichtet DHC)(DHC NP-vollständig nach 3.5.2)Brauche ÖÔ ¼ ¼ ÖÔ ¼ hat DHK ¸ ¼hat HKG:vwG’:vinvwinwvoutwoutentscheidend: HK muss die beiden Innenkanten benutzenKlar: ¾ È.Î ¼ ÎÜÒ ÓÙØ Ë Î ¼ ´Ú Ú Ò µ ´Ú Ú ÓÙØ µ Ú ¾ Î Ë ´Ú ÓÙØ Û Ò µ ´Ú Ûµ ¾ Beispiel:leicht zu verifizieren : DHK in HK in ¼ , für Hamiltonweg genauso.Definition 3.5.4: “Traveling Salesperson Problem” TSPIdee: Zu einem gegebenen Strassennetz mit m Städten finde weg- oder zeitmässig kürzesteRundreise, die alle m Städte berührt.


Komplexitätstheorie WS 2000/2001 35Formal: Problemtyp optimale Struktur. ´Î µÎ ½Ñ ÖÔ N´ÓÖQ·µ Abstandsfunktion,´ µ Finde Permutation ½Ñ ½Ñ ÑØ ´´µ´ · ½µµ ¾ ½ Ñ ´´Ñµ´½µµ ¾ und Ñ´ µ È ½Ñ ´´µ´ · ½µµ · ´´Ñµ´½µµminimal unter allen diesen Summen ´´´µ ´ · ½µµ ´µ´·½µ ´´Ñµ´½µµ ´Ñµ´½µ .Lästig: E. OBdA: Nur vollständige Graphen.Entscheidungsvariante:TSP:=´´ µ ½Ñ µ ¾ N Permutation auf½Ñ mit Ñ´ µ , wobei ´ µ ½Ñ µ ҴѵҴ ½½ µÒ´ ½¾ µ Ò´ ÑÑ µÒ´µ.TSP’:=´´Î µÛµ ´Î µ Graph mitÎ ½ÑÛ N Gewichtsfunktion, ¾ N, es existiert auf½Ñ, passend zu Klar: TSP Ô TSP’ (ergänze Gewichte zur Darstellungdes vollständigen Graphen à Ñ)Aber auch : TSP’ Ô TSP´ µÛ´ µ ´ µ ¾ ´ Û µ ´´ µ ½Ñ µÛÓ ·½ ´ µ ¾ Leicht zu sehen: Rundreise in mit entspricht Rundreise in à Ñbzgl.´ µ mit Kosten .Satz 3.5.5: TSP ist NP-vollständig.Beweis:(i) TSP¾NP. (wie üblich)(ii) Wir zeigen: HC Ô TSP.´½ ´ µ ¾ Reduktionsfunktion ´Î µ ´´ µ ½Ñ ѵÛÓ ¾ ´ µ ¾ Klar: besitzt Hamiltonkreis ¸ Ã Ñ mit ´ µ ½Ñ besitzt Rundreise , mitKosten Ñ´ µ Ñ. [x]Nebenbemerkung: Auch TSP ist Zahlproblem, anders als bei Rucksack, wo nurbetragsmässig kleine Zahlen vorkommen.Definition: Sei ´Î µ Graph. Î ¼ Î heisst Knotenüberdeckung für (alleKanten werden abgedeckt)[VERTEX COVER-VC], falls ´Ù Úµ ¾ Ù ¾ Î ¼ oderÚ ¾ Î ¼ .Beispiel:µ


Komplexitätstheorie WS 2000/2001 36ja:nein:Aufgabe: Suche möglichst kleine Knotenüberdeckung Î ¼ Î !Entscheidungsvariante: VC:=´ µ besitzt Knotenüberdeckung V’ mit Î ¼ µ———————–nicht in Vorlesung————————–Satz 3.3.3: VC ist NP-vollständig.(i) VC ¾NP. (wie üblich)(ii) Wir zeigen IS Ô VC.Lemma 4.7: Sei ´Î ) Graph. Dann gilt: Î ¼ unabhängig ¸ Î Î ¼ ist Knotenüberdeckung.Beweis: Î ¼ nicht unabhängig¸´Ù Úµ ¾ Ù Ú ¾ Î ¼¸´Ù Úµ ¾ Ù Ú ¾ Î Î ¼¸ Î Î ¼ keine Knotenüberdeckung . [x] Damit : Die Abbildung ´ µ ´ Ñ µ ÑØ ´½ÑµÖÙÐÐØ ´ µ ¾ ÁË ¸ ´´ µµ ¾ Î.Also: IS Ô VC. (Auch: VC Ô IS via , wieder Isomorphismus ) [x]——————————————————————3.2.4 HamiltonkreiseDefinition: “Hamiltonkreis, gerichteter HC-Hamiltonian Circuit”Problem: Hat HC ?


Komplexitätstheorie WS 2000/2001 37π(1)π(2)π(n)π(3) ´Î µ Graph, dann: Permutation von½Ñ heisst Hamiltonkreis von ´½Ñµ, falls ´´µ´ ·½µµ ¾ ½ Ò ÙÒ ´´Òµ´½µµ ¾ . ´Î µ gerichteter Graph, dann ... gerichteter Hamiltonkreis ...


Komplexitätstheorie WS 2000/2001 38mit HCohne HCBlattbipartit, ungerade KnotenanzahlSchnittpunktCutSetHC:= Graph , besitzt Hamiltonkreis}DHC:= gerichteter Graph , besitzt Hamiltonkreis}HP:= Graph , besitzt Hamiltonpfad}DHP:= gerichteter Graph , besitzt Hamiltonpfad}Satz 3.5.2: HC und DHC sind NP-vollständig.Beweis:(1) HC, DHC ¾NP (wie üblich, Übung)(2) DHC Ô HC (Übung)(3)Wir zeigen: 3-SAT Ô DHC.Brauchen: ³ ³ ÑØ ³ besitzt erfüllende Belegung v ¸ besitzt HP. (³ ist3-KNF, ³ gerichteter Graph )Gegeben: ³ ½Î ÎÖ Ð ½ÏоÏп Bauteil für :


Komplexitätstheorie WS 2000/2001 39uj1wj1uj2wj2uj3wj36r KnotenFür jede Variable Ü ½ Ñ Ñ ¿Ö Knoten Û .xi 1 Wegxi 1 Wegwim Knoten__xi1 Weg__xi 1 WegInsgesamt: Ö · Ñ Knoten, ¾Ñ ·¿Ö Kanten. Verbindung der ”losen Kanten”: von Û nach Û ·½ (bzw. Û Ò nach Û ½ Òµ führt ein “Ü -Weg” und ein “Ü -Weg”.


Komplexitätstheorie WS 2000/2001 40xi WegGj1Gj2Gj3wiuj1,2wj1,2xi=lj1,2uj2,1wj2,1xi=lj2,1xi=lj3,3wi+1alle Bauteile fuer die Klauseln, in denen xi vorkommtAnalog:__xi WegGk1Gk2Gk3__alle Bauteile fuer Klauseln, in denen xi vorkommtGlobale Sicht:w5w1x1x1Klauselkomponentenx2x1x1w4x2x2x2w2w3Ú´Ü ½ µÚ´Ü ¿ µ½?, sonst ¼.


Komplexitätstheorie WS 2000/2001 41Behauptung: ³ erfüllbar ¸ ³ besitzt HK.Beweis: Sei Ú´³µ ½, Ú Belegung.Ausserhalb der Klauselbauteile:Ú´Ü µ½: Kanten des Ü -Wegs im KreisÚ´Ü µ¼: Kanten des Ü -Wegs im KreisNun sind alle Û eingebaut.Fehlt: Kanten in Komponenten.Betrachte .´½ à ÒØÐØ ÜAber jeweils nur 1. Ú´Ü Ï µ ¼ à ÒØÐØ Ü ÏµJede Klauselkomponente wird von mindestens einem l-Weg mit ڴе ½besucht µ Ú´ µ ½, alsoerfüllt Ú die Formel ³. [x]Satz 3.5.3: HP und DHP sind NP-volständig.Beweis:DHP dieselbe Reduktion nur ... Geleistet: NPC-Baum begonnen.


Komplexitätstheorie WS 2000/2001 42

Weitere Magazine dieses Users
Ähnliche Magazine