Wartość Shapleya w grach koalicyjnych Dawid Migacz, i LO w Tarnowie 1 Wprowadzenie W zasadzie każdą sytuację występującą na świecie można wymodelować matematycznie. W przypadku sytuacji, w których kilka podmiotów może odnieść różne korzyści w zależności od tego, kto z kim współpracuje, można użyć modelu gry koalicyjnej. Aby można było mówić o grze koalicyjnej, należy zdefiniować zbiór graczy N oraz funkcję v : 2 N R, która każdemu podzbiorowi zbioru graczy przyporządkowuje liczbę stanowiącą o wartości uzyskanych korzyści. Przykład 1 Trzech graczy (A, B i C) ma odpowiednio 1, 2 i 3 dolary. Bank ogłosił promocję polegającą na tym, że pierwsza osoba, która przyniesie dowolną kwotę, otrzyma jej kwadrat. Funkcja v przyjmuje wówczas wartości: {A} {B} {C} {A,B} {B,C} {A,C} {A,B,C} 0 1 4 9 9 25 16 36 Dogodną własnością gry koalicyjnej jest superaddytywność oznaczająca, że graczom opłaca się łączyć w koalicje: S, T N : S T = v(s T ) v(s) + v(t ). Wobec takiego warunku można oczekiwać, że wszyscy gracze połączą się w koalicję. Powstaje wtedy problem, jak uczestnicy koalicji zawierającej wszystkich graczy (zwanej wielką koalicją) mają podzielić między siebie uzyskaną korzyść. Jego rozwiązaniem jest wartość Shapleya. Trzonem jej definicji jest pojęcie wkładu marginalnego. Wkładem marginalnym gracza i do koalicji S nazywamy wartość v(s {i}) v(s). Wartość Shapleya dla danego gracza i jest określona wzorem S N\{i} S!(n S 1)! (v(s i) v(s)), który oznacza, że uśredniamy wkłady marginalne tego gracza, licząc po wszystkich koalicjach niezawierających tego gracza, z uwzględnieniem kolejności dołączania graczy do koalicji. 1
Przykład 2 (obliczanie wartości Shapleya) Teraz obliczona zostanie wartość Shapleya dla gracza B z przykładu 1. Koalicja bez gracza B S!(n S 1)! S!(n S 1)! (v(s i) v(s)) Wkład marginalny 4 1/3 4/3 {A} 8 1/6 4/3 {C} 16 1/6 8/3 {A, C} 20 1/3 20/3 Wartość Shapleya tego gracza jest równa sumie wartości ostatniej kolumny dla gracza B jest ona równa 12. Oznacza to, że gdyby gracze zdecydowali się współpracować w tej grze, z otrzymanych od banku 36 dolarów 12 dolarów powinien uzyskać gracz B. 2 Wartość Shapleya w pewnej szczególnej grze 2.1 Opis gry Wyobraźmy sobie spółkę, w której jest n akcjonariuszy. Wówczas N = {a 1, a 2,..., a i,..., a n }, przy czym gracz a i posiada i akcji. Do podjęcia pewnej decyzji wymagane jest m akcji (przy czym liczba m jest większa od połowy liczby wszystkich akcji). Funkcja v przyporządkowuje koalicjom posiadającym co najmniej m akcji wartość 1, a pozostałym 0. Wartość Shapleya każdego gracza będzie w tym przykładzie nie tyle wyznaczać sprawiedliwy podział korzyści, co odpowiadać sile głosu każdego gracza. Aby móc liczyć wartości Shapleya dla większej liczby graczy, napisałem program w języku C++, który opiera swoje działanie na algorytmie naiwnym, sprawdzającym wkład marginalny dla każdej istniejącej koalicji. Pozwolił on wygenerować wykresy wartości Shapleya dla danego gracza w zależności od progu decyzyjności m i liczby akcjonariuszy. Wygenerowane zostały wykresy dla 6, 10 i 15 akcjonariuszy. Na osi poziomej widoczna jest wartość progowa m, a każda linia wykresu odpowiada graczowi z określoną liczbą akcji, według legendy. 2
Dla n = 6 Dla n = 10 3
Dla n = 15 2.2 Obserwacje Początkowo wykresy wartości Shapleya dla poszczególnych graczy utrzymują się na stałym poziomie i są proporcjonalne do liczby posiadanych akcji. W miarę wzrostu liczby graczy zaczynają być dostrzegalne pewne prawidłowości. W połowie wykresu pojawia się pierwsze załamanie. Wszystkie takie załamania występują najpierw u ostatniego gracza, potem kolejno u pozostałych. Wykres ulega nieznacznemu obniżeniu, a następnie podniesieniu. Kolejne obniżenia obejmują kolejnych graczy w takim samym tempie, w jakim rośnie próg m. Natomiast podniesienie wykresu następujące po obniżeniu propaguje się dwa razy wolniej. W końcowej części wykresu widoczny jest nagły wzrost wartości Shapleya dla kolejnych akcjonariuszy. Zaczynają one przyjmować równe wartości. Jednocześnie ostatnia część wykresu wyraźnie opada. Co więcej, dla progu mniejszego o 1 od sumy wszystkich akcji gracz pierwszy ma wartość Shapleya równą 0. Nie zdarza się natomiast sytuacja, w której gracz miałby niższą wartość Shapleya niż gracz o niższym indeksie od niego. 2.3 Wnioski Wzrost wartości Shapleya widoczny w końcowej części wykresów oraz ich pokrywanie się są związane z uzyskiwaniem przez kolejnych graczy prawa weta (gdy przynależność danego gracza do koalicji jest warunkiem koniecznym przekroczenia przez nią progu). Spadek wartości Shapleya dla gracza pierwszego do zera jest zgodny z intuicją: jedyna koalicja umożliwiająca uzyskanie dokładnie takiej liczby akcji to zbiór składający się ze 4
wszystkich graczy z wyjątkiem pierwszego, wobec czego gracz pierwszy jest graczem całkowicie nieistotnym. Istnienia fali obniżeń i podniesień wykresu, zaczynającej się w jego połowie, nie udało mi się dotychczas wyjaśnić. Najprawdopodobniej w miarę wzrostu liczby akcjonariuszy w modelu wykresy stają się bardziej gładkie. Można podejrzewać, że jedynymi widocznymi odstępstwami od gładkości wykresów będą opisane cztery rodzaje załamań. 3 Podsumowanie Teoria gier umożliwia modelowanie rozmaitych sytuacji występujących w relacjach międzyludzkich od najprostszych po bardzo złożone, od osobistych do biznesowych i politycznych. Jednocześnie ze względu na wielość rozpatrywanych rodzajów gier istnieje wiele problemów otwartych; nie udało mi się na przykład dotrzeć do żadnej pracy opisującej zachowanie wartości Shapleya przy zwiększaniu się liczby graczy. Przeprowadzone przeze mnie doświadczenie polegające na wyznaczeniu wartości Shapleya w opisanej grze wykazało regularność zmian tej wartości przy wzroście liczby koalicjantów. Podobne badania można prowadzić także dla innych gier. Myślę, że powyższa symulacja może zainspirować innych do dalszych badań w tej dziedzinie. 5