Randomisierte Algorithmen - 4. Routing in Hyperwürfeln

Werbung
Randomisierte Algorithmen
Randomisierte Algorithmen
4. Routing in Hyperwürfeln
Thomas Worsch
Fakultät für Informatik
Karlsruher Institut für Technologie
Wintersemester 2016/2017
1 / 71
Routing in Hyperwürfeln
Überblick
Überblick
Das Problem und ein deterministischer Algorithmus
Markov- und Chebyshev-Ungleichung
Chernoff-Schranken
Erster randomisierter Algorithmus
Die probabilistische Methode
Zweiter „randomisierter Algorithmus“
2 / 71
Routing in Hyperwürfeln
Das Problem und ein deterministischer Algorithmus
Überblick
Das Problem und ein deterministischer Algorithmus
Markov- und Chebyshev-Ungleichung
Chernoff-Schranken
Erster randomisierter Algorithmus
Die probabilistische Methode
Zweiter „randomisierter Algorithmus“
3 / 71
Routing in Hyperwürfeln
Das Problem und ein deterministischer Algorithmus
4.1 Definition Hyperwürfel
I
I
I
d ≥ 1: d-dimensionaler Hyperwürfel Hd = (Vd , Ed ) mit
Knotenmenge Vd = {0, 1}d und
Kantenmenge Ed : Knoten x und y verbunden, wenn
Hamming-Distanz 1
4 / 71
Routing in Hyperwürfeln
Das Problem und ein deterministischer Algorithmus
4.2 Beobachtungen
I
I
I
|Vd | = N = 2d
|Ed | = d · 2d−1 ∈ Θ(N log N )
Hd hat Durchmesser
5 / 71
Routing in Hyperwürfeln
Das Problem und ein deterministischer Algorithmus
4.2 Beobachtungen
I
I
I
|Vd | = N = 2d
|Ed | = d · 2d−1 ∈ Θ(N log N )
Hd hat Durchmesser d = log N , denn
für x = (x 1x 2 · · · xd ) und y = (y1y2 · · · yd )
5 / 71
Routing in Hyperwürfeln
Das Problem und ein deterministischer Algorithmus
4.2 Beobachtungen
I
I
I
|Vd | = N = 2d
|Ed | = d · 2d−1 ∈ Θ(N log N )
Hd hat Durchmesser d = log N , denn
für x = (x 1x 2 · · · xd ) und y = (y1y2 · · · yd ) ist
(x 1x 2x 3 · · · xd−1xd )
(y1x 2x 3 · · · xd−1xd )
(y1y2x 3 · · · xd−1xd )
..
.
(y1y2y3 · · · yd−1xd )
(y1y2y3 · · · yd−1yd )
ein Weg von x nach y (nach Entfernung aller Doppelten).
5 / 71
Routing in Hyperwürfeln
Das Problem und ein deterministischer Algorithmus
4.3 Problemstellung
I
I
I
Knoten von Hd seien Prozessoren.
Routing: Jeder Knoten x habe „Nachricht“ (oder „Paket“)
vorliegen, die auf einem Pfad in Hd zu Zielknoten f (x)
transportiert werden muss.
Permutationsrouting: f : V → V ist eine Bijektion, beschreibt
also eine Permutation der Knoten.
6 / 71
Routing in Hyperwürfeln
Das Problem und ein deterministischer Algorithmus
4.3 Problemstellung
I
I
I
I
I
I
Knoten von Hd seien Prozessoren.
Routing: Jeder Knoten x habe „Nachricht“ (oder „Paket“)
vorliegen, die auf einem Pfad in Hd zu Zielknoten f (x)
transportiert werden muss.
Permutationsrouting: f : V → V ist eine Bijektion, beschreibt
also eine Permutation der Knoten.
Einschränkung: in jedem Schritt kann über jede Kante
maximal ein Paket transportiert werden.
für Staus: FIFO-Warteschlangen
gesucht: für jedes Paar (x, f (x)) ein
„Reiseplan“ (Kanten, Zeitpunkte) von x nach f (x),
so dass möglichst schnell alle Pakete am Ziel
6 / 71
Routing in Hyperwürfeln
Das Problem und ein deterministischer Algorithmus
4.4 Einschränkung
Zur Vermeidung einer zentralen Instanz, die die Transporte
organisieren muss:
I
I
I
hier nur Algorithmen, die oblivious bzw. datenunabhängig sind
Das heißt: die Route für Paket x hängt nicht von den Routen
anderer Pakete ab.
Algorithmus also vollständig charakterisiert durch
die N 2 denkbaren Pfade Px,y
7 / 71
Routing in Hyperwürfeln
Das Problem und ein deterministischer Algorithmus
4.5 Bit-Fixing-Algorithmus
Von x = (x 1x 2 · · · xd ) nach y = (y1y2 · · · yd ) benutze
I
Pfad, der sich aus
(x 1x 2x 3 · · · xd−1xd )
(y1x 2x 3 · · · xd−1xd )
(y1y2x 3 · · · xd−1xd )
..
.
I
(y1y2y3 · · · yd−1xd )
(y1y2y3 · · · yd−1yd )
durch Streichen aller Doppelten ergibt.
datenunabhängig
8 / 71
Routing in Hyperwürfeln
Das Problem und ein deterministischer Algorithmus
4.6 „Matrix-Transposition“ mit dem
Bit-Fixing-Algorithmus
I
I
I
I
I
f (x 1 · · · xd/2xd/2+1 · · · xd ) = (xd/2+1 · · · xd x 1 · · · xd/2 )
Problem: fixiere beliebiges Bitmuster zd/2+1 · · · zd .
√
Transport der 2d/2 = N Pakete
von allen Knoten x 1 · · · xd/2zd/2+1 · · · zd
über gleichen Knoten zd/2+1 · · · zd zd/2+1 · · · zd
pro Schritt maximal d = log N Pakete transportierbar
√
also untere Schranke von N /log N Schritten
I
viel größer als der Durchmesser log N
9 / 71
Routing in Hyperwürfeln
Das Problem und ein deterministischer Algorithmus
4.7 Satz
Zu jedem deterministischen datenunabhängigen Algorithmus für
Permutationsrouting in einem Graphen mit N Knoten, die alle
Ausgangsgrad d√haben, gibt es eine Permutation, für die der
Algorithmus Ω( N /d) Schritte benötigt.
10 / 71
Routing in Hyperwürfeln
Das Problem und ein deterministischer Algorithmus
4.8 Beweis
I
I
I
A: deterministischer datenunabhängiger Algorithmus für
Permutationsrouting
Pu,v : von A für ein Paket von u nach v gewählter Pfad
Beweisidee:
I
I
I
I
I
finde eine Kante e
für die „große“ Mengen von Quellknoten U 0 = {u1, . . . , uk }
und zugehörigen Zielknoten V 0 = {v1, . . . , vk } existieren
so dass alle Pfade Pui ,vi über e führen.
Da in jedem Schritt über e nur je ein Paket in jede Richtung
transportiert kann, folgt untere Schranke von k/2.
√
Wir werden sehen, dass man k = N /d solche Pfade finden
kann.
11 / 71
Routing in Hyperwürfeln
Das Problem und ein deterministischer Algorithmus
4.8 Beweis (2)
I
I
I
I
Betrachte beliebigen Knoten v und alle N − 1 Pfade Pu,v von
anderen u zu ihm.
Für k ≥ 1 sei Sk (v) die Menge aller Kanten, durch die
mindestens k dieser Pfade führen.
Sk∗ (v) sei die Menge aller Endknoten der Kanten in Sk (v).
Offensichtlich ist |Sk∗ (v)| ≤ 2|Sk (v)|.
12 / 71
Routing in Hyperwürfeln
Das Problem und ein deterministischer Algorithmus
4.8 Beweis (2)
I
I
I
I
I
I
I
Betrachte beliebigen Knoten v und alle N − 1 Pfade Pu,v von
anderen u zu ihm.
Für k ≥ 1 sei Sk (v) die Menge aller Kanten, durch die
mindestens k dieser Pfade führen.
Sk∗ (v) sei die Menge aller Endknoten der Kanten in Sk (v).
Offensichtlich ist |Sk∗ (v)| ≤ 2|Sk (v)|.
Da N − 1 Pfade zu v hinführen, aber nur d Kanten, müssen
über mindestens eine dieser Kanten mindestens Nd−1 Pfade
führen.
Also ist für k ≤ Nd−1 auch v ∈ Sk∗ (v).
Von nun an stets k ≤
N −1
d
und daher v ∈ Sk∗ (v).
12 / 71
Routing in Hyperwürfeln
Das Problem und ein deterministischer Algorithmus
4.8 Beweis (3)
I
Zeige:
|V \ Sk∗ (v)| ≤ (d − 1)(k − 1)|Sk∗ (v)|
I
I
Wegen der eben gemachten Annahme führt jeder Pfad Pu,v
von einem Knoten u ∈ V \ Sk∗ (v) „nach Sk∗ (v) hinein“.
Für jeweils erstes „Hineinführen“ über eine Kante
(w, w 0) ∈ V \ Sk∗ (v) × Sk∗ (v) gilt:
I
I
I
I
(1)
Es gibt |Sk∗ (v)| mögliche w 0.
zu jedem w 0 maximal d − 1 Kanten „von außerhalb“
über solche Kante (w, w 0) führen höchstens k − 1 Pfade
folglich „außerhalb“ von Sk∗ (v), in V \ Sk∗ (v), nur in (1)
behauptete Anzahl von Knoten
13 / 71
Routing in Hyperwürfeln
Das Problem und ein deterministischer Algorithmus
4.8 Beweis (4)
I
Folglich gilt für jedes k ≤ (N − 1)/d:
und daher
I
N = |V \ Sk∗ (v)| + |Sk∗ (v)|
≤ (d − 1)(k − 1)|Sk∗ (v)| + |Sk∗ (v)|
≤ ((d − 1)(k − 1) + 1) · 2|Sk (v)|
≤ 2kd |Sk (v)|
N
|Sk (v)| ≥
2kd
Summation über alle Knoten ergibt
Õ
v∈V
|Sk (v)| ≥
N2
.
2kd
14 / 71
Routing in Hyperwürfeln
Das Problem und ein deterministischer Algorithmus
4.8 Beweis (5)
I
Da es aber maximal Nd/2 Kanten im Graphen gibt, muss
mindestens eine Kante in mindestens
N 2 /2kd
N
= 2
Nd/2
kd
I
I
I
Mengen Sk (v) vorkommen.
Wir wählen
√ nun k so, dass diese Anzahl gerade wieder k ist,
also k = N /d.
Dieses k ist kleiner gleich (N − 1)/d.
√
Es sei nun e eine Kante, die in k = N /d Mengen
Sk (v1 ), . . . , Sk (vk ) liegt.
15 / 71
Routing in Hyperwürfeln
Das Problem und ein deterministischer Algorithmus
4.8 Beweis (6)
I
I
I
I
I
√
Es sei nun e eine Kante, die in k = N /d Mengen
Sk (v1 ), . . . , Sk (vk ) liegt.
Es sei u1 einer der k Knoten, für die Pu1,v1 über e führt.
Nach Wahl von k gibt es zu jedem vi mindestens k Knoten,
für die Pui ,vi über e führt.
Daher können wir induktiv ui festlegen, indem wir verlangen,
dass ui einer der mindestens k − (i − 1) Knoten ungleich
u1, . . . , ui−1 sei, für die Pui ,vi über e führt.
√
Also gibt es mindestens k = N /d Pfade Pu1,v1 , . . . , Puk ,vk ,
die alle über die gleiche Kante e führen.
16 / 71
Routing in Hyperwürfeln
Das Problem und ein deterministischer Algorithmus
4.9 Bemerkung
I
I
Frage: Gibt es zumindest einen deterministischen
datenunabhängigen Algorithmus, für den nur sehr wenige
Permutationen tatsächlich „sehr schlimm“ sind?
Antwort: Für jeden deterministischen
datenunabhängigen
√
Algorithmus√gibt es sogar ( N /d)! Permutationen, die
mindestens N /2d Routingschritte nötig machen.
17 / 71
Routing in Hyperwürfeln
Markov- und Chebyshev-Ungleichung
Überblick
Das Problem und ein deterministischer Algorithmus
Markov- und Chebyshev-Ungleichung
Chernoff-Schranken
Erster randomisierter Algorithmus
Die probabilistische Methode
Zweiter „randomisierter Algorithmus“
18 / 71
Routing in Hyperwürfeln
Markov- und Chebyshev-Ungleichung
4.10 Satz (Markov-Ungleichung)
Es sei Y eine Zufallsvariable mit Erwartungswert E[Y ],
die nur nichtnegative Werte annehme.
Dann gilt für alle t, k ∈ R+ :
P(Y ≥ t) ≤
E[Y ]
t
bzw.
P(Y ≥ kE[Y ]) ≤
1
.
k
19 / 71
Routing in Hyperwürfeln
Markov- und Chebyshev-Ungleichung
4.11 Beweis
I
betrachte Zufallsvariable
(
X =
I
I
0
t
falls Y < t
falls Y ≥ t
dann X ≤ Y und E[X ] ≤ E[Y ]
also
t · P(Y ≥ t) ≤ E[Y ]
20 / 71
Routing in Hyperwürfeln
Markov- und Chebyshev-Ungleichung
4.12 Satz (Chebyshev-Ungleichung)
Es sei X eine Zufallsvariable mit Erwartungswert µX und
Standardabweichung σX . Dann gilt für alle t ∈ R+ :
P(|X − µX | ≥ tσX ) ≤
bzw.
1
t2
σX2
P(|X − µX | ≥ t) ≤ 2 .
t
21 / 71
Routing in Hyperwürfeln
Markov- und Chebyshev-Ungleichung
4.13 Beweis
I
I
Zufallsvariable Y = (X − µX )2 hat Erwartungswert µY = σX2 .
Nach der Markov-Ungleichung:
1
P Y ≥ t 2 µY ≤ 2 .
t
I
Die linke Seite ist aber
P Y ≥ t 2 µY = P (X − µX )2 ≥ t 2σX2
= P(|X − µX | ≥ tσX ) .
22 / 71
Routing in Hyperwürfeln
Chernoff-Schranken
Überblick
Das Problem und ein deterministischer Algorithmus
Markov- und Chebyshev-Ungleichung
Chernoff-Schranken
Erster randomisierter Algorithmus
Die probabilistische Methode
Zweiter „randomisierter Algorithmus“
23 / 71
Routing in Hyperwürfeln
Chernoff-Schranken
4.14 Problemstellung
I
I
I
I
I
Im folgenden stets: X 1, . . . , Xn unabhängige
0-1-Zufallsvariablen mit P(Xi = 1) = pi für 1 ≤ i ≤ n.
Solche Zufallsvariablen heißen auch Poisson-Versuche.
Í
Außerdem sei X = X 1 + · · · + Xn und µ = E[X ] = ni=1 pi .
Falls alle pi = p sind, spricht man auch von
Bernoulli-Versuchen, X ist dann binomialverteilt.
Gesucht: Abschätzungen für Abweichungen von X vom
Erwartungswert.
24 / 71
Routing in Hyperwürfeln
Chernoff-Schranken
4.15 Satz
Mit den Bezeichnungen wie in Punkt 4.14 gilt:
I für 0 ≤ δ :
µ
eδ
P(X ≥ (1 + δ )µ) ≤
(1 + δ )(1+δ )
I
für 1 > δ ≥ 0 also 0 < 1 − δ ≤ 1 :
P(X ≤ (1 − δ )µ) ≤
e −δ
(1 − δ )(1−δ )
µ
25 / 71
Routing in Hyperwürfeln
Chernoff-Schranken
1
exp(x)/((1+x)**(1+x))
exp(-x)/((1-x)**(1-x))
0.8
0.6
0.4
0.2
0
0
0.5
1
1.5
2
2.5
3
26 / 71
Routing in Hyperwürfeln
Chernoff-Schranken
4.16 Beobachtung
I
Für x ≥ 0 ist 1 + x ≤ e x .
27 / 71
Routing in Hyperwürfeln
Chernoff-Schranken
4.17 Beweis (von Satz 4.15)
I
I
I
I
I
sei t positiv; Markov-Ungleichung liefert:
E e tX P(X ≥ (1 + δ )µ) = P e tX ≥ e t(1+δ )µ ≤ t(1+δ )µ
e
tX
mit den Xi sind auch die e i unabhängig:
Í Î tX Î tX E e tX = E e t X i = E
e i = Ee i
tX t
E e i = pi · e t + (1 − pi ) · 1 = 1 + pi (e t − 1) ≤ e pi (e −1)
Í
Î pi (e t −1)
t
e pi (e −1)
e
P(X ≥ (1 + δ )µ) ≤ t(1+δ )µ = t(1+δ )µ
e
e !
µ
t
t
e µ(e −1)
e (e −1)
= t(1+δ )µ = t(1+δ )
e
e
wähle t = ln(1 + δ ) (positiv!)
28 / 71
Routing in Hyperwürfeln
Chernoff-Schranken
4.17 Beweis (2)
Fall P(X ≤ (1 − δ )µ) ≤ · · · für 1 > δ ≥ 0
I
I
analoge Rechnung
wähle t = − ln(1 − δ ) (positiv!)
29 / 71
Routing in Hyperwürfeln
Chernoff-Schranken
4.18 Bemerkung
I
I
In Satz 4.15 von Interesse:
µ
eδ
F (µ, δ ) =
(1 + δ )(1+δ )
für δ > −1
Betrachte statt dessen:
ln(F (µ, δ )1/µ ) = δ − (1 + δ ) ln(1 + δ ) = f (δ )
30 / 71
Routing in Hyperwürfeln
Chernoff-Schranken
4.19 Lemma
1.
2.
3.
4.
5.
6.
Für −1 < x ≤ 0 gilt: f (x) ≤ −x 2 /2.
Für 0 < x gilt: −x 2 /2 ≤ f (x).
Die Funktion д(x) = f (x)/x 2 ist monoton wachsend.
Für 0 < δ < x gilt: f (δ ) ≤ д(x)δ 2.
Für 0 < δ < 2e − 1 gilt: f (δ ) ≤ −δ 2 /5.
Für 0 < δ < 1 gilt: f (δ ) ≤ −δ 2 /3.
Beweis: rechnen
31 / 71
Routing in Hyperwürfeln
Chernoff-Schranken
4.21 Korollar
I
Für 0 ≤ δ ≤ 2e − 1 gilt:
eδ
P(X ≥ (1 + δ )µ) ≤
(1 + δ )(1+δ )
I
≤ e −δ
2 µ/5
≤ e −δ
2 µ/3
≤ e −δ
2 µ/2
Für 0 ≤ δ ≤ 1 gilt:
eδ
P(X ≥ (1 + δ )µ) ≤
(1 + δ )(1+δ )
I
µ
µ
Für 1 > δ ≥ 0 gilt:
e −δ
P(X ≤ (1 − δ )µ) ≤
(1 − δ )(1−δ )
µ
32 / 71
Routing in Hyperwürfeln
Chernoff-Schranken
4.23 Korollar
I
Für 0 ≤ δ gilt:
e (1+δ )µ
P(X ≥ (1 + δ )µ) ≤
1+δ
I
Für 2e − 1 ≤ δ gilt:
P(X ≥ (1 + δ )µ) ≤ 2−(1+δ )µ
Beweis: rechnen
33 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
Überblick
Das Problem und ein deterministischer Algorithmus
Markov- und Chebyshev-Ungleichung
Chernoff-Schranken
Erster randomisierter Algorithmus
Die probabilistische Methode
Zweiter „randomisierter Algorithmus“
34 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.25 Algorithmus
1. Für jedes Paket bx in Startknoten x wird unabhängig und
gleichverteilt zufällig ein Zwischenknoten zx gewählt.
2. Unter Verwendung des Bit-Fixing-Algorithmus
wird jedes bx von x nach zx transportiert.
3. Unter Verwendung des Bit-Fixing-Algorithmus
wird jedes bx von zx zu Zielknoten f (x) transportiert.
35 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.26 Satz
1. Die Wahrscheinlichkeit, dass jedes Paket seinen
Zwischenknoten nach spätestens 7d Schritten erreicht hat,
ist mindestens 1 − 2−5d .
2. Die Wahrscheinlichkeit, dass jedes Paket sein Ziel nach
spätestens 14d Schritten erreicht hat, ist mindestens
1 − 2/N 5.
3. Für d ≥ 3 ist der Erwartungswert für die Laufzeit von
Alg. 4.25 kleiner oder gleich 14d + 1.
36 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.27 Lemma
I
I
I
I
I
I
x Startknoten, beliebig aber fest,
zx zufällig gewählt
ρx = (e1, e2, . . . , ek ): „Bit-Fixing-Pfad“ von x nach zx
„ρy ∩ ρx “ : Menge der gemeinsamen Kanten zweier Pfaden
Sx = {by | y , x ∧ ρy ∩ ρx , ∅}
t: tatsächlicher Ankuftszeitpunkt von bx in zx ,
also aufgelaufene „Verspätung“ `x = t − k
Behauptung: `x ≤ |Sx |.
37 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.28 Beweis
I
I
I
I
I
Zwei Pfade ρx und ρy mögen Kante gemeinsam haben.
Behauptung 1: Sobald sich Pfade getrennt haben, führen sie
nicht wieder zusammen.
betrachte Knoten u und v auf Bit-Fixing-Pfad von x ; zx
der Weg von u nach v ist eindeutig festgelegt (bit fixing!)
unabhängig davon
I
I
von wo man zu u gekommen ist und
wohin es von v aus weiter geht
38 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.28 Beweis (2)
Sprechweisen:
I Paket by ∈ Sx „verlässt“ ρ x , wenn es zum letzten Mal eine
Kante von ρx benutzt.
I Behauptung 1: dieser Zeitpunkt für jedes by eindeutig
I Ein Paket habe beim Transport über ei von ρ x „Verspätung“ `,
falls Transport erst in Schritt t = i + `
I Für bx ist das wirklich die Zeitdifferenz zwischen frühest
möglicher Ankunft t = i und tatsächlicher Ankunft t = i + `
am Endpunkt von ei
I Für andere by ∈ Sx ist das nur „irgendeine“ Zahl.
39 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.28 Beweis (3)
I
I
I
Behauptung 2: Jedes Mal, wenn sich die Verspätung von bx
von ` auf ` + 1 erhöht, verlässt ein Paket by ∈ Sx den Pfad ρx
mit Verspätung `.
Wegen Behauptung 1 kann dies für jedes Paket in Sx nur ein
einziges Mal passieren.
Aus Behauptung 2 folgt also: `x ≤ |Sx |.
40 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.28 Beweis (4)
I
I
I
I
I
I
Betrachte ei , die von Paket bx zu Zeitpunkt t benutzt werden
möchte aber nicht kann, wegen anderem by
Verspätung von bx erhöht sich von ` = t − i auf ` + 1, und
das kann auch nur so passieren.
„Verspätung“ von by bei Benutzung von ei ist t − i = `
Sei t 0 letzter Zeitpunkt, zu dem ein Paket b aus Sx
Verspätung ` hat.
sei e j 0 die Kante, die b benutzen „will“; also ist t 0 − j 0 = `.
Dann verlässt auch ein Paket in Sx zu t 0 Pfad ρx :
I
I
I
Da b Kante e j 0 benutzen „will“,
wird ein Paket b 0 sicher Kante e j 0 benutzen.
Es hat offensichtlich Verzögerung t 0 − j 0 = `.
41 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.28 Beweis (5)
I
I
I
I
I
I
Würde b 0 Pfad ρx nicht verlassen, dann gäbe es b 00, das Kante
e j 0+1 zum Zeitpunkt t 0 + 1 mit Verzögerung
t 0 + 1 − (j 0 + 1) = ` benutzen würde.
Widerspruch zur Wahl von t 0:
letzter Zeitpunkt, zu dem ein Paket Verspätung ` hat.
Also verlässt b 0 Pfad ρx zum Zeitpunkt t 0.
Wir schreiben daher nun b 0 zu, bei Paket bx die Erhöhung
der Verspätung von ` auf ` + 1 verursacht zu haben.
Da b 0 den Pfad ρx verlässt und nie wieder betritt, wird so
keinem Paket doppelt Verspätungserhöhung angerechnet.
Also ist `x ≤ |Sx |.
42 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.29 Lemma
(
I
Betrachte Zufallsvariable Hxy =
I
Dann gilt:
1 falls ρx ∩ ρy , ∅
.
0 sonst
1. Die Gesamtverspätung von bx beim Eintreffen in z x ist
Í
`x ≤ y,x H xy .
Í
2. E y,x H xy ≤ d/2.
3. P(`x ≥ 6d) ≤ 2−6d .
43 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.30 Beweis
Í
1. Lemma von eben: `x ≤ |Sx | = y,x Hxy .
2. Betrachte irgendein ρx = (e1, . . . , ek ) mit k ≤ d.
I
I
Die Zufallsvariable T (e) gebe die Anzahl Pfade ρy mit y , x
an, die über eine Kante e führen.
Dann ist
k
Õ
Õ
T (ei )
H xy ≤
y,x
und
#
"
E
Õ
y,x
I
i=1
H xy ≤
k
Õ
E[T (ei )]
i=1
Zeige:
E[T (ei )] ≤ 1/2
(wegen k ≤ d folgt die Behauptung)
44 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.30 Beweis (2)
I
I
O. B. d. A. führe ei von (x 1 · · · xr 0xr +2 · · · xd ) zu
(x 1 · · · xr 1xr +2 · · · xd ).
Bit-Fixing-Algorithmus: Ein Pfad von y nach zy führt genau
dann über ei , wenn gilt:
I
I
I
I
I
y = u1 · · · ur 0x r +2 · · · xd und
zy beginnt mit x 1 · · · x r 1
Solche y , x gibt es 2r − 1.
Die Zwischenknoten werden zufällig gleichverteilt und
unabhängig gewählt,
also ist für jedes y die Wahrscheinlichkeit für das Präfix
x 1 · · · xr 1 in zy stets 2−(r +1) .
45 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.30 Beweis (3)
Also ist
E[T (ei )] =
Õ
P ρy benutzt ei
y,x
=
Õ
P ρu0xr +2 ···xd benutzt ei
u1 ···ur ,x 1 ···x r
r
−(r +1)
= (2 − 1) · 2
≤ 1/2
46 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.30 Beweis (4)
I
I
wegen der ersten beiden Punkte: E[`x ] ≤ d/2
man vergesse die T (ei ) und denke wieder an die Hxy
I
I
also Chernoff-Schranken anwendbar
da 2e − 1 < 11, liefert Korollar 4.23
Õ
P(`x ≥ 6d) ≤ P
Hxy ≥ 6d
Õ
=P
Hxy ≥ 12 · d/2
Õ
hÕ
i
Hxy
≤P
Hxy ≥ (1 + 11)E
≤ 2−12d/2 = 2−6d
47 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.26 Satz (zur Erinnerung)
1. Die Wahrscheinlichkeit, dass jedes Paket seinen
Zwischenknoten nach spätestens 7d Schritten erreicht hat,
ist mindestens 1 − 2−5d .
2. Die Wahrscheinlichkeit, dass jedes Paket sein Ziel nach
spätestens 14d Schritten erreicht hat, ist mindestens
1 − 2/N 5.
3. Für d ≥ 3 ist der Erwartungswert für die Laufzeit von
Alg. 4.25 kleiner oder gleich 14d + 1.
48 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.31 Beweis von Satz 4.26
1. Mit Wahrscheinlichkeit 1 − 2−5d alle Pakete nach ≤ 7d
Schritten am Zwischenknoten:
I
I
I
I
Wahrscheinlichkeit, dass Paket um ≥ 6d Schritte verzögert
wird, ist ≤ 2−6d .
N = 2d Pakete unabhängig voneinander transportiert:
Wahrscheinlichkeit, dass wenigstens eines um ≥ 6d Schritte
verzögert wird, ist ≤ 2d · 2−6d = 2−5d .
Zusätzlich jedes Paket über maximal d Kanten transportiert:
Wahrscheinlichkeit, dass wenigstens ein Paket erst nach
≥ 7d Schritten am Ziel ist, ≤ 2−5d .
Also: mit Wahrscheinlichkeit ≥ 1 − 2−5d alle Pakete nach
≤ 7d Schritten am Zwischenknoten.
49 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.31 Beweis von Satz 4.26 (2)
2. Mit Wahrscheinlichkeit mindestens 1 − 2/N 5 alle Pakete
nach ≤ 14d Schritten am Ziel:
I
I
I
I
I
Zweite Phase: Umkehrung der ersten Phase.
Deshalb gilt getrennt hierfür die gleiche Analyse.
Damit bei Nacheinanderausführung beider Phasen durch
ihre Überlappung keine zusätzlichen nachteiligen Effekte
auftreten, Erweiterung der erste Phase:
Jedes Paket verharrt im Zwischenknoten, bis insgesamt seit
Beginn des Routing 7d Schritte vergangen sind.
Wahrscheinlichkeit, dass alles nach ≤ 14d Schritten erledigt,
mindestens
(1 − 2−5d )(1 − 2−5d ) = 1 − 2/N 5 + 1/N 10 ≥ 1 − 2/N 5
50 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.31 Beweis von Satz 4.26 (3)
3. Für d ≥ 3 ist die erwartete Laufzeit ≤ 14d + 1.
I
I
I
Die größte Laufzeit beschränkt durch Zeit für „sequentielles
Routing“. Zeitbedarf dafür ≤ 2dN .
Für d ≥ 3 ist N ≥ 8, also 14d ≤ 2dN ,
also ist dann der Erwartungswert für die Laufzeit
≤ (1 − 2/N 5 )14d + (2/N 5 ) · 2dN
= 14d − 28d/N 5 + 4d/N 4
≤ 14d − 0 + 1/N 2
≤ 14d + 1
51 / 71
Routing in Hyperwürfeln
Die probabilistische Methode
Überblick
Das Problem und ein deterministischer Algorithmus
Markov- und Chebyshev-Ungleichung
Chernoff-Schranken
Erster randomisierter Algorithmus
Die probabilistische Methode
Zweiter „randomisierter Algorithmus“
52 / 71
Routing in Hyperwürfeln
Die probabilistische Methode
Die probabilistische Methode (1)
I
Tragweite zuerst von Erdős erkannt
Nachweis der Existenz gewisser Objekte
I
Variante 1: Zufallsvariable X
I
I
I
hat reelle numerische Werte
E[X ] existiert
53 / 71
Routing in Hyperwürfeln
Die probabilistische Methode
Die probabilistische Methode (1)
I
Tragweite zuerst von Erdős erkannt
Nachweis der Existenz gewisser Objekte
I
Variante 1: Zufallsvariable X
I
I
I
hat reelle numerische Werte
E[X ] existiert
dann nimmt X
I
mindestens einen Wert an, der nicht kleiner als E[X ] ist, und
ebenso einen Wert, der nicht größer als E[X ] ist.
53 / 71
Routing in Hyperwürfeln
Die probabilistische Methode
Die probabilistische Methode (1)
I
Tragweite zuerst von Erdős erkannt
Nachweis der Existenz gewisser Objekte
I
Variante 1: Zufallsvariable X
I
I
I
hat reelle numerische Werte
E[X ] existiert
dann nimmt X
I
I
mindestens einen Wert an, der nicht kleiner als E[X ] ist, und
ebenso einen Wert, der nicht größer als E[X ] ist.
Also existieren Ereignisse, für die X diese Werte annimmt.
53 / 71
Routing in Hyperwürfeln
Die probabilistische Methode
Die probabilistische Methode (2)
I
Variante 2: endliches nichtleeres Universum U
I
I
mit Objekten O
Eigenschaft P, die Objekte haben können
54 / 71
Routing in Hyperwürfeln
Die probabilistische Methode
Die probabilistische Methode (2)
I
Variante 2: endliches nichtleeres Universum U
I
I
I
mit Objekten O
Eigenschaft P, die Objekte haben können
Wähle zufällig ein Objekt O aus U aus.
Wahrscheinlichkeit p, dass O Eigenschaft P hat?
54 / 71
Routing in Hyperwürfeln
Die probabilistische Methode
Die probabilistische Methode (2)
I
Variante 2: endliches nichtleeres Universum U
I
I
I
mit Objekten O
Eigenschaft P, die Objekte haben können
Wähle zufällig ein Objekt O aus U aus.
Wahrscheinlichkeit p, dass O Eigenschaft P hat?
I
Wenn p > 0 ist,
54 / 71
Routing in Hyperwürfeln
Die probabilistische Methode
Die probabilistische Methode (2)
I
Variante 2: endliches nichtleeres Universum U
I
I
I
mit Objekten O
Eigenschaft P, die Objekte haben können
Wähle zufällig ein Objekt O aus U aus.
Wahrscheinlichkeit p, dass O Eigenschaft P hat?
I
I
Wenn p > 0 ist,
dann muss in U ein O mit P(O) existieren.
54 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
Überblick
Das Problem und ein deterministischer Algorithmus
Markov- und Chebyshev-Ungleichung
Chernoff-Schranken
Erster randomisierter Algorithmus
Die probabilistische Methode
Zweiter „randomisierter Algorithmus“
55 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
Plan
I
Sprechweisen:
I
I
I
Bisher:
I
I
I
RPH-Algorithmus: datenunabhängiger randomisierter
Algorithmus für Permutationsrouting in Hyperwürfeln
RPH-Algorithmus schnell: erwartete Laufzeit in O(d).
Algorithmus 4.25 nutzt Θ(Nd) Zufallsbits und ist schnell
Datenunabhängige deterministische Algorithmen
nutzen 0 Zufallsbits und sind nie schnell. (Satz 4.7)
Frage: Gibt es RPH-Algorithmen gibt, die weniger als Θ(Nd)
Zufallsbits benutzen und trotzdem schnell sind?
56 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
Plan
I
Sprechweisen:
I
I
I
Bisher:
I
I
I
I
RPH-Algorithmus: datenunabhängiger randomisierter
Algorithmus für Permutationsrouting in Hyperwürfeln
RPH-Algorithmus schnell: erwartete Laufzeit in O(d).
Algorithmus 4.25 nutzt Θ(Nd) Zufallsbits und ist schnell
Datenunabhängige deterministische Algorithmen
nutzen 0 Zufallsbits und sind nie schnell. (Satz 4.7)
Frage: Gibt es RPH-Algorithmen gibt, die weniger als Θ(Nd)
Zufallsbits benutzen und trotzdem schnell sind?
Ziel: Θ(d) Zufallsbits
I
I
notwendig und
in gewissem Sinne „hinreichend“, um sein schnell zu können
56 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.32 Satz
Wenn ein RPH-Algorithmus in Würfeln mit N = 2d Knoten nur k
Zufallsbits
√ benutzt, dann ist seine erwartete Laufzeit in
−k
Ω(2
N /d).
57 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.33 Beweis
I
I
I
I
Fasse RPH-Algorithmus R auf als
Wahrscheinlichkeitsverteilung über 2k deterministischen
Algorithmen.
Dann wird mindestens ein det. Alg A mit Wahrscheinlichkeit
≥ 2−k ausgewählt.
√
Es sei x eine Eingabe, für die A Laufzeit Ω( N /d) hat.
Betrachte die Bearbeitung von x durch R:
I
I
Mit Wahrscheinlichkeit ≥ 2−k wird R wie A arbeiten.
Also ist der Erwartungswert
für die Laufzeit von R
√
−k
mindestens Ω(2
N /d).
58 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.34 Korollar
Jeder schnelle RPH-Algorithmus muss Ω(d) Zufallsbits
verwenden.
59 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.35 Beweis
I
I
Es sei c irgendeine positive Konstante.
√
Damit 2−k N /d ≤ cd ist, muss gelten:
I
I
I
√
2k ≥ N√/(cd 2 ), also
k ≥ log N − O(log d), also
k ∈ Ω(d).
60 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.36 Satz
Für jedes d gibt es einen schnellen RPH-Algorithmus, der 3d
Zufallsbits benötigt und erwartete Laufzeit 22d hat.
61 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.36 Satz
Für jedes d gibt es einen schnellen RPH-Algorithmus, der 3d
Zufallsbits benötigt und erwartete Laufzeit 22d hat.
Achtung! Hier wird nicht die Existenz eines RPH-Algorithmus
für Hyperwürfel aller Größen zugesichert wird.
61 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.37 Beweis
I
I
I
A = (A1, . . . , At ): Liste det. PH-Algorithmen
A ; rand. R A (zufällig gleichverteilt ein Ai ∈ A)
A effizientes N -Schema, falls für jede N -Permutation
E[Laufzeit] ≤ 22d
62 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.37 Beweis
I
I
I
I
I
I
A = (A1, . . . , At ): Liste det. PH-Algorithmen
A ; rand. R A (zufällig gleichverteilt ein Ai ∈ A)
A effizientes N -Schema, falls für jede N -Permutation
E[Laufzeit] ≤ 22d
Zeige: es ex. effizientes N -Schema mit t = N 3 Algs.
R A braucht nur log t ∈ O(log N ) = O(d) Zufallsbits
Nachweis der Existenz eines so kleinen effizienten
N -Schemas mittels der probabilistischen Methode
62 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.37 Beweis (2)
I
I
I
I
Fasse Algorithmus 4.25 als Menge B = {B1, . . . , B N N } von
N N deterministischen PH-Algorithmen auf.
Betrachte das folgende Zufallsexperiment: Aus B wird
zufällig (mit Zurücklegen) eine Liste A = (A1, . . . , AN 3 ) von
N 3 Algorithmen Ai = B ji ausgewählt.
Zeige: A ist effizientes N -Schema mit Wahrscheinlichkeit
echt größer Null.
Also existiert ein effizientes N -Schema.
63 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.37 Beweis (3)
I
I
I
I
I
I
I
πi : die N ! Permutationen
Det. PH-Algorithmus A heiße gut für πi , wenn er πi in
höchstens 14d Schritten routet, sonst schlecht.
Satz 4.26.2. sagt: Für jedes πi ist ein Bruchteil von ≤ 1/N
aller B j schlecht für πi .
zunächst ein beliebiges πi fixiert.
Erwartungswert für die Anzahl der für πi schlechten
Algorithmen in A ist ≤ N 3 /N = N 2
X j sei die 0-1-Zufallsvariable mit
X j = 1, gdw. Aj schlecht für πi .
hÍ 3 i
Also: µ = E Nj=1 X j ≤ N 2.
64 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.37 Beweish (4)
I
I
I
I
µ=E
i
2
X
j=1 j ≤ N
ÍN 3
sei c = N 2 /µ ≥ 1
X j unabhängige Zufallsvariablen
Í 3
Obere Schranke für P Nj=1 X j > 4N 2 mittels
Chernoff-Schranke (Kor. 4.23):
N2
N3
2
1
©Õ
2ª
= e −N .
P ­ X j > (1 + 3)N ® <
e
« j=1
¬
I
I
(siehe nächste Folie)
Ereignis Ei : > 4N 2 Algorithmen in A schlecht für πi .
2
Also P(Ei ) < e −N .
65 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.37 Beweis (5)
N3
N3
Õ
©Õ
©
ª
ª
P ­ X j > (1 + 3)N 2 ® = P ­ X j > (1 + δ )cµ ®
« j=1
« j=1
¬
¬
3
N
©Õ
ª
≤ P ­ X j > (1 + cδ )µ ®
« j=1
¬
µ µ
e cδ
e cδ
≤
≤
(1 + cδ )1+cδ
(1 + cδ )cδ
e cδ µ e cδ µ
=
≤
1 + cδ
1+3
2
N
2
e 3N
1
=
≤
4
e
66 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.37 Beweis (6)
I
Wahrscheinlichkeit, dass A für mindestens ein πi schlecht:
!
N!
N!
Õ
Ø
2
P(Ei ) ≤ N ! · e −N < 1 .
P
Ei ≤
i=1
I
i=1
Also: Wahrscheinlichkeit, dass von den Algorithmen in A für
jede Permutation höchstens 4N 2 schlecht sind, ist echt
größer 0. Also existiert ein solches A.
67 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.37 Beweis (7)
I
I
I
I
Zeige: dieses A sogar ein effizientes N -Schema.
Es sei πi beliebig.
Mit Wahrscheinlichkeit ≥ 1 − (4N 2 /N 3 ) = 1 − 4/N wird R A
diese Permutation in ≤ 14d Schritten durchführen.
Andernfalls werden höchstens 2dN Schritte benötigt.
Also Erwartungswert für die Laufzeit höchstens
(1 −
4
4
)14d + 2dN ≤ 22d .
N
N
68 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.38 Bemerkung
I
I
2
Zeige: Für hinreichend große N gilt: N ! · e −N < 1.
Stirlingsche Formel:
√
NN
2π N N (1 + h(N )) mit
N! =
e
1
1
139
1
h(N ) =
+
−
± · · · ∈ O( )
2
3
12N 288N
5140N
N
I
Also:
√
√
N!
2π N · N N
2π N · e N log N
lim N 2 = lim
=
lim
=0
2
2
N →∞ e
N →∞ e N · e N
N →∞
eN · eN
I
Genaueres Nachrechnen ergibt, dass schon für N ≥ 4 gilt:
2
N ! · e −N < 1.
69 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.39 Bemerkung
I
I
I
I
Satz 4.36 behauptet nur die Existenz eines – noch dazu
nichtuniformen – schnellen RPH-Algorithmus, der nur O(d)
Zufallsbits braucht.
Schwieriger: man gebe explizit RPH-Algorithmen an, die
möglichst wenige Zufallsbits benötigen.
Bislang beste Lösung: uniform Θ(d 2 ) Zufallsbits.
Aufgabe: Man senke diesen Wert.
70 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
Zusammenfassung
I
I
I
Chernoff-Schranken
die probabilistische Methode
Routing in Hyperwürfeln:
I
I
deterministisch ist der schlimmste Fall immer schlimm
randomisiert im Erwartungswert immer harmlos
I
aber eben nur der Erwartungswert
71 / 71
Herunterladen