Wstęp do projektowania mechanizmów Piotr Sankowski Uniwersytet Warszawski Warszawa 4.03.2011 - p. 1/43
Plan wykładu Wstęp Wybór społeczny Paradox Condorcet a Twierdzenie Arrow a Mechanizmy pieniężne Mechanizmy zgodne motywacyjnie Aukcja Vickrey-Clarke-Groves Reguła opłat Clarke a - p. 2/43
Wstęp Dotychczas rozważaliśmy przypadki gdzie mamy dany mechanizm, np. grę, i zastanawialiśmy się jakie rozwiazanie zbuduja racjonalni/strategiczni gracze. Teraz będziemy się zastanawiać jak skonstruować grę stworzyć mechanizm, tak aby gracze chcieli tworzyć dobre rozwiazania. - p. 3/43
Wstęp Ten wykład (i poprzedni) sa na podstawie ksiażki: Algorithmic Game Theory Edited by: Noam Nisan Tim Roughgarden Éva Tardos Vijay V. Vazirani - p. 4/43
Wstęp Tematem dzisiejszego wykładu jest przeglad podstaw projektowania mechanizmów. Celem tych mechanizmów najlepiej rozważać używajac pojęcia wyboru społecznego. Wybór społeczny to zbieranie preferencji poszczególnych jednostek aby wybrać pojedyncza decyzję. Projektując mechanizmy zakładamy przypadek strategiczny, tzn. zakładamy, że każdy gracz zachowuje się racjonalnie w gro-teoretycznym sensie. - p. 5/43
Wstęp Abstrakcja łaczenia wyborów może być postrzegana jako uogólnienie scenariuszy z ekonomii, czy polityki: wybory każdy uczestnik ma swoje własne preferencje co do kandydatów, a wynikiem jest wspólny wybór; rynki każdy ma preferencje co do tego gdzie i co kupić, a wynikiem jest relokacja dóbr i pieniędzy; aukcje rynek z jednym sprzedajacym, reguły wyznaczaja zwycięzców; polityka rzadowa każdy obywatel ma swoje preferencje co powinien zrobić rzad, a on ma podjać decyzję, która dotyczy wszystkich. - p. 6/43
Wstęp Motywacja dla studiowania projektowania mechanizmów sa następujace scenariusze: Ekonomia w Informatyce niech każdy wyobrazi sobie swój ulubiony problem algorytmiczny, np. rozsyłanie wiadomości, czy przydział pamięci. Problem się komplikuje gdy zasoby sa w posiadaniu samolubnych graczy. Te problemy nazywamy projektowanie algorytmicznych mechanizmów (Algorithmic Mechanism Design). - p. 7/43
Wstęp Informatyka w Ekonomii rozważmy dowolna interakcje ekonomiczna, np. jakiś rynek, aukcje, łańcuch dostawców. W dzisiejszych czasach te interakcje często implementowane sa przy pomocy internetu. Takie implementacje pozwalaja na wprowadzenie bardzo wyrafinowanych i skomplikowanych systemów. Te problemy nazywane s a projektowanie elektronicznych rynków (Electronic Market Design). - p. 8/43
Wybór społeczny Wyobraźmy sobie wybory, w których bierze udział dwóch kandydatów, a każdy wyborca woli jednego z nich. Jeżeli chcemy zgrupować te preferencje, to intuicyjnie głos większościowy jest dobrym wyborem. Co jednak mamy zrobić w przypadku, gdy mamy trzech kandydatów? W 1785 Marquis de Condorcet zauważył, że zastosowanie głosowania większościowego w przypadku trzech kandydatów jest problematyczne. - p. 9/43
Wybór społeczny Rozważmy trzech kandydatów a,b i c, oraz trzech wyborców o następujacych preferencjach: (1) a 1 b 1 c (2) b 2 c 2 a (3) c 3 a 3 b W tym przypadku większość woli a b c a co jest niespójne. W szczególności niezależnie od tego kogo wybierzemy większość będzie go chciała zmienić wybór jest skomplikowany. - p. 10/43
Wybór społeczny Istnieje wiele metod głosowania metod wyboru jednej z alternatyw. Zazwyczaj problem sprawiaja gracze strategiczni. Załóżmy, że pewien wyborca ma preferencje a i b i c, ale wie on że a nie wygra, bo wszyscy go nienawidza. Taki wyborca może strategicznie zagłosować na b zamiast na a, tak aby b był wybrany zamiast c. - p. 11/43
Wybór społeczny Takie strategie sa problematyczne, bo nie sa przejrzyste, zależa od głosów innych, oraz skomplikowane. Pokażemy, że w przypadku takich abstrakcyjnych wyborów nie jesteśmy wstanie zabezpieczyć się przed takimi strategicznymi manipulacjami. Udowodnimy twierdzenia Arrow a, które mówi, że odporne wybory sa trywialne. - p. 12/43
Twierdzenie Arrow a Będziemy rozważać zbiór A możliwych alternatyw, oraz zbiór n graczy I. Niech L będzie zbiorem liniowych porzadków na A. W szczególności każde L jest antysymetryczne i przechodnie. Preferencje każdego głosujacego zadane sa i L, gdzie a i b oznacza, że i woli a od b. - p. 13/43
Twierdzenie Arrow a Definicja 1 Funkcję F : L n L nazywamy funkcją społecznych preferencji. Funkcję F : L n A nazywamy funkcją wyboru społecznego. Innymi słowy funkcja społecznych preferencji agreguje preferencje wszystkich do jednej wspólnej. Funkcja wyboru społecznego na podstawie preferencji wybiera jednego gracza. - p. 14/43
Twierdzenie Arrow a Definicja 2 Funkcja preferencji społecznych F jest jednogłośna jeżeli dla każdego L zachodzi F(,..., ) =. Innymi słowy jeżeli wszyscy głosujacy maja te same preferencje to społeczne preferencja im odpowiada. - p. 15/43
Twierdzenie Arrow a Definicja 3 Głosujący i jest dyktatorem dla społecznej funkcji preferencji F jeżeli dla każdego 1,..., n L mamy F( 1,..., n ) = i. Wybór społeczny jest taki sam jak wybór dyktatora i ignoruje wszystkich innych wyborców. Definicja 4 Funkcja F nie jest dyktatorska jeżeli nie ma dla niej żadnego dyktatora. - p. 16/43
Twierdzenie Arrow a Definicja 5 Funkcja preferencji społecznych spełnia warunek niezależności od nieistotnych alternatyw jeżeli, dla każdego a, b A oraz każdego 1,..., n, 1,..., n L, z tego, że a i b a i b dla każdego i wynika, że a b a b, gdzie = F( 1,..., n ) oraz = F( 1,..., n). Innymi słowy preferencje społeczna między a i b zależy tylko od preferencji głosujacych między a i b, a nie powinna zależeć od preferencji co do c. - p. 17/43
Twierdzenie Arrow a Definicja 6 Funkcja preferencji społecznych F jest jednogłośna dla par jeżeli dla każdego a, b, oraz 1,..., n L takich, że a i b dla każdego i, zachodzi a b, gdzie = F( 1,..., n ). Wniosek 7 Jeżeli F jest jednogłośna i niezależna od nieistotnych alternatyw to F jest też jednogłośna dla par. Dowód na ćwiczeniach. - p. 18/43
Twierdzenie Arrow a Niech R oznacza porzadek odwrotny do. Wniosek 8 Jeżeli F jest jednogłośna oraz niezależna od nieistotnych alternatyw to dla każdego a, b oraz 1,..., n L zachodzi a b b R R a, gdzie = F( 1,..., n ) i R R = F( R 1,..., R n). Dowód na ćwiczeniach. - p. 19/43
Twierdzenie Arrow a Twierdzenie 9 (Arrow) Każda funkcja preferencji społecznych określona na zbiorze więcej niż dwóch kandydatów, która jest jednogłośna oraz jest niezależna od nieistotnych alternatyw, posiada dyktatora. - p. 20/43
Twierdzenie Arrow a Ustalmy F spełniajace założenia twierdzenia. Lemat 10 (Neutralność na parach) Niech 1,..., n oraz 1,..., n będą dwoma zbiorami preferencji graczy takimi, że dla każdego i zachodzi a i b c i d, wtedy a c d, gdzie = F( 1,..., n ) oraz = F( 1,..., n). Jeżeli a = c oraz b = d to teza lematu wynika z niezależności od nieistotnych alternatyw. - p. 21/43
Twierdzenie Arrow a Jeżeli a = d oraz c = b to stosujemy niezależność od nieistotnych alternatyw dla 1,..., n oraz 1 R,..., R n. Otrzymujemy wtedy, że a b a R R R R = F( R 1,..., R n ). b, gdzie Stosujac Wniosek 8 otrzymujemy a b a R R b b a. Możemy teraz założyć, że c = b. - p. 22/43
Twierdzenie Arrow a Pokażemy lemat przy założeniu, że a b. W przeciwnym przypadku zastosujemy lemat do odwróconych porzadków 1,..., n oraz 1,..., n, a następnie Wniosek 8 do R R oraz R R. Połaczmy teraz i oraz i w jeden porz adek i poprzez umieszczenie c od razu powyżej a (o ile nie c = a) oraz d od razu poniżej b (o ile nie d = b). - p. 23/43
Twierdzenie Arrow a W ten sposób zachowujemy porzadek na parach (a, b) oraz (c, d). Natomiast z jednogłośności na parach otrzymujemy c a oraz b d, dla = F( 1,..., n ). Z niezależności od nieistotnych alternatyw otrzymujemy także, a b, bo a b. Z przechodniości natomiast mamy c d, a ponownie z nieistotnych alternatyw otrzymujemy, że c d. - p. 24/43
Twierdzenie Arrow a Przejdźmy teraz do dowodu twierdzenia. Weźmy a = b A oraz dla każdego 0 i n niech π i = ( i 1,..., i n) oznacza zbiór preferencji agentów taki, że a i j b j i. Z jednogłośności na parach mamy, że: w F(π 0 ) zachodzi b 0 a, w F(π n ) zachodzi a n b. Dla pewnego i w F(π i 1 ) zachodzi b i 1 a natomiast w F(π i ) zachodzi a i b. - p. 25/43
Twierdzenie Arrow a Pokażemy teraz, że i jest dyktatorem. Czyli, że dla dowolnych c = d A, jeżeli c i d to c d, gdzie = F( 1,..., n ). Weźmy pewna alternatywę e różna od c oraz d. Teraz dla i < i przesuńmy e na dół w i, dla i > i przesuńmy e na szczyt i, dla i przesuńmy e tak aby c i e i. - p. 26/43
Twierdzenie Arrow a Z niezależności od nieistotnych alternatyw nie zmieniliśmy porzadku między c i d w. Zauważmy teraz, że preferencje graczy co do (c, e) w 1,..., n sa identyczne jak ich preferencje co do (a, b) w π i, preferencje graczy co do (d, e) w 1,..., n sa identyczne jak ich preferencje co do (a, b) w π i 1. - p. 27/43
Twierdzenie Arrow a Z neutralności na parach otrzymujemy, że: c e a i b, d e a i 1 b. Wiemy, że b i 1 a oraz a i b. Dlatego c e oraz e d, i z przechodniości c d. Założyliśmy jednak tylko, że c i d dlatego i jest dyktatorem. - p. 28/43
Twierdzenie G-S Definicja 11 Funkcja wyboru społecznego f może być strategicznie zmanipulowana przez gracza i jeżeli dla 1,..., n L oraz i L dla których a i a zachodzi a = f( 1,..., i,..., n ), a a = f( 1,..., i,..., n). Innymi słowy, gdy i woli a od a i może tak podać swoje preferencje aby został wybrany a zamiast a. Definicja 12 Funkcja jest zgodna motywacyjnie jeżeli nie może być zmanipulowana. - p. 29/43
Twierdzenie G-S Definicja 13 Głosujący i jest dyktatorem w funkcji wyboru społecznego f jeżeli dla każdych 1,..., n L, dla każdych a = b, a i b f( 1,..., n ) = a. Definicja 14 Funkcja f jest dyktatorska jeżeli ma dyktatora. Twierdzenie 15 (Gibbard-Satterthwaite) Niech f będzie zgodną motywacyjnie funkcją wyboru społecznego na A, gdzie A 3, to f jest dyktatorska. - p. 30/43
Mechanizmy pieniężne W funkcjach wyboru społecznego modelowaliśmy preferencje głosujacych porzadkiem na alternatywach. Nie modelowaliśmy jednak tego jak bardzo wyborcy wola różne wyniki. Pieniadze moga być użyte do ilościowego zmierzenia tych preferencji. Co więcej pieniadze moga być przekazywane między graczami. To pozwoli nam obejść ograniczenia stawiane przez te twierdzenia. - p. 31/43
Mechanizmy pieniężne Będziemy rozważać zbiór alternatyw A oraz zbiór n graczy I. Preferencje gracza i zadane sa teraz funkcją wartościującą v i : A R, gdzie v i (a) oznacza wartość jaka przypisuje i wynikowi a. Wartość ta wyrażamy w pewnej walucie i jeżeli i otrzyma m jej jednostek to jego użyteczność dla niego wynosi u i = v i (a)+m. Użyteczność jest abstrakcj a tego co gracz oczekuje i co chce zmaksymalizować. - p. 32/43
Zgoda motywacyjna W świecie z pieniędzmi nasz mechanizm nie tylko określa wynikowa alternatywę, ale także będzie wyznaczał opłaty jakie maja ponieść poszczególni gracze. Preferencje gracza i oznaczamy funkcja v i V i, gdzie V i R A to publicznie znany zbiór możliwych preferencji gracza i. Będziemy używać standardowej notacji: v i = (v 1,..., v i 1, v i+1,..., v n ) V i = V 1 V i 1 V i+1 V n. - p. 33/43
Zgoda motywacyjna Definicja 16 Mechanizmem nazwiemy funkcję wyboru społecznego f : V 1 V n A razem z funkcjami opłat p 1,..., p n, gdzie p i :: V 1 V n R. Definicja 17 Mechanizm ( f, p 1,..., p n ) nazywamy zgodnym motywacyjnie jeżeli dla każdego gracza i, każdych v 1 V 1,..., v n V n oraz v i V i, gdy a = f(v i, v i ) i a = f(v i, v i) zachodzi: v i (a) p i (v i, v i ) v i (a ) p i (v i, v i ). Także prawdomównym, czy strategicznie odpornym. - p. 34/43
Mechanizm VCG Społeczna wartość alternatywy a A to suma wartościowań wszystkich graczy dla tej alternatywy U(a) = i v i (a). Definicja 18 Mechanizm( f, p 1,..., p n ) nazywamy mechanizmem Vickrey-Clarke-Groves (VCG) jeżeli: f(v 1,..., v n ) argmax a A U(a), dla pewnych funkcji h 1,..., h n gdzie h i : V i R oraz dla każdych v 1 V 1,..., v n V n zachodzi: p i (v 1,..., v n ) = h i (v i ) j =i v j ( f(v 1,..., v n )). - p. 35/43
Mechanizm VCG Głównym pomysłem VCG jest to, że każdemu graczowi płacimy j =i v j ( f(v 1,..., v n )), czyli tyle ile warty jest wynik dla pozostałych graczy. Kiedy dodamy ten wyraz do jego własnego wartościowania v i ( f(v 1,..., v n )) otrzymujemy dokładnie społeczna wartość. Innymi słowy mechanizm ten identyfikuje cele poszczególnych graczy z celem maksymalizowania wartości społecznej. Natomiast funkcja h i nie zależy od tego co mówi gracz i z jego punktu widzenie jest to stała. - p. 36/43
Mechanizm VCG Twierdzenie 19 (Vickrey-Clarke-Groves) Każdy mechanizm VCG jest zgodny motywacyjnie. - p. 37/43
Mechanizm VCG Ustalmy i, v i, v i oraz v i. Niech a = f(v i, v i ) oraz a = f(v i, v i). Użyteczność dla i zadeklarowania v i wynosi: v i (a)+ j =i v j (a) h i (v i ), natomiast z zadeklarowania v i wynosi: v i (a )+ j =i v j (a ) h i (v i ). - p. 38/43
Mechanizm VCG Ponieważ a = f(v i, v i maksymalizuje wartość społeczna po wszystkich alternatywach, to: v i (a)+ j =i v j (a) v i (a )+ j =i v j (a ). Odejmujac od obydwu stron h i (v i ) otrzymujemy: v i (a)+ j =i v i (a )+ j =i v j (a) h i (v i ) v j (a ) h i (v i ). - p. 39/43
Reguła opłat Clarke a Pozostaje nam wybranie odpowiednich funkcji h i. Proste rozwiazanie to wzięcie h i = 0, problem jest tylko taki, że mechanizm wtedy płaci wszystkim bardzo dużo. Chcielibyśmy aby gracze nie tracili w wyniku wzięcia udziału u i 0. Oraz nie chcemy graczom nigdy płacić. - p. 40/43
Reguła opłat Clarke a Definicja 20 Mechanizm jest indywidualnie racjonalny jeżeli gwarantuje, że każdy gracz będzie miał dodatnią użyteczność: v i ( f(v 1,..., v n )) p i (v 1,..., v n ) 0. Definicja 21 Mechanizm nie robi pozytywnych transferów jeżeli żadnemu graczowi nie płaci: p i (v 1,..., v n ) 0. - p. 41/43
Reguła opłat Clarke a Definicja 22 (Reguła opłat Clarke a) Funkcje: h i (v i ) = max b A j =i v j (b), nazywamy opłatami Clarke a. Twierdzenie 23 Mechanizm VCG z opłatami Clarke a: nie robi pozytywnych transferów, jeżeli v i (a) 0 dla wszystkich v i V i oraz a A to także jest indywidualnie racjonalny. - p. 42/43
Reguła opłat Clarke a Niech a = f(v 1,..., v n ) maksymalizuje U(a) = j v j (a) oraz niech b maksymalizuje j =i v j (b), wtedy: PT: p i (v 1,..., v n ) = j =i v j (b) j =i v j (a) 0. IR: u i = v i (a)+ j =i v i (a)+ j =i j v j (a) j =i v j (a) v i (v) j =i v j (a) j v j (b) 0. v j (b) v j (b) = - p. 43/43