Chernoff Bounds

Werbung
Seminar über Algorithmen - Chernoff Bounds
Jonas Hoffmann, 21.11.2006
1. Einführung
Was sind Chernoff Schranken und wozu brauchen wir sie?
Als Chernoff Schranken (Chernoff Bounds) bezeichnet man aus der Markov-Ungleichung
abgeleitete exponentielle obere Schranken für die tail distribution einer Folge von unabhängigen
Zufallsexperimenten.
Da die Wahrscheinlichkeitsverteilungen, die wir analysieren (z.B. Binomialverteilung) mit dem
Abstand vom Mittelwert exponentiell abfällt, erhält man mit den Chernoff-Ungleichungen eine
stärkere Schranke als z.B. mit der Markov oder Chebyshev Ungleichung. Vor allem bei der
Analyse von randomisierten Algorithmen kann man deshalb die Laufzeit mit den ChernoffSchranken gut abschätzen.
2. Herleitung
Momenterzeugende Funktion
Die momenterzeugende Funktion einer Zufallsvariablen X ist definiert als:
Die n-ten Ableitungen von
an der Stelle Null heissen n-te Momente der Zufallsvariablen X
Es gilt:
Beispiel: geometrische Verteilung mit Wahrscheinlichkeit p
Erste Ableitung:
Zweite Ableitung:
Eigenschaften von M
Seien X und Y zwei Zufallsvariablen, dann haben sie die gleiche Verteilung, falls gilt:
Seien X und Y unabhängige Zufallsvariablen, dann gilt:
Markov Ungleichung mit Exponentialfunktion
Für t > 0 kann man die Markov Ungleichung so umformen:
Also gilt:
Für t < 0 gilt entsprechend:
Also auch:
Seminar über Algorithmen - Chernoff Bounds
Jonas Hoffmann, 21.11.2006
Chernoff Schranken für Poisson-Zufallsexperimente
Sei
Sei
eine Folge unabhängiger Poisson-ZE mit
und:
Die momenterzeugende Funktion der einzelnen Xi ist:
Wie gezeigt ist die momenterzeugende Funktion von X gleich dem Produkt der einzelnen MX :
i
Für die Summe der Zufallsvariablen gelten die folgenden oberen Chernoff Schranken:
Die folgenden beiden Ungleichungen ergeben sich für Abweichungen unter dem Mittelwert
Eine letzte nützliche Ungleichung für Abweichung in bedien Richtungen ergibt sich aus (U2) und
(U5):
Damit haben wir erstmal genug Ungleichungen aufgestellt, von diesen bilden (U1) und (U4) die
stärksten Schranken, (U2), (U3), (U5) und auch (U6) sind abgeschwächte Formen, die in der
Praxis aber oft leichter anzuwenden sind und trotzdem ausreichend gute Schranken bilden.
Seminar über Algorithmen - Chernoff Bounds
Jonas Hoffmann, 21.11.2006
3. Anwendung
Einfaches Beispiel: Münzwurf Man werfe eine faire Münze n Mal, dabei werde X mal Kopf geworfen. Der Erwartungswert E[X]
ist bekanntlich n/2.
Wie groß ist die Wahrscheinlichkeit, daß das Ergebnis um n/4 vom Mittelwert abweicht (mit
Chebyshev):
Die gleiche Wahrscheinlichkeit mit der Chernoff Ungleichung (U6) abgeschätzt:
Die Chernoff Schranke ist also exponentiell kleiner als die, die man mit der Chebyshev
Ungleichung bestimmen kann.
Randomisiertes Routing in Hypercubes
Im Beispiel wird ein Netzwerk, in dem Pakete von Punkt A zu Punkt B geroutet werden sollen,
durch einen gerichteten Graphen modelliert.
Jede Kante des Graphen ist ein Kommunikationskanal, der in jedem Zeitschritt ein Paket von
einem zum anderen Knoten transportieren kann. Jeder Knoten des Graphen stellt einen Switch
dar, der Switch hat einen Puffer, in dem ankommende Pakete gespeichert werden können.
Ein Routing Algorithmus beschreibt für jedes beliebige Paar von Knoten einen Weg vom einen zum
anderen Knoten, also eine Folge von Kanten. Ein Maß der Performanz eines Algorithmus ist die
maximale Anzahl von Schritten, die man zum Routen einer beliebigen Permutation braucht. (Jeder
Knoten ist Start eines einzigen Pakets und Ziel eines einzigen Paketes).
Eigenschaften:
N = 2n Knoten
nN Kanten
Sei x' = (x1,...,xn) die binäre Repräsentation
der Zahl x (0<=x<=N-1)
Zwei Knoten a und b haben genau dann eine
direkte Verbindung, wenn a' und b' sich
genau in einem Bit unterscheiden.
Der Durchmesser des Netzwerkes ist n, das
bedeutet: Ein Pfad mit Länge maximal n
verbindet jedes Paar von Knoten und es gibt
mindestens ein Paar von Knoten, das genau
durch einen Pfad der Länge n verbunden ist.
Ein einfacher Routing Algorithmus:
Der Algorithmus vergleicht also bitweise
Start- und Zielknoten und überschreitet bei
einem Unterschied die entsprechende Kante
Man kann zeigen, dass dieses Vorgehen
allein bei bestimmten Permutationen zu
Engpässen und somit zu schlechter
Performanz führen kann.
Es zeigt sich, dass der Algorithmus für zufällig gewählte Zielknoten im Allgemeinen gut funktioniert.
Das führt zu folgendem Algorithmus:
Seminar über Algorithmen - Chernoff Bounds
Jonas Hoffmann, 21.11.2006
Wir haben ja aber auch schon bei der Analyse von Quicksort gesehen, dass randomisierte
Eingaben zu besseren Laufzeiten führen kann.
Wir werden zeigen, dass für eine beliebige Permutation der 2-Phasen Algorithmus
Wahrscheinlichkeit 1-O(1/N): O(n) = O(log(N)) Schritte benötigt.
mit der
Um diesen Algorithmus zu analysieren, genügt es zunächst „nur“ die erste Phase zu beschränken,
da die zweite Phase ja der Umkehrung der ersten entspricht.
Wenn ein Paket zu einem zufälligen Ziel x' geroutet wird bedeutet dies nichts anderes als, dass für
jedes xi ein Bit im Zielknoten unabhängig mit der Wahrscheinlichkeit ½ auf 0 bzw. 1 gesetzt wird.
Für ein Paket M sei T(M) die Anzahl der Schritte um Phase 1 abzuschließen.
Für eine Kante e sei X(e) die Anzahl der Pakete, die diese Kante in Phase 1 überschreiten.
In jedem Schritt der ersten Phase überschreitet ein Paket M entweder eine Kante oder wartet im
Puffer, während ein anderes Paket eine Kante auf dem Pfad von M überschreitet.
Daraus folgt:
Sei P = (e1,...em) mit ei=(vi-1,vi) ein möglicher Pfad, gemäss des Bit-Fixing Algorithmus, dann
definieren wir:
Also ist die Wahrscheinlichkeit, dass Phase 1 mehr als t Schritte benötigt, beschränkt durch die
Wahrscheinlichkeit, dass: T(P) >= t
Es gibt höchstens 22n mögliche Paketpfade, da es 2n Start- und 2n Zielknoten gibt.
Um die (asymptotische) Laufzeit des Algorithmus zu analysieren, müssen wir T(p) beschränken,
dazu möchten wir eine Chernoff Schranke benutzen. Die Einzelereignisse sind aber nicht
unabhängig:
Wenn ein Paket eine Kante überschritten hat, wird es danach eine angrenzende Kante
überschreiten.
Wir gehen deshalb in 2 Schritten vor:
1. Wir benutzen eine Chernoff Schranke, um zu zeigen, dass mit hoher Wahrscheinlichkeit
nicht mehr als 6n verschiedene Pakete einen möglichen Pfad P kreuzen.
2. Unter dieser Annahme beschränken wir die Gesamtzahl von Übergängen, die diese Pakete
auf dem Pfad P durchführen.
Wir nennen ein Paket aktiv im Knoten vi-1, wenn es vi-1 erreicht hat und im nächsten Schritt über
die Kante ei von vi-1 nach vi wandern könnte.
Für k=1,...,N sei Hk eine 0-1 Zufallsvariable, so dass Hk=1, falls das Paket mit Startknoten k aktiv
ist und 0 sonst.
Es sei:
Die Hk sind unabhängig, da es nur von der zufälligen Wahl des Zielknotens für Phase 1 abhängt
und diese Wahl unabhängig für jeden Startknoten ist.
Es seien:
Nur Pakete von den Startknoten (*,...,*,aj,...,an) können den Knoten vi-1 erreicht haben bevor das
j-te Bit gefixt wird.
Es gibt also höchstens 2j-1 aktive Pakete im Knoten vi-1, und die Wahrscheinlichkeit für jedes dieser
Pakete, dass es sich in diesem Knoten befindet ist 2-(j-1)
Seminar über Algorithmen - Chernoff Bounds
Jonas Hoffmann, 21.11.2006
Da die erwartete Anzahl aktiver Pakete pro Knoten 1 ist und wir m Knoten betrachten, folgt
wegen der Linearität des Erwartungswertes:
Weil H die Summe unabhängiger 0-1 Zufallsvariablen ist, können wir die Chernoff Ungleichung
(U3) anwenden:
Wir benutzen diese obere Schranke für H, um eine Schranke für T(P) zu finden, dabei nutzen wir
folgende Eigenschaft aus:
Wir setzen A=(T(P)>=30n) und B=(H>=6n) und erhalten:
Wenn wir jetzt zeigen können, dass:
erhalten wir:
Und damit können wir zeigen, dass die Laufzeit von Phase 1 insgesamt mit hoher
Wahrscheinlichkeit O(n) ist.
Wir müssen jetzt also noch zeigen, dass, unter der Bedingung, es gäbe höchstens 6n aktive
Pakete, welche Kanten von P benutzen, die Gesamtzahl der Übergänge dieser Pakete auf dem Pfad
P beschränkt ist.
Man kann sich leicht klar machen, dass ein Paket nicht wieder auf den Pfad P zurückkehren kann,
wenn es ihn einmal verlassen hat. Angenommen wir haben ein aktives Paket im Knoten vi, wie
gross ist die Wahrscheinlichkeit, dass es die Kante ei überschreitet?
Die Knoten an der Kante ei unterscheiden sich im j-ten Bit.
Die Wahrscheinlichkeit ist höchstens ½, da der Zielknoten des Pakets an der j-ten Stelle mit
gleicher Wahrscheinlichkeit eine 0 oder eine 1 haben kann.
Wir betrachten nun diese Situation, dass ein Paket die Kante ei am Knoten vi vom Pfad P
überschreitet, als Zufallsexperiment. Das ZE ist erfolgreich, wenn das Paket den Pfad verlässt und
nicht erfolgreich, wenn das Paket die Kante ei überschreitet.
Die Zufallsexperimente sind unabhängig und jedes ist mindestens mit der Wahrscheinlichkeit ½
erfolgreich. Wir stellen uns die einzelnen ZE als Münzwürfe vor, die mit (mindestens) der
Wahrscheinlichkeit ½ Kopf ergeben.
Kopf bei der Münze entspricht also dem Verlassen des Pfades und Zahl entspricht dem
Überschreiten einer Kante des Pfades
Behauptung: Die Wahrscheinlichkeit, dass die aktiven Pakete die Kanten von P mehr als 30n mal
überschreiten ist kleiner als die Wahrscheinlichkeit, dass eine 36n mal geworfene Münze weniger
als 6n Mal Kopf ergibt.
Wenn nun also das ZE 6n Mal nicht erfolgreich war (Zahl), dann haben 6n Pakete eine Kante des
Pfades P überschritten, es sind also keine aktiven Pakete mehr übrig (denn das war ja die
Bedingung)
Sei Z die Anzahl der „Kopf-Ergebnisse“ bei 36n fairen Münzwürfen, so können wir jetzt die
Chernoff Ungleichung (U5) anwenden:
Daraus folgt:
Da es höchstens 22n mögliche Pfade im Hypercube gibt, ist die Wahrscheinlichkeit, dass es einen
Pfad gibt, für den T(P)>=30n, beschränkt durch:
Also ist die Wahrscheinlichkeit,daß Phase 1 (Phase 2) in 30n Schritten (bzw. Phase 1+2 in 60n
Schritten) beendet ist beschränkt durch:
Herunterladen