Randomisierte Algorithmen
Randomisierte Algorithmen
5. Zwei spieltheoretische Aspekte
Thomas Worsch
Fakultät für Informatik Karlsruher Institut für Technologie
Wintersemester 2019/2020
Überblick
Und-Oder-Bäume und ihre deterministische Auswertung
Analyse eines randomisierten Algorithmus für die Auswertung von UOB
Zwei-Personen-Nullsummen-Spiele
Untere Schranken für randomisierte Algorithmen
Spieltheoretische Aspekte
Und-Oder-Bäume und ihre deterministische Auswertung
Überblick
Und-Oder-Bäume und ihre deterministische Auswertung
Analyse eines randomisierten Algorithmus für die Auswertung von UOB Zwei-Personen-Nullsummen-Spiele
Untere Schranken für randomisierte Algorithmen
5.1 Definition (Und-Oder-Baum)
𝑇𝑘 vollständiger binärer Baum der Höhe2𝑘
I innere Knoten abwechselnd mit “∧” und “∨” markiert
I Wurzel von𝑇1ist∧-Knoten mit zwei∨-Knoten als Nachfolger I Jeder dieser Knoten hat zwei Blätter als Nachfolger.
I 𝑇𝑘 entsteht aus𝑇1, indem die Blätter durch Kopien von𝑇𝑘−1ersetzt werden
I 𝑇𝑘 hat𝑛=4𝑘 Blätter I im folgenden𝑥1, . . . , 𝑥
4𝑘 genannt
Spieltheoretische Aspekte
Und-Oder-Bäume und ihre deterministische Auswertung
Und-Oder-Bäume
I Festlegung boolescher Werte an allen Blättern eines UOB impliziert für alle inneren Knoten einschließlich Wurzel einen Wert
I Berechnung des Wurzelwertes „bottom up“ durch I Besuch aller𝑛=4𝑘Blätter und
I Berechnung der Werte aller inneren Knoten möglich I Frage:Geht es besser?
Spieltheoretische Aspekte
Und-Oder-Bäume und ihre deterministische Auswertung
5.4 Satz
Für jedes𝑘 ≥1und jeden deterministischen Algorithmus𝐴gilt:
I Es gibt eine Folge𝑥1, . . . , 𝑥
4𝑘 von Bits so,
dass𝐴bei der Auswertung von𝑇𝑘 mit den𝑥𝑖als Blattwerten alle𝑛=4𝑘 Blätter besucht.
kann erzwungen werden
Spieltheoretische Aspekte
Und-Oder-Bäume und ihre deterministische Auswertung
5.4 Satz
Für jedes𝑘 ≥1und jeden deterministischen Algorithmus𝐴gilt:
I Es gibt eine Folge𝑥1, . . . , 𝑥
4𝑘 von Bits so,
dass𝐴bei der Auswertung von𝑇𝑘 mit den𝑥𝑖als Blattwerten alle𝑛=4𝑘 Blätter besucht.
I Wert der Wurzel=Wert des zuletzt besuchten Blattes I sowohl Wurzelwert=0als auch Wurzelwert=1
kann erzwungen werden
5.5 Beweis
Induktion über𝑘
I Induktionsanfang𝑘=1:
I 𝐴muss mindestens ein Blatt besuchen, o. B. d. A.𝑥1. I Setze𝑥1=0. Damit ist kein innerer Wert festgelegt.
I 𝐴muss ein weiteres Blatt besuchen.
I O. B. d. A. zwei Möglichkeiten:
1. Zweites besuchtes Blatt ist𝑥2. Setze𝑥2=1.
Damit nur Wert des∨-Knotens klar, Wurzelwert nicht.
𝐴muss weiteres Blatt besuchen, o. B. d. A.𝑥3. Setze𝑥3=0.𝐴muss𝑥4besuchen;Wurzelwert.
2. Zweites besuchtes Blatt ist𝑥3. Setze𝑥3=0.
Kein innerer Wert festgelegt
𝐴muss weiteres Blatt besuchen, o. B. d. A.𝑥2. Setze𝑥2=1.𝐴muss𝑥4besuchen;Wurzelwert
Spieltheoretische Aspekte
Und-Oder-Bäume und ihre deterministische Auswertung
5.5 Beweis (2)
I Induktionsschritt𝑘−1;𝑘:
I Fasse𝑇𝑘als𝑇1-Baum auf, dessen Blätter durch𝑇𝑘−1-Bäume ersetzt sind.
I Bezeichne die „Blätter“ von𝑇1mit𝑦1, . . . , 𝑦4.
I Analog Induktionsanfang kann durch geeignete Wahl der𝑦𝑖 erzwungen werden, dass𝐴alle 4Werte ermitteln muss.
I Induktionsvoraussetzung: für jeden𝑇𝑘−1-Baum gibt es Blattwerte, die gewünschtes𝑦𝑖liefern und erzwingen, dass𝐴alle darunter liegenden Blätter besuchen muss.
I Also muss𝐴in diesem Fall alle Blätter überhaupt besuchen.
Überblick
Und-Oder-Bäume und ihre deterministische Auswertung
Analyse eines randomisierten Algorithmus für die Auswertung von UOB Zwei-Personen-Nullsummen-Spiele
Untere Schranken für randomisierte Algorithmen
Spieltheoretische Aspekte
Analyse eines randomisierten Algorithmus für die Auswertung von UOB
5.6 Algorithmus: randomisierte UOB-Auswertung
procAndNodeEval(T) ifIsLeaf(T)then
returnvalue(T)fi handernfalls:i
T0←hzufälliger𝑇-U.baumi r ←OrNodeEval(T0) ifr =0then
return0 else
T00← hand.𝑇-U.baumi returnOrNodeEval(T00) fi
AndNodeEval(𝑟 𝑜𝑜𝑡)
procOrNodeEval(𝑇)
T0←hzufälliger𝑇-U.baumi r←AndNodeEval(T0) ifr=1then
return1 else
T00← hand.𝑇-U.baumi returnAndNodeEval(T00) fi
5.6 Algorithmus: randomisierte UOB-Auswertung
procAndNodeEval(T) ifIsLeaf(T)then
returnvalue(T)fi handernfalls:i
T0←hzufälliger𝑇-U.baumi r ←OrNodeEval(T0) ifr =0then
return0 else
T00← hand.𝑇-U.baumi returnOrNodeEval(T00) fi
AndNodeEval(𝑟 𝑜𝑜𝑡)
procOrNodeEval(𝑇)
T0←hzufälliger𝑇-U.baumi r←AndNodeEval(T0) ifr=1then
return1 else
T00← hand.𝑇-U.baumi returnAndNodeEval(T00) fi
Spieltheoretische Aspekte
Analyse eines randomisierten Algorithmus für die Auswertung von UOB
5.7 Satz
Der Erwartungswert für die Anzahl der von Algorithmus 5.6 besuchten Blätter ist für jede Folge𝑥1, . . . , 𝑥
4𝑘 höchstens3𝑘 =𝑛log43≈𝑛0.792....
5.8 Beweis
Induktion
I 𝐸: ein Erwartungswert für die Anzahl besuchter Blätter I Induktionsanfang𝑘=1:Überprüfen aller16möglichen
Kombinationen𝑥1, . . . , 𝑥4. Z. B.0100(Rest analog):
1. Falls erst linker Teilbaum:
gleich wahrscheinlich wird erst und nur die1oder erst die0und dann die1besucht,
anschließend im rechten Teilbaum beide Blätter.
𝐸=1/2·1+1/2·2+2=7/2.
2. Falls erst rechter Teilbaum; nach Besuch beider Blätter klar: der 𝑇1-Baum den liefert Wert0.
𝐸=2.
Beide Fälle gleich wahrscheinlich, also insgesamt 𝐸=1/2·7/2+1/2·2=11/4<3(=31=3𝑘).
Spieltheoretische Aspekte
Analyse eines randomisierten Algorithmus für die Auswertung von UOB
5.8 Beweis (2)
Induktionsschritt𝑘−1;𝑘:
I Betrachte zunächst∨-Knoten mit zwei𝑇𝑘−1-Bäumen darunter.
Zwei Fälle:
O1. ∨-Knoten wird1liefern:
I Dann muss mindestens ein𝑇𝑘−1-Baum dies auch tun.
I Mit Wahrscheinlichkeit𝑝≥1/2wird ein Unterbaum untersucht, der 1liefert.
I Mit Wahrscheinlichkeit1−𝑝≤1/2werden beide Unterbäume untersucht.
I 𝐸≤𝑝·3𝑘−1+ (1−𝑝) ·2·3𝑘−1=(2−𝑝) ·3𝑘−1≤3/2·3𝑘−1. O2. Der∨-Knoten wird0liefern:
I Dann müssen beide𝑇𝑘−1-Bäume dies auch tun.
I Nach Induktionsvoraussetzung𝐸≤2·3𝑘−1ist.
5.8 Beweis (3)
Induktionsschritt𝑘−1;𝑘:Teil 2a
I Betrachte Wurzel des𝑇𝑘-Baumes mit zwei eben untersuchten Bäumen darunter. Zwei Fälle:
U1. Der∧-Knoten wird0liefern:
I Dann muss mindestens ein U.baum dies auch tun.
I Mit Wahrscheinlichkeit𝑝≥1/2wird ein Unterbaum untersucht, der 0liefert.
I Mit Wahrscheinlichkeit1−𝑝≤1/2werden beide Unterbäume untersucht.
I Gemäß O1 und O2 ist folglich
𝐸 ≤ 𝑝·2·3𝑘−1+ (1−𝑝) · (3/2·3𝑘−1+2·3𝑘−1)
= 7/2·3𝑘−1−𝑝·3/2·3𝑘−1
≤ 11/4·3𝑘−1
≤ 3𝑘
Spieltheoretische Aspekte
Analyse eines randomisierten Algorithmus für die Auswertung von UOB
5.8 Beweis (4)
Induktionsschritt𝑘−1;𝑘:Teil 2b
I Betrachte Wurzel des𝑇𝑘-Baumes mit zwei eben untersuchten Bäumen darunter. Fall:
U2. Der∧-Knoten wird1liefern:
I Dann müssen beide Unterbäume dies auch tun.
I Gemäß O1 ist daher𝐸≤2·3/2·3𝑘−1≤3𝑘.
Überblick
Und-Oder-Bäume und ihre deterministische Auswertung
Analyse eines randomisierten Algorithmus für die Auswertung von UOB Zwei-Personen-Nullsummen-Spiele
Untere Schranken für randomisierte Algorithmen
Spieltheoretische Aspekte Zwei-Personen-Nullsummen-Spiele
5.9 Spiele
I 𝑛 ≥2Spieler
I Spieler𝑖hat (endliche) Menge𝑆𝑖reiner Strategien𝑠𝑖
𝑗 zur Auswahl I 𝑢𝑖 :𝑆1× · · · ×𝑆𝑛→Rgibt für jede Kombination von Strategien
denNutzenoderGewinnvon Spieler𝑖an.
5.10 Zwei-Personen-Nullsummen-Spiele
I 𝑛=2Spieler
I für die Nutzenfunktionen gilt:𝑢1=−𝑢2. I Es genügt MatrixMmit
I |𝑆1|Zeilen I |𝑆2|Spalten I 𝑀𝑖 𝑗 =𝑢1(𝑠1
𝑖, 𝑠2
𝑗)
I ZeilenspielerundSpaltenspieler
I Einheitsvektore𝑖(passender Länge) entspricht reiner Strategie𝑖
I 𝑢1(𝑠1
𝑖, 𝑠2
𝑗) =e𝑇𝑖Me𝑗
Spieltheoretische Aspekte Zwei-Personen-Nullsummen-Spiele
5.11 Gemischte Strategien
I gemischte Strategie: Wahrscheinlichkeitsverteilungpauf der Menge der reinen Strategien eines Spielers.
I Sindpundqgemischte Strategien für Zeilen- und Spaltenspieler, dann ist
p𝑇Mq
der zu erwartende Gewinn für den Zeilenspieler.
5.12 Satz (von Neumann, 1928)
Für Zwei-Personen-Nullsummen-Spiele mit MatrixMgilt:
maxp min
q p𝑇Mq=min
q max
p p𝑇Mq
und es gibt Verteilungenp∗undq∗, für diep∗𝑇Mq∗dieser Wert ist.
Spieltheoretische Aspekte Zwei-Personen-Nullsummen-Spiele
5.13 Korollar (Loomis, 1946)
Für Zwei-Personen-Nullsummen-Spiele mit MatrixMgilt:
maxp min
𝑗
p𝑇Me𝑗 =min
q max
𝑖
e𝑇𝑖Mq
5.14 Beweis
I genügt zu zeigen:
I für jedespgilt:
minq p𝑇Mq=min
𝑗
p𝑇Me𝑗
zeige: „≥“ („≤“ ist trivial)
I rechte Seiten der Gleichungen aus Satz 5.12 und Korollar 5.13 analog I Für beliebigespistp𝑇Mein Zeilenvektorv𝑇.
Es sei𝑣min =min{𝑣𝑖}.
für ein𝑗 also𝑣min=v𝑇e𝑗
I dann für jedesq:v𝑇q=Í
𝑣𝑖𝑞𝑖 ≥ Í
𝑣min𝑞𝑖 =𝑣min=v𝑇e𝑗
Spieltheoretische Aspekte Zwei-Personen-Nullsummen-Spiele
5.15 Korollar
Loomis:
maxp min
𝑗
p𝑇Me𝑗 =min
q max
𝑖
e𝑇𝑖Mq
Für alle Verteilungenpundqgilt:
min
𝑗
p𝑇Me𝑗 ≤max
𝑖
e𝑇𝑖Mq
5.15 Korollar
Loomis:
maxp min
𝑗
p𝑇Me𝑗 =min
q max
𝑖
e𝑇𝑖Mq
Für alle Verteilungenpundqgilt:
min
𝑗
p𝑇Me𝑗 ≤max
𝑖
e𝑇𝑖Mq
Spieltheoretische Aspekte
Untere Schranken für randomisierte Algorithmen
Überblick
Und-Oder-Bäume und ihre deterministische Auswertung
Analyse eines randomisierten Algorithmus für die Auswertung von UOB Zwei-Personen-Nullsummen-Spiele
Untere Schranken für randomisierte Algorithmen
5.16 Algorithmenentwurf als „Spiel“ (1)
I 2Spieler
I Zeilenspieler: ein „böser“ Widersacher I Spaltenspieler: ein Algorithmenentwerfer I reine Strategien
I Widersacher: „gemeine“ Eingaben
I Algorithmenentwerfer: deterministische Algorithmen I Einträge vonM: Gewinn𝐶(𝐼 , 𝐴) des Widersachers
I z.B.𝐶(𝐼 , 𝐴)=Laufzeit von Algorithmus𝐴für Eingabe𝐼 I oder der Verbrauch irgendeiner anderen Ressource I Ziele
I Widersacher:𝐶(𝐼 , 𝐴)maximieren
I Algorithmenentwerfer:𝐶(𝐼 , 𝐴)minimieren
Spieltheoretische Aspekte
Untere Schranken für randomisierte Algorithmen
5.16 Algorithmenentwurf als „Spiel“ (2)
I reine Strategien
I Widersacher: „gemeine“ Eingaben
I Algorithmenentwerfer: deterministische Algorithmen I gemischte Strategien
I Widersacher: Wahrscheinlichkeitsverteilungen auf einer Menge der Eingaben
I Algorithmenentwerfer:
5.16 Algorithmenentwurf als „Spiel“ (2)
I reine Strategien
I Widersacher: „gemeine“ Eingaben
I Algorithmenentwerfer: deterministische Algorithmen I gemischte Strategien
I Widersacher: Wahrscheinlichkeitsverteilungen auf einer Menge der Eingaben
I Algorithmenentwerfer: Wahrscheinlichkeitsverteilungen auf einer Menge deterministischer Algorithmen
Spieltheoretische Aspekte
Untere Schranken für randomisierte Algorithmen
5.16 Algorithmenentwurf als „Spiel“ (2)
I reine Strategien
I Widersacher: „gemeine“ Eingaben
I Algorithmenentwerfer: deterministische Algorithmen I gemischte Strategien
I Widersacher: Wahrscheinlichkeitsverteilungen auf einer Menge der Eingaben
I Algorithmenentwerfer: randomisierte Algorithmen
5.17 Satz (Minimax-Methode von Yao)
I endliche MengeIvon Eingaben gleicher Größe𝑛und endliche MengeAvon Algorithmen für ein Problem I 𝐶(𝐼 , 𝐴)Laufzeit von𝐴∈ Afür𝐼 ∈ I.
I pundq: Wahrscheinlichkeitsverteilungen aufIbzw.A.
I Mit𝐼𝑝 bzw.𝐴𝑞werde ein gemäß der Verteilungpbzw.qausIbzw.
Agewählte Eingabe bzw. Algorithmus bezeichnet.
I Dann gilt für allepundq:
min
𝐴∈ AE
𝐶(𝐼𝑝, 𝐴)
≤max
𝐼∈I E
𝐶(𝐼 , 𝐴𝑞)
Spieltheoretische Aspekte
Untere Schranken für randomisierte Algorithmen
5.18 Erläuterungen
min
𝐴∈ AE
𝐶(𝐼𝑝, 𝐴)
≤max
𝐼∈I E
𝐶(𝐼 , 𝐴𝑞)
I ErwartungswertE
𝐶(𝐼𝑝, 𝐴)
I für gegebenes𝐴die „erwartete Laufzeit“ bei zufälliger Wahl von𝐼𝑝 gemäß Verteilungp.
I Minimum der Erwartungswerte, also für den „besten“ Algorithmus, von Bedeutung
I ErwartungswertE
𝐶(𝐼 , 𝐴𝑞)
I für gegebenes𝐼die „erwartete Laufzeit“ eines randomisierten Algorithmus.
I Maximum der Erwartungswerte, also für schlimmste Eingabe, von Bedeutung
5.19 Bemerkung
Einen Satz analog zu 5.17 kann man auch für Monte-Carlo-Algorithmen beweisen. Hierauf gehen wir nicht weiter ein.
Spieltheoretische Aspekte
Untere Schranken für randomisierte Algorithmen
5.20 – 5.21
I ∨-Funktion: 𝑥 𝑦 𝑥∨𝑦
0 0 1
0 1 0
1 0 0
1 1 0
I Und-Oder-Baum kann auch als Baum mit lauter inneren∨-Knoten aufgefaßt werden:
(𝑥1∨𝑥2) ∧ (𝑥3∨𝑥4) = (𝑥1∨𝑥2) ∨ (𝑥3∨𝑥4)
= (𝑥1∨𝑥2)∨(𝑥3∨𝑥4) I Für𝑝= 3−
√ 5
2 ≈0.381966. . . gilt:(1−𝑝)2=𝑝.
I Wenn an jedem Eingang eines∨-Gatters unabhängig mit Wahrscheinlichkeit eine1vorliegt, ist daher mit gleicher
5.22 Satz
I 𝑇: vollständiger balancierter Baum aus∨-Knoten,
Blätter haben unabhängig voneinander mit Wahrscheinlichkeit 𝑝 =(3−√
5)/2den Wert1
I 𝑊(𝑇)sei das Minimum (über alle deterministischen Algorithmen) der erwarteten Anzahl von Schritten zur Auswertung von𝑇. I Dann gibt es auch einen Algorithmus𝐴, der eine erwartete Anzahl
von nur𝑊(𝑇)Schritten macht und außerdem die folgende Eigenschaft hat:
I Besucht𝐴ein Blatt𝑣0, das zu einem Teilbaum𝑇0gehört und später ein Blatt𝑢, dasnichtzu𝑇0gehört,
I dann gilt für alle Blätter𝑎00von𝑇0, die𝐴überhaupt besucht:𝐴 besucht𝑎00vor𝑢.
Spieltheoretische Aspekte
Untere Schranken für randomisierte Algorithmen
5.23 Satz
Die erwartete Anzahl der Blätter, die ein randomisierter Algorithmus zur Auswertung von UOB mit𝑛Blättern besucht, ist mindestens
𝑛log2( (1+√
5)/2) =𝑛0.694... .
5.24 Beweis
I Betrachte einen Algorithmus wie in Satz 5.22
I Auswertung von∨-Bäumen, deren Blätter unabhängig voneinander mit Wahrscheinlichkeit𝑝 = 3−
√ 5
2 auf1gesetzt sind.
I In Abhängigkeit von der Höheℎsei𝑊(ℎ) die erwartete Anzahl besuchter Blätter.
I Es ist
𝑊(ℎ) = 𝑊(ℎ−1) + (1−𝑝)𝑊(ℎ−1)
= (2−𝑝)𝑊(ℎ−1)
also 𝑊(ℎ) = (2−𝑝)ℎ−1𝑊(1) =(2−𝑝)ℎ I Einsetzen vonℎ =log2𝑛und𝑝ergibt
𝑊(𝑇)=(2−𝑝)log2𝑛 =2(log2(2−𝑝)) (log2𝑛) =𝑛log2(2−𝑝)
=𝑛0.694...
Spieltheoretische Aspekte
Untere Schranken für randomisierte Algorithmen
5.25
I Genauere (und schwierigere) Analyse liefert sogar untere Schranke von𝑛log43≈𝑛0.792....
I Die durch unseren randomisierten Algorithmus gegebene obere Schranke ist also optimal.
Spieltheoretische Aspekte
Untere Schranken für randomisierte Algorithmen
5.26
I Da Erwartungswert für Anzahl besuchter Blätter𝑛0.792...
I gibt es eine Berechnung, die max. so viele Blätter besucht.
der Wurzelwert folgt.
I Alsoexistiertfür jede Verteilung von Bits auf alle Blätter solch
„kleine“ Teilmenge von Blättern, deren Kenntnis für die Bestimmung des Wurzelwertes ausreicht.
I Hausaufgabe: es reichen sogar immer𝑛0.5
I Aber: Jeder deterministische Algorithmus muss für manche Eingaben alle Blätter besuchen.
I Es ist also manchmal „sehr schwierig“, deterministisch eine solche kleine Teilmenge von Blättern zu finden.
Spieltheoretische Aspekte
Untere Schranken für randomisierte Algorithmen
5.26
I Da Erwartungswert für Anzahl besuchter Blätter𝑛0.792...
I gibt es eine Berechnung, die max. so viele Blätter besucht.
I also: mit Wahrscheinlichkeit echt größer0findet randomisierter Algorithmus Teilmenge von≤𝑛0.792...Blättern, aus denen schon der Wurzelwert folgt.
I Alsoexistiertfür jede Verteilung von Bits auf alle Blätter solch
„kleine“ Teilmenge von Blättern, deren Kenntnis für die Bestimmung des Wurzelwertes ausreicht.
I Hausaufgabe: es reichen sogar immer𝑛0.5
I Aber: Jeder deterministische Algorithmus muss für manche Eingaben alle Blätter besuchen.
I Es ist also manchmal „sehr schwierig“, deterministisch eine solche kleine Teilmenge von Blättern zu finden.
5.26
I Da Erwartungswert für Anzahl besuchter Blätter𝑛0.792...
I gibt es eine Berechnung, die max. so viele Blätter besucht.
I also: mit Wahrscheinlichkeit echt größer0findet randomisierter Algorithmus Teilmenge von≤𝑛0.792...Blättern, aus denen schon der Wurzelwert folgt.
I Alsoexistiertfür jede Verteilung von Bits auf alle Blätter solch
„kleine“ Teilmenge von Blättern, deren Kenntnis für die Bestimmung des Wurzelwertes ausreicht.
I Hausaufgabe: es reichen sogar immer𝑛0.5
I Aber: Jeder deterministische Algorithmus muss für manche Eingaben alle Blätter besuchen.
I Es ist also manchmal „sehr schwierig“, deterministisch eine solche kleine Teilmenge von Blättern zu finden.
Spieltheoretische Aspekte
Untere Schranken für randomisierte Algorithmen
Zusammenfassung
I Bei der Auswertung von Und-Oder-Bäumen kann man randomisiert weniger Blattbesuche erwarten, als jeder
deterministische Algorithmus für manche Bäume durchführen muss.
I Die Minimax-Methode von Yao liefert eine Möglichkeit, untere Schranken für die erwartete Laufzeit randomisierter Algorithmen herzuleiten.