Rev. 1, 28.06.2017 TU Ilmenau, Fakultät für Informatik und Automatisierung FG Komplexitätstheorie und Effiziente Algorithmen Univ.-Prof. Dr. M. Dietzfelbinger, M.Sc. P. Schlag http://www.tu-ilmenau.de/iti/lehre/lehre-ss-2017/ra/ Randomisierte Algorithmen SS 2017 – Übung 7 Besprechung: Montag, 10. Juli 2017 Hinweis: Für das erfolgreiche Vorrechnen einer mit *“ gekennzeichneten Aufgabe wird ein Bo” nuspunkt vergeben, es gibt maximal zwei Bonuspunkte pro Studierendem im Semester. Aufgabe 1 (Tail bounds) * Es seien X1 , . . . , Xn unabhängige Zufallsvariable mit Pr(Xi = 1) = Pr(Xi = −1) = 12 . Sei X = X1 +· · ·+Xn . Offensichtlich ist E(X) = 0. Wir wollen untersuchen, mit welcher Wahrscheinlichkeit X weit von diesem Mittelwert entfernt ist, d. h. wir wollen Pr(|X| ≥ a) für 0 < a ≤ n abschätzen. Dazu nutzen wir aus der Vorlesung bekannte Ungleichungen und Schranken. (a) Chebychev-Ungleichung. Berechnen Sie Var(X) und benutzen Sie die Chebychev-Ungleichung (Fakt 2.3.3), um eine Abschätzung der Form Pr(|X| ≥ a) ≤ . . . zu erhalten. (b) Chebychev-Cantelli-Ungleichung. Gehen Sie wie in (a) vor, verwenden Sie allerdings die Chebychev-Cantelli-Ungleichung (Proposition 2.7.2). (c) Hoeffding-Ungleichung. Vergewissern Sie sich zunächst, dass Sie die Hoeffding-Ungleichung auf 1 1 2 (X1 + 1), . . . , 2 (Xn + 1) anwenden dürfen (siehe Satz 2.6.1). Wählen Sie anschließend die Werte m und ε passend, um mit Hilfe von Korollar 2.6.3 eine obere Schranke für Pr(|X| ≥ a) zu erhalten. (d) Chernoff-Schranke. Nun wollen wir die in den Beispielen zur verallgemeinerten Markov-Ungleichung (Proposition 2.3.4) beschriebene Chernoff-Schranke nutzen. Sei dazu t > 0 beliebig. 2 (i) Zeigen Sie: E(etXi ) < et /2 . Hinweis: Man kann den Erwartungswert explizit hinschreiben, die Taylorreihen der beiden 2 Summanden und von et /2 ermitteln und abschätzen. (ii) Folgern Sie aus (i): E(etX ) < et 2 n/2 . (iii) Folgern Sie aus (ii): Pr(X ≥ a) ≤ et 2 n/2−ta . 2 (iv) Finden Sie zu gegebenem a den Wert t, der et n/2−ta minimiert. Folgern Sie eine zugehörige 2 obere Schranke für Pr(X ≥ a). [Resultat: e−a /(2n) .] (v) Was kann man über Pr(X ≤ −a) und über Pr(|X| ≥ a) sagen? Formulieren Sie eine Aussage und beweisen Sie sie. (e) Vergleichen Sie Ihre Ergebnisse aus (a) – (d). 2 Randomisierte Algorithmen SS 2017 – Übung 7 Aufgabe 2 (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 (n − k)n−k k Hinweis: Betrachten Sie einen Term von ∑n`=0 n` x` yn−` = (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 rein zufällig und unabhängig voneinander 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 k n−k n k pk := Pr( H[0..k − 1] ist ein Block“ ) ≤ 1− . ” m m k (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. Weiter auf nächster Seite! 1 siehe Vorlesung Algorithmen und Datenstrukturen“ SS 2016, S. 45ff.: http://www.tu-ilmenau.de/fileadmin/ ” public/iti/Lehre/AuD/SS16/AuD-Kap-5-statisch.pdf Randomisierte Algorithmen SS 2017 – Übung 7 3 (e) Zeigen Sie: ∞ E(L) ≤ ∑ 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.