Lösung 4

Werbung
Methoden zum Entwurf von
zufallsgesteuerten Algorithmen
Departement Informatik
Dr. Hans-Joachim Böckenhauer
Dr. Dennis Komm
Dr. Richard Královič
http://www.ita.inf.ethz.ch/randalg16
Lösungsvorschläge – Blatt 4
Zürich, 22. März 2016
Lösung zu Aufgabe 7
In unserem Protokoll überträgt R1 nur Information über ein einziges Element von M :
1.
2.
3.
4.
5.
6.
Falls M 6= ∅, wählt R1 zufällig eine Zahl i ∈ M aus. Falls M = ∅, setze i := 0.
R1 sendet i, kodiert in dlog2 (n + 1)e Bits.
R2 empfängt i.
Falls i = 0, gibt R2 Nein aus.
Falls i > 0 und i = y, dann gibt R2 Ja aus.
Andernfalls gibt R2 Ja mit Wahrscheinlichkeit 1/2 − 1/(3n − 2) und Nein mit
Wahrscheinlichkeit 1/2 + 1/(3n − 2) aus.
Wenn M = ∅, dann gibt R2 immer die richtige Antwort. Also nehmen wir im Folgenden
an, dass M nicht leer ist. Wir analysieren zwei Fälle:
1. Sei y ∈
/ M . In diesem Fall ist immer i 6= y, und R2 gibt die richtige Antwort Nein
mit Wahrscheinlichkeit
1
1
+
.
2 3n − 2
2. Sei y ∈ M . Mit Wahrscheinlichkeit 1/ |M | wählt R1 die Zahl i = y und R2 gibt
die richtige Antwort. Andernfalls (also mit Wahrscheinlichkeit 1 − 1/ |M |) ist i 6= y
und R2 gibt die richtige Antwort mit Wahrscheinlichkeit 1/2 − 1/(3n − 2) aus. Die
gesamte Wahrscheinlichkeit der richtigen Antwort ist deshalb
! 1
1
1
1
+ 1−
·
−
|M |
|M |
2 3n − 2
1
1
1
1
1
+ −
−
+
=
|M | 2 3n − 2 2 · |M | |M | · (3n − 2)
1
1
1 − |M |
=
+ +
2 · |M | 2 |M | · (3n − 2)
3n − 2 |M |
1
= +
2 2 · |M | · (3n − 2)
3n − 2n
1
≥ +
2 2n · (3n − 2)
1
1
= +
.
2 6n − 4
Dabei folgt die Ungleichung in der vorletzten Zeile wegen |M | ≤ n.
Unser Protokoll ist also ein korrektes Monte-Carlo-Protokoll mit unbeschränktem zweiseitigem Fehler ε := 1/(6n − 4).
Lösung zu Aufgabe 8
Offenbar kann A0 nur dann eine falsche Antwort ausgeben, wenn mindestens eine der
folgenden Bedingungen erfüllt ist:
1. Weniger als βn Läufe von A geben die richtige Antwort aus.
2. Mindestens βn Läufe von A geben dieselbe falsche Antwort aus.
Sei P1 die Wahrscheinlichkeit des ersten Falls und sei P2 die Wahrscheinlichkeit des zweiten
Falls. Die Fehlerwahrscheinlichkeit des Algorithmus A0 ist dann kleiner gleich P1 + P2 .
Zuerst schätzen wir die Wahrscheinlichkeit P1 ab. Sei 1 ≤ i ≤ n. Wir definieren Xi als eine
Indikatorvariable, so dass Xi = 1 genau dann gilt, wenn der i-te Lauf von A eine falsche
P
Antwort ausgibt. Ausserdem definieren wir die Zufallsvariable X = ni=1 Xi . Es gilt, dass
P1 = Prob X ≥ (1 − β)n.
Um diese Wahrscheinlichkeit zu beschränken, wollen wir die Chernoff-Ungleichung verwenden. Dazu überprüfen wir zunächst, ob alle Bedingungen dafür erfüllt sind. Die Xi
sind paarweise unabhängig voneinander, und für jedes Xi gilt Prob Xi = 1 ≤ 2/3. Wir
wählen also als Werte für die pi jeweils pi = 2/3, und damit gilt p = 2n/3. Wir müssen nun
noch sicherstellen, dass γ > 1 ist, also ermitteln wir zuletzt noch den Wert von γ. Da wir
mit einer Formel für Prob X ≥ γp die Wahrscheinlichkeit Prob X ≥ (1 − β)n abschätzen
wollen, setzen wir γp und (1 − β)n gleich und erhalten
γp = (1 − β)n
⇐⇒ γ = (1 − β)n ·
⇐⇒ γ =
3(1 − β)
.
2
3
2n
Da β = 7/24, ist somit γ > 1. Es sind also alle nötigen Bedingungen erfüllt und wir können
die Chernoff-Ungleichung anwenden. Damit ergibt sich
3(1−β)
2
P1 ≤ e(1− 3(1−β) −ln 2 )(1−β)n ≤ e−0.001n .
Jetzt beschränken wir die Wahrscheinlichkeit P2 . Hierfür beweisen wir zunächst die in der
Aufgabenstellung angegebene Hilfsbehauptung. Wir zeigen, dass wir alle möglichen falschen
Antworten des Algorithmus A in höchstens 5 Gruppen verteilen können, so dass für jede
Gruppe Sj die Ungleichung Prob A(x) ∈ Sj ≤ 1/4 gilt. Der Beweis dieser Behauptung ist
einfach: Wir nehmen an, dass die Menge aller möglichen falschen Antworten abzählbar ist.
Wir verteilen alle möglichen falschen Antworten nacheinander in die Gruppen. Wenn die
Wahrscheinlichkeit der aktuellen Gruppe 1/4 überschreitet, starten wir eine neue Gruppe.
Wir zeigen durch einen Widerspruchsbeweis, dass so maximal 5 Gruppen entstehen können.
Angenommen, wir würden mindestens 6 Gruppen erhalten. Dann muss offensichtlich gelten
Prob A(x) ∈ S1 ∪ S2 > 1/4, denn sonst wären alle Antworten A(x) ∈ S2 noch in Gruppe S1
eingeteilt worden. Analog können wir für S3 ∪ S4 und S5 ∪ S6 argumentieren. Somit gilt
S
Prob A(x) ∈ 6j=1 Si > 3/4 > 2/3, was aber nicht sein kann, da die Wahrscheinlichkeit,
dass A(x) eine richtige Antwort ist, laut Aufgabenstellung mindestens 1/3 ist. Damit ist
die Behauptung bereits bewiesen.
Sei PSi die Wahrscheinlichkeit, dass mindestens βn Läufe eine Antwort aus der Gruppe Sj
P
ausgeben. Weil P2 ≤ 5j=1 PSi gilt, ist es ausreichend, die Wahrscheinlichkeit PSj zu
beschränken.
Wir können jede Zufallsvariable PS für S ⊆ {S1 , S2 , . . . , S6 } analog wie im ersten Fall
beschränken. Sei Xi eine Indikatorvariable, so dass Xi = 1 genau dann gilt, wenn die
Ausgabe des i-ten Laufs von A in der Gruppe S enthalten ist. Es gilt, dass Prob Xi = 1 ≤
P
1/4 und PS = Prob ni=1 Xi ≥ βn. Wir benutzen die Chernoff-Ungleichung für p = n/4
und γ = 4β > 1 und erhalten
1
PS ≤ e(1− 4β −ln(4β))βn ≤ e−0.003n .
Also gilt P2 ≤ 5e−0.003n . Die Fehlerwahrscheinlichkeit des Algorithmus A0 ist deshalb
höchstens 5e−0.003n + e−0.001n . Mit der Wahl eines hinreichend grossen Wertes für n können
wir diese Wahrscheinlichkeit beliebig klein machen. Mit wachsendem n nimmt die Fehlerwahrscheinlichkeit exponentiell ab. Im Gegensatz zu A ist A0 also durchaus ein brauchbarer
Algorithmus für F .
Herunterladen