wyklad4 cd.

Transkrypt

wyklad4 cd.
Strategie losowe (mieszane).
ALP520 - Wykład z Algorytmów Probabilistycznych – p.2
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.2
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.2
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.2
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.2
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.2
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.2
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.2
Twierdzenie Loomisa
ALP520 - Wykład z Algorytmów Probabilistycznych – p.3
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.3
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.3
Metoda Yao
ALP520 - Wykład z Algorytmów Probabilistycznych – p.4
Metoda Yao
Zastosowanie twierdzeń minimaksowych do oszacowania złożoności
algorytmów losowych.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.4
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.4
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.4
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.4
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.5
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.5
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.5
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.5
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.5
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.6
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.6
Zastosowanie zasady minimaksowej Yao
Cel: udowodnić ograniczenie dolne na CRAN D
problemu Π
ALP520 - Wykład z Algorytmów Probabilistycznych – p.7
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.7
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.7
Ilustracja zasady Yao
Zastosowanie zasady Yao do problemu obliczania drzewa gry T2,k typu
AND-OR.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.8
Ilustracja zasady Yao
Zastosowanie zasady Yao do problemu obliczania drzewa gry T2,k typu
AND-OR.
Zadanie. Pokazać, że jeśli w drzewie T2,k wszystkie bramki AN D i OR
zastapimy
˛
funkcja˛ N OR (0, 0 → 1, pozostałe 0), to wartości dla
korzenia nie zmienia˛ sie.
˛
ALP520 - Wykład z Algorytmów Probabilistycznych – p.8
Ilustracja zasady Yao
Zastosowanie zasady Yao do problemu obliczania drzewa gry T2,k typu
AND-OR.
Zadanie. Pokazać, że jeśli w drzewie T2,k wszystkie bramki AN D i OR
zastapimy
˛
funkcja˛ N OR (0, 0 → 1, pozostałe 0), to wartości dla
korzenia nie zmienia˛ sie.
˛
Dowód: (p ∨ q) ∧ (r ∨ s) ⇔ ¬(¬(p ∨ q) ∨ ¬(r ∨ s)).
ALP520 - Wykład z Algorytmów Probabilistycznych – p.8
Ilustracja zasady Yao
Zastosowanie zasady Yao do problemu obliczania drzewa gry T2,k typu
AND-OR.
Zadanie. Pokazać, że jeśli w drzewie T2,k wszystkie bramki AN D i OR
zastapimy
˛
funkcja˛ N OR (0, 0 → 1, pozostałe 0), to wartości dla
korzenia nie zmienia˛ sie.
˛
Bedziemy
˛
analizować drzewo N OR (łatwiej).
ALP520 - Wykład z Algorytmów Probabilistycznych – p.8
Ilustracja zasady Yao
Zastosowanie zasady Yao do problemu obliczania drzewa gry T2,k typu
AND-OR.
Zadanie. Pokazać, że jeśli w drzewie T2,k wszystkie bramki AN D i OR
zastapimy
˛
funkcja˛ N OR (0, 0 → 1, pozostałe 0), to wartości dla
korzenia nie zmienia˛ sie.
˛
Bedziemy
˛
analizować drzewo N OR (łatwiej).
Ustalmy rozkład p na zbiorze liści drzewa przypisujac
˛ 1 z prawd. p tak,
aby prawdopodobieństwo, że rodzic =1 było również równe p.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.8
Ilustracja zasady Yao
Zastosowanie zasady Yao do problemu obliczania drzewa gry T2,k typu
AND-OR.
Zadanie. Pokazać, że jeśli w drzewie T2,k wszystkie bramki AN D i OR
zastapimy
˛
funkcja˛ N OR (0, 0 → 1, pozostałe 0), to wartości dla
korzenia nie zmienia˛ sie.
˛
Bedziemy
˛
analizować drzewo N OR (łatwiej).
Ustalmy rozkład p na zbiorze liści drzewa przypisujac
˛ 1 z prawd. p tak,
aby prawdopodobieństwo, że rodzic =1 było również równe p.
2
(1 − p) = p,
2
p − 3p + 1 = 0,
√
3− 5
.
p=
2
ALP520 - Wykład z Algorytmów Probabilistycznych – p.8
Ilustracja zasady Yao
Zastosowanie zasady Yao do problemu obliczania drzewa gry T2,k typu
AND-OR.
Zadanie. Pokazać, że jeśli w drzewie T2,k wszystkie bramki AN D i OR
zastapimy
˛
funkcja˛ N OR (0, 0 → 1, pozostałe 0), to wartości dla
korzenia nie zmienia˛ sie.
˛
Bedziemy
˛
analizować drzewo N OR (łatwiej).
Ustalmy rozkład p na zbiorze liści drzewa przypisujac
˛ 1 z prawd. p tak,
aby prawdopodobieństwo, że rodzic =1 było również równe p.
2
(1 − p) = p,
2
p − 3p + 1 = 0,
√
3− 5
.
p=
2
Wtedy prawdopodobieństwa na kolejnych poziomach drzewa sa˛
wzajemnie niezależne.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.8
Ilustracja zasady Yao
Tarsi udowodnił, że optymalny algorytm
deterministyczny dla tego problemu, to algorytm przeszukiwania
drzewa w głab
˛ z obcinaniem.
Fakt:
ALP520 - Wykład z Algorytmów Probabilistycznych – p.9
Ilustracja zasady Yao
Tarsi udowodnił, że optymalny algorytm
deterministyczny dla tego problemu, to algorytm przeszukiwania
drzewa w głab
˛ z obcinaniem.
W (h)− wartość oczekiwana liczby sprawdzonych liści w celu
obliczenia wierzchołka w odległości h od liści za pomoca˛
optymalnego algorytmu (przeszukiwania drzewa w głab
˛ z
obcinaniem).
Fakt:
ALP520 - Wykład z Algorytmów Probabilistycznych – p.9
Ilustracja zasady Yao
Tarsi udowodnił, że optymalny algorytm
deterministyczny dla tego problemu, to algorytm przeszukiwania
drzewa w głab
˛ z obcinaniem.
W (h)− wartość oczekiwana liczby sprawdzonych liści w celu
obliczenia wierzchołka w odległości h od liści za pomoca˛
optymalnego algorytmu (przeszukiwania drzewa w głab
˛ z
obcinaniem).
Fakt:
W (h) = pW (h − 1) + (1 − p) · 2W (h − 1)
ALP520 - Wykład z Algorytmów Probabilistycznych – p.9
Ilustracja zasady Yao
Tarsi udowodnił, że optymalny algorytm
deterministyczny dla tego problemu, to algorytm przeszukiwania
drzewa w głab
˛ z obcinaniem.
W (h)− wartość oczekiwana liczby sprawdzonych liści w celu
obliczenia wierzchołka w odległości h od liści za pomoca˛
optymalnego algorytmu (przeszukiwania drzewa w głab
˛ z
obcinaniem).
Fakt:
W (h) = pW (h − 1) + (1 − p) · 2W (h − 1)
Rozwiazanie:
˛
W (1) = 2 − p, a zatem W (h) = (2 − p)h , czyli dla
h = log2 n otrzymujemy W (log2 n) ≈ n0.694 < n0.793 .
ALP520 - Wykład z Algorytmów Probabilistycznych – p.9
Ilustracja zasady Yao
Pytanie: czy istnieje lepszy algorytm losowy od pokazanego
na wykładzie (n0.793 ), czy też lepsze (wieksze)
˛
oszacowanie
dolne niż n0.694 ?
ALP520 - Wykład z Algorytmów Probabilistycznych – p.10
Ilustracja zasady Yao
Pytanie: czy istnieje lepszy algorytm losowy od pokazanego
na wykładzie (n0.793 ), czy też lepsze (wieksze)
˛
oszacowanie
dolne niż n0.694 ?
Odpowiedź: Inny rozkład prawdopodobieństwa (nie gwarantujacy
˛ niezależności) gwarantuje ograniczenie dolne rz˛edu
n0.793 , czyli opisany wcześniej algorytm losowy jest opty-
malny.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.10
Ilustracja zasady Yao
Pytanie: czy istnieje lepszy algorytm losowy od pokazanego
na wykładzie (n0.793 ), czy też lepsze (wieksze)
˛
oszacowanie
dolne niż n0.694 ?
Odpowiedź: Inny rozkład prawdopodobieństwa (nie gwarantujacy
˛ niezależności) gwarantuje ograniczenie dolne rz˛edu
n0.793 , czyli opisany wcześniej algorytm losowy jest opty-
malny.
ALP520 - Wykład z Algorytmów Probabilistycznych – p.10