• Keine Ergebnisse gefunden

Algorithmen & Komplexität

N/A
N/A
Protected

Academic year: 2022

Aktie "Algorithmen & Komplexität"

Copied!
31
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Algorithmen & Komplexität

Johannes Lengler

Institut für Theoretische Informatik

(2)

Teil 2

Berechenbarkeit und

Komplexität

(3)

Berechenbarkeit und Komplexität

Berechenbarkeit:

Welche Probleme lassen sich überhaupt berechnen?

Komplexität:

Welche Probleme lassen sich effizient berechnen?

(4)

P und NP

Wir betrachten Funktionen der Form . Äquivalent: Betrachten Sprachen .

Wir bezeichnen f (bzw. L) auch als Entscheidungsproblem.

Definition:

Eine Sprache ist in P, falls es einen Algorithmus A

gibt, der in polynomieller Zeit mit A(x)=L(x) terminiert.

(5)

Probleme in P

Probleme in P:

• ZUSAMMENHANG

• DURCHMESSER

• PLANARITÄT

• PRIMES

(6)

Beispiel für NP: Hamiltonkreis

kein Hamiltonkreis …

(7)

P und NP

Wir betrachten Funktionen der Form . Äquivalent: Betrachten Sprachen .

Wir bezeichnen f (bzw. L) auch als Entscheidungsproblem.

Definition:

Eine Sprache ist in P, falls es einen Algorithmus A gibt, der in polynomieller Zeit mit A(x)=L(x) terminiert.

Eine Sprache L ist in NP (nicht-deterministisch polynomiell), falls es einen Verifizierer V gibt, sodass V in polynomieller Zeit

terminiert, und sodass

und

(8)

Probleme in NP

Probleme in NP:

• alle Probleme in P

• GRAPH-ISOMORHPHISMUS

• 3-COL

• CLIQUE

• HAMILTONKREIS

• NULLSTELLE-MOD-N z.B.:

• SAT (SATISFIABILITY) z.B.:

(9)

Sprachen ausserhalb NP.

Die folgende Sprache ist vermutlich nicht in NP.

Betrachte folgendes Spiel:

• Gegeben ein gerichteter Graph und ein Knoten v mit einer Kugel

• Abwechslungsweise bewegen die Spieler die Kugel auf zuvor nicht besuchte Knoten.

• Wer nicht mehr ziehen kann verliert.

(10)

Sprachen ausserhalb NP

Alice Bob

(11)

Sprachen ausserhalb NP

Alice Bob

(12)

Sprachen ausserhalb NP

Alice Bob

(13)

Sprachen ausserhalb NP

Alice Bob

(14)

Sprachen ausserhalb NP

Alice Bob

Bob gewinnt

(15)

Sprachen ausserhalb NP

Alice Bob

Behauptung: Bei

optimalem Spiel gewinnt Bob (für diesen Graphen).

Im Allgemeinen gibt es vermutlich keinen “kurzen Beweis” für die Aussage “Bob gewinnt”.

Im Allgemeinen gibt es vermutlich keinen “kurzen

Beweis” für die Aussage “Bob gewinnt”.

(16)

Komplexitätstheorie

P = effizient entscheidbare Probleme

NP = (einseitig) effizient verifizierbare Probleme

P = NP → 1 Million US-$ (Clay-Foundation) [eines von sieben Millennium-Problemen]

?

(17)

Reduzierbarkeit

Definition:

Seien Entscheidungsprobleme. Wir sagen, dass f polynomiell reduzierbar auf g ist, , falls es eine Funktion gibt, die in polynomiel- ler Zeit berechnet werden kann, mit:

Lemma:

Ist , und ist g in P, so ist auch f in P.

(18)

NP-vollständig

Definition:

Ein Entscheidungsproblem g heisst NP-schwer genau dann, wenn für alle Probleme f in NP gilt. Ist zusätzlich g in NP, so heisst g NP-vollständig.

Lemma:

Ist , und ist f NP-schwer, so ist auch g NP-schwer.

• Wir werden sehen: Es gibt NP-vollständige Probleme.

• Wenn Sie für ein(!) solches Problem einen polynomiellen

Algorithmus finden, haben sie P=NP gezeigt!!

(19)

Probleme in NP

Probleme in NP:

• alle Probleme in P

• GRAPH-ISOMORHPHISMUS

• 3-COL

• CLIQUE

• HAMILTONKREIS

• NULLSTELLE-MOD-N z.B.:

• SAT (SATISFIABILITY) z.B.:

NP-vollständig

(20)

SAT ist NP-vollständig

Theorem (Cook-Levin, 1971):

• SAT ist NP-vollständig.

• 3-SAT ist NP-vollständig.

(21)

SATISFIABILITY

Boolesche Variable: Variable, die nur Werte aus {0,1} annimmt (False/True)

rekursive Definition: Boolesche Formel über :

– Jede Boolesche Variable xi und jede Konstante in {0,1} ist eine Boolesche Formel

– Sind und Boolesche Formeln, dann auch

• die Konjunktion ,

• die Disjunktion ,

• die Negation ( auch ).

Eine Belegung der Variablen X ist eine Abb. . Eine erfüllende Belegung ist eine Belegung, für die sich die Formel zu 1 evaluiert.

(22)

SATISFIABILITY

Disjunktive Normalform (DNF):

Konjunktive Normalform (KNF):

z.B.:

Klauseln

Literale

(23)

SATISFIABILITY

• BOOLEANFORMULA:

Gegeben: Variablen x1,…,xn und Boolesche Formel F über x1,…,xn Frage: Gibt es eine erfüllende Belegung?

SATISFIABILITY (SAT)

Gegeben: Variablen x1,…,xn und Boolesche Formel F in KNF Frage: Gibt es eine erfüllende Belegung?

K-SATISFIABILITY (k-SAT)

Gegeben: Variablen x1,…,xn und Boolesche Formel F in KNF, wobei jede Klausel höchstens k Literale enthält.

Frage: Gibt es eine erfüllende Belegung?

k-SAT ≤p SAT ≤p BOOLEANFORMULA

(24)

SAT ist NP-vollständig

Theorem (Cook-Levin, 1971):

• SAT ist NP-vollständig.

• 3-SAT ist NP-vollständig.

(25)

Definition: Ein Graph G=(V,E) ist 3-färbbar, wenn es eine Abbildung gibt, sodass je zwei benachbarte Knoten auf

verschiedene Werte abgebildet werden.

3-COL:

Satz:

Korollar: 3-COL ist NP-vollständig.

3-COL

(26)

Satz:

Behauptung: Der so konstruierte Graph ist genau dann drei-färbbar, wenn die Formel F erfüllbar ist.

3-COL

(27)

SAT ist NP-vollständig

Theorem (Cook-Levin):

• SAT ist NP-vollständig.

• 3-SAT ist NP-vollständig.

Lemma:

Sei A ein Algorithmus mit r Zeilen und seien p(n), q(n), s(n) Polynome, sodass der Algorithmus für jeden Input der Länge n

• nach höchstens s(n) Schritten mit 0 oder 1 terminiert;

• nur die Speicherzellen benutzt;

• in jede Speicherzelle höchstens q(n) Bits schreibt;

Dann gibt es für jedes n eine (3-)SAT-Formel F der Grösse poly(n), die Variablen enthält, sodass:

Für jedes sei die Formel, die wir durch Einset- zen von aus erhalten. Dann ist

Ausserdem ist F in polynomieller Zeit berechenbar.

(28)

NP-vollständig

Definition:

Ein Entscheidungsproblem g heisst NP-schwer genau dann, wenn für alle Probleme f in NP gilt. Ist zusätzlich g in NP, so heisst g NP-vollständig.

• Wir werden sehen: Es gibt (jede Menge) NP-vollständige Probleme.

• Wenn Sie für ein(!) solches Problem einen polynomiellen Algorithmus finden, haben sie P=NP gezeigt!!

Lemma:

Ist , und ist f NP-schwer, so ist auch g NP-schwer.

(29)

Probleme in NP

Probleme in NP:

• alle Probleme in P

• GRAPH-ISOMORHPHISMUS

• 3-COL

• CLIQUE

• HAMILTONKREIS

• NULLSTELLE-MOD-N z.B.:

• SAT (SATISFIABILITY) z.B.:

NP-vollständig

(30)

NP-vollständig

Theorem (Cook-Levin, 1971):

• SAT ist NP-vollständig

Theorem (Karp 1972):

Die folgenden 21

Probleme sind

NP-vollständig:

(31)

NP-vollständig

Referenzen

ÄHNLICHE DOKUMENTE

Gibt es nun für die Lösung eines Problems keinen effizienten Algorithmus, dann kommen die orithmus, dann kommen die Näherungsverfahren in‘s Spiel.. Näherungsverfahren

Dann sieht man nach, ob es der Fall ist und im allgemeinen ist es nicht der

Man kann zeigen, dass jede k-Band TM durch eine 2-Band TM S bestehend aus Eingabeband und Arbeitsband simuliert werden kann, so dass S noch zwei weiteren Bedingugnen gen¨ ugt:

Es ist nicht sofort klar, wie eine L¨osung (d.h. ein Zeuge w ) gefunden werden kann, da man nicht alle Zeugen systematisch durchprobieren kann... QA-FEAS.. • Daraus folgt

Nicht die Frequenz zählt, aber für eine sehr gute mündliche Note erwarte ich eine aktive Unterrichtsbeteiligung. Die mündliche Note solltet ihr bei nicht so

Die mündliche Note solltet ihr bei nicht so guten schriftlichen Leistungen als Chance sehen, eure Gesamtnote zu verbessern. Eine gute Mitarbeit bringt euch außerdem

Die mündliche Note solltet ihr bei nicht so guten schriftlichen Leistungen als Chance sehen, eure Gesamtnote zu verbessern. Eine gute Mitarbeit bringt euch außerdem

Die mündliche Note solltet ihr bei nicht so guten schriftlichen Leistungen als Chance sehen, euch in eurer Note zu verbessern. Eine gute Mitarbeit bringt euch außerdem