• Keine Ergebnisse gefunden

VL-17: Jenseits von P und NP (Berechenbarkeit und Komplexit¨at, WS 2019) Gerhard Woeginger

N/A
N/A
Protected

Academic year: 2022

Aktie "VL-17: Jenseits von P und NP (Berechenbarkeit und Komplexit¨at, WS 2019) Gerhard Woeginger"

Copied!
48
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

VL-17: Jenseits von P und NP

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

WS 2019, RWTH

(2)

Organisatorisches

N¨achste (letzte) Vorlesung:

Mittwoch, Januar 29, 10:30–12:00 Uhr, Aula

Webseite:

https://algo.rwth-aachen.de/Lehre/WS1920/BuK/BuK.py

(3)

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

(4)

Wdh.: SUBSET-SUM

Problem: SUBSET-SUM

Eingabe:Positive ganze Zahlena1, . . . ,an; eine ganze Zahlb Frage:Existiert eine IndexmengeI ⊆ {1, . . . ,n}mitP

i∈Iai=b?

Satz

SUBSET-SUM ist NP-vollst¨andig.

Satz

PARTITION ist NP-vollst¨andig.

Knapsack ist NP-vollst¨andig.

Bin Packing ist NP-vollst¨andig.

(5)

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

Algorithmus Al¨ost Problem X inpseudo-polynomiellerZeit, falls die Laufzeit von Aauf InstanzenI von X

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

Ein EntscheidungsproblemX iststark NP-schwer,

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

Satz

Es seiX ein stark NP-schweres Entscheidungsproblem.

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

Also: Pseudo-polynomiell und stark NP-schwer schliessen einander aus (unter der AnnahmeP6=NP)

(6)

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

Die folgende Tabelle fasst einige unserer Resultate und Beobachtungen unter der AnnahmeP6=NPzusammen:

pseudo-poly Problem NP-schwer stark NP-schwer l¨osbar

SAT Ja Ja Nein

CLIQUE Ja Ja Nein

Ham-Cycle Ja Ja Nein

TSP Ja Ja Nein

SUBSET-SUM Ja Nein Ja

Knapsack Ja Nein Ja

PARTITION Ja Nein Ja

THREE-PARTITION Ja Ja Nein

Bin Packing Ja Ja Nein

(7)

Vorlesung VL-17 Jenseits von P und NP

Die Komplexit¨atsklasse coNP

Zwischen P und NPC: NP-intermediate

Die Komplexit¨atsklassen EXPTIME und PSPACE Und noch einmal: P versus NP

(8)

Die Komplexit¨ atsklasse coNP

(9)

Die Klasse coNP

Definition: Klasse NP (zur Erinnerung)

Ein EntscheidungsproblemX ⊆Σliegt in der KlasseNP,

wenn f¨ur jede JA-Instanz x ∈ X ein polynomiell langes Zertifikat y existiert, das in polynomieller Zeit verifiziert werden kann.

Definition: Klasse coNP (neu)

Ein EntscheidungsproblemX ⊆Σliegt in der KlassecoNP,

wenn f¨ur jedeNEIN-Instanzx ∈/ X ein polynomiell langes Zertifikaty existiert, das in polynomieller Zeit verifiziert werden kann.

Intuition:

Wenn X in NP, dann gibt es f¨urJA-Instanzenx∈X kurze und einfach zu ¨uberpr¨ufendeBeweise.

WennX in coNP, dann gibt es f¨urNEIN-Instanzenx∈/X kurze und einfach zu ¨uberpr¨ufendeWiderlegungen.

(10)

Beispiel (1)

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?

(11)

Beispiel (2)

Problem: Unsatisfiability (UNSAT)

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

Frage:Gibt eskeineWahrheitsbelegung f¨urX, dieϕerf¨ullt?

Problem: TAUTOLOGY

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

Frage:WirdϕvonallenWahrheitsbelegungen vonX erf¨ullt?

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

(12)

Beispiel (3a): Lineare Programmierung

Ein primales Lineares Programm (P):

max Pn j=1cjxj

s.t. Pn

j=1aijxj ≤ bi f¨uri =1, . . . ,m xj ≥ 0

Das entsprechende duale Lineare Programm (D):

min Pm i=1biyi

s.t. Pm

i=1aijyi ≥ cj f¨urj=1, . . . ,n yi ≥ 0

Satz (Starker Dualit¨atssatz)

Wenn beide LPs zul¨assige L¨osungen haben,

so haben beide den selben optimalen Zielfunktionswert.

(13)

Beispiel (3b): Lineare Programmierung

Primal= “maxcx s.t.Ax ≤b” Dual= “minby s.t.yA≥c”

Problem: Lineare Programmierung (LP)

Eingabe:Eine reellem×nMatrixA; Vektorenb∈Rm und c∈Rn; eine Schranke γ∈R

Frage:Existiert ein Vektorx∈Rn, derAx≤bundx ≥0erf¨ullt, und dessen Zielfunktionswertcx≥γ ist?

Beobachtung LP liegt in NP.

NP-Zertifikat = Vektorx f¨urs primale LP mitcx≥γ Beobachtung

LP liegt in coNP.

coNP-Zertifikat = Vektory f¨urs duale LP mitby < γ

(14)

Beispiel (3c): Lineare Programmierung

Zusammenfassung LP liegt inNP∩coNP.

Anmerkung: Das war bereits in den 1950er Jahren bekannt.

Satz (Leonid Genrikhovich Khachiyan, 1979) LP liegt inP.

Anmerkung: Khachiyan entwickelte dieEllipsoid-Methodef¨ur LPs.

(15)

coNP-Vollst¨ andigkeit

(16)

coNP-Vollst¨ andigkeit (1)

Definition: NP-vollst¨andig (zur Erinnerung) Ein EntscheidungsproblemX istNP-vollst¨andig,

wenn X ∈NP und alleY ∈NPpolynomiell auf X reduzierbar sind.

Definition: coNP-vollst¨andig (neu)

Ein EntscheidungsproblemX istcoNP-vollst¨andig,

wennX∈coNPund alle Y∈coNPpolynomiell aufX reduzierbar sind.

Intuition:

X ist NP-vollst¨andig,

wenn es zu den schwierigsten Problemen in NP geh¨ort.

X ist coNP-vollst¨andig,

wenn es zu den schwierigsten Problemen in coNP geh¨ort.

(17)

coNP-Vollst¨ andigkeit (2)

Satz

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

Beweis: ¨Ubung.

Satz

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

Komplement¨ares Problem:

Ja-Instanzen vonX werden zu Nein-Instanzen vonX, und Nein-Instanzen vonX werden zu Ja-Instanzen vonX

(18)

coNP versus P

Satz

P⊆NP∩coNP Beweis:P=coP

(19)

coNP versus NP (1)

Viele Informatiker denken, dassNP6=coNPgilt.

Satz

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

Beweis:

X ∈NPCimpliziert: L≤pX f¨ur alleL∈NP X ∈NPCimpliziert: L≤pX f¨ur alleL∈NP X ∈NPCimpliziert: K ≤pX f¨ur alleK∈coNP Ergo: Alle K∈coNPsind aufX ∈NP reduzierbar.

Ergo: Alle K∈coNPliegen inNP. Q.E.D.

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”

(20)

coNP versus NP (2)

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 (h¨ochstwahrscheinlich) keine guten Zertifikate f¨ur Nein-Instanzen.

SAT ist NP-vollst¨andig.

SAT hat gute Zertifikate f¨ur Ja-Instanzen.

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

(21)

NP coNP

NPC coNPC

P

(22)

Der Durchschnitt von coNP und NP

VieleMathematikerdenken, dassNP∩coNP=Pgilt.

Beispiel

LP inNP∩coNPwar seit den 1950er Jahren bekannt.

Erst 1979 wurde ein polynomieller Algorithmus f¨ur LP gefunden.

Beispiel

PRIMZAHL inNP∩coNP war seit den 1970er Jahren bekannt.

Erst 2002 wurde ein polynomieller Algorithmus f¨ur Primzahl-Test gefunden.

Beispiel

PARITY-GAME inNP∩coNP ist seit den 1990er Jahren bekannt.

Ob allerdings PARITY-GAME inPliegt, ist ein offenes Problem.

(23)

Zwischen P und NPC:

NP-intermediate

(24)

Das Graphisomorphieproblem (1)

Definition

Zwei GraphenG1= (V1,E1)undG2= (V2,E2)sindisomorph, wenn es eine Bijektionf :V1→V2 gibt,

die Adjazenzen und Nicht-Adjazenzen erh¨alt.

Eine solche Bijektion heisstIsomorphismus.

C B A

F E D

1

4 6 5

3

2

(25)

Das Graphisomorphieproblem (2)

Problem: GRAPH-ISOMORPHUS

Eingabe:Zwei ungerichtete GraphenG1undG2

Frage:Gibt es einen Isomorphismus von G1 nachG2?

Satz

GRAPH-ISOMORPHUS liegt in NP.

Beweis: Verwende Isomorphismus als Zertifikat.

(26)

Das Graphisomorphieproblem (3)

Folgende Fragen sind zur Zeit noch ungel¨ost:

Liegt GRAPH-ISOMORPHUS in P?

Ist GRAPH-ISOMORPHUS NP-vollst¨andig?

Liegt GRAPH-ISOMORPHUS in coNP?

(27)

Das Graphisomorphieproblem (4)

Satz (L´aszl´o Babai, 2016)

GRAPH-ISOMORPHUS auf Graphen mitnKnoten

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

Babai’s Algorithmus verwendet schwere algebraische Werkzeuge (algorithmische und strukturelle Theorie der Permutationsgruppen).

(28)

NP-intermediate (1)

Definition

Ein EntscheidungsproblemL⊆ΣheisstNP-intermediate, wenn L∈NP und wenn sowohlL∈/P als auch L∈/NPC gilt.

Satz von Ladner (ohne Beweis) WennP6=NP gilt,

dann existieren Probleme, die NP-intermediate sind.

Viele Informatiker denken,

dass das GRAPH-ISOMORPHUS Problem NP-intermediate ist.

(29)

NP-intermediate (2)

NPC

P

Graph- zusammenhang Primzahl

SAT

Clique Ind-Set VC

Ham-Cycle

TSP Partition Subset-Sum

Knapsack

BPP Coloring 3-SAT

??? Graph ???

??? Isomorphismus ???

Warnung: Dieser Abbildung liegt die AnnahmeP6=NP zu Grunde.

(30)

Die Komplexit¨ atsklassen

PSPACE und EXPTIME

(31)

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 Polynom qbeschr¨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 Polynom qbeschr¨ankt ist.

(32)

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

(33)

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.

(34)

Die Klasse EXPTIME (1)

Definition: Komplexit¨atsklasse EXPTIME

EXPTIMEist die Klasse aller Entscheidungsprobleme,

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

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

(35)

Die Klasse EXPTIME (2)

Wie verh¨alt sich EXPTIME zu PSPACE?

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.

Die Probleme in PSPACE k¨onnen deshalb in Zeit 2p(n) gel¨ost werden: PSPACE⊆EXPTIME

(36)

Die Klasse EXPTIME (3)

Problem:k-Schritt-HALTEPROBLEM

Eingabe:Eine deterministische TuringmachineM; eine ganze Zahlk Frage:Wenn M 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: Dask-Schritt-HALTEPROBLEM ist EXPTIME-vollst¨andig.

(37)

PSPACE und EXPTIME

Wir haben gezeigt:

P⊆NP⊆PSPACE⊆EXPTIME

Es ist nicht bekannt, welche dieser Inklusionen strikt sind.

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

Wir wissen allerdings, dass P6=EXPTIME gilt.

(Das folgt aus dem so-genanntenZeithierarchiesatz.) Wir vermuten, dass alle drei Inklusionen strikt sind.

(38)

EXPTIME

PSPACE

NP NPC

P

(39)

Noch einmal: P versus NP

(40)

P versus NP

Zusammenfassung der Vorlesungen ¨uber P und NP:

Frage:Wie l¨ose ich eine SAT Instanz mit nVariablen?

Antwort:Probiere alle2n Wahrheitsbelegungen durch.

Frage:Geht das auch schneller?

Antwort:Das wissen wir nicht.

(41)

P versus NP im echten Leben (1)

(Aus dem Buch “Computers and Intractability von M.R.Garey und D.S.Johnson)

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

(42)

P versus NP im echten Leben (2)

(Aus dem Buch “Computers and Intractability von M.R.Garey und D.S.Johnson)

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

(43)

P versus NP im echten Leben (3)

(Aus dem Buch “Computers and Intractability von M.R.Garey und D.S.Johnson)

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

(44)

Das Buch von Garey and Johnson

Michael R. Garey and David S. Johnson:

“Computers and Intractability: A Guide to the Theory of NP-Completeness”, 1979

The first book “exclusively on the theory of NP-completeness and computational intractability”

Appendix enth¨alt Liste mit 300 NP-vollst¨andigen Problems Meist zitiertes Buch der Informatik

(45)

P versus NP: Die Anf¨ ange

“The classes of problems which are respectively known and not known to have good algorithms are of great theoretical interest.

I conjecture that there is no good algorithm for the Travelling Salesman Problem. My reasons are the same as for any mathematical conjecture:

(1) It is a legitimate mathematical possibility, and (2) I do not know.”

– Jack Edmonds, 1966

(46)

P versus NP: Die Zukunft

“We seem to be missing even the most basic understanding of the nature of its difficulty. All approaches tried so far probably (in some cases, provably) have failed. In this sense P6=NP is different from many other major mathematical problems on which a gradual progress was being constantly done (sometimes for centuries) whereupon they yielded, either completely or partially.”

– Alexander Razborov, 2002

(47)

P versus NP: Die Zukunft

“In my opinion this shouldn’t really be a hard problem; it’s just that we came late to this theory, and haven’t yet developed any techniques for proving computations to be hard. Eventually, it will just be a footnote in the books.”

– John Horton Conway, 2002

(48)

P versus NP: Die Zukunft

“I lean towards P6=NP, but I would not bet anything significant on it.

I think it is premature to conjecture which way the question will be resolved. We cannot even rule out linear time SAT algorithms.

Common sense says that the universe is simply not nice enough that P should equal NP. But I don’t know how to justify that formally.”

– Ryan Williams, 2012

Referenzen

ÄHNLICHE DOKUMENTE

, 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

, 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

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

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¨