randomisierte algorithmen - 4. routing in...
TRANSCRIPT
Randomisierte Algorithmen
Randomisierte Algorithmen4. Routing in Hyperwürfeln
Thomas Worsch
Fakultät für InformatikKarlsruher Institut für Technologie
Wintersemester 2019/2020
1 / 71
Routing in Hyperwürfeln
Überblick
Überblick
Das Problem und deterministische Algorithmen
Markov- und Chebyshev-Ungleichung
Chernoff-Schranken
Erster randomisierter Algorithmus
Die probabilistische Methode
Zweiter „randomisierter Algorithmus“
2 / 71
Routing in Hyperwürfeln
Das Problem und deterministische Algorithmen
Überblick
Das Problem und deterministische Algorithmen
Markov- und Chebyshev-Ungleichung
Chernoff-Schranken
Erster randomisierter Algorithmus
Die probabilistische Methode
Zweiter „randomisierter Algorithmus“
3 / 71
Routing in Hyperwürfeln
Das Problem und deterministische Algorithmen
4.1 Definition HyperwürfelI 3 ≥ 1: 3-dimensionaler Hyperwürfel �3 = (+3 , �3) mitI Knotenmenge+3 = {0, 1}3 undI Kantenmenge �3 : Knoten G und ~ verbunden, wenn Hamming-Distanz 1
4 / 71
Routing in Hyperwürfeln
Das Problem und deterministische Algorithmen
4.2 BeobachtungenI |+3 | = # = 23
I |�3 | = 3 · 23−1 ∈ Θ(# log# )I �3 hat Durchmesser
3 = log# , dennfür G = (G1G2 · · · G3) und ~ = (~1~2 · · ·~3) ist
(G1G2G3 · · · G3−1G3)(~1G2G3 · · · G3−1G3)(~1~2G3 · · · G3−1G3)
...
(~1~2~3 · · ·~3−1G3)(~1~2~3 · · ·~3−1~3)
ein Weg von G nach ~ (nach Entfernung aller Doppelten).
5 / 71
Routing in Hyperwürfeln
Das Problem und deterministische Algorithmen
4.2 BeobachtungenI |+3 | = # = 23
I |�3 | = 3 · 23−1 ∈ Θ(# log# )I �3 hat Durchmesser 3 = log# , denn
für G = (G1G2 · · · G3) und ~ = (~1~2 · · ·~3)
ist(G1G2G3 · · · G3−1G3)(~1G2G3 · · · G3−1G3)(~1~2G3 · · · G3−1G3)
...
(~1~2~3 · · ·~3−1G3)(~1~2~3 · · ·~3−1~3)
ein Weg von G nach ~ (nach Entfernung aller Doppelten).
5 / 71
Routing in Hyperwürfeln
Das Problem und deterministische Algorithmen
4.2 BeobachtungenI |+3 | = # = 23
I |�3 | = 3 · 23−1 ∈ Θ(# log# )I �3 hat Durchmesser 3 = log# , denn
für G = (G1G2 · · · G3) und ~ = (~1~2 · · ·~3) ist(G1G2G3 · · · G3−1G3)(~1G2G3 · · · G3−1G3)(~1~2G3 · · · G3−1G3)
...
(~1~2~3 · · ·~3−1G3)(~1~2~3 · · ·~3−1~3)
ein Weg von G nach ~ (nach Entfernung aller Doppelten).
5 / 71
Routing in Hyperwürfeln
Das Problem und deterministische Algorithmen
4.3 ProblemstellungI Knoten von �3 seien Prozessoren.I Routing: Jeder Knoten G habe „Nachricht“ (oder „Paket“) vorliegen, die auf einem
Pfad in �3 zu Zielknoten 5 (G) transportiert werden muss.I Permutationsrouting: 5 : + → + ist eine Bijektion, beschreibt also eine
Permutation der Knoten.
I Einschränkung: in jedem Schri� kann über jede Kante maximal ein Pakettransportiert werden.
I für Staus: FIFO-WarteschlangenI gesucht: für jedes Paar (G, 5 (G)) ein
„Reiseplan“ (Kanten, Zeitpunkte) von G nach 5 (G),so dass möglichst schnell alle Pakete am Ziel
6 / 71
Routing in Hyperwürfeln
Das Problem und deterministische Algorithmen
4.3 ProblemstellungI Knoten von �3 seien Prozessoren.I Routing: Jeder Knoten G habe „Nachricht“ (oder „Paket“) vorliegen, die auf einem
Pfad in �3 zu Zielknoten 5 (G) transportiert werden muss.I Permutationsrouting: 5 : + → + ist eine Bijektion, beschreibt also eine
Permutation der Knoten.I Einschränkung: in jedem Schri� kann über jede Kante maximal ein Paket
transportiert werden.I für Staus: FIFO-WarteschlangenI gesucht: für jedes Paar (G, 5 (G)) ein
„Reiseplan“ (Kanten, Zeitpunkte) von G nach 5 (G),so dass möglichst schnell alle Pakete am Ziel
6 / 71
Routing in Hyperwürfeln
Das Problem und deterministische Algorithmen
4.4 EinschränkungZur Vermeidung einer zentralen Instanz, die die Transporte organisieren muss:I hier nur Algorithmen, die oblivious bzw. datenunabhängig sindI Das heißt: die Route für Paket G hängt nicht von den Routen anderer Pakete ab.I Algorithmus also vollständig charakterisiert durch
die # 2 denkbaren Pfade %G,~
7 / 71
Routing in Hyperwürfeln
Das Problem und deterministische Algorithmen
4.5 Bit-Fixing-AlgorithmusVon G = (G1G2 · · · G3) nach ~ = (~1~2 · · ·~3) benutzeI Pfad, der sich aus
(G1G2G3 · · · G3−1G3)(~1G2G3 · · · G3−1G3)(~1~2G3 · · · G3−1G3)
...
(~1~2~3 · · ·~3−1G3)(~1~2~3 · · ·~3−1~3)
durch Streichen aller Doppelten ergibt.I datenunabhängig
8 / 71
Routing in Hyperwürfeln
Das Problem und deterministische Algorithmen
4.6 „Matrix-Transposition“ mit dem Bit-Fixing-AlgorithmusI 5 (G1 · · · G3/2G3/2+1 · · · G3) = (G3/2+1 · · · G3G1 · · · G3/2)I Problem: fixiere beliebiges Bitmuster I3/2+1 · · · I3 .
I Transport der 23/2 =√# Pakete
von allen Knoten G1 · · · G3/2I3/2+1 · · · I3über gleichen Knoten I3/2+1 · · · I3I3/2+1 · · · I3
I pro Schri� maximal 3 = log# Pakete transportierbarI also untere Schranke von
√# /log# Schri�en
I viel größer als der Durchmesser log#
9 / 71
Routing in Hyperwürfeln
Das Problem und deterministische Algorithmen
4.7 SatzZu jedem deterministischen datenunabhängigen Algorithmus fürPermutationsrouting in einem Graphen mit # Knoten, die alle Ausgangsgrad 3haben, gibt es eine Permutation, für die der Algorithmus Ω(
√# /3) Schri�e benötigt.
10 / 71
Routing in Hyperwürfeln
Das Problem und deterministische Algorithmen
4.8 BeweisI �: deterministischer datenunabhängiger Algorithmus für PermutationsroutingI %D,E : von � für ein Paket von D nach E gewählter PfadI Beweisidee:
I finde eine Kante 4I für die „große“ Mengen von �ellknoten* ′ = {D1, . . . , D: } und zugehörigen
Zielknoten+ ′ = {E1, . . . , E: } existierenI so dass alle Pfade %D8 ,E8 über 4 führen.
I Da in jedem Schri� über 4 nur je ein Paket in jede Richtung transportiert kann,folgt untere Schranke von :/2.
I Wir werden sehen, dass man : =√# /3 solche Pfade finden kann.
11 / 71
Routing in Hyperwürfeln
Das Problem und deterministische Algorithmen
4.8 Beweis (2)I Betrachte beliebigen Knoten E und
alle # − 1 Pfade %D,E von anderen D zu ihm.I Für : ≥ 1 sei (: (E) die Menge aller Kanten,
durch die mindestens : dieser Pfade führen.I (∗
:(E) sei die Menge aller Endknoten der Kanten in (: (E).
I Offensichtlich ist |(∗:(E) | ≤ 2|(: (E) |.
I Da # − 1 Pfade zu E hinführen, aber nur 3 Kanten, müssenüber mindestens eine dieser Kanten mindestens #−1
3Pfade führen.
I Also ist für : ≤ #−13
auch E ∈ (∗:(E).
I Von nun an stets : ≤ #−13
und daher E ∈ (∗:(E).
12 / 71
Routing in Hyperwürfeln
Das Problem und deterministische Algorithmen
4.8 Beweis (2)I Betrachte beliebigen Knoten E und
alle # − 1 Pfade %D,E von anderen D zu ihm.I Für : ≥ 1 sei (: (E) die Menge aller Kanten,
durch die mindestens : dieser Pfade führen.I (∗
:(E) sei die Menge aller Endknoten der Kanten in (: (E).
I Offensichtlich ist |(∗:(E) | ≤ 2|(: (E) |.
I Da # − 1 Pfade zu E hinführen, aber nur 3 Kanten, müssenüber mindestens eine dieser Kanten mindestens #−1
3Pfade führen.
I Also ist für : ≤ #−13
auch E ∈ (∗:(E).
I Von nun an stets : ≤ #−13
und daher E ∈ (∗:(E).
12 / 71
Routing in Hyperwürfeln
Das Problem und deterministische Algorithmen
4.8 Beweis (3)I Zeige:
|+ \ (∗:(E) | ≤ (3 − 1) (: − 1) |(∗
:(E) | (1)
I Wegen E ∈ (∗:(E) führt jeder Pfad %D,E
von einem Knoten D ∈ + \ (∗:(E) „nach (∗
:(E) hinein“.
I Für jeweils erstes „Hineinführen“ über eine Kante(F,F ′) ∈ + \ (∗
:(E) × (∗
:(E) gilt:
I Es gibt |(∗:(E) | möglicheF ′.
I zu jedemF ′ maximal 3 − 1 Kanten „von außerhalb“I über solche Kante (F,F ′) führen höchstens : − 1 Pfade
I folglich „außerhalb“ von (∗:(E), also in+ \ (∗
:(E),
nur in (1) behauptete Anzahl von Knoten
13 / 71
Routing in Hyperwürfeln
Das Problem und deterministische Algorithmen
4.8 Beweis (3)I Zeige:
|+ \ (∗:(E) | ≤ (3 − 1) (: − 1) |(∗
:(E) | (1)
I Wegen E ∈ (∗:(E) führt jeder Pfad %D,E
von einem Knoten D ∈ + \ (∗:(E) „nach (∗
:(E) hinein“.
I Für jeweils erstes „Hineinführen“ über eine Kante(F,F ′) ∈ + \ (∗
:(E) × (∗
:(E) gilt:
I Es gibt |(∗:(E) | möglicheF ′.
I zu jedemF ′ maximal 3 − 1 Kanten „von außerhalb“I über solche Kante (F,F ′) führen höchstens : − 1 Pfade
I folglich „außerhalb“ von (∗:(E), also in+ \ (∗
:(E),
nur in (1) behauptete Anzahl von Knoten
13 / 71
Routing in Hyperwürfeln
Das Problem und deterministische Algorithmen
4.8 Beweis (4)I Folglich gilt für jedes : ≤ (# − 1)/3:
# = |+ \ (∗:(E) | + |(∗
:(E) |
≤ (3 − 1) (: − 1) |(∗:(E) | + |(∗
:(E) |
≤ ((3 − 1) (: − 1) + 1) · 2|(: (E) |≤ 2:3 |(: (E) |
und daher |(: (E) | ≥#
2:3
I Summation über alle Knoten ergibt∑E∈+|(: (E) | ≥
# 2
2:3.
14 / 71
Routing in Hyperwürfeln
Das Problem und deterministische Algorithmen
4.8 Beweis (5)I Da es aber maximal #3/2 Kanten im Graphen gibt,
muss mindestens eine Kante in mindestens
# 2/2:3#3/2 =
#
:32
Mengen (: (E) vorkommen.I wähle : so, dass dieser Wert wieder : ist, also : =
√# /3.
I : ist kleiner gleich (# − 1)/3I Es sei nun 4 eine Kante, die
in : =√# /3 Mengen (: (E1), . . . , (: (E:) liegt.
15 / 71
Routing in Hyperwürfeln
Das Problem und deterministische Algorithmen
4.8 Beweis (6)I Es sei nun 4 eine Kante in : =
√# /3 Mengen (: (E1), . . . , (: (E:)
I Es sei D1 einer der : Knoten, für die %D1,E1 über 4 führt.I Nach Wahl von : gibt es zu jedem E8 mindestens : Knoten, für die %D8 ,E8 über 4
führt.I Daher können wir induktiv D8 festlegen, indem wir verlangen, dass D8 einer der
mindestens : − (8 − 1) Knoten ungleich D1, . . . , D8−1 sei, für die %D8 ,E8 über 4 führt.I Also gibt es mindestens : =
√# /3 Pfade %D1,E1, . . . , %D: ,E: , die alle über die
gleiche Kante 4 führen.
16 / 71
Routing in Hyperwürfeln
Das Problem und deterministische Algorithmen
4.9 BemerkungI Frage: Gibt es zumindest einen deterministischen datenunabhängigen
Algorithmus, für den nur sehr wenige Permutationen tatsächlich „sehr schlimm“sind?
I Antwort: Für jeden deterministischen datenunabhängigen Algorithmus gibt essogar (
√# /3)! Permutationen, die mindestens
√# /23 Routingschri�e nötig
machen.
17 / 71
Routing in Hyperwürfeln
Markov- und Chebyshev-Ungleichung
Überblick
Das Problem und deterministische Algorithmen
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 . eine Zufallsvariable mit Erwartungswert E [. ],die nur nichtnegative Werte annehme.Dann gilt für alle C, : ∈ R+:
P(. ≥ C) ≤ E [. ]C
bzw. P(. ≥ :E [. ]) ≤ 1
:.
19 / 71
Routing in Hyperwürfeln
Markov- und Chebyshev-Ungleichung
4.11 BeweisI betrachte Zufallsvariable
- =
{0 falls . < C
C falls . ≥ C
I dann - ≤ . und E [- ] ≤ E [. ]I also
C · P(. ≥ C) ≤ E [. ]
20 / 71
Routing in Hyperwürfeln
Markov- und Chebyshev-Ungleichung
4.12 Satz (Chebyshev-Ungleichung)Es sei - eine Zufallsvariable mit Erwartungswert `- und Standardabweichung f- .Dann gilt für alle C ∈ R+:
P( |- − `- | ≥ Cf- ) ≤1
C2
bzw.
P( |- − `- | ≥ C) ≤f2-
C2.
21 / 71
Routing in Hyperwürfeln
Markov- und Chebyshev-Ungleichung
4.13 BeweisI Zufallsvariable . = (- − `- )2 hat Erwartungswert `. = f2
-.
I Nach der Markov-Ungleichung:
P(. ≥ C2`.
)≤ 1
C2.
I Die linke Seite ist aber
P(. ≥ C2`.
)= P
((- − `- )2 ≥ C2f2-
)= P( |- − `- | ≥ Cf- ) .
22 / 71
Routing in Hyperwürfeln
Chernoff-Schranken
Überblick
Das Problem und deterministische Algorithmen
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 ProblemstellungI Im folgenden stets: -1, . . . , -= unabhängige 0-1-Zufallsvariablen mit
P(-8 = 1) = ?8 für 1 ≤ 8 ≤ =.I Solche Zufallsvariablen heißen auch Poisson-Versuche.I Außerdem sei - = -1 + · · · + -= und ` = E [- ] = ∑=
8=1 ?8 .I Falls alle ?8 = ? sind, spricht man auch von Bernoulli-Versuchen, - ist dann
binomialverteilt.I Gesucht:
I Abschätzungen für Abweichungen von - vom Erwartungswert,I die besser sind als die aus Markov- und Chebyshev-Ungleichung.
24 / 71
Routing in Hyperwürfeln
Chernoff-Schranken
4.15 SatzMit den Bezeichnungen wie in Punkt 4.14 gilt:I für 0 < X :
P(- ≥ (1 + X)`) ≤(
4X
(1 + X) (1+X)
)`I für 1 > X > 0 also 0 < 1 − X < 1 :
P(- ≤ (1 − X)`) ≤(
4−X
(1 − X) (1−X)
)`
25 / 71
Routing in Hyperwürfeln
Chernoff-Schranken
0
0.2
0.4
0.6
0.8
1
0 0.5 1 1.5 2 2.5 3
exp(x)/((1+x)**(1+x))exp(-x)/((1-x)**(1-x))
26 / 71
Routing in Hyperwürfeln
Chernoff-Schranken
4.16 BeobachtungI Für G ≥ 0 ist 1 + G ≤ 4G .
27 / 71
Routing in Hyperwürfeln
Chernoff-Schranken
4.17 Beweis (von Satz 4.15)I sei C positiv; Markov-Ungleichung liefert:
P(- ≥ (1 + X)`) = P(4C- ≥ 4C (1+X)`
)≤
E[4C-
]4C (1+X)`
I mit den -8 sind auch die 4C-8 unabhängig:
E[4C-
]= E
[4C
∑-8
]= E
[∏4C-8
]=
∏E
[4C-8
]I E
[4C-8
]= ?8 · 4C + (1 − ?8) · 1 = 1 + ?8 (4C − 1) ≤ 4?8 (4
C−1)
I P(- ≥ (1 + X)`) ≤∏4?8 (4
C−1)
4C (1+X)`=4∑?8 (4C−1)
4C (1+X)`
=4` (4
C−1)
4C (1+X)`=
(4 (4
C−1)
4C (1+X)
)`I wähle C = ln(1 + X) (positiv!)
28 / 71
Routing in Hyperwürfeln
Chernoff-Schranken
4.17 Beweis (2)Fall P(- ≤ (1 − X)`) ≤ · · · für 1 > X ≥ 0I analoge RechnungI wähle C = − ln(1 − X) (positiv!)
29 / 71
Routing in Hyperwürfeln
Chernoff-Schranken
4.18 BemerkungI In Satz 4.15 von Interesse:
� (`, X) =(
4X
(1 + X) (1+X)
)`für X > −1
I Betrachte sta� dessen:
ln(� (`, X)1/`) = X − (1 + X) ln(1 + X) = 5 (X)
30 / 71
Routing in Hyperwürfeln
Chernoff-Schranken
4.19 Lemma
1. Für −1 < G ≤ 0 gilt: 5 (G) ≤ −G2/2.2. Für 0 < G gilt: −G2/2 ≤ 5 (G).3. Die Funktion 6(G) = 5 (G)/G2 ist monoton wachsend.
4. Für 0 < X < G gilt: 5 (X) ≤ 6(G)X2.5. Für 0 < X < 24 − 1 gilt: 5 (X) ≤ −X2/5.6. Für 0 < X < 1 gilt: 5 (X) ≤ −X2/3.
Beweis: rechnen
31 / 71
Routing in Hyperwürfeln
Chernoff-Schranken
4.21 KorollarI Für 0 ≤ X ≤ 24 − 1 gilt:
P(- ≥ (1 + X)`) ≤(
4X
(1 + X) (1+X)
)`≤ 4−X2`/5
I Für 0 ≤ X ≤ 1 gilt:
P(- ≥ (1 + X)`) ≤(
4X
(1 + X) (1+X)
)`≤ 4−X2`/3
I Für 1 > X ≥ 0 gilt:
P(- ≤ (1 − X)`) ≤(
4−X
(1 − X) (1−X)
)`≤ 4−X2`/2
32 / 71
Routing in Hyperwürfeln
Chernoff-Schranken
4.23 KorollarI Für 0 ≤ X gilt:
P(- ≥ (1 + X)`) ≤( 4
1 + X
) (1+X)`I Für 24 − 1 ≤ X gilt:
P(- ≥ (1 + X)`) ≤ 2−(1+X)`
Beweis: rechnen
33 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
Überblick
Das Problem und deterministische Algorithmen
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 1G in Startknoten G wird unabhängig undgleichverteilt zufällig ein Zwischenknoten IG gewählt.
2. Unter Verwendung des Bit-Fixing-Algorithmuswird jedes 1G von G nach IG transportiert.
3. Unter Verwendung des Bit-Fixing-Algorithmuswird jedes 1G von IG zu Zielknoten 5 (G) transportiert.
35 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.26 Satz
1. Die Wahrscheinlichkeit, dass jedes Paket seinen Zwischenknoten nachspätestens 73 Schri�en erreicht hat, ist mindestens 1 − 2−53 .
2. Die Wahrscheinlichkeit, dass jedes Paket sein Ziel nach spätestens 143 Schri�enerreicht hat, ist mindestens 1 − 2/# 5.
3. Für 3 ≥ 3 ist der Erwartungswert für die Laufzeit von Alg. 4.25 kleiner odergleich 143 + 1.
36 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.27 LemmaI G Startknoten, beliebig aber fest,IG zufällig gewählt
I dG = (41, 42, . . . , 4:): „Bit-Fixing-Pfad“ von G nach IGI „d~ ∩ dG“ : Menge der gemeinsamen Kanten zweier PfadenI (G = {1~ | ~ ≠ G ∧ d~ ∩ dG ≠ ∅}I C : tatsächlicher Ankuftszeitpunkt von 1G in IG ,
also aufgelaufene „Verspätung“ ℓG = C − :I Behauptung: ℓG ≤ |(G |.
37 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.28 BeweisI Zwei Pfade dG und d~ mögen Kante gemeinsam haben.I Behauptung 1: Sobald sich Pfade getrennt haben,
führen sie nicht wieder zusammen.I betrachte Knoten D und E auf Bit-Fixing-Pfad von G ; IG
I der Weg von D nach E ist eindeutig festgelegt (bit fixing!)I unabhängig davon
I von wo man zu D gekommen ist undI wohin es von E aus weiter geht
38 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.28 Beweis (2)Sprechweisen:I Paket 1~ ∈ (G „verlässt“ dG ,
wenn es zum letzten Mal eine Kante von dG benutzt.I dieser Zeitpunkt für jedes 1~ eindeutig (Behauptung 1)I Ein Paket habe beim Transport über 48 von dG „Verspätung“ ℓ ,
falls Transport erst in Schri� C = 8 + ℓI Für 1G ist das wirklich die Zeitdifferenz zwischen frühest möglicher AnkunftC = 8 und tatsächlicher Ankunft C = 8 + ℓ am Endpunkt von 48
I Für andere 1~ ∈ (G ist das nur „irgendeine“ Zahl.
39 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.28 Beweis (3)I Behauptung 2: wenn sich die Verspätung von 1G von ℓ auf ℓ + 1 erhöht,
verlässt ein Paket 1~ ∈ (G den Pfad dG mit Verspätung ℓ .I Behauptung 1: das passiert für jedes Paket in (G nur einmalI Behauptung 2: also ℓG ≤ |(G |.
40 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.28 Beweis (4)I Betrachte 48 , die von Paket 1G zu Zeitpunkt C benutzt werden möchte
aber nicht kann, wegen anderem 1~
I Verspätung von 1G erhöht sich von ℓ = C − 8 auf ℓ + 1,und das kann auch nur so passieren.
I „Verspätung“ von 1~ bei Benutzung von 48 ist C − 8 = ℓI Sei C ′ letzter Zeitpunkt, zu dem ein Paket 1 aus (G Verspätung ℓ hat.I sei 4 9 ′ die Kante, die 1 benutzen „will“; also ist C ′ − 9 ′ = ℓ .I Dann verlässt auch ein Paket in (G zu C ′ Pfad dG :
I Da 1 Kante 4 9 ′ benutzen „will“,I wird ein Paket 1 ′ sicher Kante 4 9 ′ benutzen.I Es hat offensichtlich Verzögerung C ′ − 9 ′ = ℓ .
41 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.28 Beweis (5)I Würde 1′ Pfad dG nicht verlassen, dann gäbe es 1′′, das Kante 4 9 ′+1 zum
Zeitpunkt C ′ + 1 mit Verzögerung C ′ + 1 − ( 9 ′ + 1) = ℓ benutzen würde.I Widerspruch zur Wahl von C ′:
letzter Zeitpunkt, zu dem ein Paket Verspätung ℓ hat.I Also verlässt 1′ Pfad dG zum Zeitpunkt C ′.I Wir schreiben daher nun 1′ zu, bei Paket 1G die Erhöhung der Verspätung von ℓ
auf ℓ + 1 verursacht zu haben.I Da 1′ den Pfad dG verlässt und nie wieder betri�, wird so keinem Paket doppelt
Verspätungserhöhung angerechnet.I Also ist ℓG ≤ |(G |.
42 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.29 Lemma
I Betrachte Zufallsvariable �G~ =
{1 falls dG ∩ d~ ≠ ∅0 sonst
.
I Dann gilt:1. Die Gesamtverspätung von 1G beim Eintreffen in IG ist ℓG ≤
∑~≠G �G~ .
2. E[∑
~≠G �G~
]≤ 3/2.
3. P(ℓG ≥ 63) ≤ 2−63 .
43 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.30 Beweis1. Lemma von eben: ℓG ≤ |(G | =
∑~≠G �G~ .
2. Betrachte irgendein dG = (41, . . . , 4:) mit : ≤ 3.I Die Zufallsvariable) (4) gebe die Anzahl Pfade d~ mit ~ ≠ G an, die über eine
Kante 4 führen.I Dann ist ∑
~≠G
�G~ ≤:∑8=1
) (48)
und
E
[∑~≠G
�G~
]≤
:∑8=1
E [) (48)]
I Zeige:E [) (48)] ≤ 1/2
(wegen : ≤ 3 folgt die Behauptung)44 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.30 Beweis (2)I O. B. d. A. führe 48 von (G1 · · · GA0GA+2 · · · G3) zu (G1 · · · GA1GA+2 · · · G3).I Bit-Fixing-Algorithmus: Ein Pfad von ~ nach I~ führt
genau dann über 48 , wenn gilt:I ~ = D1 · · ·DA0GA+2 · · · G3 undI I~ beginnt mit G1 · · · GA1
I Solche ~ ≠ G gibt es 2A − 1.I Zwischenknoten zufällig gleichverteilt und unabhängig gewählt,I also ist für jedes ~ die Wahrscheinlichkeit
für das Präfix G1 · · · GA1 in I~ stets 2−(A+1) .
45 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.30 Beweis (3)Also ist
E [) (48)] =∑~≠G
P(d~ benutzt 48
)=
∑D1···DA≠G1···GA
P(dD0GA+2···G3 benutzt 48
)= (2A − 1) · 2−(A+1) ≤ 1/2
46 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.30 Beweis (4)I wegen der ersten beiden Punkte: E [ℓG ] ≤ 3/2I man vergesse die) (48) und denke wieder an die �G~
I also Chernoff-Schranken anwendbar
I da 24 − 1 < 11, liefert Korollar 4.23
P(ℓG ≥ 63) ≤ P(∑
�G~ ≥ 63)
= P(∑
�G~ ≥ 12 · 3/2)
≤ P(∑
�G~ ≥ (1 + 11)E[∑
�G~
] )≤ 2−123/2 = 2−63
47 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.26 Satz (zur Erinnerung)
1. Die Wahrscheinlichkeit, dass jedes Paket seinen Zwischenknoten nachspätestens 73 Schri�en erreicht hat, ist mindestens 1 − 2−53 .
2. Die Wahrscheinlichkeit, dass jedes Paket sein Ziel nach spätestens 143 Schri�enerreicht hat, ist mindestens 1 − 2/# 5.
3. Für 3 ≥ 3 ist der Erwartungswert für die Laufzeit von Alg. 4.25 kleiner odergleich 143 + 1.
48 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.31 Beweis von Satz 4.261. Mit Wahrscheinlichkeit 1 − 2−53 alle Pakete nach ≤ 73 Schri�en am
Zwischenknoten:I Wahrscheinlichkeit, dass Paket um ≥ 63 Schri�e verzögert wird, ist ≤ 2−63 .I # = 23 Pakete unabhängig voneinander transportiert: Wahrscheinlichkeit, dass
wenigstens eines um ≥ 63 Schri�e verzögert wird, ist ≤ 23 · 2−63 = 2−53 .I Zusätzlich jedes Paket über maximal 3 Kanten transportiert: Wahrscheinlichkeit,
dass wenigstens ein Paket erst nach ≥ 73 Schri�en am Ziel ist, ≤ 2−53 .I Also: mit Wahrscheinlichkeit ≥ 1 − 2−53 alle Pakete nach ≤ 73 Schri�en 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/# 5 alle Pakete nach ≤ 143 Schri�en
am Ziel:I Zweite Phase: Umkehrung der ersten Phase.I Deshalb gilt getrennt hierfür die gleiche Analyse.I Damit bei Nacheinanderausführung beider Phasen durch ihre Überlappung keine
zusätzlichen nachteiligen Effekte auftreten, Erweiterung der erste Phase:I Jedes Paket verharrt im Zwischenknoten, bis insgesamt seit Beginn des Routing 73
Schri�e vergangen sind.I Wahrscheinlichkeit, dass alles nach ≤ 143 Schri�en erledigt, mindestens(1 − 2−53 ) (1 − 2−53 ) = 1 − 2/# 5 + 1/# 10 ≥ 1 − 2/# 5
50 / 71
Routing in Hyperwürfeln
Erster randomisierter Algorithmus
4.31 Beweis von Satz 4.26 (3)3. Für 3 ≥ 3 ist die erwartete Laufzeit ≤ 143 + 1.
I Die größte Laufzeit beschränkt durch Zeitfür „sequentielles Routing“. Zeitbedarf dafür ≤ 23# .
I Für 3 ≥ 3 ist # ≥ 8, also 143 ≤ 23# ,I also ist dann der Erwartungswert für die Laufzeit
≤ (1 − 2/# 5)143 + (2/# 5) · 23#= 143 − 283/# 5 + 43/# 4
≤ 143 − 0 + 1/# 2
≤ 143 + 1
51 / 71
Routing in Hyperwürfeln
Die probabilistische Methode
Überblick
Das Problem und deterministische Algorithmen
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 erkanntI Nachweis der Existenz gewisser Objekte
I Variante 1: Zufallsvariable -I hat reelle numerische WerteI E [- ] existiert
dann nimmt -I mindestens einen Wert an, der nicht kleiner als E [- ] ist, und
einen Wert, der nicht größer als E [- ] ist.I Also existieren Ereignisse, für die - diese Werte annimmt.
53 / 71
Routing in Hyperwürfeln
Die probabilistische Methode
Die probabilistische Methode (1)I Tragweite zuerst von Erdős erkanntI Nachweis der Existenz gewisser Objekte
I Variante 1: Zufallsvariable -I hat reelle numerische WerteI E [- ] existiert
dann nimmt -I mindestens einen Wert an, der nicht kleiner als E [- ] ist, und
einen Wert, der nicht größer als E [- ] ist.
I Also existieren Ereignisse, für die - diese Werte annimmt.
53 / 71
Routing in Hyperwürfeln
Die probabilistische Methode
Die probabilistische Methode (1)I Tragweite zuerst von Erdős erkanntI Nachweis der Existenz gewisser Objekte
I Variante 1: Zufallsvariable -I hat reelle numerische WerteI E [- ] existiert
dann nimmt -I mindestens einen Wert an, der nicht kleiner als E [- ] ist, und
einen Wert, der nicht größer als E [- ] ist.I Also existieren Ereignisse, für die - diese Werte annimmt.
53 / 71
Routing in Hyperwürfeln
Die probabilistische Methode
Die probabilistische Methode (2)I Variante 2: endliches nichtleeres Universum*
I mit Objekten$I Eigenschaft % , die Objekte haben können
I Wähle zufällig ein Objekt$ aus* aus.Wahrscheinlichkeit ?, dass$ Eigenschaft % hat?I Wenn ? > 0 ist,
dann muss in* ein$ mit % ($) existieren.
54 / 71
Routing in Hyperwürfeln
Die probabilistische Methode
Die probabilistische Methode (2)I Variante 2: endliches nichtleeres Universum*
I mit Objekten$I Eigenschaft % , die Objekte haben können
I Wähle zufällig ein Objekt$ aus* aus.Wahrscheinlichkeit ?, dass$ Eigenschaft % hat?
I Wenn ? > 0 ist,dann muss in* ein$ mit % ($) existieren.
54 / 71
Routing in Hyperwürfeln
Die probabilistische Methode
Die probabilistische Methode (2)I Variante 2: endliches nichtleeres Universum*
I mit Objekten$I Eigenschaft % , die Objekte haben können
I Wähle zufällig ein Objekt$ aus* aus.Wahrscheinlichkeit ?, dass$ Eigenschaft % hat?I Wenn ? > 0 ist,
dann muss in* ein$ mit % ($) existieren.
54 / 71
Routing in Hyperwürfeln
Die probabilistische Methode
Die probabilistische Methode (2)I Variante 2: endliches nichtleeres Universum*
I mit Objekten$I Eigenschaft % , die Objekte haben können
I Wähle zufällig ein Objekt$ aus* aus.Wahrscheinlichkeit ?, dass$ Eigenschaft % hat?I Wenn ? > 0 ist,
dann muss in* ein$ mit % ($) existieren.
54 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
Überblick
Das Problem und deterministische Algorithmen
Markov- und Chebyshev-Ungleichung
Chernoff-Schranken
Erster randomisierter Algorithmus
Die probabilistische Methode
Zweiter „randomisierter Algorithmus“
55 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
PlanI Sprechweisen:
I RPH-Algorithmus: datenunabhängiger randomisierter Algorithmus fürPermutationsrouting in Hyperwürfeln
I RPH-Algorithmus schnell: erwartete Laufzeit in$ (3).I Bisher:
I Algorithmus 4.25 nutzt Θ(#3) Zufallsbits und ist schnellI Datenunabhängige deterministische Algorithmen
nutzen 0 Zufallsbits und sind nie schnell. (Satz 4.7)
I Frage: Gibt es RPH-Algorithmen gibt, die weniger als Θ(#3) Zufallsbitsbenutzen und trotzdem schnell sind?
I Ziel: Θ(3) ZufallsbitsI notwendig undI in gewissem Sinne „hinreichend“, um sein schnell zu können
56 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
PlanI Sprechweisen:
I RPH-Algorithmus: datenunabhängiger randomisierter Algorithmus fürPermutationsrouting in Hyperwürfeln
I RPH-Algorithmus schnell: erwartete Laufzeit in$ (3).I Bisher:
I Algorithmus 4.25 nutzt Θ(#3) Zufallsbits und ist schnellI Datenunabhängige deterministische Algorithmen
nutzen 0 Zufallsbits und sind nie schnell. (Satz 4.7)
I Frage: Gibt es RPH-Algorithmen gibt, die weniger als Θ(#3) Zufallsbitsbenutzen und trotzdem schnell sind?
I Ziel: Θ(3) ZufallsbitsI notwendig undI in gewissem Sinne „hinreichend“, um sein schnell zu können
56 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.32 SatzWenn ein RPH-Algorithmus in Würfeln mit # = 23 Knoten nur : Zufallsbits benutzt,dann ist seine erwartete Laufzeit in Ω(2−:
√# /3).
57 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.33 BeweisI Fasse RPH-Algorithmus ' auf als Wahrscheinlichkeitsverteilung über 2:
deterministischen Algorithmen.I Dann wird mindestens ein det. Alg � mit Wahrscheinlichkeit ≥ 2−: ausgewählt.I Es sei G eine Eingabe, für die � Laufzeit Ω(
√# /3) hat.
I Betrachte die Bearbeitung von G durch ':I Mit Wahrscheinlichkeit ≥ 2−: wird ' wie � arbeiten.I Also ist der Erwartungswert für die Laufzeit von ' mindestens Ω(2−:
√# /3).
58 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.34 KorollarJeder schnelle RPH-Algorithmus muss Ω(3) Zufallsbits verwenden.
59 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.35 BeweisI Es sei 2 irgendeine positive Konstante.I Damit 2−:
√# /3 ≤ 23 ist, muss gelten:
I 2: ≥√# /(232), also
I : ≥ log√# −$ (log3), also
I : ∈ Ω(3).
60 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.36 SatzFür jedes 3 gibt es einen schnellen RPH-Algorithmus,der 33 Zufallsbits benötigt und erwartete Laufzeit 223 hat.
Achtung! Hier wird nicht die Existenz eines RPH-Algorithmus für Hyperwürfel allerGrößen zugesichert wird.
61 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.36 SatzFür jedes 3 gibt es einen schnellen RPH-Algorithmus,der 33 Zufallsbits benötigt und erwartete Laufzeit 223 hat.
Achtung! Hier wird nicht die Existenz eines RPH-Algorithmus für Hyperwürfel allerGrößen zugesichert wird.
61 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.37 BeweisI A = (�1, . . . , �C ): Liste det. PH-AlgorithmenI A; rand. 'A (zufällig gleichverteilt ein �8 ∈ A)I A effizientes # -Schema, falls für jede # -Permutation
E [Laufzeit] ≤ 223
I Zeige: es ex. effizientes # -Schema mit C = # 3 Algs.I 'A braucht nur log C ∈ $ (log# ) = $ (3) Zufallsbits
I Nachweis der Existenz eines so kleinen effizienten # -Schemasmi�els der probabilistischen Methode
62 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.37 BeweisI A = (�1, . . . , �C ): Liste det. PH-AlgorithmenI A; rand. 'A (zufällig gleichverteilt ein �8 ∈ A)I A effizientes # -Schema, falls für jede # -Permutation
E [Laufzeit] ≤ 223I Zeige: es ex. effizientes # -Schema mit C = # 3 Algs.I 'A braucht nur log C ∈ $ (log# ) = $ (3) Zufallsbits
I Nachweis der Existenz eines so kleinen effizienten # -Schemasmi�els der probabilistischen Methode
62 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.37 Beweis (2)I Fasse Algorithmus 4.25 als Menge B = {�1, . . . , �## }
von ## deterministischen PH-Algorithmen auf.I Zufallsexperiment: aus B zufällig (mit Zurücklegen)
ListeA = (�1, . . . , �# 3) von # 3 Algorithmen �8 = � 98 auswählenI Zeige:A ist effizientes # -Schema mit Wahrscheinlichkeit echt größer Null.I Also existiert ein effizientes # -Schema.
63 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.37 Beweis (3)I c8 : die # ! PermutationenI Det. PH-Algorithmus � heiße gut für c8 , wenn er c8 in höchstens 143 Schri�en
routet, sonst schlecht.I Satz 4.26.2. sagt: Für jedes c8 ist ein Bruchteil von ≤ 1/# aller � 9 schlecht für c8 .I zunächst ein beliebiges c8 fixiert.I Erwartungswert für die Anzahl der für c8 schlechten Algorithmen inA ist≤ # 3/# = # 2
I - 9 sei die 0-1-Zufallsvariable mit- 9 = 1, gdw. � 9 schlecht für c8 .
I Also: ` = E[∑# 3
9=1- 9
]≤ # 2.
64 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.37 Beweis (4)I ` = E
[∑# 3
9=1- 9
]≤ # 2
I sei 2 = # 2/` ≥ 1I - 9 unabhängige Zufallsvariablen
I Obere Schranke für P(∑# 3
9=1- 9 > 4# 2)
mi�els Chernoff-Schranke (Kor. 4.23):
P©«# 3∑9=1
- 9 > (1 + 3)# 2ª®¬ <
(1
4
)# 2
= 4−#2
.
(siehe nächste Folie)I Ereignis �8 : > 4# 2 Algorithmen inA schlecht für c8 .I Also P(�8) < 4−#
2
.
65 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.37 Beweis (5)
P©«# 3∑9=1
- 9 > (1 + 3)# 2ª®¬ = P©«# 3∑9=1
- 9 > (1 + X)2`ª®¬
≤ P©«# 3∑9=1
- 9 > (1 + 2X)`ª®¬
≤(
42X
(1 + 2X)1+2X
)`≤
(42X
(1 + 2X)2X
)`=
( 4
1 + 2X
)2X`≤
( 4
1 + 3
)2X`=
(44
)3# 2
≤(1
4
)# 2
66 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.37 Beweis (6)I Wahrscheinlichkeit, dassA für mindestens ein c8 schlecht:
P
(# !⋃8=1
�8
)≤
# !∑8=1
P(�8) ≤ # ! · 4−# 2
< 1 .
I Also: Wahrscheinlichkeit, dass von den Algorithmen inA für jede Permutationhöchstens 4# 2 schlecht sind, ist echt größer 0. Also existiert ein solchesA.
67 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.37 Beweis (7)I Zeige: diesesA sogar ein effizientes # -Schema.I Es sei c8 beliebig.I Mit Wahrscheinlichkeit ≥ 1 − (4# 2/# 3) = 1 − 4/# wird 'A diese Permutation
in ≤ 143 Schri�en durchführen. Andernfalls werden höchstens 23# Schri�ebenötigt.
I Also Erwartungswert für die Laufzeit höchstens
(1 − 4
#)143 + 4
#23# ≤ 223 .
68 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.38 BemerkungI Zeige: Für hinreichend große # gilt: # ! · 4−# 2
< 1.I Stirlingsche Formel:
# ! =√2c#
##
4#(1 + ℎ(# )) mit
ℎ(# ) =1
12#+ 1
288# 2− 139
5140# 3± · · · ∈ $ ( 1
#)
I Also:
lim#→∞
# !4#
2= lim#→∞
√2c# · ##
4# · 4# 2= lim#→∞
√2c# · 4# log#
4# · 4# 2= 0
I Genaueres Nachrechnen ergibt, dass schon für # ≥ 4 gilt: # ! · 4−# 2
< 1.
69 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
4.39 BemerkungI Satz 4.36 behauptet nur die Existenz eines – noch dazu nichtuniformen –
schnellen RPH-Algorithmus, der nur$ (3) Zufallsbits braucht.I Schwieriger: man gebe explizit RPH-Algorithmen an, die möglichst wenige
Zufallsbits benötigen.I Bislang beste Lösung: uniform Θ(32) Zufallsbits.I Aufgabe: Man senke diesen Wert.
70 / 71
Routing in Hyperwürfeln
Zweiter „randomisierter Algorithmus“
ZusammenfassungI Chernoff-SchrankenI die probabilistische MethodeI Routing in Hyperwürfeln:
I deterministisch ist der schlimmste Fall immer schlimmI randomisiert im Erwartungswert immer harmlos
I aber eben nur der Erwartungswert
71 / 71