Randomisierte Algorithmen - 4. Routing in Hyperwürfeln

Werbung
Randomisierte Algorithmen
4. Routing in Hyperwürfeln
Überblick
Das Problem und ein deterministischer Algorithmus
Markov- und Chebyshev-Ungleichung
Chernoff-Schranken
Erster randomisierter Algorithmus
Die probabilistische Methode
Zweiter randomisierter Algorithmus
Das Problem und ein deterministischer Algorithmus
Markov- und Chebyshev-Ungleichung
Chernoff-Schranken
Erster randomisierter Algorithmus
Die probabilistische Methode
Zweiter randomisierter 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.2 Beobachtungen
I
I
I
|Vd | = N = 2d
|Ed | = d · 2d−1 ∈ Θ(N log N)
Durchmesser von Hd ist d = log N:
Für x = (x1 x2 · · · xd ) und y = (y1 y2 · · · yd ) betrachte
(x1 x2 x3 · · · xd−1 xd )
(y1 x2 x3 · · · xd−1 xd )
(y1 y2 x3 · · · xd−1 xd )
..
.
(y1 y2 y3 · · · yd−1 xd )
(y1 y2 y3 · · · yd−1 yd )
und entferne alle Doppelten.
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
Aufgabe: finde für jedes Paar (x, f (x)) einen Reiseplan“
”
(Kanten und Zeitpunkte für deren Benutzung) von x nach
f (x), so dass alle Pakete möglichst schnell am Ziel sind.
4.4
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 ist also durch die N 2 denkbaren Pfade Px,y
charakterisiert.
4.5 Bit-Fixing-Algorithmus
Von x = (x1 x2 · · · xd ) nach y = (y1 y2 · · · yd ) benutze den
Pfad, der sich aus
(x1 x2 x3 · · · xd−1 xd )
(y1 x2 x3 · · · xd−1 xd )
(y1 y2 x3 · · · xd−1 xd )
..
.
(y1 y2 y3 · · · yd−1 xd )
(y1 y2 y3 · · · yd−1 yd )
durch Streichen aller Doppelten ergibt.
4.6 Matrix-Transposition“ mit dem
”
Bit-Fixing-Algorithmus
I
I
I
I
I
I
f (x1 · · · xd/2 xd/2+1 · · · xd ) = (xd/2+1 · · · xd x1 · · · xd/2 )
Problem: fixiere beliebiges Bitmuster zd/2+1 · · · zd .
√
Alle 2d/2 = N Pakete, die in einem der Knoten
x1 · · · xd/2 zd/2+1 · · · zd starten, werden über den gleichen
Knoten zd/2+1 · · · zd zd/2+1 · · · zd geschickt.
In jedem Schritt können maximal d Pakete diesen Knoten
verlassen.
√
√
Also untere Schranke von N/d = N/ log N Schritten.
Das ist viel größer als der Durchmesser log N.
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.
4.8 Beweis
I
I
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: finde große“ Mengen von Quellknoten
”
U 0 = {u1 , . . . , uk } und zugehörigen Zielknoten
V 0 = {v1 , . . . , vk }, so dass alle Pfade Pui ,vi über eine
gleiche Kante 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.
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
N−1
Pfade führen.
d
Also ist für k ≤ N−1
auch v ∈ Sk∗ (v ).
d
Von nun an stets k ≤ N−1
und daher v ∈ Sk∗ (v ).
d
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 führen maximal d − 1 Kanten von
”
außerhalb“.
Über eine solche Kante (w , w 0 ) können höchstens k − 1
Pfade führen.
Folglich kann es außerhalb“ von Sk∗ (v ), also in
”
V \ Sk∗ (v ), nur die in Ungleichung 1 behauptete Anzahl
von Knoten geben.
4.8 Beweis (4)
I
Folglich gilt für jedes k ≤ (N − 1)/d:
|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
N =
≤
≤
≤
und daher
I
Summation über alle Knoten ergibt
X
v ∈V
|Sk (v )| ≥
N2
.
2kd
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.
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.
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.
Das Problem und ein deterministischer Algorithmus
Markov- und Chebyshev-Ungleichung
Chernoff-Schranken
Erster randomisierter Algorithmus
Die probabilistische Methode
Zweiter randomisierter Algorithmus
4.10 Satz (Markov-Ungleichung)
Es sei Y eine Zufallsvariable, die nur nichtnegative Werte
annehme. Dann gilt für alle t, k ∈ R+ :
Pr [Y ≥ t] ≤
E [Y ]
t
bzw.
Pr [Y ≥ kE [Y ]] ≤
1
.
k
4.11 Beweis
I
I
I
(
1
Es sei f (y ) =
0
falls y ≥ t
.
sonst
Dann ist Pr [Y ≥ t] = E [f (Y )].
Für alle y gilt: f (y ) ≤ y /t. Also
Y
Pr [Y ≥ t] = E [f (Y )] ≤ E
t
=
E [Y ]
.
t
4.12 Satz (Chebyshev-Ungleichung)
Es sei X eine Zufallsvariable mit Erwartungswert µX und
Standardabweichung σX . Dann gilt für alle t ∈ R+ :
Pr [|X − µX | ≥ tσX ] ≤
1
.
t2
4.13 Beweis
I
I
Zufallsvariable Y = (X − µX )2 hat Erwartungswert
µY = σX2 .
Nach der Markov-Ungleichung:
1
Pr Y ≥ t 2 µY ≤ 2 .
t
I
Die linke Seite ist aber
Pr Y ≥ t 2 µY = Pr (X − µX )2 ≥ t 2 σX2
= Pr [|X − µX | ≥ tσX ] .
Das Problem und ein deterministischer Algorithmus
Markov- und Chebyshev-Ungleichung
Chernoff-Schranken
Erster randomisierter Algorithmus
Die probabilistische Methode
Zweiter randomisierter Algorithmus
4.14 Problemstellung
I
I
I
I
I
Im folgenden stets: X1 , . . . , Xn unabhängige
0-1-Zufallsvariablen mit Pr [Xi = 1] = pi für 1 ≤ i ≤ n.
Solche Zufallsvariablen heißen auch Poisson-Versuche.
Außerdem seiP
X = X1 + · · · + 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.
4.15 Satz
Mit den Bezeichnungen wie in Punkt 4.14 gilt:
I für 0 ≤ δ :
µ
eδ
Pr [X ≥ (1 + δ)µ] ≤
(1 + δ)(1+δ)
I
für 1 > δ ≥ 0 :
Pr [X ≤ (1 − δ)µ] ≤
e −δ
(1 − δ)(1−δ)
µ
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
4.16 Beobachtung
I
I
Für x ≥ 0 ist 1 + x ≤ e x .
Beweis:
I
I
I
Die Ableitung von f (x) = e x − (x + 1) ist e x − 1, ist
also nichtnegativ für x ≥ 0.
Folglich nimmt f (x) im Bereich für x = 0 den minimalen
Wert f (0) = 0 an.
Also ist f (x) ≥ 0 für x ≥ 0.
4.17 Beweis (von Satz 4.15)
I
I
Ad 1.: t sei positiv; Markov-Ungleichung liefert:
E e tX
tX
t(1+δ)µ
≤ t(1+δ)µ
Pr [X ≥ (1 + δ)µ] = Pr e ≥ e
e
Mit den Xi sind auch die e tXi unabhängig. Also:
Q tX Q tX P e i = E e i
E e tX = E e t Xi = E
I
Weiter ist (wegen 1 + x ≤ e x )
t
E e tXi = pi · e t + (1 − pi ) · 1 = 1 + pi (e t − 1) ≤ e pi (e −1)
I
Einsetzen liefert:
Q
Pr [X ≥ (1 + δ)µ] ≤
e pi (e
I
e µ(e −1)
e t(1+δ)µ
Wähle t = ln(1 + δ) (positiv!).
e
P
pi (e t −1)
= t(1+δ)µ
e
(e t −1) µ
e
=
e t(1+δ)
e t(1+δ)µ
t
=
t −1)
4.17 Beweis (2)
I
Ad 2.: t sei positiv; Markov-Ungleichung liefert:
Pr [X ≤ (1 − δ)µ] = Pr [µ − X ≥ δµ] = Pr e t(µ−X ) ≥ e tδµ
E e t(µ−X )
E e −tX
= t(δ−1)µ .
≤
e tδµ
e
I
Ähnlich wie im ersten Teil:
Q −tX Q
E e i = (pi e −t + (1 − pi ))
E e −tX =
Q
Q
−t
=
(1 − pi (1 − e −t )) ≤ e −pi (1−e )
= e
I
P
−pi (1−e −t )
= e −µ(1−e
.
Also:
−t
e −µ(1−e )
Pr [X ≤ (1 − δ)µ] ≤ t(δ−1)µ =
e
I
−t )
Wähle t = − ln(1 − δ) (positiv!).
−t
e e −1
e −t(1−δ)
!µ
.
4.18 Bemerkung
I
I
In Satz 4.15 von Interesse:
µ
eδ
F (µ, δ) =
(1 + δ)(1+δ)
Betrachte statt dessen:
für δ > −1
ln(F (µ, δ)1/µ ) = δ − (1 + δ) ln(1 + δ) = f (δ)
0
f(x)=x-(1+x)*log(1+x)
g(x)=f(x)/x**2
-x*x/5
-x*x/2
-2
-4
-6
-8
-10
-12
-1
0
1
2
3
4
5
6
7
4.19 Lemma
1.
2.
3.
4.
5.
Für
Für
Die
Für
Für
−1 < x ≤ 0 gilt: f (x) ≤ −x 2 /2.
0 < x gilt: −x 2 /2 ≤ f (x).
Funktion g (x) = f (x)/x 2 ist monoton wachsend.
0 < δ < x gilt: f (δ) ≤ g (x)δ 2 .
0 < δ < 2e − 1 gilt: f (δ) ≤ −δ 2 /5.
4.20 Beweis
1. Betrachte
I
I
I
I
I
I
h(x) = f (x) + x 2 /2
h0 (x) = x + ln(1 + x)
1
h00 (x) = 1 − 1+x
.
Für −1 < x ≤ 0 ist h00 (x) ≤ h00 (0) = 0.
Also ist h0 fallend, d. h. h0 (x) ≥ h0 (0) = 0.
Also ist h steigend, d. h. h(x) ≤ h(0) = 0.
2. Analog:
I
I
I
Für 0 ≤ x ist h00 (x) ≥ h00 (0) = 0.
Also ist h0 steigend, d. h. h0 (x) ≥ h0 (0) = 0.
Also ist h steigend, d. h. h(x) ≥ h(0) = 0.
4.20 Beweis (2)
3. g 0 (x) ≥ 0 gdw. h(x) = (x + 2) ln(1 + x) − 2x ≥ 0
(Quotientenregel)
I
I
I
h0 (x) = −x/(1 + x) + ln(1 + x)
h00 (x) = x/(1 + x)2 .
Aus h00 (x) ≥ 0 und h0 (0) = 0 und h(0) = 0 folgt die
Behauptung.
4. Da g monoton wachsend ist, ist für δ < x auch
g (δ) = f δ(δ)
2 ≤ g (x).
5. Folgt aus 4. wegen g (2e − 1) < −1/5 (nachrechnen).
4.21 Korollar
I
Für 0 ≤ δ ≤ 2e − 1 gilt:
Pr [X ≥ (1 + δ)µ] ≤
I
eδ
(1 + δ)(1+δ)
µ
≤ e −δ
Für 1 > δ ≥ 0 gilt:
µ
e −δ
Pr [X ≤ (1 − δ)µ] ≤
(1 − δ)(1−δ)
µ
eδ
−δ 2 µ/2
≤e
≤
(1 + δ)(1+δ)
2 µ/5
4.23 Korollar
I
Für 0 ≤ δ gilt:
Pr [X ≥ (1 + δ)µ] ≤
I
e
1+δ
(1+δ)µ
Für 2e − 1 ≤ δ gilt:
Pr [X ≥ (1 + δ)µ] ≤ 2−(1+δ)µ
4.24 Beweis
I
Für 0 ≤ δ gilt: Für 0 ≤ δ gilt:
µ µ
e · eδ
eδ
≤
Pr [X ≥ (1 + δ)µ] ≤
(1 + δ)1+δ
(1 + δ)1+δ
(1+δ)µ
e
≤
1+δ
I
Für 2e − 1 ≤ δ folgt:
Pr [X ≥ (1 + δ)µ] ≤
e
1+δ
(1+δ)µ
≤ 2−(1+δ)µ
≤
e
1 + 2e − 1
(1+δ)µ
Das Problem und ein deterministischer Algorithmus
Markov- und Chebyshev-Ungleichung
Chernoff-Schranken
Erster randomisierter Algorithmus
Die probabilistische Methode
Zweiter 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.
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.
4.27 Lemma
I
I
I
I
I
I
I
Für Startknoten x sei zufällig ein zx gewählt.
ρx bezeichne den Pfad von x nach zx gemäß dem
Bit-Fixing-Algorithmus.
Es sei ρy ∩ ρx die Menge der Kanten, die in beiden
Pfaden irgendwo vorkommen.
Es sei x beliebig aber fest und ρx = (e1 , e2 , . . . , ek ).
Es sei Sx = {by | y 6= x ∧ ρy ∩ ρx 6= ∅}.
Bezeichnet t den tatsächlichen Ankuftszeitpunkt von bx
in zx , so ist die aufgelaufene Verspätung“ `x = t − k.
”
Behauptung: `x ≤ |Sx |.
4.28 Beweis
I
I
I
Zwei Pfade ρx und ρy mögen Kante gemeinsam haben.
Behauptung 1: Sobald sich die Pfade das erste Mal wieder
getrennt haben, führen sie nicht wieder zusammen.
Betrachte die letzte gemeinsame Kante vor der ersten
Trennung und den Knoten v , zu dem sie hinführt. Es gibt
zwei Fälle:
a. Bei beiden Pfaden folgt noch eine weitere Kante.
I
I
I
I
I
verschiedene Kanten =⇒ verschiedene Bits der Adresse
v geändert.
Die Bitpositionen seien j1 und j2 > j1 .
Also wird auf einem Pfad das j1 -te Bit geändert, auf
dem anderen nicht.
Also führen ρx und ρy in disjunkte Hyperwürfel (j1 -tes
Adressbit verschieden)
und verlassen sie nie wieder, da bei beiden nur noch
andere Adressbits angepasst werden.
b. Nur ein Pfad führt weiter, der andere endet in v . In
diesem Fall kann man analog argumentieren.
4.28 Beweis (2)
Sprechweisen:
I Paket by ∈ Sx verlässt ρx , wenn es zum letzten Mal eine
Kante von ρx benutzt.
I Wegen der Aussage im ersten Punkt ist der Zeitpunkt des
Verlassens“ für jedes Paket by eindeutig.
”
I Das Paket bx bzw. ein Paket by ∈ Sx habe beim
Transport über Kante ei von ρx Verspätung `, falls es erst
in Schritt t = i + ` darüber transportiert wird.
I Für bx ist die so definierte Verspätung beim Transport
über Kante ei wirklich die Zeitdifferenz zwischen dem
frühest möglichen Zeitpunkt t = i der Ankunft am
Endpunkt von ei und dem tatsächlichen
Ankunftszeitpunkt t = i + `.
I Auf die Pakete by ∈ Sx trifft dies nicht zu. Für sie handelt
es sich im allgemeinen nur um irgendeine“ Zahl.
”
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 |.
4.28 Beweis (4)
I
I
I
I
I
I
Betrachte Kante ei , die von Paket bx zu einem Zeitpunkt
t benutzt werden möchte, aber nicht benutzt werden
kann, weil ein anderes Paket by sie benutzt.
Verspätung von bx erhöht sich von ` = t − i auf ` + 1,
und das kann auch nur so passieren.
Dann ist die Verspätung“ von by bei Benutzung dieser
”
Kante t − i = `.
Sei nun t 0 der letzte Zeitpunkt, zu dem ein Paket aus Sx
Verspätung ` hat.
Es sei b dieses Paket und ej 0 die Kante, die b benutzen
will“; also ist t 0 − j 0 = `.
”
Dann gibt es auch ein Paket in Sx , das ρx zu diesem
Zeitpunkt t 0 verläßt:
I
I
I
Da b Kante ej 0 benutzen will“,
”
wird ein Paket b 0 sicher Kante ej 0 benutzen.
Es hat offensichtlich Verzögerung t 0 − j 0 = `.
4.28 Beweis (5)
I
I
I
I
I
I
Würde b 0 den Pfad ρx nicht verlassen, dann gäbe es ein
Paket, das Kante ej 0 +1 zum Zeitpunkt t 0 + 1 mit
Verzögerung t 0 + 1 − (j 0 + 1) = ` benutzen würde.
Dies stünde im Widerspruch zur Wahl von t 0 :
es sollte der letzte Zeitpunkt sein, 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äßt und nie wieder betritt, wird auf
diese Weise keinem Paket aus Sx zweimal eine
Verspätungserhöhung zugeschrieben.
Also ist `x ≤ |Sx |.
4.29 Lemma
I
Betrachte Zufallsvariable Hxy
I
Dann gilt:
(
1 falls ρx ∩ ρy 6= ∅
=
.
0 sonst
1. Die Gesamtverspätung
von bx beim Eintreffen in zx ist
P
`x ≤ y 6=x Hxy .
hP
i
2. E
H
≤ d/2.
xy
y 6=x
3. Pr [`x ≥ 6d] ≤ 2−6d .
4.30 Beweis
1. Einfache Umformulierung
von Lemma 4.27, denn
P
`x ≤ |Sx | = y 6=x Hxy .
2. Betrachte irgendein ρx = (e1 , . . . , ek ) mit k ≤ d.
I
I
Die Zufallsvariable T (e) gebe die Anzahl Pfade ρy mit
y 6= x an, die über eine Kante e führen.
Dann ist
k
X
X
T (ei )
Hxy ≤
y 6=x
und

E

X
y 6=x
I
i=1
Hxy  ≤
k
X
E [T (ei )]
i=1
Zeige:
E [T (ei )] ≤ 1/2
(wegen k ≤ d folgt die Behauptung)
4.30 Beweis (2)
I
I
O. B. d. A. führe ei von (x1 · · · xr 0xr +2 · · · xd ) zu
(x1 · · · 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 0xr +2 · · · xd und
zy beginnt mit x1 · · · xr 1
Solche y 6= 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
x1 · · · xr 1 in zy stets 2−(r +1) .
4.30 Beweis (3)
I
Also ist
E [T (ei )] =
X
Pr [ρy benutzt ei ]
y 6=x
=
X
Pr [ρu0xr +2 ···xd benutzt ei ]
u1 ···ur 6=x1 ···xr
= (2r − 1) · 2−(r +1) ≤ 1/2
I
Wegen 2e − 1 < 11 liefert Korollar 4.23:
Pr [`x ≥ 6d] ≤ Pr [|Sx | ≥ 12d/2]
"
"
##
X
X
≤ Pr
Hxy ≥ (1 + 11)E
Hxy
y 6=x
≤ 2−12d/2
= 2−6d .
y 6=x
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.
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.
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
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
Das Problem und ein deterministischer Algorithmus
Markov- und Chebyshev-Ungleichung
Chernoff-Schranken
Erster randomisierter Algorithmus
Die probabilistische Methode
Zweiter randomisierter Algorithmus
Die probabilistische Methode
I
I
I
Tragweite zuerst von Erdős erkannt
Nachweis der Existenz gewisser Objekte
Varianten:
1. Beobachtung: Jede Zufallsvariable X nimmt
I
mindestens einen Wert an, der nicht kleiner als E [X ] ist,
und ebenso einen Wert, der nicht größer als E [X ] ist.
Die probabilistische Methode
I
I
I
Tragweite zuerst von Erdős erkannt
Nachweis der Existenz gewisser Objekte
Varianten:
1. Beobachtung: Jede Zufallsvariable X nimmt
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 die jeweiligen Werte
annimmt.
Die probabilistische Methode
I
I
I
Tragweite zuerst von Erdős erkannt
Nachweis der Existenz gewisser Objekte
Varianten:
1. Beobachtung: Jede Zufallsvariable X nimmt
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 die jeweiligen Werte
annimmt.
2. Gegeben: Universum U von Objekten O und eine
Eigenschaft P, die Objekte haben können.
Wähle zufällig ein Objekt O aus U aus.
Beobachtung:
I
Ist die Wahrscheinlichkeit dafür, dass O Eigenschaft P
hat, echt größer als Null,
Die probabilistische Methode
I
I
I
Tragweite zuerst von Erdős erkannt
Nachweis der Existenz gewisser Objekte
Varianten:
1. Beobachtung: Jede Zufallsvariable X nimmt
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 die jeweiligen Werte
annimmt.
2. Gegeben: Universum U von Objekten O und eine
Eigenschaft P, die Objekte haben können.
Wähle zufällig ein Objekt O aus U aus.
Beobachtung:
I
I
Ist die Wahrscheinlichkeit dafür, dass O Eigenschaft P
hat, echt größer als Null,
dann muss im Universum ein Objekt existieren, das diese
Eigenschaft hat.
Das Problem und ein deterministischer Algorithmus
Markov- und Chebyshev-Ungleichung
Chernoff-Schranken
Erster randomisierter Algorithmus
Die probabilistische Methode
Zweiter randomisierter Algorithmus
Plan
I
Sprechweisen:
I
I
I
Bisher:
I
I
I
I
RPH-Algorithmus: randomisierter Algorithmus für
Permutationsrouting in Hyperwürfeln
RPH-Algorithmus schnell : erwartete Laufzeit in O(d).
Randomisierter Algorithmus 4.25 benutzt Θ(Nd)
Zufallsbits und ist schnell.
Deterministische Algorithmen benutzen 0 Zufallsbits
benutzen und keinerist
√ schnell.
Satz 4.7: Laufzeit Ω N/d
Frage: Gibt es RPH-Algorithmen gibt, die weniger als
Θ(Nd) Zufallsbits benutzen und trotzdem schnell sind?
Ziel: Θ(d) Zufallsbits sind notwendig und hinreichend, um
schnell sein zu können (jedenfalls in einem gewissen
Sinne).
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 .
4.33 Beweis
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.
I
Betrachte die Bearbeitung von x durch R:
I
I
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 .
4.34 Korollar
Jeder schnelle RPH-Algorithmus muss Ω(d) Zufallsbits
verwenden.
4.35 Beweis
I
I
Es sei c irgendeine positive Konstante.
√
Damit 2−k N/d ≤ cd ist, muss gelten:
I
I
I
√
2 ), also
2k ≥ N/(cd
√
k ≥ log N − o(d), also
k ∈ Ω(d).
4.36 Satz
Für jedes d gibt es einen schnellen RPH-Algorithmus, der 3d
Zufallsbits benötigt und erwartete Laufzeit 18d hat.
Achtung! Hier wird nicht die Existenz eines RPH-Algorithmus
für Hyperwürfel aller Größen zugesichert wird.
4.37 Beweis
I
I
I
I
I
I
Es bezeichne A = {A1 , . . . , At } eine Menge det.
PH-Algorithmen.
Jedes A legt einen randomisierten Algorithmus RA fest,
der zufällig gleichverteilt ein Ai ∈ A auswählt.
A sei ein effizientes N-Schema, falls für jede zu routende
Permutation auf einem Hyperwürfel mit N = 2d Knoten
gilt: Die erwartete Laufzeit von RA ist höchstens 18d.
Zeige: Für jedes N gibt es ein effizientes N-Schema mit
t = N 3 Algorithmen.
Dann benötigt RA nur log t ∈ O(log N) = O(d)
Zufallsbits (um einen der Algorithmen Ai auszuwählen).
Nachweis der Existenz eines so kleinen effizienten
N-Schemas mittels der probabilistischen Methode.
4.37 Beweis (2)
I
I
I
I
Fasse Algorithmus 4.25 als Menge B = {B1 , . . . , BN N }
von N N deterministischen PH-Algorithmen auf.
Betrachte das folgende Zufallsexperiment: Aus B wird
zufällig gleichverteilt eine Teilmenge A = {A1 , . . . , AN 3 }
von N 3 Algorithmen Ai = Bji ausgewählt.
Zeige: Wahrscheinlichkeit, dass A effizientes N-Schema
ist, ist echt größer Null.
Also existiert ein effizientes N-Schema.
4.37 Beweis (3)
I
I
I
I
I
I
I
Mit πi , 1 ≤ i ≤ N!, werden die N! Permutationen
bezeichnet.
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 Bj 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 ist.
Xj sei die 0-1-Zufallsvariable mit
Xj = 1, falls Aj schlecht für πi .
hP 3 i
N
2
Also: E
j=1 Xj ≤ N .
4.37 Beweis (4)
I
I
I
I
I
Die Xj sind unabhängigeh Zufallsvariablen.
i
PN 3
2
mittels
Obere Schranke für Pr
j=1 Xj > 4N
Chernoff-Schranke (Kor. 4.23):
" N3
#
e 4N 2
X
2
Pr
Xj > (1 + 3)N 2 ≤
< e −N .
4
j=1
Ereignis Ei : > 4N 2 Algorithmen in A schlecht für πi .
2
Also Pr [Ei ] < e −N .
Wahrscheinlichkeit, dass A für mindestens ein πi schlecht:
" N! #
N!
[
X
2
Pr
Ei ≤
Pr [Ei ] ≤ N! · e −N < 1 .
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.
4.37 Beweis (5)
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
RA diese Permutation in ≤ 14d Schritten durchführen.
Andernfalls werden höchstens dN Schritte benötigt.
Also Erwartungswert für die Laufzeit höchstens
(1 −
4
4
)14d + dN ≤ 18d .
N
N
4.38 Bemerkung
I
I
I
2
Zeige: Für hinreichend große N gilt: N! · e −N < 1.
Stirlingsche Formel:
√
NN
N! =
2πN N (1 + h(N)) mit
e
1
1
139
1
+
−
± ··· ∈ O
h(N) =
2
3
12N 288N
5140N
N
Mit anderen Worten:
lim √
N→∞
I
I
Also:
N! · e N
=1
2πN · N N
√
√
N!
2πN · N N
2πN · e N log N
lim N 2 = lim
=
lim
=0
2
N→∞ e
N→∞
N→∞
eN · eN
eN · eN2
Genaueres Nachrechnen ergibt, dass schon für N ≥ 4 gilt:
2
N! · e −N < 1.
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.
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
Herunterladen