wyklad4

Transkrypt

wyklad4
Metody teorii gier
ALP520 - Wykład z Algorytmów Probabilistycznych – p.2
Metody teorii gier
Wyprowadzenie oszacowania dolnego na oczekiwany
czas działania dowolnego algorytmu losowego dla danego
problemu.
Cel:
ALP520 - Wykład z Algorytmów Probabilistycznych – p.2
Metody teorii gier
Wyprowadzenie oszacowania dolnego na oczekiwany
czas działania dowolnego algorytmu losowego dla danego
problemu.
Cel:
Udowodnienie oszacowań dolnych jest łatwiejsze dla algorytmów deterministycznych niż losowych, dlatego spróbujemy
wyprowadzić zwiazek
˛
pomiedzy
˛
tymi wielkościami korzystajac
˛ z twierdzeń teorii gier.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.2
Gra w unikanie trójkata
˛
Dwaj gracze dodaja˛ na zmiane˛ krawedzie
˛
do pustego grafu.
Przegrywa ten, kto pierwszy utworzy trójkat.
˛
ALP520 - Wykład z Algorytmów Probabilistycznych – p.3
Gra w unikanie trójkata
˛
I
0
1
0
1
0
0
0
1
1−wygrana I gracza
0−przegrana I gracza
0
ALP520 - Wykład z Algorytmów Probabilistycznych – p.3
Definicja drzewa gry
pełne drzewo binarne z ustalonym korzeniem
ALP520 - Wykład z Algorytmów Probabilistycznych – p.4
Definicja drzewa gry
pełne drzewo binarne z ustalonym korzeniem
wierzchołki wewnetrzne
˛
drzewa w odległości parzystej
od korzenia otrzymuja˛ etykiete˛ „AND” ∧
ALP520 - Wykład z Algorytmów Probabilistycznych – p.4
Definicja drzewa gry
pełne drzewo binarne z ustalonym korzeniem
wierzchołki wewnetrzne
˛
drzewa w odległości parzystej
od korzenia otrzymuja˛ etykiete˛ „AND” ∧
wierzchołki wewnetrzne
˛
drzewa w odległości
nieparzystej od korzenia otrzymuja˛ etykiete˛ „OR” ∨
ALP520 - Wykład z Algorytmów Probabilistycznych – p.4
Definicja drzewa gry
pełne drzewo binarne z ustalonym korzeniem
wierzchołki wewnetrzne
˛
drzewa w odległości parzystej
od korzenia otrzymuja˛ etykiete˛ „AND” ∧
wierzchołki wewnetrzne
˛
drzewa w odległości
nieparzystej od korzenia otrzymuja˛ etykiete˛ „OR” ∨
liście otrzymuja˛ etykiety 1 lub 0; 1 oznacza wygrana˛ dla
pierwszego gracza, 0 przegrana˛ dla pierwszego gracza.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.4
Definicja drzewa gry
pełne drzewo binarne z ustalonym korzeniem
wierzchołki wewnetrzne
˛
drzewa w odległości parzystej
od korzenia otrzymuja˛ etykiete˛ „AND” ∧
wierzchołki wewnetrzne
˛
drzewa w odległości
nieparzystej od korzenia otrzymuja˛ etykiete˛ „OR” ∨
liście otrzymuja˛ etykiety 1 lub 0; 1 oznacza wygrana˛ dla
pierwszego gracza, 0 przegrana˛ dla pierwszego gracza.
ogólnie: dowolne wartości rzeczywiste, pierwszy gracz
chce zmaksymalizować (MAX zamiast OR), a drugi
zminimalizować (MIN zamiast AND) wartość gry
ALP520 - Wykład z Algorytmów Probabilistycznych – p.4
Definicja drzewa gry
pełne drzewo binarne z ustalonym korzeniem
wierzchołki wewnetrzne
˛
drzewa w odległości parzystej
od korzenia otrzymuja˛ etykiete˛ „AND” ∧
wierzchołki wewnetrzne
˛
drzewa w odległości
nieparzystej od korzenia otrzymuja˛ etykiete˛ „OR” ∨
liście otrzymuja˛ etykiety 1 lub 0; 1 oznacza wygrana˛ dla
pierwszego gracza, 0 przegrana˛ dla pierwszego gracza.
ogólnie: dowolne wartości rzeczywiste, pierwszy gracz
chce zmaksymalizować (MAX zamiast OR), a drugi
zminimalizować (MIN zamiast AND) wartość gry
jeśli danych jest k możliwości w każdym ruchu, to
drzewo ma stopień k.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.4
Przykład drzewa gry
?
∧ − AN D
∨ − OR
∧ − AN D
∨ − OR
0
1
1
0
0
0
1
1
0
1
0
1
1
1
0
1
ALP520 - Wykład z Algorytmów Probabilistycznych – p.5
Przykład drzewa gry
?
∧ − AN D
∨ − OR
∧ − AN D
∨ − OR
0
1
1
0
0
0
1
1
0
1
0
1
1
1
0
1
CEL: majac
˛ dane wartości dla liści oblicz drzewo gry, tzn.
oblicz wartość etykiety dla korzenia.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.5
Przykład drzewa gry
1
∧ − AN D
1
1
1
1
0
0
0
1
1
1
0
0
1
1
1
0
1
∨ − OR
1
0
1
1
0
1
1
1
1
1
∧ − AN D
1
∨ − OR
0
1
CEL: majac
˛ dane wartości dla liści oblicz drzewo gry, tzn.
oblicz wartość etykiety dla korzenia.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.5
Przykład drzewa gry
1
∧ − AN D
1
1
1
1
0
0
0
1
1
1
0
0
1
1
1
0
1
∨ − OR
1
0
1
1
0
1
1
1
1
1
∧ − AN D
1
∨ − OR
0
1
CEL: majac
˛ dane wartości dla liści oblicz drzewo gry, tzn.
oblicz wartość etykiety dla korzenia.
Inaczej: Oblicz wartość funkcji boolowskiej postaci (((x1 ∨ x2 ) ∧
(x3 ∨ x4 )) ∨ ((x5 ∨ x6 ) ∧ (x7 ∨ x8 ))) ∧ (((x9 ∨ x10 ) ∧ (x11 ∨ x12 )) ∨ ((x13 ∨
x14 ) ∧ (x15 ∨ x16 ))).
ALP520 - Wykład z Algorytmów Probabilistycznych – p.5
Analiza drzewa gry
Jaka jest maksymalna liczba odczytanych liści
niezbedna
˛
do obliczenia drzewa gry (wyznaczenia wartości
dla korzenia) ?
Pytanie:
ALP520 - Wykład z Algorytmów Probabilistycznych – p.6
Analiza drzewa gry
Jaka jest maksymalna liczba odczytanych liści
niezbedna
˛
do obliczenia drzewa gry (wyznaczenia wartości
dla korzenia) ?
Pytanie:
Rozważmy drzewo T2,k (drzewo binarne, każdy liść w
odległości 2k od korzenia).
ALP520 - Wykład z Algorytmów Probabilistycznych – p.6
Analiza drzewa gry
Jaka jest maksymalna liczba odczytanych liści
niezbedna
˛
do obliczenia drzewa gry (wyznaczenia wartości
dla korzenia) ?
Pytanie:
Rozważmy drzewo T2,k (drzewo binarne, każdy liść w
odległości 2k od korzenia).
Dowolny algorytm deterministyczny wymaga w
najgorszym przypadku odczytania wszystkich 22k = 4k
liści.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.6
Analiza drzewa gry
Jaka jest maksymalna liczba odczytanych liści
niezbedna
˛
do obliczenia drzewa gry (wyznaczenia wartości
dla korzenia) ?
Pytanie:
Rozważmy drzewo T2,k (drzewo binarne, każdy liść w
odległości 2k od korzenia).
Dowolny algorytm deterministyczny wymaga w
najgorszym przypadku odczytania wszystkich 22k = 4k
liści.
Zadanie. Znajdź przykład ciagu
˛ wartości dla liści drzewa gry T2,k ,
dla którego dowolny algorytm deterministyczny wymaga odczytania
wszystkich 4k liści w celu wyznaczenia wartości dla korzenia.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.6
Losowo?
Obserwacja. Rozważmy wierzchołek AND i jego dwa liście. Jeśli wartość
dla tego wierzchołka bedzie
˛
0, to co najmniej jeden z jego potomków
musi zawierać 0. W najgorszym przypadku dla alg. deterministycznego (
który przeglada
˛ liście w ustalonym porzadku)
˛
0 może wystapić
˛ na drugim
miejscu, co wymaga 2 kroków ( odczytania 2 liści).
0 ∧ AN D
1
0
ALP520 - Wykład z Algorytmów Probabilistycznych – p.7
Losowo?
Jak przechytrzyć przeciwnika ?
0 ∧ AN D
1
0
ALP520 - Wykład z Algorytmów Probabilistycznych – p.7
Losowo?
Jak przechytrzyć przeciwnika ?
Przegladać
˛
te 2 liście w
losowym porzadku
˛
(z pr. 21 )
0 ∧ AN D
1
0
ALP520 - Wykład z Algorytmów Probabilistycznych – p.7
Losowo?
Jak przechytrzyć przeciwnika ?
0 ∧ AN D
Przegladać
˛
te 2 liście w
losowym porzadku
˛
(z pr. 21 )
Wartość oczekiwana liczby
kroków dla ciagu
˛
1 0 : 21 · 1 + 12 · 2 = 32 < 2.
1
0
ALP520 - Wykład z Algorytmów Probabilistycznych – p.7
Losowo?
Jak przechytrzyć przeciwnika ?
0 ∧ AN D
Przegladać
˛
te 2 liście w
losowym porzadku
˛
(z pr. 21 )
Wartość oczekiwana liczby
kroków dla ciagu
˛
1 0 : 21 · 1 + 12 · 2 = 32 < 2.
1
0
Brak zysku dla ciagu
˛ 1 1, ale jeśli jakieś drzewo osiaga
˛
wartość 1 dla korzenia, to każdy wew. wierzchołek AND
musi mieć obu potomków OR o wartościach 1, a wtedy
zyskujemy.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.7
Algorytm A obliczania drzewa gry
1. Rozpocznij od korzenia.
2. Wybierz jednego z jego potomków losowo ( z prawd.
i postepuj
˛
rekurencyjnie.
1
2
)
3. Jeśli poddrzewo wierzchołka AND zwraca 1, to przejdź
do drugiego poddrzewa.
4. Jeśli poddrzewo wierzchołka AND zwraca 0, to zwróć 0
w tym wierzchołku. (Analogicznie dla OR.)
ALP520 - Wykład z Algorytmów Probabilistycznych – p.8
Algorytm A obliczania drzewa gry
1. Rozpocznij od korzenia.
2. Wybierz jednego z jego potomków losowo ( z prawd.
i postepuj
˛
rekurencyjnie.
1
2
)
3. Jeśli poddrzewo wierzchołka AND zwraca 1, to przejdź
do drugiego poddrzewa.
4. Jeśli poddrzewo wierzchołka AND zwraca 0, to zwróć 0
w tym wierzchołku. (Analogicznie dla OR.)
Twierdzenie. Dla dowolnego drzewa T2,k wartość oczekiwana liczby
kroków algorytmu losowego A jest równa co najwyżej 3k .
ALP520 - Wykład z Algorytmów Probabilistycznych – p.8
Analiza algorytmu A - indukcja
Niech Nk -liczba kroków algorytmu (liczba odczytanych liści)
dla drzewa T2,k
ALP520 - Wykład z Algorytmów Probabilistycznych – p.9
Analiza algorytmu A - indukcja
Niech Nk -liczba kroków algorytmu (liczba odczytanych liści)
dla drzewa T2,k
k = 1 zadanie na ćwiczenia
ALP520 - Wykład z Algorytmów Probabilistycznych – p.9
Analiza algorytmu A - indukcja
Niech Nk -liczba kroków algorytmu (liczba odczytanych liści)
dla drzewa T2,k
k = 1 zadanie na ćwiczenia
Założenie dla k − 1 : ENk−1 ≤ 3k−1 .
ALP520 - Wykład z Algorytmów Probabilistycznych – p.9
Analiza algorytmu A - indukcja
Niech Nk -liczba kroków algorytmu (liczba odczytanych liści)
dla drzewa T2,k
k = 1 zadanie na ćwiczenia
Założenie dla k − 1 : ENk−1 ≤ 3k−1 .
Teza dla k : ENk ≤ 3k .
ALP520 - Wykład z Algorytmów Probabilistycznych – p.9
Analiza algorytmu A - indukcja
Teza dla k : ENk ≤ 3k .
T
T2,k−1
T2,k−1
T2,k−1
T2,k−1
ALP520 - Wykład z Algorytmów Probabilistycznych – p.9
Indukcja -cd.
T
Rozpatrzmy drzewo T, którego
poddrzewami sa˛ dwie kopie
drzewa T2,k−1 (potomkami korzenia T sa˛ korzenie drzew T2,k−1 ).
T2,k−1
T2,k−1
T2,k−1
T2,k−1
ALP520 - Wykład z Algorytmów Probabilistycznych – p.10
Indukcja -cd.
T
Rozpatrzmy drzewo T, którego
poddrzewami sa˛ dwie kopie
drzewa T2,k−1 (potomkami korzenia T sa˛ korzenie drzew T2,k−1 ).
Niech k(T ) oznacza wartość obliczona˛ w korzeniu drzewa T.
Możliwe sa˛ nastepuj
˛ ace
˛
przypadki:
T2,k−1
T2,k−1
T2,k−1
T2,k−1
ALP520 - Wykład z Algorytmów Probabilistycznych – p.10
Indukcja -cd.
T
Rozpatrzmy drzewo T, którego
poddrzewami sa˛ dwie kopie
drzewa T2,k−1 (potomkami korzenia T sa˛ korzenie drzew T2,k−1 ).
Niech k(T ) oznacza wartość obliczona˛ w korzeniu drzewa T.
Możliwe sa˛ nastepuj
˛ ace
˛
przypadki:
T2,k−1
T2,k−1
T2,k−1
T2,k−1
k(T ) = 1
k(T ) = 0
ALP520 - Wykład z Algorytmów Probabilistycznych – p.10
Indukcja -cd.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.11
Indukcja -cd.
k(T ) = 1: ⇒ co najmniej jedno z poddrzew k(T2,k−1 ) = 1 i
wartość oczekiwana liczby kroków jest równa co
najwyżej 21 · 3k−1 + 2 · 12 · 3k−1 = 32 · 3k−1 (dla 01 i 10) lub
3k−1 (dla 11).
ALP520 - Wykład z Algorytmów Probabilistycznych – p.11
Indukcja -cd.
k(T ) = 1: ⇒ co najmniej jedno z poddrzew k(T2,k−1 ) = 1 i
wartość oczekiwana liczby kroków jest równa co
najwyżej 21 · 3k−1 + 2 · 12 · 3k−1 = 32 · 3k−1 (dla 01 i 10) lub
3k−1 (dla 11).
k(T ) = 0: ⇒ dla obu poddrzew k(T2,k−1 ) = 0, i wartość
oczekiwana wynosi co najwyżej 2 · 3k−1 .
ALP520 - Wykład z Algorytmów Probabilistycznych – p.11
Indukcja -cd.
Teraz jesteśmy gotowi do analizy drzewa T2,k .
ALP520 - Wykład z Algorytmów Probabilistycznych – p.12
Indukcja -cd.
Teraz jesteśmy gotowi do analizy drzewa T2,k .
k(T2,k ) = 1: ⇒ dla obu poddrzew k(T ) = 1 i
ENk ≤ 2 · 23 · 3k−1 = 3k .
ALP520 - Wykład z Algorytmów Probabilistycznych – p.12
Indukcja -cd.
Teraz jesteśmy gotowi do analizy drzewa T2,k .
k(T2,k ) = 1: ⇒ dla obu poddrzew k(T ) = 1 i
ENk ≤ 2 · 23 · 3k−1 = 3k .
k(T2,k ) = 0: ⇒ w co najmniej jednym poddrzewie musiało
wystapić
˛ 0.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.12
Indukcja -cd.
Teraz jesteśmy gotowi do analizy drzewa T2,k .
k(T2,k ) = 1: ⇒ dla obu poddrzew k(T ) = 1 i
ENk ≤ 2 · 23 · 3k−1 = 3k .
k(T2,k ) = 0: ⇒ w co najmniej jednym poddrzewie musiało
wystapić
˛ 0. Niech p bedzie
˛
prawdopodobieństwem
wyboru 0. Wtedy
k−1
ENk ≤ 2p · 3
3 k−1
+ (1 − p)( · 3
+ 2 · 3k−1 ) ≤ 3k ,
2
ponieważ p ≥ 21 .
ALP520 - Wykład z Algorytmów Probabilistycznych – p.12
Indukcja -cd.
Teraz jesteśmy gotowi do analizy drzewa T2,k .
k(T2,k ) = 1: ⇒ dla obu poddrzew k(T ) = 1 i
ENk ≤ 2 · 23 · 3k−1 = 3k .
k(T2,k ) = 0: ⇒ w co najmniej jednym poddrzewie musiało
wystapić
˛ 0. Niech p bedzie
˛
prawdopodobieństwem
wyboru 0. Wtedy
k−1
ENk ≤ 2p · 3
3 k−1
+ (1 − p)( · 3
+ 2 · 3k−1 ) ≤ 3k ,
2
ponieważ p ≥ 21 .
Wniosek. Powyższy algorytm losowy ma średni czas ograniczony przez
nlog4 3 ≈ n0.793 .
ALP520 - Wykład z Algorytmów Probabilistycznych – p.12
Teoria gier jeszcze raz ale inaczej
Cel: Metoda dowodzenia ograniczeń dolnych dla algorytmów losowych.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.13
Teoria gier jeszcze raz ale inaczej
Cel: Metoda dowodzenia ograniczeń dolnych dla algorytmów losowych.
Gra w kamień, papier i nożyczki.
Gracze: K (grajacy
˛ kolumnami) i W (grajacy
˛ wierszami).
ALP520 - Wykład z Algorytmów Probabilistycznych – p.13
Teoria gier jeszcze raz ale inaczej
Cel: Metoda dowodzenia ograniczeń dolnych dla algorytmów losowych.
Gra w kamień, papier i nożyczki.
Gracze: K (grajacy
˛ kolumnami) i W (grajacy
˛ wierszami).
Nożyczki Papier Kamień
Nożyczki
0
1
-1
Papier
-1
0
1
Kamień
1
-1
0
ALP520 - Wykład z Algorytmów Probabilistycznych – p.13
Teoria gier jeszcze raz ale inaczej
Cel: Metoda dowodzenia ograniczeń dolnych dla algorytmów losowych.
Gra w kamień, papier i nożyczki.
Gracze: K (grajacy
˛ kolumnami) i W (grajacy
˛ wierszami).
Nożyczki Papier Kamień
Nożyczki
0
1
-1
Papier
-1
0
1
Kamień
1
-1
0
M − macierz wypłat Mij − wartość, jaka˛ gracz K płaci
graczowi W, jeśli W wybierze strategie˛ i, a K strategie˛ j.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.13
Teoria gier jeszcze raz ale inaczej
Cel: Metoda dowodzenia ograniczeń dolnych dla algorytmów losowych.
Gra w kamień, papier i nożyczki.
Gracze: K (grajacy
˛ kolumnami) i W (grajacy
˛ wierszami).
Nożyczki Papier Kamień
Nożyczki
0
1
-1
Papier
-1
0
1
Kamień
1
-1
0
M − macierz wypłat Mij − wartość, jaka˛ gracz K płaci
graczowi W, jeśli W wybierze strategie˛ i, a K strategie˛ j.
Jest to przykład gry dwuosobowej o sumie zerowej ( suma
wypłat =0). Gracz W chce zmaksymalizować wygrana,
˛ a
gracz K chce ja˛ zminimalizować.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.13
Wygrana w grze
Jeśli jest to gra o zerowej informacji ( gracze nie znaja˛ swoich
strategii), to
jeśli W wybiera strategie˛ i, to gwarantowana wygrana
wynosi minj Mij , niezależnie od strategii K.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.14
Wygrana w grze
Jeśli jest to gra o zerowej informacji ( gracze nie znaja˛ swoich
strategii), to
jeśli W wybiera strategie˛ i, to gwarantowana wygrana
wynosi minj Mij , niezależnie od strategii K.
jeśli W wybierze optymalna˛ strategie,
˛ to jego wygrana
wynosi co najmniej UW = maxi minj Mij .
ALP520 - Wykład z Algorytmów Probabilistycznych – p.14
Wygrana w grze
Jeśli jest to gra o zerowej informacji ( gracze nie znaja˛ swoich
strategii), to
jeśli W wybiera strategie˛ i, to gwarantowana wygrana
wynosi minj Mij , niezależnie od strategii K.
jeśli W wybierze optymalna˛ strategie,
˛ to jego wygrana
wynosi co najmniej UW = maxi minj Mij .
Analogicznie dla K, wygrana wynosi co najwyżej
UK = minj maxi Mij .
ALP520 - Wykład z Algorytmów Probabilistycznych – p.14
Wygrana w grze
Jeśli jest to gra o zerowej informacji ( gracze nie znaja˛ swoich
strategii), to
jeśli W wybiera strategie˛ i, to gwarantowana wygrana
wynosi minj Mij , niezależnie od strategii K.
jeśli W wybierze optymalna˛ strategie,
˛ to jego wygrana
wynosi co najmniej UW = maxi minj Mij .
Analogicznie dla K, wygrana wynosi co najwyżej
UK = minj maxi Mij .
UW = −1, UK = 1
ALP520 - Wykład z Algorytmów Probabilistycznych – p.14
Wygrane i strategie
Fakt.
max min Mij ≤ min max Mij
i
j
j
i
ALP520 - Wykład z Algorytmów Probabilistycznych – p.15
Wygrane i strategie
Fakt.
max min Mij ≤ min max Mij
i
j
j
i
Dowód. Niech i0 : maxi minj Mij = minj Mi0 j ≤ minj maxi Mij ,
ponieważ Mi0 j ≤ maxi Mij .
ALP520 - Wykład z Algorytmów Probabilistycznych – p.15
Wygrane i strategie
Fakt.
max min Mij ≤ min max Mij
i
j
j
i
Dowód. Niech i0 : maxi minj Mij = minj Mi0 j ≤ minj maxi Mij ,
ponieważ Mi0 j ≤ maxi Mij .
Jeśli UW = UK = U, to gra ma punkt siodłowy (rozwiazanie).
˛
Odpowiadajace
˛ mu strategie graczy nazywamy strategiami
czystymi (polegajacymi
˛
na wyborze konkretnego wiersza
lub, odpowiednio, kolumny).
ALP520 - Wykład z Algorytmów Probabilistycznych – p.15
Wygrane i strategie
Fakt.
max min Mij ≤ min max Mij
i
j
j
i
Dowód. Niech i0 : maxi minj Mij = minj Mi0 j ≤ minj maxi Mij ,
ponieważ Mi0 j ≤ maxi Mij .
Jeśli UW = UK = U, to gra ma punkt siodłowy (rozwiazanie).
˛
Odpowiadajace
˛ mu strategie graczy nazywamy strategiami
czystymi (polegajacymi
˛
na wyborze konkretnego wiersza
lub, odpowiednio, kolumny).
ALP520 - Wykład z Algorytmów Probabilistycznych – p.15
Inny przykład
Nożyczki Papier Kamień
Nożyczki
0
1
2
Papier
-1
0
1
Kamień
-2
-1
0
ALP520 - Wykład z Algorytmów Probabilistycznych – p.16
Inny przykład
Nożyczki Papier Kamień
Nożyczki
0
1
2
Papier
-1
0
1
Kamień
-2
-1
0
Oblicz UW i UK .
ALP520 - Wykład z Algorytmów Probabilistycznych – p.16
Strategie losowe (mieszane).
ALP520 - Wykład z Algorytmów Probabilistycznych – p.17
Strategie losowe (mieszane).
Gracz W wybiera rozkład prawdopodobieństwa (schemat
losowy) p = (p1 , p2 , . . . , pn ), gdzie pi to prawdopodobieństwo
wyboru strategii (wiersza) i.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.17
Strategie losowe (mieszane).
Gracz W wybiera rozkład prawdopodobieństwa (schemat
losowy) p = (p1 , p2 , . . . , pn ), gdzie pi to prawdopodobieństwo
wyboru strategii (wiersza) i.
Gracz K wybiera rozkład prawdopodobieństwa (schemat
losowy) q = (q1 , q2 , . . . , qn ), gdzie qi to prawdopodobieństwo
wyboru strategii (kolumny) i.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.17
Strategie losowe (mieszane).
Gracz W wybiera rozkład prawdopodobieństwa (schemat
losowy) p = (p1 , p2 , . . . , pn ), gdzie pi to prawdopodobieństwo
wyboru strategii (wiersza) i.
Gracz K wybiera rozkład prawdopodobieństwa (schemat
losowy) q = (q1 , q2 , . . . , qn ), gdzie qi to prawdopodobieństwo
wyboru strategii (kolumny) i.
Wygrana jest zmienna˛ losowa˛ o wartości oczekiwanej:
E[”wygranej”] = pT M q =
n
n X
X
pi Mij qj .
i=1 j=1
ALP520 - Wykład z Algorytmów Probabilistycznych – p.17
Strategie losowe (mieszane).
Niech VW i VK oznaczaja˛ gwarantowane średnie wypłaty dla
graczy W i K. Wtedy zachodzi znane w teorii gier
twierdzenie:
ALP520 - Wykład z Algorytmów Probabilistycznych – p.17
Strategie losowe (mieszane).
Niech VW i VK oznaczaja˛ gwarantowane średnie wypłaty dla
graczy W i K. Wtedy zachodzi znane w teorii gier
twierdzenie:
Twierdzenie (von Neumann 1928). W dowolnej grze dwuosobowej o
zerowej sumie i macierzy wypłat M
VW = maxp minq pT M q = minq maxp pT M q = VK .
ALP520 - Wykład z Algorytmów Probabilistycznych – p.17
Strategie losowe (mieszane).
Niech VW i VK oznaczaja˛ gwarantowane średnie wypłaty dla
graczy W i K. Wtedy zachodzi znane w teorii gier
twierdzenie:
Twierdzenie (von Neumann 1928). W dowolnej grze dwuosobowej o
zerowej sumie i macierzy wypłat M
VW = maxp minq pT M q = minq maxp pT M q = VK .
Dowód. Nietrywialny: używa twierdzenia o punkcie stałym lub twierdzeń
o separacji z geometrii analitycznej. Jest to też szczególny przypadek
twierdzenia dualnego w zagadnieniu programowania liniowego.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.17
Strategie losowe (mieszane).
Niech VW i VK oznaczaja˛ gwarantowane średnie wypłaty dla
graczy W i K. Wtedy zachodzi znane w teorii gier
twierdzenie:
Twierdzenie (von Neumann 1928). W dowolnej grze dwuosobowej o
zerowej sumie i macierzy wypłat M
VW = maxp minq pT M q = minq maxp pT M q = VK .
Dowód. Nietrywialny: używa twierdzenia o punkcie stałym lub twierdzeń
o separacji z geometrii analitycznej. Jest to też szczególny przypadek
twierdzenia dualnego w zagadnieniu programowania liniowego.
Wniosek. Gra ma punkt siodłowy (istnieja˛ optymalne strategie mieszane
lub czyste dla obu graczy).
ALP520 - Wykład z Algorytmów Probabilistycznych – p.17
Twierdzenie Loomisa
ALP520 - Wykład z Algorytmów Probabilistycznych – p.18
Twierdzenie Loomisa
Jeśli p jest ustalone, to pT M q jest funkcja˛ liniowa˛ zależna˛ od
q, która przyjmuje wartość minimalna˛ dla qj = 1, gdzie j
odpowiada najmniejszemu współczynnikowi (analogicznie
dla q ). Wtedy prawdziwa jest uproszczona wersja
powyższego twierdzenia:
ALP520 - Wykład z Algorytmów Probabilistycznych – p.18
Twierdzenie Loomisa
Jeśli p jest ustalone, to pT M q jest funkcja˛ liniowa˛ zależna˛ od
q, która przyjmuje wartość minimalna˛ dla qj = 1, gdzie j
odpowiada najmniejszemu współczynnikowi (analogicznie
dla q ). Wtedy prawdziwa jest uproszczona wersja
powyższego twierdzenia:
Twierdzenie (Loomisa). W dowolnej grze dwuosobowej o zerowej sumie
i macierzy M
max min pT M ej = min max eTi M q,
p
j
q
i
gdzie ej jest wektorem jednostkowym z 1 na pozycji j.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.18
Metoda Yao
ALP520 - Wykład z Algorytmów Probabilistycznych – p.19
Metoda Yao
Zastosowanie twierdzeń minimaksowych do oszacowania złożoności
algorytmów losowych.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.19
Metoda Yao
Zastosowanie twierdzeń minimaksowych do oszacowania złożoności
algorytmów losowych.
Gracz K - projektant algorytmów Las Vegas.
Gracz W - malkontent wybierajacy
˛ najgorszy zbiór
danych wejściowych.
Wypłata K dla W − miara złożoności algorytmu (czas
działania).
K chce zminimalizować czas działania, W daży
˛ do
zmaksymalizowania wypłaty.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.19
Metoda Yao
Zastosowanie twierdzeń minimaksowych do oszacowania złożoności
algorytmów losowych.
Gracz K - projektant algorytmów Las Vegas.
Gracz W - malkontent wybierajacy
˛ najgorszy zbiór
danych wejściowych.
Wypłata K dla W − miara złożoności algorytmu (czas
działania).
K chce zminimalizować czas działania, W daży
˛ do
zmaksymalizowania wypłaty.
Twierdzenia von Neumanna i Loomisa w jezyku
˛
algorytmów
losowych.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.19
Metoda Yao
Zastosowanie twierdzeń minimaksowych do oszacowania złożoności
algorytmów losowych.
Gracz K - projektant algorytmów Las Vegas.
Gracz W - malkontent wybierajacy
˛ najgorszy zbiór
danych wejściowych.
Wypłata K dla W − miara złożoności algorytmu (czas
działania).
K chce zminimalizować czas działania, W daży
˛ do
zmaksymalizowania wypłaty.
Twierdzenia von Neumanna i Loomisa w jezyku
˛
algorytmów
losowych.
Π− problem o sk. zb. danych wejściowych I (ustalonego rozmiaru) i sk. zb. algorytmów
deterministycznych A.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.19
Metoda Yao
∀ I ∈ I, A ∈ A,
zbiorze I.
C(I, A)− czas działania algorytmu A na
ALP520 - Wykład z Algorytmów Probabilistycznych – p.20
Metoda Yao
∀ I ∈ I, A ∈ A,
zbiorze I.
C(I, A)− czas działania algorytmu A na
p− rozkład prawdopodobieństwa na zbiorze I, q−
rozkład prawd. na zbiorze A (algorytm losowy LV)
Ip − losowy zbiór danych wejściowych odpowiadajacy
˛ pi
Aq − losowy algorytm odpowiadajacy
˛ q.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.20
Metoda Yao
C(I, A)− czas działania algorytmu A na
∀ I ∈ I, A ∈ A,
zbiorze I.
p− rozkład prawdopodobieństwa na zbiorze I, q−
rozkład prawd. na zbiorze A (algorytm losowy LV)
Ip − losowy zbiór danych wejściowych odpowiadajacy
˛ pi
Aq − losowy algorytm odpowiadajacy
˛ q.
Wniosek (z tw. vN. i L.).
max min E[C(Ip , Aq )] = min max E[C(Ip , Aq )]
p
q
q
p
CDIST = max min E[C(Ip , A)] =
p
A∈A
min max E[C(I, Aq )] = CRAN D .
q
I∈I
ALP520 - Wykład z Algorytmów Probabilistycznych – p.20
Metoda Yao
C(I, A)− czas działania algorytmu A na
∀ I ∈ I, A ∈ A,
zbiorze I.
p− rozkład prawdopodobieństwa na zbiorze I, q−
rozkład prawd. na zbiorze A (algorytm losowy LV)
Ip − losowy zbiór danych wejściowych odpowiadajacy
˛ pi
Aq − losowy algorytm odpowiadajacy
˛ q.
Wniosek (z tw. vN. i L.).
max min E[C(Ip , Aq )] = min max E[C(Ip , Aq )]
p
q
q
p
CDIST = max min E[C(Ip , A)] =
p
A∈A
min max E[C(I, Aq )] = CRAN D .
q
I∈I
CDIST − złożoność średniego przypadku
CRAN D − złożoność losowa
ALP520 - Wykład z Algorytmów Probabilistycznych – p.20
Metoda Yao
C(I, A)− czas działania algorytmu A na
∀ I ∈ I, A ∈ A,
zbiorze I.
p− rozkład prawdopodobieństwa na zbiorze I, q−
rozkład prawd. na zbiorze A (algorytm losowy LV)
Ip − losowy zbiór danych wejściowych odpowiadajacy
˛ pi
Aq − losowy algorytm odpowiadajacy
˛ q.
Wniosek (z tw. vN. i L.).
max min E[C(Ip , Aq )] = min max E[C(Ip , Aq )]
p
q
q
p
CDIST = max min E[C(Ip , A)] =
p
A∈A
min max E[C(I, Aq )] = CRAN D .
q
I∈I
CDIST − złożoność średniego przypadku
CRAN D − złożoność losowa
ALP520 - Wykład z Algorytmów Probabilistycznych – p.20
Zasada minimaksowa Yao
Zasada (Minimaksowa Yao). Dla każdego rozkładu p nad I i q nad A,
min E[C(Ip , A)] ≤ max E[C(I, Aq )].
A∈A
I∈I
ALP520 - Wykład z Algorytmów Probabilistycznych – p.21
Zasada minimaksowa Yao
Zasada (Minimaksowa Yao). Dla każdego rozkładu p nad I i q nad A,
min E[C(Ip , A)] ≤ max E[C(I, Aq )].
A∈A
Interpretacja:
I∈I
Średni czas najlepszego algorytmu determini-
stycznego (najszybszego w odniesieniu do danego rozkładu
p na zbiorze danych wejściowych I ) jest ograniczeniem dolnym
na oczekiwany czas działania najlepszego algorytmu losowego dla ustalonego problemu.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.21
Zastosowanie zasady minimaksowej Yao
Cel: udowodnić ograniczenie dolne na CRAN D
problemu Π
ALP520 - Wykład z Algorytmów Probabilistycznych – p.22
Zastosowanie zasady minimaksowej Yao
Cel: udowodnić ograniczenie dolne na CRAN D
problemu Π
wybrać dowolny rozkład prawdopodobieństwa p na
zbiorze danych wejściowych
ALP520 - Wykład z Algorytmów Probabilistycznych – p.22
Zastosowanie zasady minimaksowej Yao
Cel: udowodnić ograniczenie dolne na CRAN D
problemu Π
wybrać dowolny rozkład prawdopodobieństwa p na
zbiorze danych wejściowych
udowodnić ograniczenie dolne na średni czas działania
każdego algorytmu deterministycznego dla tego
problemu i rozkładu p
ALP520 - Wykład z Algorytmów Probabilistycznych – p.22