Komplexitatstheoretische Zwischenbetrachtungen: Klassen & eine Hierarchic

Ähnliche Dokumente
Approximationsalgorithmen

Approximationsalgorithmen

Approximationsalgorithmen: Klassiker I. Kombinatorische Optimierung Absolute Gütegarantie Graph-Coloring Clique Relative Gütegarantie Scheduling

Approximations-Algorithmen

Entscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen?

NP-Vollständigkeit. Krautgartner Martin ( ) Markgraf Waldomir ( ) Rattensberger Martin ( ) Rieder Caroline ( )

4 Greedy-Algorithmen (gierige Algorithmen)

Algorithmen II Vorlesung am

Die Komplexitätsklassen P und NP

Heuristiken im Kontext von Scheduling

1 Einführung Zwei Beispiele (MIN JOB SCHEDULING und MAXCUT) Notationen und Definitionen Übungsaufgaben...

Literatur. Dominating Set (DS) Dominating Sets in Sensornetzen. Problem Minimum Dominating Set (MDS)

Das Dilemma des Einbrechers Wer die Wahl hat, hat die Qual!

3.1 Konstruktion von minimalen Spannbäumen Es gibt zwei Prinzipien für die Konstruktion von minimalen Spannbäumen (Tarjan): blaue Regel rote Regel

Steinerbäume. Seminarausarbeitung Hochschule Aalen Fakultät für Elektronik und Informatik Studiengang Informatik Schwerpunkt Software Engineering

Das Lastverteilungsproblem

S=[n] Menge von Veranstaltungen J S kompatibel mit maximaler Größe J

Universität Koblenz-Landau, Abteilung Koblenz FB 4 Informatik. Seminar Entscheidungsverfahren für logische Theorien. Endliche Modelle.

Abschnitt: Algorithmendesign und Laufzeitanalyse

Das Briefträgerproblem

Theoretische Informatik II

Komplexität und Komplexitätsklassen

3. Das Auslastungsspiel

Die Verbindung von Linearer Programmierung und Graphentheorie

Einführung. Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Vorlesungen zur Komplexitätstheorie. K-Vollständigkeit (1/5)

Motivation. Formale Grundlagen der Informatik 1 Kapitel 10. Motivation. Motivation. Bisher haben wir mit TMs. Probleme gelöst/entschieden/berechnet.

Seminarvortag zum Thema Virtual Private Network Design im Rahmen des Seminars Network Design an der Universität Paderborn

Lösungsblatt zur Vorlesung. Kryptanalyse WS 2009/2010. Blatt 6 / 23. Dezember 2009 / Abgabe bis spätestens 20. Januar 2010, 10 Uhr (vor der Übung)

Approximation in Batch and Multiprocessor Scheduling

Einführung in die Informatik

Scheduling und Lineare ProgrammierungNach J. K. Lenstra, D. B. Shmoys und É.

Zeichnen von Graphen. graph drawing

8 Diskrete Optimierung

Dissertation zur Erlangung des Doktorgrades der Technischen Fakultät der Albert-Ludwigs-Universität Freiburg im Breisgau.

Bestimmung einer ersten

Optimalitätskriterien

Kapiteltests zum Leitprogramm Binäre Suchbäume

Branch-and-Bound. Wir betrachten allgemein Probleme, deren Suchraum durch Bäume dargestellt werden kann. Innerhalb des Suchraums suchen wir

Alles zu seiner Zeit Projektplanung heute

Einführung in die Informatik I

Primzahlzertifikat von Pratt

Graphen: Datenstrukturen und Algorithmen

Pratts Primzahlzertifikate

Approximationsalgorithmen

Teil II. Nichtlineare Optimierung

Kapitel 7: Formaler Datenbankentwurf

WS 2009/10. Diskrete Strukturen

Parametrisierte Algorithmen

Skript zur Vorlesung. Online-Algorithmen. Prof. Dr. Heiko Röglin. Institut für Informatik

Ergänzung zum Modulhandbuch

Grundlagen der Informatik 2 (GdI2) - Algorithmen und Datenstrukturen -

Informatik II Greedy-Algorithmen

Effiziente Algorithmen und Datenstrukturen I. Kapitel 9: Minimale Spannbäume

Das Lastverteilungsproblem

Algorithmische Methoden für schwere Optimierungsprobleme

Mathematische Grundlagen der Kryptographie. 1. Ganze Zahlen 2. Kongruenzen und Restklassenringe. Stefan Brandstädter Jennifer Karstens

PROSEMINAR ONLINE ALGORITHMEN

22. Algorithmus der Woche Partnerschaftsvermittlung Drum prüfe, wer sich ewig bindet

Kostenmaße. F3 03/04 p.188/395

Codierungstheorie Rudolf Scharlau, SoSe

Approximations- und Online-Algorithmen

Algorithmen für schwierige Optimierungsprobleme Vorlesung für den Bereich Bachelor Informatik

Kap. 8: Speziell gewählte Kurven

Randomisierte Algorithmen

Lineare Programmierung

16. All Pairs Shortest Path (ASPS)

Kapitel 4. Euklidische Ringe und die Jordansche Normalform. 4.1 Euklidische Ringe

Teil III: Routing - Inhalt I. Literatur. Geometric Routing. Voraussetzungen. Unit Disk Graph (UDG) Geometric Routing 29

Faktorisierung ganzer Zahlen mittels Pollards ρ-methode (1975)

Programmierung 2. Dynamische Programmierung. Sebastian Hack. Klaas Boesche. Sommersemester

3.4 Histogramm, WENN-Funktion

Vorlesung Algorithmische Geometrie. Streckenschnitte. Martin Nöllenburg

Suche in Spielbäumen Spielbäume Minimax Algorithmus Alpha-Beta Suche. Suche in Spielbäumen. KI SS2011: Suche in Spielbäumen 1/20

Der Approximationsalgorithmus von Christofides

Dynamische Optimierung. Kapitel 4. Dynamische Optimierung. Peter Becker (H-BRS) Operations Research II Wintersemester 2014/ / 206

7 Rechnen mit Polynomen

(Lineare) stochastische Optimierung

Babeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005. Paradigmen im Algorithmenentwurf

Das P versus N P - Problem

Optimierungsprobleme mit Nebenbedingungen - Einführung in die Theorie, Numerische Methoden und Anwendungen

SOI Die Schweizer Informatikolympiade

Einführung. Kapitel 1. Peter Becker (H-BRS) Operations Research I Sommersemester / 298

Graphenalgorithmen. Kurz-Vorstellung. Forschungsinteressen. Algorithm Engineering. Themen der VO: Probleme

Entscheidungsprobleme. Berechenbarkeit und Komplexität Entscheidbarkeit und Unentscheidbarkeit. Die Entscheidbarkeit von Problemen

Datenstrukturen und Algorithmen SS07

Binäre lineare Optimierung mit K*BMDs p.1/42

WS 2013/14. Diskrete Strukturen

Sortierverfahren für Felder (Listen)

x 2 2x + = 3 + Es gibt genau ein x R mit ax + b = 0, denn es gilt

Eine Kurzanleitung zu Mathematica

Programmierpraktikum Diskrete Optimierung Steiner-Baum-Probleme. Stephan Held Sommersemester 2014

Satz. Für jede Herbrand-Struktur A für F und alle t D(F ) gilt offensichtlich

Parametrisierte Algorithmen

Numerische Verfahren und Grundlagen der Analysis

Umsetzung von DEA in Excel

Stefan Lucks Krypto und Mediensicherheit (2009) 4: Stromchiffren

Bin Packing oder Wie bekomme ich die Klamotten in die Kisten?

9 Das Problem mit der Komplexität: P = NP?

Maximizing the Spread of Influence through a Social Network

Vorlesung Einführung in die Mathematische Optimierung (Wintersemester 2013/14)

Transkript:

Kapitel 5 Komplexitatstheoretische Zwischenbetrachtungen: Klassen & eine Hierarchic In den vorhergehenden Kapiteln sind wir einmal quer durch das Gebiet der Approximationsalgorithmen gelaufen. Wir haben die wesentlichen Begriffe fiir dieses interessante Gebiet eingefiihrt und anhand von Beispielen mit Leben erfiillt. Dabei haben wir festgestellt, dab wir verschiedene Optimierungsprobleme verschieden guf' losen konnen, und auch gesehen, dab bei der Losung bestimmter Probleme bestimmte Qualitatskriterien gar nicht erreicht werden konnen. Wir wollen den ersten Teil dieses Buches damit abschlieben, dab wir im komplexitatstheoretischen Sinn etwas Ordnung in die untersuchten Probleme bringen. Wir haben inzwischen sehr oft von den Klassen P und NP gesprochen. Die analogen Klassen fiir Optimierungsprobleme und eine sogar feinere Unterteilung werden jetzt eingefiihrt. Wir sagen im folgenden - benutzt haben wir diese Formulierung bereits ofters, aber nun brauchen wir sie genau - abkiirzend, dab etwas in Polynomzeit in / berechnet werden kann, wenn es ein Polynom q gibt, so dab/wr alle gemeinten/ die Laufzeit hochstens q{\i\) ist. Wichtig ist die Reihenfolge der implizierten Quantoren! 5.1 Definition: Ein Optimierungsproblem IT liegt in der Sprachklasse NPO, wenn gilt: (a) (1) Instanzen / konnen in Polynomzeit in / als solche erkannt werden, d. h. die Frage,/ G (Dl" kann in Polynomzeit in / entschieden werden. Wir lassen also keine unsinnigen" Eingaben zu. (2) Es gibt ein Polynom p, so dab bei Instanz / gilt:

82 Kapitel 5 Komplexitatstheoretische Zwischenbetrachtungen: Klassen & eine Hierarchie Oder (a) Fur jede zulassige Losung a G S(I) ist \a\ < p(\i\)', (b) Fiir jede Zeichenfolgey mit \y\ < p{\i\) kann in Polynomzeit in / entschieden werden, oby e S{I) ist. (3) Bei Instanz / kann zu jeder zulassigen Losung a G S(I) der Wert /(a) in Polynomzeit in / berechnet werden. (b) Es gibt ein Optimierungsproblem n' G NPO mit n <p n^ Diese Definition kommt wie unsere Einfuhrung der Klasse NP auf Seite 6 ohne nichtdetermi- U. 5.1 nistische Turing-Maschinen aus. Punkt (a2) ubemimmt hier die Aufgabe des Zertifikats. Zur Rolle von (b) siehe Ubung 5.1(b). Alle bislang vorgestellen Optimierungsprobleme liegen in NPO. Wir haben schon oft den Zusammenhang zwischen Optimierungs- und Entscheidungsproblemen betont. Wir definieren das jetzt formal. 5.2 Definition: Sei n = (^,is*,/, ziel) ein Optimierungsproblem gemab Definition 1.2. Dann ist daszugehorige Entscheidungsproblem die Menge _ f {(/, ^) I / G ^, ^ G IN, 3a G S{I): /(a) < k} falls ziel = min [ {(/, ^) I / G ^, ^ G IN, 3a G S{I): /(a) > k} sonst. Jedes Optimierungsproblem IT labt sich also in ein Entscheidungsproblem Ilent verwandeln, indem wir zu jeder Instanz / eine Zahl A: G IN hinzufugen und fragen, ob es eine zulassige Losung a gibt mit /(a) < k, falls n ein Minimierungsproblem ist, und /(a) > k, falls IT ein U. 5.3 Maximierungsproblem ist. U. 5.2 Der nachstehende Satz folgt direkt aus Punkt (a2) der Definition. 5.3 Satz: Ist n G NPO, dann ist Rent e NP. Die zu P analoge Klasse bekommen wir direkt dadurch, dab wir fordem, eine optimale Losung in Polynomzeit berechnen zu konnen. 5.4 Definition: Das Optimierungsproblem n liegt in der Sprachklasse PO, wenn n G NPO ist und zu jeder

83 Instanz / in polynomieller Zeit in / eine optimale Losung berechnet werden kann. Die Berechnung kurzester Wege, die Bestimmung minimaler Spannbaume (MST), die Berechnung maximaler Fliisse (MAXFLOW) und die Losung linearer Optimierungsprobleme seien als nichttriviale Beispiele fur Sprachen aus PO angefiihrt. Aus der Definition folgt PO C NPO direkt. Aber ebenso, wie fur P und NP, ist unbekannt, ob PO ^ NPO ist. Die zweite Frage ist natiirlich mit der ersten eng verwandt, wie folgender Satz zeigt. 5.5 Satz: PO = NPO^P = NP. Beweis: Wir wissen, dab CLIQUE G NPO ist. Aus PO = NPO folgt, dab es einen Polynomzeit-Algorithmus gibt, der zu jedem Eingabegraphen einen vollstandigen Teilgraphen maximaler GroBe berechnet. Wir konnen also das zugehorige, NP-voUstandige Entscheidungsproblem CLIQUE ent in Polynomzeit losen. Aus der NP-Vollstandigkeit von CLIQUE ent folgt damit P = NP. D In unseren Untersuchungen haben wir aber inzwischen schon sehr viel mehr herausgefiinden. So haben wir gesehen, dab das TSP kein polynomielles Approximationsverfahren mit konstanter relativer Gute zulabt (Satz 3.16), dagegen das ATSP mit Christofides' Algorithmus der relativen Giite 3/2 sehr wohl (Satz 3.8). Insofem erlaubt die relative Giite eine feinere Strukturierung von NPO. 5.6 Definition: Sei F eine Menge von Funktionen. Bin Optimierungsproblem n G NPO liegt in der Sprachklasse F-APX, wenn es einen polynomiellen Approximationsalgorithmus A gibt mit relativer Giite p^(w) ef. Die fiir uns wichtigste Klasse in diesem Zusammenhang ist die, wenn F die Menge der konstanten Funktionen ist. Diese Klasse wird dann auch einfach nur APX genannt. Dann haben wir: ATSP G APX und TSP ^ APX. Mit log-apx bezeichnet man die Klasse der Probleme, die durch Algorithmen mit relativer Giite p(w) = 0{\ogn) approximiert werden konnen. In diese Klasse fallt das Problem SETCO- VER, das wir aus Ubung 2.12 kennen. Einen entsprechenden Approximationsalgorithmus fiir SETCOVER werden wir in Abschnitt 7.5.3 kennenlemen. Die Approximationsschemata ergeben eine weitere Unterteilung von APX.

84 Kapitel 5 Komplexitatstheoretische Zwischenbetrachtungen: Klassen & eine Hierarchie 5.7 Definition: Ein Optimierungsproblem IT G NPO liegt in der Sprachklasse PAS bzw. FPAS, wenn es fiir IT ein PAS bzw. ein FPAS gibt. In Ubung 3.11 haben wir gesehen, dab es kein polynomielles Approximationsverfahren fiir U. 5.4 BINPACKING der Giite p < gibt, wahrend es ziemlich einfach ist, fiir BINPACKING ein Verfahren der relativen Giite 2 anzugeben. D. h. BINPACKING G APX, aber BINPACKING ^ PAS. Da ATSP stark NP-vollstandig ist, wissen wir, dab ATSP 0 FPAS ist, wahrend RUCKSACK G FPAS ist. Wir haben am Ende von Kapitel 4 erwahnt, dab es fiir das Euklidische TSP ein PAS gibt, aber kein FPAS gibt. 5.8 Satz: PO MST MAXFLOW c FPAS RUCKSACK c PAS C APX EuklidTSP BINPACKING ATSP c NPO TSP Ist P 7^ NP, sind alle Inklusionen echt und die genannten Probleme nicht in den Klassen nach links enthalten. In Kapitel 2 haben wir die absolute Giite K eingefiihrt und gesehen, dab das Kantenfarbungsproblem mit K = 1 approximiert werden kann, wahrend RUCKSACK nicht mit konstanter absoluter Giite gelost werden kann. Haben wir, da RUCKSACK G FPAS ist, eine Unterteilung von FPAS? Leider nicht, wie folgende Uberlegung zeigt. Bezeichne ABS die Klasse der Optimierungsprobleme, die mit konstanter absoluter Giite ap- U. 5.5 proximiert werden konnen. Eine einfache Uberlegung erbringt, dab ABS C APX ist. Die symmetrische Differenz von PAS und ABS ist nicht leer, d. h. es gibt Probleme in ABS, die nicht in PAS liegen, und umgekehrt: (a) Das Kantenfarbungsproblem liegt in ABS (Satz 2.11), aber ist es ist nicht in PAS (Satz 4.8). (b) RUCKSACK ist in FPAS (Satz 4.7) und damit auch in PAS, aber es liegt nicht in ABS (Satz 2.12). Eine Problemklasse, die PAS U ABS enthalt, aber U. 5.6 unterhalb von APX liegt, wird in den Ubungen untersucht. Damit haben wir insgesamt die in Abbildung 5.1 dargestellte Hierarchie bewiesen. In Tabelle 5.1 stellen wir die in Teil I herausgefiindenen Giitegarantien und unteren Schranken zusammen (Achtung: Dies sind nicht immer die besten zur Zeit bekannten Resultate iiberhaupt).

5.1 Literatur zu Kapitel 5 85 NPO APX ABS Abbildung 5.1: Hierarchie, falls P 7^ NP. Tabelle 5.1: In Teil I bewiesene Giitequalitaten fiir Probleme Problem RUCKSACK SETCOVER Kantenfarbung Knotenfarbung Knotenfarbung planar TSP ATSP BINPACKING CLIQUE relative Giite < > FPAS 4/3 ^(1^1) 3/2 0(2l^l) 3/2 2 o{\v\) 4/3-8 4/3-4/3-8 jede Konst. kein FPAS 3/2-8 jede Konst. absolute Giite < > 0(2W) jede Konst. jede Konst. 0 1 om) 3 0 5.1 Literatur zu Kapitel 5 [ACG+99] G. Ausiello, P. Crescenzi, G. Gambosi, V. Kann, A. Marchetti-Spaccamela, and M. Protasi. Complexity and Approximation - Combinatorial Optimization Problems and Their Approximability Properties. Springer, Berlin, 1999. [Mor98] B. M. Moret. The Theory of Computation. Addison-Wesley, Reading, MA, 1998.

86 Kapitel 5 Komplexitatstheoretische Zwischenbetrachtungen: Klassen & eine Hierarchie Ubungen zu Kapitel 5 Aufgabe 5.1 Zeige, dab die folgenden Probleme in NPO sind. (a) TSP (b) BESTERNICHTOPTRUCKSACK, wobei eine Instanz des Rucksackproblems gegeben ist und nach einer besten nichtoptimalen Rucksackfiillung gesucht wird. Aufgabe 5.2 Beweise Satz 5.3, d. h. zeige: Ist U G NPO, dann ist Ilent ^ NP. Aufgabe 5.3 Sei CLIQUEGIGANTE das Maximierungsproblem, in dem alles identisch zu CLIQUE ist bis auf die Wertefunktion. Bei einer Instanz G sind die zulassigen Losungen vollstandige Teilgraphen H von G. Der Wert von H ist /(//) = 22'^''^'+ in^) I In welcher Sprachklasse liegt CLIQUEGIGANTE ent? Zur Erinnerung: V{H) ist die Knotenmenge von H. (vgl. Ubung 3.10). Aufgabe 5.4 Zeige, dab der folgende Algorithmus NEXTFIT das Optimierungsproblem BINPACKING (vgl. Aufgabe 3.11 auf S. 60) mit relativer Giite 2 lost. ALGORITHMUS NEXTFIT k:=l;bi :=0; for / := 1 to w do if s{ai) -\-s{bk) > 1 then k := k-\-1; Bk := 0 fi; Bk:=BkU{ai} done; gih{bu.,.,bk) aus. Hinweis: Begriinde, warum (a) OPT(/) > \s{m)] und (b) NEXTFIT(/) <2\s{M)~\ ist. Aufgabe 5.5 Zeige, dab ABS C APX ist.

Ubungen zu Kapitel 5 87 Aufgabe 5.6 Sei n ein kombinatorisches Optimierungsproblem. Ein asymptotisches polynomielles Approximations schema (APAS) ist ein Approximationsalgorithmus A fur IT, der als Eingabe eine Instanz / und ein G]0, 1 [ bekommt und fur den es eine Konstante k gibt, so dab p^(/,e) < 1 + 8 + opfm ^^ ^^^^ ^ ^^^ ^^^ Laufzeit ein Polynom in / ist. Die Klasse FAS"^ ist die Menge aller Optimierungsprobleme, fiir die es ein APAS gibt. (a) Zeige: ABS c PAS"' C APX. (b) Zeige: PAS ^ g APX, falls P ^ NP. (c) Zeichne die um PAS erweiterte Hierarchie entsprechend Abbildung 5.1.