Rozdział 3 Gry niekooperacyjne w postaci ekstensywnej Wszystkie gry, które dotychczas rozważaliśmy, miały tylko jeden etap. W związku z tym musieliśmy zakładać, że gracze podejmują swoje decyzje równocześnie, nie znając tych, które podjął przeciwnik. Oczywiście w rzeczywistości rzadko się zdarzają takie sytuacje, że decyzje podejmuje się naraz, bez żadnej wiedzy o ruchach przeciwnika. W praktyce prawopodobnie musiałoby to oznaczać, że gracze, jak w dylemacie więźnia, są od siebie odizolowani. W związku z tym powstał pomysł, żeby kolejne, wykonywane po sobie ruchy opisać przy pomocy drzewa. Na przykład spróbujmy sobie opisać taką grę: Mamy tabliczkę czekolady 3 × 2. W każdym kolejnym ruchu (gracze grają na przemian) odłamuje się kawałek czekolady, ale wolno odłamywać tylko całe „wiersze” lub „kolumny” czekolady. Ten, kto zje ostatni kawałek – przegrywa. Taką grę można opisać przy pomocy następującego drzewa: Gracz 1 3 na 2 Gracz 2 2 na 2 1 na 2 3 na 1 (-1,1) Gracz 1 1 na 2 2 na 1 1 na 1 (1,-1) Gracz 2 1 na 1 1 na 1 (-1,1) (1,-1) 2 na 1 1 na 1 (1,-1) (1,-1) 1 na 1 (-1,1) (-1,1) (1,-1) (-1,1) (-1,1) (1,-1) Ogólnie tego typu grę będzie można zdefiniować następująco: Definicja 3.1 Gra w postaci ekstensywnej (pozycyjna) N graczy opisana jest za pomocą drzewa uporządkowanego T oraz: 20 1. partycji P 0 , P 1 , . . . , P N wierzchołków drzewa (pozycji), nie będących liściami. P i, i 6= 0 interpretujemy jako zbiór pozycji i-tego gracza (tzn. pozycji, w których on podejmuje decyzję). P 0 jest zbiorem pozycji „natury” (dalsza pozycja wybierana jest przez mechanizm losowy); 2. dla każdego gracza i, partycji P i na k i zbiorów informacyjnych U1i , . . . , Uki i , takich że: (a) z każdego wierzchołka (pozycji) v ∈ Uji wychodzi tyle samo łuków, (b) każda droga z pozycji początkowej (korzenia drzewa) do pozycji końcowej (liścia) przecina każdy zbór informacyjny co najwyżej jeden raz; Interpretacja zbiorów informacyjnych jest taka, że podział na zbiory informacyjne odpowiada stanowi wiedzy gracza – znajdując się w pozycji v, wie tylko tyle, że znajduje się w zbiorze informacyjnym, do którego v należy, i opierając się na tej wiedzy podejmuje decyzje co do swojego działania. (Stąd też biorą się warunki, które każdy zbiór informacyjny musi spełniać: gdyby z jakiegoś węzła należącego do danego zbioru informacyjnego wychodziła inna liczba krawędzi niż z pozostałych, gracz, podejmujący tam decyzję, musiałby rozróżnić dwa węzły, w których miałby różną liczbę możliwości do wyboru; z kolei gdyby w trakcie gry dwukrotnie znalazł się w jednym zbiorze informacyjnym, musiałby wiedzieć, że tam już był, więc to nie może być ten sam zbiór). 3. dla każdej pozycji natury v ∈ P 0 dany jest rozkład prawdopodobieństwa pv , określający prawdopodobieństwo, z jakim zostaną wylosowane poszczególne łuki wychodzące z v. 4. dla każdej pozycji końcowej (liścia) t dany jest wektor g(t) = (g 1 (t), . . . , g N (t)) wypłat poszczególnych graczy. Drogę łączącą korzeń z dowolnym liściem nazywamy partią gry. Nasz przykład możemy opisać zgodnie z tą definicją następująco: Zaczynamy od ponumerowania wierzchołków naszego drzewa (żeby wszystko było czytelne, tym razem narysuję drzewo bez opisu, co który wierzchołek oznacza – pozostaje jedynie numeracja1 ). Pozycjami pierwszego gracza będą wierzchołki P 1 = {1, 6, 7, 9, 11, 12}, pozycjami drugiego – P 2 = {2, 3, 4, 14, 16, 19}. Wszystkie zbiory informacyjne są jednoelementowe, bo w każdej chwili gracz zna całą dotychczasową rozgrywkę: U11 = {1}, U21 = {6}, U31 = {7},. . . , U12 = {2}, U22 = {3}, U32 = {4},. . . Wypłaty graczy, ponieważ w tej grze chodzi tylko o wygraną bądź przegraną, są zawsze równe 1 lub −1, a dokładniej: g(5) = (−1, 1), g(8) = g(10) = g(13) = (1, −1), g(15) = g(17) = g(18) = g(20) = g(21) = (−1, 1), g(22) = g(23) = g(24) = (1, −1). 1 Rysunek znajduje się na następnej stronie. 21 Gracz 1 1 Gracz 2 2 3 4 5 (-1,1) Gracz 1 6 7 8 9 10 (1,-1) Gracz 2 14 15 16 (-1,1) 11 12 13 (1,-1) 17 18 (-1,1) (-1,1) (1,-1) 19 20 21 (-1,1) (-1,1) 22 23 24 (1,-1) (1,-1) (1,-1) Ale oczywiście definicja gry pozycyjnej jest bardziej złożona, dzięki czemu obejmuje ona też różne bardziej skomplikowane gry. Przykład: Pierwszy gracz rzuca monetą (wynik tego rzutu jest losowy, czyli nie jest wynikiem decyzji 1. gracza, ale on zna ten wynik, bo to on rzucał monetą), drugi nie zna wyniku tego rzutu i zgaduje, jaki był, następnie pierwszy, który wie, jaki był wynik losowania, zgaduje, czy 2. odgadł ten wynik. Jeśli zgadnie, to wygrywa, jeśli nie – przegrywa. Podobnie 2. gracz – jeśli odgadł wynik losowania – wygrywa (oczywiście obaj mogą wygrać lub przegrać jednocześnie). Grę będzie opisywało następujące drzewo (zbiory informacyjne są od razu zaznaczone na drzewie): Natura O U12 Gracz 2 O Gracz 1 R U11 R O R U21 Z N Z N Z N Z N (1,1) (-1,1) (-1,-1) (1,-1) (-1,-1) (1,-1) (1,1) (-1,1) 22 Tu już widać sens wprowadzenia czegoś takiego jak zbiory informacyjne – w tym a tym przypadku chcemy założyć, że gracz nie zna jakichś ruchów przeciwnika lub natury, i do tego są one nam potrzebne. Ale okazuje się, że stosując taki model możemy opisać coś bardziej skomplikowanego – mianowicie ograniczoną pamięć – gracz może nie pamiętać jakiegoś własnego wyboru z przeszłości. Przykład takiej gry pojawi się na ćwiczeniach2 . Ten przykład może wydać się trochę abstrakcyjny (bo jak można zapomnieć, co się robiło w pierwszym ruchu, ruch później?), natomiast sama idea tego, że ruchy można zapominać jest w sumie dosyć, „życiowa” (tak się dzieje na przykład w przypadku gier z dużą liczbą etapów). Zauważmy także, że dowolne gry w postaci strategicznej też możemy modelować jako gry pozycyjne. Np. dylemat więźnia będzie opisywało następujące drzewo (zaznaczone są na nim także zbiory informacyjne) Gracz 1 U11 Przyzn. Gracz 2 Przyzn. (-5,-5) Nie przyzn. U12 Nie przyzn. Przyzn. (0,-10) (-10,0) Nie przyzn. (-1,-1) Dobrze, skoro wiemy, jak opisać grę wieloetapową, to teraz zastanówmy się, jak opisać strategie w takiej grze. Mówiłem, że gracz znajdujący się w pozycji v wie tylko, w jakim zbiorze informacyjnym się znajduje. W związku z tym strategię gracza i będziemy definiować następująco: Niech I i = {U1i , . . . , Uki i } – rodzina zbiorów informacyjnych gracza i, a ν(Uji ) – liczba krawędzi wychodzących z każdej pozycji w zbiorze Uji . Definicja 3.2 Strategią czystą gracza i nazwiemy odwzorowanie si : I i → N takie że si (Uji ) ¬ ν(Uji ). Jeśli gracz znajduje się w pozycji v ∈ Uji i stosuje strategię si , to wybiera w tej pozycji łuk wychodzący z v o „numerze” si (Uji ). Wypłatą gracza i, gdy poszczególni gracze stosują strategie s = (s1 , . . . , sN ) jest v∈L(T ) g(v)ps (v), gdzie L(T ) oznacza zbiór liści drzewa, a ps (v) jest prawdopodobieństwem dojścia do liścia v, jeśli stosowane są strategie s. Zauważmy jednak, że jeśli zbiory I i są skończone (a tak zakładamy), to grę w postaci ekstensywnej możemy zawsze sprowadzić do gry w postaci strategicznej, za strategie w grze jednokrokowej przyjmując ciągi strategii w kolejnych zbiorach informacyjnych. Na przykład w przedostatnim przykładzie (z rzutem monetą), pierwszy gracz miał dwa zbiory informacyjne, a w każdym z nich – dwie strategie (Z (gracz 2. zgadł, co wypadło) i N (nie zgadł)), stąd w grze pozycyjnej miał 4 strategie (czyste): ZZ, ZN, NZ, NN. Z kolei gracz drugi miał dwie strategie: O (orzeł) i R (reszka). Z kolei wypłaty odpowiadające poszczególnym strategiom w tej grze były następujące (ponieważ na pierwszym etapie gry decyzja była podejmowana losowo, wypłaty będą wartościami oczekiwanymi): P 2 Choć na wykładzie też był na tablicy, ale nie chce mi się teraz go wklepywać, skoro jeszcze się gdzieś pojawi. 23 O R ZZ (0, 0) (0, 0) ZN (1, 0) (−1, 0) NZ (−1, 0) (1, 0) NN (0, 0) (0, 0) Skoro jednak dowolną grę w postaci ekstensywnej można sprowadzić do postaci strategicznej, to znaczy, że na mocy twierdzenia Nasha każda gra pozycyjna ma równowagę w strategiach mieszanych. No właśnie – tylko jak będą tutaj wyglądać strategie mieszane? Jeśli chcemy stosować twierdzenie Nasha, to strategią mieszaną będzie musiał być rozkład na zbiorze strategii czystych, czyli funkcjach z I i w N – innymi słowy, chcąc używać strategii mieszanej, musielibyśmy dokonać losowania strategii w całej grze przed rozpoczęciem gry. Jeśli to nie byłaby taka mała, paroetapowa gra, to zbiory, z których musielibyśmy losować byłyby olbrzymie, w dodatku losowanie przed rozpoczęciem rozgrywki kłuci się z intuicją co do tego, na czym polega gra wieloetapowa. W związku z tym wprowadza się mniejszy zbiór strategii mieszanych, nazywanych strategiami postępowania. Definicja 3.3 Strategią postępowania gracza i w grze pozycyjnej zdefiniowanej wcześniej nazwiemy odwzorowanie, które dowolnemu zbiorowi informacyjnemu Uji ∈ I i przypisuje pewien rozkład prawdopodobieństwa na zbiorze {1, . . . , ν(Uji )}. Używanie takiej strategii polega na tym, że w momencie gdy gra dojdzie do zbioru informacyjnego Uji gracza i-tego, dokonuje on losowania swojego kolejnego ruchu, stosując rozkład prawdopodobieństwa przypisany temu zbiorowi przez zadaną strategię. Oczywiście ten zbiór strategii w ogólności jest istotnie mniejszy od zbioru wszystkich strategii zrandomizowanych, i równowaga, która istnieje na mocy twierdzenia Nasha, może wyjść poza ten zbiór. Jest na szczęście duża klasa gier, dla których można się ograniczyć do strategii postępowania. Są to gry z doskonałą pamięcią, tzn. takie, w których każdy z graczy pamięta wszystkie swoje dotychczasowe decyzje. Dla takich gier prawdziwe jest następujące twierdzenie: Twierdzenie 3.1 (Kuhn) W grach z doskonałą pamięcią zbiór strategii postępowania jest równy zbiorowi wszystkich strategii zrandomizowanych. Oczywistą konsekwencją tego twierdzenia będzie to, że dowolna gra z doskonałą pamięcią będzie miała równowagę w strategich postępowania. (Przykład tego, że dla gier bez tej własności równowaga może wyjść poza ten zbiór, pojawi się na ćwiczeniach). 3.1 Algorytmy szukania równowag w grach pozycyjnych Dziś opowiem o tym, w jaki sposób liczyć równowagi w grach w postaci ekstensywnej. Prawie całe moje rozważania (z jednym drobnym wyjątkiem) będą dotyczyć gier z doskonałą pamięcią, bądź wręcz podklas tej klasy gier. W przypadku dowolnych gier raczej trudno o algorytmy, które nie sprowadzałyby się do zamiany postaci ekstensywnej w strategiczną i liczenia równowag dla tej postaci. Zaczniemy od takich gier, dla których równowagi będzie można liczyć „ręcznie” – algorytm ich liczenia będzie na tyle prosty. 24 Definicja 3.4 Grą z pełną informacją nazwiemy grę pozycyjną, w której wszystkie zbiory informacyjne są jednoelementowe. Dla takich gier prawdziwe będzie twierdzenie: Twierdzenie 3.2 (Kuhn) W każdej grze z pełną informacją istnieje równowaga w strategiach czystych. (Najpierw przedstawią dowód tego twierdzenia, a potem na przykładzie zilustruję, o co w nim tak naprawdę chodziło (dowód jest indukcyjny, więc sprowadza się do rekurencyjnego algorytmu szukania tych równowag)). Dowód: Indukcja ze względu na liczbę wierzchołków w drzewie, nie będących liściami. Dla 1 wierzchołka oczywiście w grze jest tylko jeden gracz, więc strategia, która daje mu najlepszą wypłatę, jest też równowagą Nasha. Dalej, załóżmy, że każda gra posiadająca ¬ m wierzchołków ma równowagę w strategiach czystych. Niech nasza gra będzie opisana drzewem o m + 1 wierzchołkach. Rozważymy dwa przypadki: 1. Korzeń drzewa r jest pozycją natury. Niech w1 , . . . , wk oznaczają pozycje połączone łukiem bezpośrednio z korzeniem, a T1 , . . . , Tk – drzewa o korzeniach w1 , . . . , wk . Każde z tych drzew ma ¬ m wierzchołków, więć gra opisana każdym z tych drzew ma równowagę. Oznaczmy te równowagi przez s1 , . . . , sk . Wtedy s(v) = sj (v), jeśli v ∈ Tj jest równowagą w naszej wyjściowej grze. 2. Korzeń drzewa r jest pozycją gracza i. Oznaczenia, jak poprzednio, dodatkowo niech gli oznacza wypłatę gracza i w równowadze sl . Wtedy równowagę w grze wyjściowej (tej „dużej”) tworzymy następująco. Jeśli v ∈ Ti , to s(v) = si (v), natomiast s(r) wybiera tę z krawędzi wychodzących z korzenia l, dla której gli = maxj¬k gji . Uzasadnienie, dlaczego tak wybrane strategie tworzą równowagę, jest w obu przypadkach takie samo. Załóżmy, że to nie jest równowaga. Wtedy jednemu z graczy opłaca się odstąpić od jej grania. Jeśli nie jest to gracz, którego pozycją był korzeń, to odstępuje od równowagi w pozycji należącej do drzewa Tj . Wtedy jednak musiałoby się to wiązać także z poprawieniem wypłaty w grze z drzewem Tj , co jest sprzeczne z założeniem, że sj jest równowagą w tej grze. Podobnie w przypadku gracza, którego pozycją jest korzeń – jeśli odstąpił od równowagi właśnie w tej pozycji, to jego wypłata na pewno się zmniejszy (w ten sposób ją zdefiniowaliśmy, żeby się zmniejszyła). Jeśli odstąpi od równowagi w jakiejś innej pozycji, to możemy zastosować rozumowanie, które stosowaliśmy do innych graczy. Istotę tego dowodu możemy zilustrować na przykładzie. Przykład: Wracamy do gry z tabliczką czekolady z poprzedniego wykładu. Zaczynamy od samego dołu drzewa. Na 4. etapie Gracz 2. nie ma nic do wyboru. Przechodzimy jeden etap wcześniej. Tutaj Gracz 1. z możliwych zagrań wybiera te, które dają mu większą wypłatę. Na poniższym drzewie są one zaznaczone strzałkami. 25 Gracz 1 1 Gracz 2 2 3 4 5 (-1,1) Gracz 1 6 7 8 9 10 (1,-1) Gracz 2 14 15 16 (-1,1) 11 12 13 (1,-1) 17 18 (-1,1) (-1,1) (1,-1) 19 20 21 (-1,1) (-1,1) 22 23 24 (1,-1) (1,-1) (1,-1) Następnie przechodzimy krok wcześniej. Na tym kroku decyzje podejmuje Gracz 2., więc wybiera te krawędzie, dla których jego wypłata jest największa (w przypadku krawędzi wychodzących z wierzchołka 2, zaznaczyłem wszystkie, bo dla Gracza 2. nie ma różnicy, którą z nich wybierze): Gracz 1 1 Gracz 2 2 3 4 5 (-1,1) Gracz 1 6 7 8 9 (1,-1) Gracz 2 14 15 16 (-1,1) 10 11 12 (1,-1) 17 18 (-1,1) (-1,1) 19 13 (1,-1) 20 21 (-1,1) (-1,1) 22 23 24 (1,-1) (1,-1) (1,-1) No i dochodzimy do pierwszego kroku – na nim decyzję podejmuje Gracz 1., i ma do wyboru wierzchołek 2, w którym, jeśli tylko na dalszych etapach będzie postępował optymalnie (czyli zgodnie ze strzałkami), zapewni sobie wypłatę 1, oraz trzy wierzchołki, w których przeciwnik może sobie zapewnić 1. Wybiera oczywiście 2. wierzchołek: 26 Gracz 1 1 Gracz 2 2 3 4 5 (-1,1) Gracz 1 6 7 8 9 (1,-1) Gracz 2 14 15 16 (-1,1) 10 11 12 (1,-1) 17 18 (-1,1) (-1,1) 19 13 (1,-1) 20 21 (-1,1) (-1,1) 22 23 24 (1,-1) (1,-1) (1,-1) Uwaga 3.1 Metodę, którą zastosowaliśmy w dowodzie twierdzenia Kuhna (oraz w powyższym przykładzie), nazywamy metodą indukcji wstecznej. To, co przedstawiłem, to metoda indukcji wstecznej zastosowana do gier z pełną informacją. Tak naprawdę pewne uogólnienie tego algorytmu pozwala na uproszczenie obliczania równowag w bardziej skomplikowanych grach. Zaczniemy od zaprezentowania algorytmu na przykładzie konkretnej gry. Potem powiemy sobie, dla jakich gier taki algorytm będzie można stosować względnie efektywnie. U11 Gracz 1 L U12 Gracz 2 L P (0,0) U21 Gracz 1 L Gracz 2 P U22 L (2,0) P P L P (0,4) (0,2) (4,0) 27 L P (3,3) (-4,4) Jeśli chcielibyśmy zapisać tę grę w postaci strategicznej, dostalibyśmy następującą macierz par wypłat: LL LP PL PP LL (2, 0) (0, 4) (0, 0) (0, 0) LP (0, 2) (4, 0) (0, 0) (0, 0) P L (3, 3) (3, 3) (−4, 4) (−4, 4) P P (3, 3) (3, 3) (−4, 4) (−4, 4) Nietrudno zauważyć, że w tej grze nie ma równowagi w strategiach czystych. Żadna ze strategii nie jest także zdominowana. Jeśli chcielibyśmy liczyć równowagę dla gry w postaci strategicznej, czekałoby na nas mnóstwo pracy. Okazuje się jednak, że tutaj możemy zastosować pewien wariant indukcji wstecznej. Mianowicie oddzielnie będziemy rozważać każdą podgrę tej gry opisaną przez poddrzewo, którego korzeń jest jednoelementowym zbiorem informacyjnym. Będziemy to robić tak, jak w przypadku indukcji wstecznej dla gier z pełną informacją, zaczynając od dołu naszego drzewa, następnie przechodząc coraz bliżej korzenia. Zaczynamy więc od gry „na dole” – o korzeniu w zbiorze informacyjnym U21 . Ta gra jest następującej postaci: Gracz 1 L Gracz 2 L (2,0) P P L P (0,4) (0,2) (4,0) Możemy ją teraz zapisać w postaci strategicznej: L P L (2, 0) (0, 4) P (0, 2) (4, 0) Bez trudu zauważamy, że ta gra nie ma równowagi w strategiach czystych. Równowagi w strategiach mieszanych szukamy znaną nam z ćwiczeń metodą wyrównywania wartości oczekiwanej. Mamy: 2σ1 = 4σ2 oraz 2µ2 = 4µ1 Rozwiązaniami tych równań są oczywiście strategie µ = ( 31 , 23 ) oraz σ = ( 23 , 13 ). Wypłatami w tej równowadze są ( 34 , 34 ). Te wypłaty są nam potrzebne, bo teraz przez te wypłaty zastępujemy całą podgrę, którą rozważaliśmy, i przechodzimy piętro wyżej, tworząc grę: 28 Gracz 1 L Gracz 2 L ( 34 , 43 ) P P L P (0,0) (3,3) (-4,4) I znowu dla tej gry zapisujemy jej postać strategiczną: L P L (0, 0) , P (3, 3) (−4, 4) ( 34 , 34 ) obliczamy równowagę przez wyrównywanie wartości oczekiwanych: 4 σ1 = 3σ1 − 4σ2 3 4 µ1 + 3µ2 = 4µ2, 3 12 5 , 17 ). dostając µ = ( 73 , 47 ) i σ = ( 17 W ten sposób, ostatecznie, dostaliśmy równowagę w strategiach postępowania postaci: • Strategia gracza 1. w zbiorze U11 : µ11 = ( 73 , 47 ); w zbiorze U21 : µ12 = ( 13 , 23 ) 12 5 , 17 ); w zbiorze U22 : σ22 = ( 23 , 31 ). • Strategia gracza 2. w zbiorze U12 : σ12 = ( 17 Ogólnie takim algorytmem będziemy mogli rozwiązywać gry, w których duża liczba zbiorów informacyjnych jest jednoelementowa (niekoniecznie będą to gry z doskonałą pamięcią, choć przykład rozważany powyżej był taką grą). Poprawność takiej metody dla tej większej klasy gier uzasadnia się zupełnie tak samo, jak w przypadku indukcji wstecznej dla gier z pełną informacją. Na tym kończą się algorytmy, które można stosować efektywnie przy obliczeniach na kartce papieru albo tablicy. Nie kończą się natomiast algorytmy, z których praktycznie korzysta się przy szukaniu rozwiązań dla gier w postaci ekstensywnej. Dlaczego? Otóż nawet dla gier z doskonałą pamięcią bardzo często się zdarza, że jednoelementowych zbiorów informacyjnych prawie nie ma (na przykład korzeń drzewa jest jedynym takim zbiorem). W takim wypadku sprowadzenie gry w postaci ekstensywnej do postaci strategicznej oznaczałoby stworzenie gigantycznych macierzy wypłat, bo liczba strategii czystych graczy rośnie wykładniczo wraz z powiększaniem się (liniowo) drzewa gry, a to oznacza, że niezależnie od tego, jak efektywny byłby algorytm obliczania równowag, w ostatecznym rozrachunku byłyby one liczone bardzo wolno. W związku z tym do maszynowego liczenia równowag w dwuosobowych grach o doskonałej pamięci wymyślono tzw. postać sekwencyjną. (Na czym będzie polegała postać sekwencyjna będę podawał na przykładzie gry, dla której przed chwilą liczyliśmy równowagi). Postać sekwencyjna gry: • Zamiast „pełnych strategii” rozważamy sekwencje kolejnych ruchów graczy. (W przykładzie powyżej możliwe są następujące sekwencje ruchów pierwszego gracza: 29 ∅, L, P, LL, LP oraz (takie same) następujące drugiego: ∅, L, P, LL, LP). (Przewagą sekwencji ruchów nad strategiami czystymi jest to, że ich liczba rośnie liniowo wraz z rozrostem drzewa (w sumie liczba sekwencji obu graczy nie przekracza liczby wierzchołków w drzewie plus jeden)). • W konsekwencji inne są też macierze wypłat graczy (w macierzy podajemy wypłaty graczy po wykonaniu poszczególnych sekwencji ruchów, w związku z tym większość elementów macierzy to zera, a niezerowe mogą być wyłącznie te elementy, dla których odpowiednie sekwencje ruchów doprowadzają grę do liści drzewa gry). Dla naszej gry macierze będą postaci (pogrubioną czcionką zaznaczyłem rzeczywiste wypłaty, odpowiadające liściom drzewa postaci ekstensywnej): A= 0 0 0 0 0 0 0 0 0 0 0 0 0 3 −4 0 0 0 0 2 0 0 0 0 4 B= 0 0 0 0 0 0 0 3 0 0 0 0 4 0 0 0 0 0 0 2 0 0 0 4 0 . Jak nietrudno zauważyć, tych pogrubionych wartości jest w każdej z macierzy dokładnie tyle, ile było liści w drzewie, i tak będzie zawsze. W macierzy wypłat postaci strategicznej każda z tych wypłat pojawiała się wiele razy, jak się okazuje – niepotrzebnie. • Zamiast strategii mieszanych w grze w postaci strategicznej tu będziemy rozważali plany x, y, czyli wektory, których kolejne elementy będą mówiły, z jakim prawdopodobieństwem były wykonane poszczególne sekwencje ruchów. Oczywiście, podobnie jak strategie mieszane3 , plany też muszą spełniać pewne własności, wynikające z tego, że np. sekwencja ruchów LP może być wykonana tylko wtedy, gdy wcześniej zostały wykonane sekwencje ∅ oraz L. Dla naszej gry plany x = (x1 , . . . , x5 ) oraz y = (y1 , . . . , y5 ) muszą być nieujemne i spełniać układ równań: x1 = 1 x2 + x3 = x1 x4 + x5 = x2 . y1 = 1 y2 + y3 = y1 y4 + y5 = y2 W ogólności będą musiały spełniać układy równań liniowych Ex = e i F y = f z pewnymi macierzami składającymi się z zer oraz plus i minus jedynek, oraz kolumnami wyrazów wolnych postaci jedynka na pierwszym miejscu, a potem same zera. (Oczywiście znając plan dla danego gracza, bez problemu jesteśmy w stanie zamienić go na odpowiadającą mu strategię postępowania). • Wypłata gracza 1., gdy gracze stosują plany x i y jest bardzo łatwa do policzenia, bo równa xT Ay, podobnie wypłata gracza 2., xT By. Jeśli teraz chcemy znaleźć równowagę Nasha dla naszej gry, musimy zapisać warunki Nasha, tzn. plany x i y będą w równowadze, jeśli wypłata ze stosowania dowolnego 3 Które musiały być rozkładami prawdopodobieństwa, czyli mieć elementy nieujemne i sumujące się do jedynki. 30 innego planu x0 przeciwko y będzie nie lepsza niż xT Ay (i podobnie dla drugiego gracza). To możemy zapisać następująco: x0T Ay ¬ xT Ay dla dowolnego planu x0 gracza 1. Teraz możemy zastosować pewien trick – ponieważ e jest wektorem z jedynką na pierwszym miejscu, a dalej zerami, a dla dowolnego planu (czyli także dla x0 ) Ex0 = e, to dla dowolnego wektora u, x0T E T u = uT Ex0 = uT e = u1 . Jeśli teraz za u1 przyjmiemy xT Ay, dostaniemy xT Ay = xT E T u (3.1) oraz x0T Ay ¬ x0T E T u dla dowolnego planu x0 gracza 1. Wzmacniając warunek powyżej, dostajemy: Ay ¬ E T u. (3.2) Okazuje się, że warunki (3.1) i (3.2) razem z warunkami na to, że x jest planem gracza 1., oraz podobnymi warunkami dla gracza 2. wystarczają do obliczenia pary planów w równowadze Nasha. Dokładniej, prawdziwe będzie twierdzenie: Twierdzenie 3.3 Jeśli istnieją wektory u, v, takie że Ex = e, x ­ 0, E T u ­ Ay, xT (E T u − Ay) = 0, F x = f, y ­ 0, F T v ­ B T x, y T (F T v − B T x) = 0, to plany x i y odpowiadają strategiom postępowania w równowadze Nasha w grze z doskonałą pamięcią zdefiniowanej w postaci sekwencyjnej przy pomocy macierzy A, B oraz E i F. To wszystko, co napisałem przed twierdzeniem, jest tylko wyprowadzeniem implikacji w jedną stronę w powyższym twierdzeniu (pokazaniem, że plany spełniające powyższe warunki muszą odpowiadać pewnej równowadze Nasha). Dowód w przeciwną stronę będzie wymagał skorzystania z twierdzenia o dualności dla programowania liniowego, ale poza tym nie będzie wymagał niczego, czego już nie napisałem powyżej. Jak być może niektórzy zauważają, postać, do której sprowadziliśmy problem szukania równowag, przypomina tę, którą wykorzystywaliśmy do szukania równowag w grach dwumacierzowych – tutaj to również jest problem komplementarności liniowej. Tym razem w trochę ogólniejszej postaci (wektor jedynek, który pojawiał się w oryginalnym problemie, tutaj jest zastąpiony dowolnym wektorem u (v)), lecz także dla tej postaci istnieje pewna modyfikacja omawianego wcześniej algorytmu Lemke-Howsona (tzw. algorytm Lemkego), przy pomocy której można (na ogół dosyć szybko) znaleźć rozwiązanie. 31