TU Ilmenau, Fakultät IA Institut TI, FG Komplexitätstheorie und Effiziente Algorithmen Univ.-Prof. Dr. Martin Dietzfelbinger, Dipl.-Ing. Christopher Mattern http://www.tu-ilmenau.de/iti/lehre/lehre-ws-20122013/ra/ Randomisierte Algorithmen“ ” Übungsblatt 5, WS 2012/13 Besprechung: Mittwoch, 9.1.2013 (2. KW). Für das Vorrechnen einer mit *“ ” markierten Aufgaben werden Bonuspunkte vergeben. Aufgabe 1 (Parameterschätzung bei Bernoulli-Experimenten, z. B. Münzwurf) * Seien Z1 , Z2 , Z3 , . . . unabhängige Zufallsvariable, die jeweils zum Parameter p, 0 < p < 1, geometrisch verteilt sind. Diese Zufallsvariablen modellieren die Wartezeit auf einen Erfolg bei unabhängigen Versuchen mit Erfolgswahrscheinlichkeit p. Weiter sei für k ≥ 1 die Zufallsvariable Yk definiert durch Yk = Z1 +Z2 +· · ·+Zk . Dann modelliert Yk die Wartezeit auf k Erfolge bei unabhängigen Versuchen mit Erfolgswahrscheinlichkeit p. Wir wollen eine Art Hoeffding-Schranke für Yk ermitteln. (a) Zeigen Sie: E(Yk ) = k/p. (b) Finden Sie eine obere Schranke für Pr Yk ≥ (1 + ε) kp . Hinweis: Wenn X1 , X2 , X3 , . . . unabhängige {0, 1}-wertige Zufallsvariable mit Pr(Xi = 1) = p sind, dann kann man sich vorstellen, dass Yk wie folgt definiert ist: Yk = min{i | X1 + X2 + · · · + Xi ≥ k}. Also gilt für ganzzahlige t, dass Pr (Yk > t) = Pr(X1 + · · · + Xt < k). Nun kann man die Hoeffding-Schranke aus der Vorlesung ins Spiel bringen. (c) Finden Sie eine obere Schranke für Pr Yk ≤ (1 − ε) kp . (d) Benutzen Sie das Ergebnis von (b) und (c), um folgende Strategie zu analysieren: Gegeben ist eine unfaire Münze, die mit Wahrscheinlichkeit p Kopf und mit Wahrscheinlichkeit 1−p Zahl zeigt. Der unbekannte Parameter p soll geschätzt werden. Man wirft die Münze mehrmals, bis genau k-mal Kopf erschienen ist. Die beobachtete Zahl der Versuche ist Y . Nun gibt man p̂ = k/Y als Schätzwert für p aus. Es soll etwas über die Wahrscheinlichkeit gesagt werden, dass man mit dieser Schätzung weit vom echten p entfernt liegt. Aufgabe 2 (Vierfach unabhängige Suche) * In dem in Kapitel 4.1 der Vorlesung beschriebenen Szenario (die Menge A ist ein Zp , A ⊇ B 6= ∅, % = |B|/|A|) seien die Zufallsvariablen Xi , 0 ≤ i ≤ p − 1, jetzt definiert durch Xi = (a0 + a1 i + a2 i2 + a3 i3 ) mod p , wobei a0 , a1 , a2 , a3 ∈ A = Zp zufällig gewählt werden. Erinnerung (siehe Aufgabe 1): Wenn i1 , . . . , i4 verschieden sind, dann sind Xi1 , . . . , Xi4 unabhängig; jede ist uniform in Zp verteilt. Wie in der Vorlesung sei Yi = 1, falls Xi ∈ B, und Yi = 0 sonst, und es sei Zi = Y0 + · · · + Yi−1 . (a) Zeigen Sie: E (Zi − i%)4 Pr(Zi = 0) ≤ (i%)4 Hinweis: Verallgemeinerte Markov Ungleichung. 2 Randomisierte Algorithmen“ ” Übungsblatt 5, WS 2012/13 (b) (Etwas schwieriger.) Beweisen Sie: E (Zi − i%)4 ≤ i% + 3(i%)2 Hinweis: Für unabhängige Zufallsvariablen X, Y ist Erwartungswert der multiplikativ, d. h., P 4 es ist E(X ·Y ) = E(X)·E(Y ). Man multipliziere E ( 0≤j<i (Yj − %)) aus und vereinfache mit der Multiplikationsregel. Dabei fallen sehr viele Terme weg, weil E(Yj − %) = 0 ist. (c) (Wieder leicht.) Zeigen Sie: Pr(Zi = 0) ≤ 3 1 + 3 (i%) (i%)2 Falls i% ≥ 1 gilt, ist dies nicht größer als 4/(i%)2 . (d) Zeigen Sie: 1 E(#Tests) = O % P Hinweis: Den Erwartungswert schätzt man mit der Formel E(#Tests) = i Pr(#Tests ≥ i) und Teil (c) ab. Die entstehende Summe wird durch ein Integral abgeschätzt. Aufgabe 3 (Lineares Sondieren) * Wir betrachten eine Hash-Tabelle H[0..m − 1] der Größe m mit n < m Schlüsseln und dem Auslastungsfaktor α = n/m. Jede Zelle der Tabelle speichert ein Schlüssel-Wert-Paar (x, d) ∈ U × R oder ist leer. Eine Hash-Funktion h : U → {0, 1, . . . , m − 1} ordnet jedem Schlüssel x einen Tabellenplatz H[h(x)] zu. Um bspw. einen Schlüssel x einzufügen1 , werden beim linearen Sondieren die Positionen h(x), (h(x) + 1) mod m, (h(x) + 2) mod m, . . . , (h(x) + k) mod m getestet, bis die im k-ten Schritt untersuchte Zelle entweder leer ist (d.h., der Schlüssel x wurde nicht gefunden und kann ggf. hier eingefügt werden; erfolglose Suche) oder der in der Zelle gespeicherte Schlüssel mit x übereinstimmt (erfolgreiche Suche). (a) Zeigen Sie: n nn < k . k k (n − k)n−k P Hinweis: Betrachten Sie einen Term von nl=1 nl xl y n−l = (x + y)n und wählen Sie x und y geschickt. (b) Wir lassen eine Hashfunktion h die Schlüssel aus S ⊆ U mit |S| = n in die Tabelle werfen“ und von der Einfügeprozedur einfügen. Dabei ist ein Block eine Folge von nicht” leeren Zellen, die von zwei leeren Zellen eingerahmt wird (im Bild sind schwarze Zellen nicht-leer): m−1 ... 0 1 ... 1 1 1 k−1 1 1 ... Betrachten Sie das Segment H[0..k − 1] und zeigen Sie: k n k k n−k pk := Pr( H[0..k − 1] ist ein Block“ ) ≤ 1− . ” k m m 1 siehe Vorlesung Algorithmen und Datenstrukturen“ SS 2011, S. 45ff.: http://www.tu-ilmenau.de/ ” fileadmin/public/iti/Lehre/AuD/SS11/AuD-Kap-5-110528-statisch.pdf Randomisierte Algorithmen“ ” Übungsblatt 5, WS 2012/13 3 (c) Folgern Sie aus (a) und (b): pk < αe1−α k . (d) Nun wird ein neuer“ Schlüssel y ∈ U \ S mit dem Hashwert o.B.d.A h(y) = 0 eingefügt. ” Die Zufallsvariable L sei die Anzahl der dabei getesteten vollen Zellen. Wir definieren das Ereignis Ak := h(y) liegt in einem Block der Länge k“. ” Zeigen Sie: (i) Pr(Ak ) = kpk und (ii) Wenn Ak eintritt, folgt L ≤ k. (e) Zeigen Sie: E(L) ≤ ∞ X k 2 pk . k=1 (f) Zeigen Sie, dass sich E(L) durch eine von α abhängige Konstante nach oben abschätzen lässt. Hinweis: Nutzen Sie z.B. das Quotientenkriterium.