2x4 - Otto-von-Guericke

Werbung
1
2
Parametrisierte Komplexität
Grundlagen der
Theoretischen Informatik
O(22k · n)
O(nk )
Till Mossakowski
Definition:
Eine Parametrisierung der Wörter über einem Alphabet Σ ist eine
in polynomieller Zeit berechenbare Abbildung κ : Σ∗ → N.
Fakultät für Informatik
Otto-von-Guericke-Universität
Magdeburg
Definition:
Ein parametrisiertes Problem ist gegeben durch eine Sprache
L ⊆ Σ∗ und eine Parametrisierung κ : Σ∗ → N.
Sommersemester 2015
3
4
Fixed-Parameter Tractability
3-cnf = {φ | φ ist eine Boolesche Formel in konjunktiver
Normalform, in der alle Klauseln aus drei Literalen
bestehen}
3-sat
⊆
3-cnf
⊆
Definition:
Ein parametrisiertes Problem (L, κ) ist festparameterhandhabbar
(fixed-parameter tractable), falls es einen Algorithmus A, ein
Polynom p und eine berechenbare Funktion f gibt, so dass A für
alle x ∈ Σ∗ in Zeit
f (κ(x)) · p(|x|)
Σ∗
⎧
⎪
⎨ k falls x = φ ∈ 3-cnf und in φ
kommen k Variablen vor
κ(x) =
⎪
⎩ 1 sonst
entscheidet, ob x ∈ L.
Satz:
(3-sat, κ) ist festparameterhandhabbar.
(3-sat, κ)
5
6
Beweisskizze:
Für jede der 2k möglichen Belegungen der k Variablen können wir
jeweils in Linearzeit testen, ob die Formel bei der Belegung erfüllt
ist.
X1 = 0
knotenfärbbarkeit
κ(x) =
⊆
Σ∗
k falls x = G, k
1 sonst
Satz:
Falls P = NP, so ist das parametrisierte Problem
(knotenfärbbarkeit, κ) nicht festparameterhandhabbar.
X1 = 1
7
independent-set
κ1 (x) =
κ2 (x) =
⊆
Σ∗
k falls x = G, k
1 sonst
k + Δ(G) falls x = G, k
1
(independent-set, κ1 )
8
sonst
(independent-set, κ2 )
Während (independent-set, κ1 ) vermutlich nicht festparameterhandhabbar ist, ist es (independent-set, κ2 ) hingegen:
Satz: (independent-set, κ2 ) ist festparameterhandhabbar.
9
10
Eine diese Beobachtung ausnutzende, tiefenbeschränkte Suche
liefert O((Δ(G) + 1)k ) Knotenmengen, von denen mindestens eine k
unabhängige Knoten umfasst, falls miss(G) ≥ k.
Beweisskizze:
Sei v ein Knoten in G = (V, E) und
N[v] = {u ∈ V | {u, v} ∈ E} ∪ {v}
G
Entweder ist v in einer maximalen unabhängigen Knotenmenge
enthalten oder mindestens einer der Nachbarn von v, denn wäre
dem nicht so, so könnte man v zur unabhängigen Knotenmenge
problemlos hinzunehmen:
G − N[v]
G − N[u1 ]
G − N[u2 ]
G − N[uΔ(v) ]
miss(G) = max{miss(G − N[u]) | u ∈ N[v]} + 1
11
Platzkomplexität
12
Die Komplexitätsklasse PSPACE
Definition:
Sei M eine deterministische oder eine nichtdeterministische
Turing-Maschine über einem Alphabet Σ. Die Turing-Maschine M
heißt polynomiell platzbeschränkt, falls es ein Polynom p gibt, so
dass für alle n ∈ N0 und alle w ∈ Σ∗ mit |w| = n jede Berechnung
von M bei Eingabe w höchstens p(n) Positionen auf dem Band der
Turing-Maschine besucht.
Eine Sprache L heißt deterministisch mit polynomiellem
Platzbedarf entscheidbar, falls es eine deterministische polynomiell
platzbeschränkte Turing-Maschine gibt, die L entscheidet.
Definition:
Die Klasse der deterministisch mit polynomiellem Platzbedarf
entscheidbaren Sprachen wird mit PSPACE bezeichnet.
13
14
Die Komplexitätsklasse NPSPACE
Da eine Turingmaschine pro Berechnungsschritt höchstens eine
neue Position besuchen kann, folgt
Satz:
P ⊆ PSPACE.
Definition:
Die Klasse der nichtdeterministisch mit polynomiellem Platzbedarf
entscheidbaren Sprachen wird mit NPSPACE bezeichnet.
Ferner gilt
Satz:
PSPACE ⊆ EXP.
Beweis: Eine Turing-Maschine, die höchstens f (n) ≥ n Platz
benutzt, durchläuft höchstens f (n)2O(f (n)) verschiedene
Konfigurationen. Keine Konfiguration wird zweimal erreicht,
sonst gäbe es eine Endlosschleife.
Satz: [Savitch]
Sei f : N → R eine Funktion mit f (n) ≥ n für alle n ∈ N. Falls eine
Sprache L nichtdeterministisch mit Platzbedarf f (n) entschieden
werden kann, so kann L deterministisch mit Platzbedarf O( f (n)2 )
entschieden werden.
15
Aus dem Satz von Savitch folgt
Satz:
PSPACE-Vollständigkeit
PSPACE = NPSPACE.
Da eine Turingmaschine pro Berechnungsschritt höchstens eine
neue Position besuchen kann, folgt
Satz:
16
NP ⊆ NPSPACE.
Zusammenfassend gilt somit
Satz:
P ⊆ NP ⊆ PSPACE = NPSPACE ⊆ EXP
Definition:
Eine Sprache C heißt PSPACE-vollständig, falls C ∈ PSPACE und
für alle L ∈ PSPACE gilt L P C.
Eine Sprache C heißt PSPACE-hart, falls für alle L ∈ PSPACE gilt
L P C.
17
18
Boolesche Formeln können durch das Hinzufügen von All- und
Existenzquantoren erweitert werden.
∃ X∀ Y : (X ∨ Y) ∧ (X ∨ Y)
∀ X∃ Y : (X ∨ Y) ∧ (X ∨ Y)
tqbf = {φ | φ ist eine vollständig quantifizierte Boolesche
Formel in pränexer Normalform und φ ist wahr}
Satz: tqbf ist PSPACE-vollständig.
xkcd.com
19
Beweis:
20
Wir dürfen o.B.d.A. annehmen, dass die Turing-Maschine M das
Band leert, bevor sie auf der gleichen Bandposition, auf der sie
gestartet ist, wieder hält.
Lemma: tqbf ∈ PSPACE.
Lemma: tqbf ist PSPACE-hart.
Wir betrachten den Konfigurationsgraphen
Beweisskizze:
GM,|w|
Sei L ∈ PSPACE beliebig. Dann gibt es eine deterministische
polynomiell platzbeschränkte Turing-Maschine
M = (K, Σ, Γ, δ , s, qaccept , qreject ), die L entscheidet. Ferner sei
s(n) = nk , so dass M bei jeder Eingabe w der Länge n höchstens
s(n) Positionen auf dem Band von M besucht. Zu gegebenem w
konstruieren wir eine vollquantifizierte Formel φ , die genau dann
wahr ist, wenn w ∈ L.
zu M. Sei n = |w|. Die Knoten von GM,|w| sind die Konfigurationen
von M, die die s(n) relevanten Bandpositionen umfassen. Es gibt
höchstens (2kM )s(n) solche Konfigurationen für eine Konstante kM .
Es gibt in GM,|w| eine Kante von Konfiguration c1 zu Konfiguration
c2 , wenn c2 in einem Berechnungsschritt von M aus c1 hervorgeht.
21
22
In Analogie zum Beweis von domino P sat werden
Konfiguration aus GM,|w| wie folgt durch einen Boolesche Formel
beschrieben, so dass jede Belegung der Variablen, die die Formel
erfüllt, einer Konfiguration entspricht.
Wir konstruieren teilquantifizierte Formeln φi (C1 , C2 ). Die
nichtquantifizierten Variablen in φi (C1 , C2 ) repräsentieren zwei
Konfigurationen aus GM,|w| . Legen Wahrheitswerte dieser Variablen
Konfigurationen c1 und c2 fest, so ist der resultierende Boolesche
Ausdruck genau dann wahr, wenn es in GM,|w| einen Pfad der
Länge höchstens 2i von c1 nach c2 gibt.
Es gibt Variablen Xσj für alle 1 ≤ j ≤ s(n) und alle σ ∈ Γ. Ferner
Variablen Xql für alle 1 ≤ l ≤ s(n) und alle q ∈ K.
Variable Xσj hat Wahrheitswert 1 genau dann wenn σ das Symbol
auf der j-ten Bandposition ist. Xql ist 1 genau dann wenn sich der
Schreib-/Lesekopf auf der l-ten Bandposition befindet und M im
Zustand q ist.
23
⎛
⎝
⎛
σ ∈Γ
Xσj
1≤j≤s(n) σ =σ ∈Γ
∧⎝
⎛
1≤j≤s(n)
∧⎝
⎛
1≤j≤s(n)
∧⎝
q∈K
Xqj
⎞
⎠
Xσj
∨ Xσj ∧⎝
j
Xq ∨ Xqj
j
1≤j≤s(n) q=q ∈K
⎠
⎞
⎠
φ0 (C1 , C2 ) ist nun eine Boolesche Formel, die nach
Variablenbelegung, die Konfigurationen c1 und c2 repräsentiert, zu
einem Booleschen Ausdruck führt, der genau dann wahr ist, falls
c1 = c2 oder c2 in einem Berechnungsschritt aus c1 hervorgeht.
⎞
⎛
j
j
⎝
Xσ = Yσ ⎠
⎛
⎞
⎠
1≤j=j ≤s(n) q∈K
⎛
⎞
24
Xq ∨ Xqj ⎞
⎠
∧⎝
⎛
∨⎝
1≤j≤s(n) σ ∈Γ
⎞
Xqj = Yqj ⎠
1≤j≤s(n) q∈K
1≤j≤s(n) (q,σ )
⎞
(
. . . )⎠
25
c2 geht in höchstens 2i Schritten aus c1 hervor, falls es eine
Zwischenkonfiguration c gibt, die von c1 aus in höchstens 2i−1
Schritten erreicht wird und von der aus c2 in höchstens 2i−1
Schritten erreicht wird.
Sei cstart die Startkonfiguration bei Eingabe w und caccept die
eindeutige akzeptierende Haltekonfiguration.
Die vollquantifizierte Formel φ = φkM ·s(n) (cstart , caccept ), die aus
φkM ·s(n) (C1 , C2 ) entsteht, indem wir die Variablen so durch
Wahrheitswerte belegen, dass cstart beziehungsweise caccept
repräsentiert werden, ist genau dann wahr, wenn w ∈ L(M). Sie
kann in polynomieller Zeit konstruiert werden.
φi (C1 , C2 ) ist, in abkürzender Schreibweise, folgende
teilquantifizierte Formel:
∃ C ∀ D1 ∀ D2
26
∨ (D1 = C1 ∧ D2 = C )
∨ (D1 = C ∧ D2 = C2 )
⇒ φi−1 (D1 , D2 )
Würden wir in obigem Beweis
φi (C1 , C2 ) = ∃C (φi−1 (C1 , C ) ∧ φi−1 (C , C2 ))
setzen, hätte unsere Formel exponentielle Länge in n = |w|, könnte
also nicht in polynomieller Zeit konstruiert werden.
Wie zuvor sind die zu C1 und C2 gehörigen Variablen nicht
quantifiziert.
27
28
Gewinnstrategien in Zweipersonenspielen
Formelspiel:
Zu quantifizierten Booleschen Formel in prenexer Normalform lässt
sich ein 2-Personenspiel ableiten: Die Quantoren einer gegebenen
Formel werden von links nach rechts abgearbeitet. Bei einem Existenzquantor ∃ darf Spieler E den Wahrheitswert der quantifizierten
Variablen festlegen, bei einem Allquantor ∀ darf Spieler A den Wert
der quantifizierten Variablen festlegen. E gewinnt, falls die Teilformel
ohne die Quantoren bei der gewählten Belegung erfüllt ist, ansonsten
gewinnt A.
formula-game = {φ | φ ist eine quantifizierte Boolesche Formel,
für deren assoziiertes 2-Personenspiel Spieler E
eine Gewinnstrategie besitzt}
Lemma:
formula-game ist in PSPACE.
Lemma:
tqbf P
formula-game.
Satz:
formula-game ist PSPACE-vollständig.
Herunterladen