Gliederung der Vorlesung - fbi.h

Werbung
Kap. 6: Vollständige Approximationsschemata
Gliederung der Vorlesung
1
Motivation und Einordnung
2
Begriffe und Notationen
3
Grundlagen aus der Komplexitätstheorie
4
Approximationsalgorithmen konstanter Güte
5
Approximationsschemata
6
Vollständige Approximationsschemata
7
Approximationsalgorithmen nichtkonstanter Güte
8
Entwurfstechniken
Steffen Lange
Approximationsalgorithmen
Kap. 6, Foliensatz 2
1 / 16
Kap. 6: Vollständige Approximationsschemata
Nichtapproximierbarkeitsergebnisse
Einordnung
wir haben gesehen, dass es vollständig approximierbare NP-schwere
Optimierungsprobleme gibt
es gibt aber auch NP-schwere Optimierungsprobleme, die höchstwahrscheinlich nicht vollständig approximierbar sind
zu ihnen gehören die so genannten streng NP-schweren
Optimierungsprobleme
für streng NP-schweren Optimierungsproblemen gibt es höchstwahrscheinlich keine “halbwegs” effizienten Lösungsalgorithmen
Anmerkung
der Lösungsalgorithmus Exact für MaxKnapsack’ ist ein “halbwegs”
effizienter Lösungsalgorithmus
Steffen Lange
Approximationsalgorithmen
Kap. 6, Foliensatz 2
2 / 16
Kap. 6: Vollständige Approximationsschemata
Nichtapproximierbarkeitsergebnisse
Hilfsbegriffe
ein Optimierungsproblem Π = (I, f , w ) ist ein natürlichzahliges
Optimierungsproblem, wenn
alle Zahlen, die in den Beschreibungen der Probleminstanzen
vorkommen, natürliche Zahlen sind
die Gütefunktion w jeder zulässigen Lösung eine natürliche Zahl
zuordnet
für jede Instanz I bezeichnen wir im Folgenden mit Max(I ) die
größte natürliche Zahl, die in einer möglichst platzsparenden
Beschreibung von I binär kodiert vorkommt
Anmerkung
analog zu MaxKnapsack gibt es für jedes bisher betrachtete
Optimierungsproblem eine äquivalente natürlichzahige Variante
Steffen Lange
Approximationsalgorithmen
Kap. 6, Foliensatz 2
3 / 16
Kap. 6: Vollständige Approximationsschemata
Nichtapproximierbarkeitsergebnisse
Illustration
Beispiel
sei I = (O, s, p, b) eine Instanz von MaxKnapsack’ mit |O| = n
da die Zahl n in einer möglichst platzsparenden Beschreibung von I
nicht binär kodiert vorkommt und s(o) ≤ b für alle o ∈ O gilt, gilt
Max(I ) := max{pmax , b} mit pmax := {p(oi ) | oi ∈ O}
Beispiel
sei I = (M, J, t) eine Instanz der natürlichzahligen Variante von
MinJobScheduling mit |M| = m und |J| = n
da nur die Zahl m in einer möglichst platzsparenden Beschreibung
von I binär kodiert vorkommt, gilt Max(I ) := max{m, tmax } mit
tmax := {t(Ji ) | Ji ∈ J}
Steffen Lange
Approximationsalgorithmen
Kap. 6, Foliensatz 2
4 / 16
Kap. 6: Vollständige Approximationsschemata
Nichtapproximierbarkeitsergebnisse
Zentraler Begriff
Definition
Ein Lösungsalgorithmus A für ein Optimierungsproblem Π = (I, f , w )
ist ein pseudo-polynomieller Algorithmus, wenn es ein Polynom p gibt,
so dass für alle Instanzen I ∈ I gilt:
A benötigt höchstens O(p(|I |, Max(I ))) Rechenschritte, um die
Instanz I zu verarbeiten.
Anmerkung
pseudo-polynomielle Lösungsalgorithmen entsprechen unseren “halbwegs”
effizienten Lösungsalgorithmen
Steffen Lange
Approximationsalgorithmen
Kap. 6, Foliensatz 2
5 / 16
Kap. 6: Vollständige Approximationsschemata
Nichtapproximierbarkeitsergebnisse
Illustration
Beispiel
wir betrachten nochmal das Maximierungsproblem MaxKnapsack’
und den Lösungsalgorithmus Exact
um eine Instanz I = (O, s, p, b) zu verarbeiten, benötigt Exact nur
O(n2 · pmax ) Rechenschritte
da n ≤ |I | und pmax ≤ Max(I ) gilt, werden nur O(|I |2 · Max(I ))
Rechenschritte benötigt
also ist Exact ein pseudo-polynomieller Lösungsalgorithmus
Anmerkung
eine Liste der Länge 2n + 1, die für jedes o ∈ O die beiden Zahlen s(o) und
p(o) sowie die Zahl b binär kodiert enthält, erlaubt es I zu beschreiben
Steffen Lange
Approximationsalgorithmen
Kap. 6, Foliensatz 2
6 / 16
Kap. 6: Vollständige Approximationsschemata
Nichtapproximierbarkeitsergebnisse
Zentraler Begriff
Definition
Ein Optimierungsproblem Π = (I, f , w ) ist streng NP-schwer, wenn es ein
Polynom q gibt, so dass gilt:
Das Teilproblem Πq = (Iq , f , w ) von Π ist bereits ein NP-schweres
Optimierungsproblem.
Anmerkung
Iq enthält alle Instanzen I von I mit Max(I ) ≤ q(|I |)
Steffen Lange
Approximationsalgorithmen
Kap. 6, Foliensatz 2
7 / 16
Kap. 6: Vollständige Approximationsschemata
Nichtapproximierbarkeitsergebnisse
Illustration
Beispiel
wir betrachten jetzt die natürlichzahlige Variante von
Min∆TravelingSalesman
wir wissen, dass bereits der folgende Spezialfall dieses Optimierungsproblems NP-schwer ist
alle Instanzen I = (G , g ) sind vollständige Graphen mit mindestens
zwei Knoten, deren Kanten das Gewicht eins oder zwei haben
da für jede Instanz I = (G , g ) offensichtlich Max(I ) ≤ |I | gilt, ist
Min∆TravelingSalesman streng NP-schwer
Anmerkung
eine Liste, in der für jede Kante von G binär kondiert ist, ob sie das
Gewicht eins hat (oder nicht), erlaubt es I zu beschreiben
Steffen Lange
Approximationsalgorithmen
Kap. 6, Foliensatz 2
8 / 16
Kap. 6: Vollständige Approximationsschemata
Nichtapproximierbarkeitsergebnisse
Das Hauptresultat
Theorem
Sei Π ein streng NP-schweres Optimierungsproblem, so dass für alle
Instanzen I von Π gilt, dass die Güte einer optimalen Lösung Opt(I )
für I polynomiell in |I | und Max(I ) beschränkt ist. Dann gilt:
Aus P 6= NP folgt, dass Π nicht vollständig approximierbar ist.
Anmerkung
also ist MaxKnapsack’ kein streng NP-schweres Optimierungsproblem
Steffen Lange
Approximationsalgorithmen
Kap. 6, Foliensatz 2
9 / 16
Kap. 6: Vollständige Approximationsschemata
Nichtapproximierbarkeitsergebnisse
Begründung
es genügt offenbar, die folgenden beiden Aussagen zu verifizieren
Aussage 1
Sei Π ein streng NP-schweres Optimierungsproblem. Dann gilt:
Aus P 6= NP folgt, dass es keinen pseudo-polynomiellen
Lösungsalgorithmus für Π gibt.
Aussage 2
Sei Π ein Optimierungsproblem, so dass für alle Instanzen I von Π gilt,
dass die Güte einer optimalen Lösung Opt(I ) für I polynomiell in |I | und
Max(I ) beschränkt ist. Dann gilt:
Wenn es keinen pseudo-polynomiellen Lösungsalgorithmus für Π gibt,
so ist Π auch nicht vollständig approximierbar.
Steffen Lange
Approximationsalgorithmen
Kap. 6, Foliensatz 2
10 / 16
Kap. 6: Vollständige Approximationsschemata
Nichtapproximierbarkeitsergebnisse
Begründung für Aussage 1
es genügt offenbar, die Kontraposition von Aussage 1 zu beweisen,
d.h. es ist folgender Satz zu zeigen
Satz 1
Sei Π ein streng NP-schweres Optimierungsproblem. Dann gilt:
Wenn es einen pseudo-polynomiellen Lösungsalgorithmus für Π gibt,
so gilt P = NP.
Steffen Lange
Approximationsalgorithmen
Kap. 6, Foliensatz 2
11 / 16
Kap. 6: Vollständige Approximationsschemata
Nichtapproximierbarkeitsergebnisse
Begründung für Aussage 1 (cont.)
sei Π = (I, f , w ) ein streng NP-schweres Optimierungsproblem, A ein
pseudo-polynomieller Lösungsalgorithmus für Π und q ein Polynom,
so dass das Teilproblem Πq = (Iq , f , w ) NP-schwer ist
es genügt zu zeigen, dass A ein effizienter Lösungsalgorithmus für das
Teilproblem Πq = (Iq , f , w ) ist
sei I ∈ Iq und p ein Polynom, das die Rechenzeit von A beschränkt
A benötigt nur O(p(|I |, Max(I ))) Rechenschritte, um I zu verarbeiten
und eine optimale Lösung zu bestimmen
da Max(I ) ≤ q(|I |) gilt, benötigt A folglich nur O(p(|I |, q(|I |)))
Rechenschritte
Steffen Lange
Approximationsalgorithmen
Kap. 6, Foliensatz 2
12 / 16
Kap. 6: Vollständige Approximationsschemata
Nichtapproximierbarkeitsergebnisse
Begründung für Aussage 2
es genügt offenbar, die Kontraposition von Aussage 2 zu beweisen,
d.h. es ist folgender Satz zu zeigen
Satz 2
Sei Π ein Optimierungsproblem, so dass für alle Instanzen I von Π gilt,
dass die Güte einer optimalen Lösung Opt(I ) für I polynomiell in |I | und
Max(I ) beschränkt ist. Dann gilt:
Wenn Π vollständig approximierbar ist, so gibt es auch einen
pseudo-polynomiellen Lösungsalgorithmus für Π.
Anmerkung
wir betrachten nur den Fall, dass Π ein Maximierungsproblem ist
Steffen Lange
Approximationsalgorithmen
Kap. 6, Foliensatz 2
13 / 16
Kap. 6: Vollständige Approximationsschemata
Nichtapproximierbarkeitsergebnisse
Begründung für Aussage 2 (cont.)
sei Π = (I, f , w ) ein Maximierungsproblem, (Aε )ε>0 ein vollständiges Approximationsschema für Π und q ein Polynom, so
dass w (Opt(I )) < q(|I |, Max(I )) für alle Instanzen I ∈ I gilt
es genügt zu zeigen, dass der folgende Algorithmus B ein
pseudo-polynomieller Lösungsalgorithmus für Π ist
B verarbeitet eine Instanz I ∈ I wie folgt
es werden |I | und Max(I ) bestimmt
1
gesetzt
es wird ε := q(|I |,Max(I
))
mit Aε wird eine zulässige Lösung S für die Instanz I bestimmt
und anschließend ausgegeben
Steffen Lange
Approximationsalgorithmen
Kap. 6, Foliensatz 2
14 / 16
Kap. 6: Vollständige Approximationsschemata
Nichtapproximierbarkeitsergebnisse
Begründung für Aussage 2 (cont.)
da (Aε )ε>0 ein vollständiges Approximationsschema ist, gilt für den
ausgewählten Algorithmus Aε
Aε benötigt O(p(|I |, ε1 )) Rechenschritte, um die Instanz I zu
verarbeiten und eine zulässige Lösung S zu bestimmen
um |I |, Max(I ) und ε zu bestimmen, genügen garantiert
O(q(|I |, Max(I ))3 ) Rechenschritte
also reichen O(p(|I |, q(|I |, Max(I )))) + O(q(|I |, Max(I ))3 )
Rechenschritte, um mit B die zulässige Lösung S zu bestimmen
Anmerkung
p ist ein Polynom, das die Rechenzeit von Aε beschränkt
Steffen Lange
Approximationsalgorithmen
Kap. 6, Foliensatz 2
15 / 16
Kap. 6: Vollständige Approximationsschemata
Nichtapproximierbarkeitsergebnisse
Begründung für Aussage 2 (cont.)
da (Aε )ε>0 ein vollständiges Approximationsschema ist, gilt für die
vom ausgewählten Algorithmus Aε bestimmte zulässige Lösung S
w (S) ≥ (1 − ε) · w (Opt(I )), und damit auch
ε · w (Opt(I )) ≥ w (Opt(I )) − w (S)
aus der Wahl von ε und w (Opt(I )) < q(|I |, Max(I )) folgt nun
1 > w (Opt(I )) − w (S)
da w (Opt(I )) − w (S) eine natürliche Zahl sein muss, erhalten wir
w (S) = w (Opt(I )), d.h. B bestimmt eine optimale Lösung S
Anmerkungen
offensichtlich gilt:
1
q(|I |,Max(I ))
Steffen Lange
· q(|I |, Max(I )) = ε · q(|I |, Max(I )) > ε · w (Opt(I ))
Approximationsalgorithmen
Kap. 6, Foliensatz 2
16 / 16
Herunterladen