2.7 Probabilistisches Zwischenspiel: Chernoff Bounds

Seien X1,,Xn unabhängige Zufallsvariable, die jeweils die Werte 0 und 1 annehmen, und sei Pr[Xi=1]=p für jedes i. Für X:=X1++Xn gilt E[X]=pn. Wir interessieren uns für die Wahrscheinlichkeit, dass X deutlich kleiner (oder deutlich größer) als sein Erwartungswert ist, und wollen zeigen, dass diese Wahrscheinlichkeit klein ist. Sei nun also q<p. Wir wollen zeigen, dass

(1)Pr[Xqn]

sehr klein ist. Aus Gründen der Lesbarkeit gehen wir davon aus, dass qn eine ganze Zahl ist, weil wir nicht immer qn schreiben wollen. Rechnen wir:

Pr[Xqn]=i=0qnPr[X=i](2)=i=0qnpi(1p)ni(ni)

Führen wir nun, rein aus Gründen der Analyse, Zufallsvariable Y1,,Yn ein mit Pr[Yi=1]=q und Pr[Yi=0]=1q. Für Y:=Y1++Yn gilt E[Y]=qn und somit wird Pr[Yqn] wohl nicht besonders klein sein. Auf jeden Fall gilt aber

(3)1Pr[Yqn]=i=0qnqi(1q)ni(ni)

Die Ausdrücke (2), für den wir eine obere Schranke suchen, und (3), für den wir mit 1 bereits eine nicht ganz schlechte obere Schranke gefunden haben, sehen rein formal sehr ähnlich aus. Versuchen wir nun, ersteren aus letzterem "herauszuquetschen":

1i=0qnqi(1q)ni(ni)=i=0qn(qp)i(1q1p)nipi(1p)ni(ni)

Jetzt müssen wir scharf hinschauen: da q<p gilt, ist qp<1 und ist (qp)i abnehmend in i; ebenso ist 1q1p>1 und somit ist (1q1p)ni auch abnehmend in i. Es gilt also: der Ausdruck (qp)i(1q1p)ni in der obigen Summe nimmt für i=qn sein Minimum an, und somit gilt auch

1i=0qn(qp)i(1q1p)nipi(1p)ni(ni)i=0qn(qp)qn(1q1p)nqnpi(1p)ni(ni)=(qp)qn(1q1p)nqni=0npi(1p)ni(ni)=(qp)qn(1q1p)nqnPr[Xqn] .

Wir lösen nach Pr[Xn] auf und erhalten

(4)Pr[Xqn]((qp)q(1q1p)1q)n .

Der Ausdruck ((qp)q(1q1p)1q) ist immer mindestens 1 und ist genau 1 nur dann, wenn p=q ist. Der Logarithmus dieses Ausdrucks, nämlich

qlog(qp)+(1q)log(1q1p)

ist in der Literatur als Kullback-Leibler-Divergenz bekannt und wird manchmal mit D(q||p) abgekürzt.

Übungsaufgabe 2.7.1 Sei q>p. Zeigen Sie, dass auch Pr[Xqn] durch den Ausdruck in (4) beschränkt ist.

Zusammenfassend erhalten wir:

Theorem 2.7.1 (Chernoff Bound). Seien X1,,Xn Zufallsvariable mit Wertebereich {0,1} und Pr[Xi]=p für jedes i. Sei X:=X1++Xn und q[0,1]. Dann gilt

(falls qp)Pr[Xqn]((qp)q(1q1p)1q)n(falls qp)Pr[Xqn]((qp)q(1q1p)1q)n

Anwendung auf den Anderson-Miller-Algorithmus für List Ranking

Sei T=16logn. In Kapitel 2.6 haben wir gezeigt:

Pr[Nach T Schritten sind nicht alle Prozessoren fertig]i=1pPr[t=1TYt<logn]=nPr[t=1TYt<logn] .

Sei Y=Y1++YT. Es gilt Pr[Yt]=14=:p und logn=116T. Für q:=116 haben wir nun also

Pr[Y<logn]=Pr[Y<qT]((qp)q(1q1p)1q)T=((1/161/4)1/16(15/163/4)15/16)16logn=(515416)logn7logn=n7 . und somit Pr[Nach 16logn Schritten sind nicht alle Prozessoren fertig]n6 .