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