Approximative Algorithmen

Werbung
Approximative Algorithmen
Gütegarantien (contd.)
Lösungsansätze für schwierige kombinatorische Optimierungsprobleme:
Es gilt immer:
• Exakte Verfahren, wie z.B. Enumeration, Branch-and-Bound
• für Minimierungsprobleme: ε ≥ 1,
• Heuristische Verfahren
liefern in akzeptabler Zeit hoffentlich gute“ Näherungslösungen
”
• Approximative Algorithmen
sind heuristische Verfahren mit Gütegarantien
• für Maximierungsprobleme: ε ≤ 1,
• ε=1
⇔
A ist ein exakter Algorithmus
1
Gütegarantien
3
Bin-Packing Problem – Packen von Kisten
• Sei A ein Algorithmus, der für jede Probleminstanz P eines
Problems Π eine gültige Lösung
(NP-schwer)
• mit Lösungswert cA(P ) > 0 liefert.
• Sei copt(P ) > 0 der Wert der Optimallösung.
Gegeben:
• Für Minimierungsprobleme gilt: Falls
• Gegenstände 1, . . . , N der Größe wi
cA(P )
≤ε
∀P ∈ Π, ε > 0
copt(P )
dann ist A ein ε-approximativer Algorithmus und
die Zahl ε heißt Gütegarantie.
)
• Für Maximierungsprobleme: ccA(P
≥ε
opt (P )
• beliebig viele Kisten der Größe K
Gesucht:
∀P ∈ Π, ε > 0
• Finde kleinste Anzahl von Kisten, die alle Gegenstände aufnehmen.
2
4
Bin-Packing – Beispiel
Analyse der Gütegarantie von FF
Theorem:
• K = 101
• 37 Gegenstände:
Anzahl
7×
7×
3×
10×
10×
Es gilt cFF(P ) ≤ 2copt(P ) + 1
∀P ∈ Π.
Beweis:
wi
6
10
16
34
51
• Offensichtlich: Jede FF-Lösung füllt alle bis auf eine der Kisten
mindestens bis zur Hälfte. D.h., ∀P ∈ Π gilt:
cFF(P ) ≤
PN
j=1 wj
K/2
+1
• Da
N
X
• Optimale Lösung:
3× 51 34 16
7× 51 34 10
6
→ copt(P ) = 10
wj ≤ Kcopt(P )
j=1
P
= 101
P
folgt
= 101
cFF(P ) ≤ 2copt(P ) + 1
⇒
cFF(P )
copt(P )
≤
2+
1
copt(P )
5
7
First Fit Heuristik (FF)
Betrachte Gegenstände in beliebiger Reihenfolge:
Jeder Gegenstand wird in die erstmögliche Kiste gelegt, in die er passt.
Beispiel:
1
× (7×) 6 (5×)10
1
× (2×)10 (3×)16
5
× (2×)34
10
× (1×)51
P
= 92
P
= 68
P
= 68
P
= 51
Analyse der Gütegarantie von FF (contd.)
• Man kann sogar noch eine schärfere Güte zeigen.
Es gilt (ohne Beweis):
cFF(P )
17
2
<
+
copt(P )
10
copt(P )
∀P ∈ Π
• Weiters kann man zeigen, dass 17/10 der asymptotisch beste
Approximationsfaktor für FF ist.
→ 17 Kisten
cF F (P1)
17
=
copt(P1)
10
6
8
Spanning-Tree-Heuristik (ST) für das sym. TSP
(1) Bestimme minimalen aufspannenden Baum B von Kn.
Gütegarantie für ST-Heuristik
(2) Verdopple alle Kanten aus B → Graph (V, B2).
Man kann zeigen:
(3) Bestimme eine Eulertour F im Graphen (V, B2).
Gib dieser Tour eine Orientierung,
wähle einen Knoten i ∈ V , markiere i, setze p = i, T = ∅
Gibt es ein ε > 1 und einen polynomiellen Algorithmus A,
)
der für jedes symmetrische TSP eine Tour TA liefert mit ccA(P
≤ ε,
(P )
(4) Sind alle Knoten markiert, setze T = T ∪ {(p, i)} → STOP;
T ist die Ergebnis-Tour.
opt
dann ist P=NP.
(5) Laufe von p entlang der Orientierung von F bis ein unmarkierter
Knoten q erreicht ist.
Setze T = T ∪ {(p, q)}, markiere q, setze p = q und gehe zu (4).
Theorem: Das Problem, das symmetrische TSP für beliebiges ε > 1
zu approximieren ist NP-schwierig (ohne Beweis).
9
Spanning-Tree-Heuristik (ST)
Gütegarantie für ST-Heuristik (contd.)
W
ABER:
W
D
A
D
A
K
Ein TSP heißt metrisch wenn für die Distanzmatrix C die
Dreiecksungleichung gilt, d.h. für alle Knoten i, j, k gilt
K
B
B
F
cik ≤ cij + cjk .
F
W
Theorem:
W
D
A
11
Für das metrische TSP und die ST-Heuristik gilt:
D
A
K
cST(P )
≤2
copt(P )
K
Beweis:
B
∀P ∈ Π.
Es gilt
B
F
cST(P ) ≤ cB2 (P ) = 2cB (P ) ≤ 2copt(P ).
F
10
12
Gütegarantie für CH-Heuristik
Christophides-Heuristik (CH) (1976)
Theorem: Für das euklidische TSP und die CH-Heuristik gilt:
Wie ST-Heuristik, aber (2) →
cCH(P )
3
≤
copt(P )
2
∀P ∈ Π
(2’) Sei W die Menge der Knoten in (V, B) mit ungeradem Grad.
Beweis:
a) Bestimme im von W induzierten Untergraphen von Kn ein
perfektes Matching M kleinsten Gewichts.
• Seien i1, i2, . . . , i2M die Knoten von B mit ungeradem Grad und
zwar so nummeriert, wie sie in einer optimalen Tour Topt
vorkommen, d.h. Topt = (i1, . . . , i2, . . . , i2M , . . .).
b) Setze B2 = B ∪ M .
• Sei M1 = {(i1, i2), (i3, i4), . . .} und M2 = {(i2, i3), . . . , (i2M , i1)}.
Es gilt:
Perfektes Matching: Kantenmenge, die jeden Knoten genau 1× enthält
copt(P ) ≥ cM1 (P ) + cM2 (P ) ≥ cM (P ) + cM (P )
13
15
Christophides-Heuristik (CH)
W
W
A
Gütegarantie für CH-Heuristik (contd.)
D
D
A
K
K
B
B
• Weiters gilt:
F
F
W
W
D
A
3
1
cCH (P ) ≤ cB2 (P ) = cB (P ) + cM (P ) ≤ copt(P ) + copt(P ) = copt(P )
2
2
D
A
K
B
K
B
F
F
14
16
Weiteres
• Arora (1996) zeigte, dass das euklidische TSP beliebig nahe
approximiert werden kann:
1
Eine beliebige Gütegarantie ε > 1 kann mit Laufzeit O N ε−1
erreicht werden.
• Eine solche Familie von Approximationsalgorithmen wird als
Polynomial Time Approximation Scheme (PTAS) bezeichnet.
• Für metrische TSP kann es kein PTAS geben wenn P6=NP.
• In der Praxis liefern Konstruktionsheuristiken wie die CH-Heuristik
meist Lösungen mit 10-15% Abweichung vom Optimum.
17
Herunterladen