• Keine Ergebnisse gefunden

VL-18: Jenseits von P und NP

N/A
N/A
Protected

Academic year: 2022

Aktie "VL-18: Jenseits von P und NP"

Copied!
11
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

VL-18: Jenseits von P und NP

(Berechenbarkeit und Komplexit¨ at, WS 2017) Gerhard Woeginger

WS 2017, RWTH

BuK/WS 2017 VL-18: Jenseits von P und NP 1/43

Organisatorisches

I achste (letzte) Vorlesung:

Mittwoch, Januar 24, 14:15–15:45 Uhr, Roter H¨orsaal

I Webseite:

http://algo.rwth-aachen.de/Lehre/WS1718/BuK.php

I Arbeitsheft zur NP-Vollst¨andigkeit:

Auf der BuK-Webseite, unter “Additional material”

BuK/WS 2017 VL-18: Jenseits von P und NP 2/43

Wdh.: Landkarte mit Karp’s 20 Reduktionen

SAT INTEGER

PROG 3-SAT

COLORING

CLIQUE COVER

EXACT COVER 3-DIM

MATCHING

STEINER TREE

HITTING SET

SUBSET-SUM

JOB SEQUENCING PARTITION

MAX-CUT SET COVER FEEDBACK

ARC SET

FEEDBACK VERTEX

SET DIRECTED

HAM-CYCLE

HAM CYCLE

VERTEX COVER INDEP

SET

CLIQUE

Wdh.: Pseudo-polynomiell versus Stark NP-schwer (1)

Definition: Pseudo-polynomielle Zeit

Ein AlgorithmusAl¨ost ein ProblemX in pseudo-polynomiellerZeit, falls die Laufzeit vonAauf InstanzenI vonX

polynomiell in|I|undNumber(I)beschr¨ankt ist.

Satz

Die Probleme SUBSET-SUM, PARTITION und Rucksack sind pseudo-polynomiell l¨osbar.

(2)

Wdh.: Pseudo-polynomiell versus Stark NP-schwer (2)

Definition: Stark NP-schwer (engl.: NP-hard in the strong sense)

Ein EntscheidungsproblemX iststark NP-schwer,

wenn es ein Polynomq:N→Ngibt, sodass die Restriktion vonX auf InstanzenI mitNumber(I)≤q(|I|)NP-schwer ist.

Also: Das ProblemX ist sogar dann NP-schwer, wenn alle Zahlenwerte in der InstanzI nur polynomiell gross (in|I|) sind.

Satz

Es seiX ein stark NP-schweres Entscheidungsproblem.

FallsX pseudo-polynomiell l¨osbar ist, so gilt P=NP.

Also: Pseudo-polynomiell und stark NP-schwer schliessen einander aus (unter unserer Standardannahme P6=NP)

BuK/WS 2017 VL-18: Jenseits von P und NP 5/43

Vorlesung VL-18 Jenseits von P und NP

I P versus NP

I Die Komplexit¨atsklasse coNP I Zwischen P und NPC: NP-intermediate I Die Komplexit¨atsklassen EXPTIME und PSPACE

BuK/WS 2017 VL-18: Jenseits von P und NP 6/43

P versus NP

P versus NP

I P enth¨alt jene Probleme, die wir effizient l¨osen k¨onnen

I NP enth¨alt jene Probleme, deren (kurze) L¨osung wir effizient

¨

uberpr¨ufen k¨onnen (wenn wir sie gezeigt bekommen)

I NPC enth¨alt die allerschwierigsten Probleme in NP

FallsP6=NPgilt (Standardannahme)

I so istP∩NPC=∅

I so ist keines der Probleme SAT, CLIQUE, Ham-Cycle, TSP, SUBSET-SUM, Rucksack, Bin Packing effizient l¨osbar

(3)

Aus dem Buch von Garey und Johnson (1)

I can’t find an efficient algorithm, I guess I’m just too dumb.”

BuK/WS 2017 VL-18: Jenseits von P und NP 9/43

Aus dem Buch von Garey und Johnson (2)

I can’t find an efficient algorithm, because no such algorithm is possible!”

BuK/WS 2017 VL-18: Jenseits von P und NP 10/43

Aus dem Buch von Garey und Johnson (3)

I can’t find an efficient algorithm, but neither can all these famous people.”

Was tun mit NP-schweren Problemen? (1)

Viele Optimierungsprobleme aus der Praxis sind NP-schwer.

Zum Beispiel:Bin Packing (BPP), Set Cover,Rucksack, Traveling Salesman Problem (TSP).

In der Praxis m¨ussen diese Probleme dennoch behandelt werden.

Wichtige Strategien sind:

I Ausnutzen der Eingabestruktur durch spezielle Algorithmen

I Parametrisierte Algorithmen

I Approximationsalgorithmen

I Heuristiken (ohne irgendwelche Garantien)

I Zerteilen in geeignete Unterprobleme

(4)

Was tun mit NP-schweren Problemen? (2)

Beispiel: Ausnutzen der Eingabestruktur

I Strassennetze lassen sich durchplanareGraphen modellieren

I Es gibt effiziente Graphalgorithmen, die planare Strukturen ausn¨utzen

Beispiel: Approximationsalgorithmen

I Instanzen des TSP erf¨ullen in der Praxis h¨aufig die Dreiecksungleichung (∆-TSP)

I F¨ur das∆-TSP gibt es gute Approximationsalgorithmen:

In polynomieller Zeit kann man eine Rundreise berechnen, deren L¨ange h¨ochstens3/2-mal die optimale L¨ange betr¨agt.

BuK/WS 2017 VL-18: Jenseits von P und NP 13/43

Was tun mit NP-schweren Problemen? (3)

In der Praxis h¨angt die Effizienz eines Algorithmus oft nicht allein von der Eingabegr¨osse ab.

Eine verfeinerte Analyse, die andereEingabeparameter ber¨ucksichtigt, kann zu besseren Resultaten f¨uhren.

Beispiel: Parametrisierte Algorithmen

Wir wollen eine Anfrage in einer DatenbankDauswerten.

I Es sei` die Gr¨osse der Anfrage und es seim die Gr¨osse der DatenbankD. Die Eingabegr¨osse ist dannn=`+m.

I H¨aufig istmsehr gross, w¨ahrend` relativ klein ist. Ein Algorithmus mit Laufzeit 2`mkann deswegen durchaus gut sein, ein Algorithmus mit Laufzeiten wiem`oder gar2m`hingegen kaum.

I Analysieren wir die Algorithmen nur nach der Eingabegr¨ossen, so wird dieser wichtige Unterschied nicht sichtbar.

BuK/WS 2017 VL-18: Jenseits von P und NP 14/43

SAT (1a): Selbst-Reduzierbarkeit

I Es seiϕeine Boole’sche Formel in CNF

I Wenn wir inϕeine Variable x:=1setzen, so werden Klauseln mit Literalx dadurch erf¨ullt und in Klauseln mit Literal¯x f¨allt dieses Literal einfach weg.

Wir erhalten wir eine k¨urzere CNF-Formelϕ[x=1].

I Analog erhalten wir mitx :=0die CNF-Formelϕ[x =0].

Beispiel

F¨ur ϕ = (x∨y∨z)∧(¬x∨ ¬y∨ ¬z)∧(¬y∨z) gilt ϕ[y =1] = (¬x∨ ¬z)∧(z)

und ϕ[z=0] = (x∨y)∧(¬y)

SAT (1b): Selbst-Reduzierbarkeit

Wir betrachten SAT Instanzen mitnVariablen undm Klauseln.

Satz

Angenommen, AlgorithmusAentscheidet SAT Instanzen inT(n,m)Zeit.

Dann gibt es einen AlgorithmusB, der f¨ur erf¨ullbare SAT Instanzen inn·T(n,m)Zeit eine erf¨ullende Wahrheitsbelegung konstruiert.

Beweis:

I Wir fixieren der Reihe nach die Wahrheitswerte von x1,x2, . . . ,xn.

I FOR i =1,2, . . . ,n DO

Wennϕ[xi=1] erf¨ullbar, so setzexi:=1und ϕ:=ϕ[xi=1]

Wennϕ[xi=1] nicht erf¨ullbar, setzexi :=0undϕ:=ϕ[xi=0]

Folgerung

FallsSAT∈P, so kann man auch die erf¨ullenden Wahrheitsbelegungen von JA-Instanzen in polynomieller Zeit konstruieren.

(5)

SAT (2a): Ein vielleicht schneller Algorithmus

(Mi ist diei-te TM in der kanonischen Reihenfolge.)

Algorithmus f¨ ur SAT

Eingabe: Eine Boole’sche Formelϕin CNF In derk-ten Runde (mitk =1,2,3, . . .):

I Simuliere jek Schritte der TMenM1,M2, . . . ,Mk auf Eingabeϕ

I Falls eine TMMi terminiert und fallsMi eine Wahrheitsbelegung f¨ur die Formelϕberechnet hat, ¨uberpr¨ufe ob diese Wahrheitsbelegung die Formelϕtats¨achlich erf¨ullt

I Terminiere, sobald eine erf¨ullende Wahrheitsbelegung gefunden ist

I Dieser Algorithmus terminiertNICHTauf NEIN-Instanzen

I Dieser Algorithmus terminiert immer auf JA-Instanzen

BuK/WS 2017 VL-18: Jenseits von P und NP 17/43

SAT (2b): Ein vielleicht schneller Algorithmus

Satz

WennP=NPgilt,

dann terminiert der Algorithmus auf JA-Instanzen in polynomieller Zeit.

Beweis:

I In derk-ten Runde simuliert der Algorithmus jek Schritte aufk TMen; das kostetO(k2)Zeit

I Die erstenk Runden kostenO(k3)Gesamtzeit

I TM Mr l¨ost SAT in polynomieller Zeitp(n)

I Algorithmus entdeckt eine erf¨ullende Wahrheitsbelegung in der k-ten Runde, sobald k ≥r und k ≥p(n)

I Laufzeit istO(p3(n))

BuK/WS 2017 VL-18: Jenseits von P und NP 18/43

Die Komplexit¨ atsklasse coNP

Klasse coNP (1): Definition

Definition: NP und NP-vollst¨ andig

Ein EntscheidungsproblemX ⊆Σliegt inNP,

wenn f¨ur jedes Wortx∈X ein polynomiell langes Zertifikaty existiert, das (zusammen mitx) in polynomieller Zeit verifiziert werden kann.

Ein EntscheidungsproblemX istNP-vollst¨andig,

wennX ∈NPund alleY ∈NPpolynomiell aufX reduzierbar sind.

Definition: coNP und coNP-vollst¨ andig

Ein EntscheidungsproblemX ⊆Σliegt incoNP,

wenn f¨ur jedes Wortx∈/X ein polynomiell langes Zertifikaty existiert, das (zusammen mitx) in polynomieller Zeit verifiziert werden kann.

Ein EntscheidungsproblemX istcoNP-vollst¨andig,

wennX ∈coNPund alleY ∈coNPpolynomiell aufX reduzierbar sind.

(6)

Klasse coNP (2a): Einige Beispiele

Problem: Non-Hamiltonkreis (Non-Ham-Cycle)

Eingabe:Ein ungerichteter GraphG = (V,E) Frage:BesitztG keinenHamiltonkreis?

Frage: Wie sieht das coNP-Zertifikat f¨ur Non-Ham-Cycle aus?

BuK/WS 2017 VL-18: Jenseits von P und NP 21/43

Klasse coNP (2b): Beispiele

Problem: Unsatisfiability (UNSAT)

Eingabe:Eine Boole’sche Formelϕin CNF ¨uber der Boole’schen VariablenmengeX ={x1, . . . ,xn}

Frage: ExistiertkeineWahrheitsbelegung vonX, dieϕerf¨ullt?

Problem: TAUTOLOGY

Eingabe:Eine Boole’sche Formelϕin DNF¨uber der Boole’schen VariablenmengeX ={x1, . . . ,xn}

Frage: WirdϕvonallenWahrheitsbelegungen vonX erf¨ullt?

Frage: Wie sehen coNP-Zertifikate f¨ur UNSAT und TAUTOLOGY aus?

BuK/WS 2017 VL-18: Jenseits von P und NP 22/43

Klasse coNP (3): coNP-Vollst¨ andigkeit

Satz

Non-Ham-Cycle, UNSAT und TAUTOLOGY sind coNP-vollst¨andig.

Satz

Wenn das EntscheidungsproblemX NP-vollst¨andig ist, so ist das komplement¨are Problem X coNP-vollst¨andig.

Komplement¨ares Problem:

Ja-Instanzen werden zu Nein-Instanzen, und umgekehrt

Klasse coNP (4a): coNP versus NP und P

Satz

P⊆NP∩coNP Beweis:P=coP

(7)

Klasse coNP (4b): coNP versus NP und P

Viele Informatiker denken, dassNP6=coNPgilt.

Satz

WenncoNPein NP-vollst¨andiges ProblemX enth¨alt, dannNP=coNP.

Beweis:

I X ∈NPCimpliziert: L≤pX f¨ur alleL∈NP

I X ∈NPCimpliziert: L≤pX f¨ur alleL∈NP

I X ∈NPCimpliziert: K ≤pX f¨ur alleK ∈coNP

I Ergo: AlleK∈coNPsind aufX ∈NPreduzierbar.

I Ergo: AlleK∈coNPliegen inNP.

Daraus erhalten wir das folgende Werkzeug:

“X NP-vollst¨andig” ist Evidenz f¨ur “X ∈/coNP”

“X coNP-vollst¨andig” ist Evidenz f¨ur “X ∈/NP”

BuK/WS 2017 VL-18: Jenseits von P und NP 25/43

Klasse coNP (4c): coNP versus NP und P

Wir erhalten das folgende Werkzeug:

“X NP-vollst¨andig” ist Evidenz f¨ur “X ∈/coNP”

“X coNP-vollst¨andig” ist Evidenz f¨ur “X ∈/NP”

Ham-Cycle ist NP-vollst¨andig.

Ham-Cycle hat gute Zertifikate f¨ur Ja-Instanzen.

Ergo: Ham-Cycle hat (wahrscheinlich) keine guten Zertifikate f¨ur Nein-Instanzen.

SAT ist NP-vollst¨andig.

SAT hat gute Zertifikate f¨ur Ja-Instanzen.

Ergo: SAT hat (wahrscheinlich) keine guten Zertifikate f¨ur Nein-Instanzen.

BuK/WS 2017 VL-18: Jenseits von P und NP 26/43

P

NPC coNPC

NP coNP

Zwischen P und NPC:

NP-intermediate

(8)

Das Graphisomorphieproblem (1)

Definition

Zwei GraphenG1= (V1,E1)und G2= (V2,E2)sindisomorph, wenn es eine Bijektion f :V1→V2 gibt,

die Adjazenz und Nicht-Adjazenz erh¨alt.

Eine solche Bijektion heisstIsomorphismus.

BuK/WS 2017 VL-18: Jenseits von P und NP 29/43

Das Graphisomorphieproblem (2)

Problem: GRAPH-ISOMORPHUS

Eingabe:Zwei ungerichtete Graphen G1 undG2

Frage: Gibt es einen Isomorphismus vonG1nach G2?

Satz

GRAPH-ISOMORPHUS liegt in NP.

Beweis: Verwende Isomorphismus als Zertifikat.

BuK/WS 2017 VL-18: Jenseits von P und NP 30/43

Das Graphisomorphieproblem (3)

Folgende Fragen sind derzeit noch ungel¨ost:

I Liegt GRAPH-ISOMORPHUS in P?

I Ist GRAPH-ISOMORPHUS NP-vollst¨andig?

I Liegt GRAPH-ISOMORPHUS in coNP?

Das Graphisomorphieproblem (4)

Satz (Babai, 2016)

GRAPH-ISOMORPHUS auf Graphen mitnKnoten

kann in2p(logn) Zeit gel¨ost werden (wobeipein Polynom ist).

Algorithmus verwendet algorithmische und strukturelle Theorie der Permutationsgruppen.

Exponential Time Hypothesis (ETH)

Es existiert eine reelle Zahlδ >0,

sodass kein Algorithmus 3-SAT in ZeitO(2δn)l¨ost.

I ETH wurde in den letzten 20 Jahren popul¨ar (ist aber unbewiesen!) I ETH impliziertP6=NP

I Wenn GRAPH-ISOMORPHUS NP-vollst¨andig ist, dann ist ETH falsch

(9)

NP-intermediate (1)

Definition

Ein EntscheidungsproblemX ⊆Σ heisstNP-intermediate, wennL∈NP und wenn sowohlL∈/P als auchL∈/NPC gilt.

Satz von Ladner (ohne Beweis)

WennP6=NP gilt,

dann gibt es Probleme, die NP-intermediate sind.

Viele Informatiker denken,

dass das GRAPH-ISOMORPHUS Problem NP-intermediate ist.

BuK/WS 2017 VL-18: Jenseits von P und NP 33/43

NP-intermediate (2)

NP

P

Graph- zusammenhang Primes

SAT

Clique Ind-Set VC

Ham-Cycle

TSP Partition Subset-Sum

Rucksack

BPP Coloring 3-SAT

??? Graph ???

??? Isomorphismus ???

Warnung: Dieser Abbildung liegt die AnnahmeP6=NPzu Grunde.

BuK/WS 2017 VL-18: Jenseits von P und NP 34/43

Die Komplexit¨ atsklassen PSPACE und EXPTIME

Die Klasse PSPACE (1)

Definition: Komplexit¨ atsklasse PSPACE

PSPACEist die Klasse aller Entscheidungsprobleme,

die durch eine DTMM entschieden werden, deren Worst Case Speicherplatzbedarf durchq(n)mit einem Polynomqbeschr¨ankt ist.

Definition: Komplexit¨ atsklasse NPSPACE

NPSPACEist die Klasse aller Entscheidungsprobleme,

die durch eine NTMM entschieden werden, deren Worst Case Speicherplatzbedarf durchq(n)mit einem Polynomqbeschr¨ankt ist.

(10)

Die Klasse PSPACE (2)

Satz von Savitch (ohne Beweis)

PSPACE=NPSPACE

Wie verh¨alt sich PSPACE zu NP?

Da sich der Kopf einer Turingmaschine in einem Schritt nur um eine Position bewegen kann gilt: NP⊆NPSPACE=PSPACE

BuK/WS 2017 VL-18: Jenseits von P und NP 37/43

Die Klasse PSPACE (3)

Problem: QUANTIFIED-SAT (Q-SAT)

Eingabe:Eine Boole’sche Formelϕin CNF ¨uber der Boole’schen Variablenmenge{x1, . . . ,xn,y1, . . . ,yn} Frage: ∃x1∀y1∃x2∀y2∃x3∀y3 · · · ∃xn∀yn ϕ

Satz

Q-SAT liegt in PSPACE.

Anmerkung: Q-SAT ist PSPACE-vollst¨andig.

BuK/WS 2017 VL-18: Jenseits von P und NP 38/43

Die Klasse EXPTIME (1)

Definition: Komplexit¨ atsklasse EXPTIME

EXPTIMEist die Klasse aller Entscheidungsprobleme,

die durch eine DTMM entschieden werden, deren Worst Case Laufzeit durch 2q(n) mit einem Polynomq beschr¨ankt ist.

Laufzeit-Beispiele:2n, 2n, 3n, n!, nn. Aber nicht:22n

Die Klasse EXPTIME (2)

Wie verh¨alt sich EXPTIME zu PSPACE?

I Bei einer Speicherplatzbeschr¨ankungs(n)gibt es nur2O(s(n))viele verschiedenen Konfigurationen f¨ur eine Turingmaschine.

Daher ist die Rechenzeit durch2O(s(n))beschr¨ankt.

I Die Probleme in PSPACE k¨onnen deshalb in Zeit2p(n) gel¨ost werden: PSPACE⊆EXPTIME

(11)

Die Klasse EXPTIME (3)

Problem: k -Schritt-HALTEPROBLEM

Eingabe:Eine deterministische TuringmachineM; eine ganze Zahlk Frage:WennM mit leerem Band gestartet wird, h¨altM dann nach h¨ochstensk Schritten an?

Die Zahlk ist bin¨ar (oder dezimal) kodiert.

Satz

Dask-Schritt-HALTEPROBLEM liegt in EXPTIME.

Anmerkung: Das k-Schritt-HALTEPROBLEM ist EXPTIME-vollst¨andig.

BuK/WS 2017 VL-18: Jenseits von P und NP 41/43

PSPACE und EXPTIME

Wir haben gezeigt:

P⊆NP⊆PSPACE⊆EXPTIME

I Es ist nicht bekannt, welche dieser Inklusionen strikt sind.

I M¨oglicherweise gilt P=PSPACE oder NP=EXPTIME.

I Wir wissen allerdings, dass P6=EXPTIME gilt (Zeithierarchiesatz).

BuK/WS 2017 VL-18: Jenseits von P und NP 42/43

EXPTIME

PSPACE

NP

NPC

P

Referenzen

ÄHNLICHE DOKUMENTE

Die Klasse P enth¨ alt alle Entscheidungsprobleme, die effizient auf dem Computer gel¨ ost werden k¨ onnen. Intuitiv: P enth¨ alt die Probleme, die wir gut verstehen k¨ onnen und

Die Klasse P enth¨ alt alle Entscheidungsprobleme, die effizient auf dem Computer gel¨ ost werden k¨ onnen. Intuitiv: P enth¨ alt die Probleme, die wir gut verstehen k¨ onnen und

U enth¨ alt somit genau ein Literal pro Klausel Kein Literal tritt sowohl positiv als auch negiert auf Ergo: Alle diese Literale k¨ onnen gleichzeitig erf¨ ullt werden Also ist ϕ

, n} gilt: Nur zwei der Var-Zahlen und Dummy-Zahlen haben an dieser Stelle die Ziffer 1; alle anderen Zahlen haben an dieser Stelle die Ziffer 0. F¨ ur jede Dezimalstelle i ∈ {n

Wenn das Entscheidungsproblem X NP-vollst¨ andig ist, so ist das komplement¨ are Problem X coNP-vollst¨ andig. Komplement¨

Also: Das Problem X ist sogar dann NP-schwer, wenn alle Zahlenwerte in der Instanz I nur polynomiell gross (gemessen in |I |)

Statt der RAM kann man in der Definition von polynomieller Laufzeit und von polynomiellen Algorithmen genauso gut die TM verwenden: RAM und TM simulieren einander ja mit

und deren kurze L¨ osung wir effizient ¨ uberpr¨ ufen k¨ onnen (wenn wir diese L¨ osung erst einmal gezeigt bekommen). Intuitiv: NP enth¨ alt so ziemlich alle Probleme, die nach