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