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