BiFC-Wykład5

Transkrypt

BiFC-Wykład5
ELEMENTY TEORII GIER
Świat nas otaczający pełen jest konfliktów i rywalizacji. Można wymienić liczne przykłady
sytuacji decyzyjnych, między innymi: wojny, kampanie polityczne, kampanie reklamowe i
marketingowe rywalizujących ze sobą firm i wiele innych, w których mamy do czynienia z
konfliktem między ich uczestnikami.
Teorię gier opracowano wcześniej niż teorię podejmowania decyzji i stanowi ona obecnie
integralną jej część. Przedmiotem badań teorii gier są sytuacje decyzyjne, w których każdy z
niezależnych uczestników musi podejmować decyzje. Zwykle pomiędzy decydentami istnieje
konflikt interesów. Najczęściej stosowanym kryterium w rozwiązywaniu problemów tego
rodzaju jest kryterium minimaksowe.
Słowo gra oznacza w literaturze, zarówno zbiór umów i reguł rozgrywania gry jak i
pojedynczą rozgrywkę (partię), tj. szczególną realizację tych reguł dotyczącą jednej sytuacji.
Zakładamy, że po zakończeniu gry G każdy z graczy Pi, i=1,2,...,n, otrzymuje (bądź traci)
pewną ilość pieniędzy vi zwaną wygraną (przegraną) gracza P. Celem każdego z graczy jest
maksymalizacja jego wygranej. W najbardziej znanych grach, jak np. poker, całkowita ilość
pieniędzy stracona przez przegrywających graczy jest równa całkowitej ilości pieniędzy
wygranych przez wygrywających. Przyjmujemy zatem, że zachodzi warunek
n
∑v
i =1
i
=0
Wartości wygranych vi mogą być dodatnie, ujemne bądź równe zero, przy czym vi > 0
oznacza wygraną gracza Pi, vi <0 - jego przegraną, a vi = 0 - wynik remisowy z punktu
widzenia gracza Pi.
Gry, dla których zachodzi powyższy warunek nazywamy grami o sumie wypłat zero
(grami zerowymi).
Gry klasyfikuje się również ze względu na ilość graczy i możliwych ruchów. Szachy są grą
dwuosobową o skończonej ilości możliwych ruchów, a poker grą wieloosobową również o
skończonej ilości ruchów (oczywiście, jeżeli stosuje się odpowiednie reguły przerwania gry).
Pojedynek, w którym walczący mogą strzelać w dowolnej chwili danego przedziału czasu
jest grą dwuosobową o nieskończonej ilości możliwych ruchów.
Gry można charakteryzować jako zespołowe (kooperacyjne) i niezespołowe. W grach
zespołowych gracze mogą tworzyć koalicje i działać jako grupy, w grach niezespołowych
każdy z graczy zainteresowany jest tylko indywidualną wygraną.
Najwcześniej znaleziono rozwiązania dla gier dwuosobowych o sumie wypłat zero.
Gry dwuosobowe o sumie wypłat zero
- każdą ze stron zainteresowanych grą nazywamy graczem,
- dokładnie sprecyzowana przed rozpoczęciem gry reguła decyzyjna, na podstawie której
gracz podejmuje decyzję, określona dla każdej decyzji przeciwnika zwana jest strategią,
- strategia mieszana to strategia polegająca na tym, że gracz postanawia w pewnej ustalonej
proporcji zastosować wszystkie lub kilka z dostępnych mu sposobów działania. Jeżeli
gracz decyduje się na jeden tylko określony sposób działania mówimy, że stosuje strategię
czystą,
- mówimy, że gracze rozgrywają partię gry wówczas, gdy każdy z nich podjął decyzję o
sposobie działania,
- po każdej rozegranej partii jeden z graczy wypłaca drugiemu kwotę wynikającą z obranych
przez nich sposobów działania,
- wartość gry to średnia kwota na partię, którą wygrałby w długim okresie czasu jeden z
graczy, gdyby obaj stosowali swoje najlepsze strategie,
- macierz wypłat to tablica ukazująca w wierszach kwoty otrzymane przez gracza P1
(sposoby działania gracza P1 wyróżnione są w boczku tablicy) dla każdego przyjętego przez
niego sposobu działania oraz dla każdego sposobu działania gracza P2 (sposoby działania
gracza P2 wyróżnione są w główce tablicy). Wypłaty pokazane są tylko dla gracza P1 - ze
względu na zerowy charakter gry wypłaty dla gracza P2 są liczbami przeciwnymi. Przy
danej tablicy wypłat gracz P1 maksymalizuje wygraną, zaś gracz P2 minimalizuje wygraną.
Definicja 1
Mówimy, że określona jest gra macierzowa, jeśli dana jest macierz
A=
a11 a12 ... a1n
a21 a22 ... a2 n
.......................
am1 am 2 ... amn
o wymiarach mxn, której elementy aij są dowolnymi liczbami rzeczywistymi. Macierz A
nazywamy macierzą wypłat.
Element aij jest sumą wypłacaną graczowi P1 przez gracza P2, jeśli P1 wybiera strategię i-tą a
gracz P2 wybiera strategię j-tą.
Definicja 2
Przez strategię mieszaną gracza P1 rozumiemy wektor
XT=[x1,x2,...,xm] liczb
rzeczywistych spełniających warunek:
xi ≥ 0 dla i=1,2,...,m oraz x1 + x2 +...+ xm = 1.
Przez strategię mieszaną gracza P2 rozumiemy wektor YT = [y1 ,y2 ,...,yn] liczb rzeczywistych
spełniających warunek:
y j ≥ 0 dla j=1,2,...,n oraz y1 + y2 + ...+ yn = 1.
Elementy xi i yj przedstawiają odpowiednio częstości/prawdopodobieństwa z jakimi
gracz P1 wybiera i-ty sposób postępowania a P2 j-ty sposób postępowania.
Definicja 3
Dla każdego i=1,2,...,m, strategię mieszaną, której i-ta współrzędna jest równa 1 a
pozostałe współrzędne są równe zero nazywa się i-tą strategią czystą gracza P1 . Oznaczamy
ją przez i. Podobnie, j-ta strategia czysta gracza P2 , oznaczana przez j , jest mieszaną strategią
gracza P2 o j-tej współrzędnej równej 1 i pozostałych współrzędnych równych 0.
Definicja 4
Funkcję wypłaty dla gracza P1 , tj. wartość oczekiwaną jego wygranej określamy jako:
n
E(X,Y) = ∑ y j ⋅ E( X| Y = j) =
j =1
m
= ∑ xi ⋅ E(Y | X = i ) =
i =1
= XT AY=
m
n
= ∑ ∑ x i aij y j ,
i =1 j =1
gdzie X i Y są dowolnymi strategiami mieszanymi graczy P1 i P2, x i i y j są
prawdopodobieństwami wyboru i-tej strategii czystej przez gracza P1 oraz j-tej strategii czystej
przez gracza P2.
• E(X|Y=j) oznacza warunkową oczekiwaną wypłatę dla gracza P1, jeżeli stosuje on
strategię mieszaną X pod warunkiem, że gracz P2 stosuje strategię czystą j.
• E(Y|X=i) oznacza warunkową oczekiwaną wypłatę dla gracza P2, jeżeli stosuje on strategię
mieszaną Y pod warunkiem, że gracz P1 stosuje strategię czystą i.
Definicja 5
Rozwiązaniem gry macierzowej jest para strategii mieszanych
[
]
[
X * = x1* , x 2* , . . . , x m* , Y * = y1* , y 2* , . . . , y n*
]
i liczba rzeczywista v taka, że zachodzą następujące warunki:
∀j = 1,2,..., n E( X* | Y = j) ≥ v
∀i = 1,2,..., m E(Y* | X = i) ≤ v.
Strategie X* i Y* nazywamy strategiami optymalnymi, a liczbę v wartością gry.
Definicja 6
Mówimy, że l-ta strategia czysta gracza P1, reprezentowana przez l-ty wiersz macierzy A,
jest zdominowana przez i-tą strategię czystą, jeśli
∀j alj ≤ aij oraz ∃j alj < aij
i-ta strategia czysta nosi wówczas nazwę strategii dominującej.
Mówimy, że p-ta strategia czysta gracza P2 jest zdominowana przez j-tą strategię czystą,
jeśli
∀i aip ≥ aij oraz ∃i aip > aij
.
j-ta strategia czysta, reprezentowana przez j-tą kolumnę macierzy A, nosi wówczas nazwę
strategii dominującej.
Każdy gracz powinien grać racjonalnie, co oznacza tutaj, że powinien minimalizować
swoje maksymalne straty. Kryterium, zwane kryterium minimaksowym, jest standardowym
kryterium proponowanym w teorii gier dla wyboru strategii optymalnej dla gier konfliktowych.
Przy danej tablicy wypłat:
• gracz P1 wybiera strategię, dla której najmniejsza z wypłat jest maksymalna
(maximin) - jest to tzw. dolna wartość gry, oznaczana przez v ,
• gracz P2 wybiera strategię, dla której największa ze strat jest najmniejsza (minimax)
- jest to tzw. górna wartość gry, oznaczana przez v .
W przypadku, gdy dolna i górna wartość gry są sobie równe mówimy, że gra posiada punkt
siodłowy, który odpowiada czystym strategiom minimaksowym obu graczy. Nie wszystkie gry
będą posiadać punkt siodłowy. W takich przypadkach dopuszczamy występowanie strategii
mieszanych.
Przykład 1
Rozważmy grę o następującej macierzy wypłat:
P2
P1
5
1 3
3
2 4
−3 0 1
Wartość dolna gry, v = max {1, 2, -3}= 2 i odpowiada drugiej strategii czystej gracza P1.
Wartość górna gry, v = min{5, 2, 4} = 2 i odpowiada drugiej strategii czystej gracza P2.
Zatem para strategii czystych XT = [0,1,0] , Y T = [0,1,0] stanowi punkt siodłowy powyższej gry i
wartość gry v=2.
Przykład 2
Rozważmy grę o następującej macierzy wypłat:
P2
P1
4 2
1 3
v = max {2,1}=2,
v = min{4,3}=3
Powyższa gra nie ma punktu siodłowego.
Twierdzenie o minimaksie
Jeżeli dopuszczamy występowanie strategii mieszanych, to istnieje para optymalnych strategii
mieszanych zgodnych z kryterium minimaksowym taka, że v = v = v , tzn.
max min E ( X , Y) = min max E ( X , Y) = v
X
Y
Y
X
Rozwiązanie gry jest stabilne, co oznacza, że żaden z graczy nie może zwiększyć swojej
wygranej (lub zmniejszyć straty) poprzez jednostronną zmianę swojej strategii.
Koncepcja strategii mieszanych jest zrozumiała w przypadku gier powtarzanych; w
przypadku gier rozgrywanych jednokrotnie wymaga dodatkowej interpretacji.
Oznacza ona wybór jednej czystej strategii wybranej losowo według danego rozkładu
prawdopodobieństwa - wartości xi i=1,...,m traktowane są jako prawdopodobieństwa
wyboru i-tej strategii.
Oczywista jest także interpretacja rozwiązania optymalnego gry jako pary strategii
mieszanych w przypadkach, gdy gracze nie muszą dokonywać wyboru jednej strategii
spośród alternatyw, ale mogą stosować wszystkie z różnym natężeniem (np. w
przypadku gier marketingowych). Wartości xi i = 1,...,m można wówczas traktować
jako optymalne procentowe przydziały środków przeznaczonych na wprowadzenie itej strategii.
Twierdzenie o liczbie stosowanych strategii
Niech m∗ (n ∗ ) oznacza liczbę strategii, jaką używać będzie postępujący optymalnie gracz P1
(gracz P2). Każdy z graczy postępując optymalnie używać będzie nie więcej strategii niż
wynosi mniejsza z liczb m lub n , tj.
m∗ ≤ min{m,n}
oraz
n∗ ≤ min{m,n} .
Rozważmy grę, odpowiadająca której macierz wypłat Ac powstała przez dodanie do
wszystkich elementów macierzy wypłat A stałej wielkości c. Pokażemy, że strategie
optymalne są dla nowej gry takie same jak w przypadku macierzy wypłat A, a wartość nowej
gry jest równa v+c.
Funkcja wypłaty E1 dla gry oryginalnej:
m
n
E1 (X,Y)=X AY= ∑ ∑ x i aij y j
T
i =1 j =1
oraz funkcja wypłaty E2 dla gry zmodyfikowanej:
m
n
E2 (X,Y)=X A Y= ∑ ∑ x i (aij + c) y j =
T
c
i =1 j =1
m
n
= ∑ ∑ x i aij y j +
i =1 j =1
Ze względu na
m
n
i =1
j =1
∑ xi = ∑ y j = 1
m
 n 
c∑ x i  ∑ y j  .
 j =1 
i =1
m
otrzymujemy:
n
E2 (X,Y) = ∑ ∑ x i aij y j + c =
i =1 j =1
= E1 (X,Y) + c =
= v + c.
Dodanie stałej wartości c do macierzy wypłat nie wpływa na wybór optymalnej strategii,
zmienia się jedynie wartość gry o c.
Równoważność gry macierzowej i zagadnienia programowania liniowego
Rozważmy dowolną grę macierzową o sumie wypłat zero z macierzą wypłat A=[aij ]. Z definicji
wiemy, że strategią optymalną dla gracza P1 jest strategia mieszana XT =[x1 ,x2 ,...,xm ], dla której oraz dla
wszystkich strategii czystych j =1,...,n gracza P2 spełniony jest warunek
m
n
∑∑x a
i
ij
i =1 j =1
yj ≥ v ,
co odpowiada układowi n nierówności postaci
m
∑a
i =1
tzn.
ij
xi ≥ v dla j=1,2 ,...,n .
a11 x1 + a21 x2 + ... + am1 xm ≥ v
a12 x1 + a22 x2 + ... + am 2 xm ≥ v
.................................
a1n x1 + a2 n x2 + ... + amn xm ≥ v
x1 + x2 + ... + xm = 1
xi ≥ 0 i = 1,..., m
Podobnie, dla gracza P2 należy znaleźć taki wektor YT =[y1, y2,...,yn ] i taką liczbę v, które dla
każdej strategii czystej gracza P1 spełniają następujący układ relacji:
a11 y1 + a12 y2 + ... + a1n yn ≤ v
a21 y1 + a22 y2 + ... + a2 n yn ≤ v
.................................
am1 y1 + am 2 y2 + ... + amn yn ≤ v
y1 + y2 + ... + yn = 1
y j ≥ 0 j = 1,..., n
Prawe strony ograniczeń są nieznane (jest to nieznana wartość gry v), ale mogą być zawsze sprowadzone
do wartości dodatnich z wykorzystaniem własności wykazanej w poprzednim paragrafie, a mianowicie,
jeżeli w macierzy A występują elementy ujemne, poprzez dodanie do wszystkich elementów aij
odpowiedniej wartości c tworzymy macierz zmodyfikowaną Ac , która będzie miała wszystkie elementy
dodatnie. Możemy zatem przyjąć, że wartość gry v jest większa od zera.
Pozostają jednak następujące trudności:
1o wartość gry v jest nieznana
2o zadanie nie ma funkcji kryterium.
Pokażemy dwa sposoby rozwiązania problemu.
Pierwszy sposób polega na dokonaniu zamiany zmiennych według następującego wzoru:
x'= x /v , y'= y /v.
Zauważmy, że zachodzą następujące relacje:
m
1 m
1
x
'
=
x
=
oraz
∑
∑
i
i
v
v
i =1
i =1
n
1 n
1
y
'
=
y
=
∑
∑ j v
j
v j =1
j =1
Zwróćmy uwagę, że po zamianie zmiennych maksymalna wartość gry v osiągana jest wówczas, gdy
n
m
∑x
i =1
i
' jest minimalna, minimalizacji zaś v odpowiada jednoczesna maksymalizacja
∑y
j =1
j
'.
Otrzymujemy symetryczne zagadnienia dualne:
Zagadnienie pierwotne
f(x') = x1'+x2'+...+xm' → min
przy ograniczeniach
a11 x '1 + a21 x ' 2 +. ..+ am1 x ' m ≥ 1
a12 x '1 + a22 x ' 2 +. ..+ am 2 x ' m ≥ 1
.. .. ... .. ... .. .. ... .. ... .. .. ... ..
a1n x '1 + a2n x ' 2 +...+ amn x ' m ≥ 1
x i ' ≥ 0 i = 1,...,m
Zagadnienie dualne
g(y’) = y1’+y2’+...+ yn’ → max
przy ograniczeniach
a11 y'1 +a12 y ' 2 +... +a1n y' n ≤ 1
a21 y '1 +a22 y' 2 +... +a2 n y' n ≤ 1
.................................
am1 y '1 +am 2 y ' 2 +... +amn y ' n ≤ 1
y' j ≥ 0
j = 1,...,n
Zatem każda gra o sumie wypłat zero posiada rozwiązanie optymalne oraz
1
min ∑ x ' i = max ∑ y' j = .
v
i
j
Wartość gry znajdziemy jako odwrotność optymalnej wartości funkcji kryterium zagadnienia
pierwotnego bądź dualnego. Częstości stosowania strategii otrzymamy mnożąc optymalne wartości
zmiennych przez wartość gry (bądź dzieląc przez optymalną wartość funkcji kryterium).
Przykład 1:
Dla gry skonstruowano następującą macierz wypłat:
2  v = −1
A 2 x 3 = − 1 0
 1 − 2 − 3
−1 ≤ v ≤ 0
⇒ v ≤ 0.
v=0
Ponieważ wartość gry nie jest dodatnia do macierzy A dodajemy stałą c = 4. Macierz zmodyfikowanej gry Ac przyjmuje
postać:
A c = 3 4 6 v = 3 .
5 2 1
v=4
Wartość zmodyfikowanej gry jest na pewno dodatnia i większa od wartości gry oryginalnej o 4.
Konstruujemy parę dualnych zadań programowania liniowego dla zmodyfikowanej gry:
+ x' 2 → min
 x'1
 3 x'1 + 5 x' 2
≥1

≥1
 4 x'1 + 2 x' 2
 6 x'1 + 1x' 2
≥1
 x' ≥ 0 x' ≥ 0
2
 1
y '1

 3 y '1
 5 y'
1

 y '1 ≥ 0
+ y'2
+ 4 y'2
+ 2 y'2
y' 2 ≥ 0
+ y '3 → max
+ 6 y '3
≤1
+ 1y '3
≤1
y '3 ≥ 0
Rozwiązania optymalne obu zadań są następujące
3 
X' =  14
 114
o
i
1 
 7
o
Y' =  1 
 07 
 
oraz wartość funkcji kryterium
fo =2
7.
Natomiast rozwiązanie zmodyfikowanej gry uzyskamy dzieląc elementy wektorów X’o i Y’o przez f o:
3 
X =  4
 1 4 
∗
i
1 / 2 
Y∗ = 1 / 2  .
 0 
Wartość zmodyfikowanej gry jest równa odwrotności f o i wynosi:
v+c = 7 .
2
Optymalne częstości stosowania strategii dla gry oryginalnej są takie same jak dla gry zmodyfikowanej a wartość gry
7
1
oryginalnej wynosi v = 2 − 4 = − 2 .
Druga metoda sprowadzania gry do zagadnienia programowania liniowego polega na tym, że w
układach nierówności wartość gry v oznaczamy odpowiednio przez xm+1 i yn+1 i przenosimy na lewą
stronę. Ponieważ zmienne te oznaczają nieznaną wartość gry, mogą tworzyć także funkcje celu w parze
symetrycznych zadań dualnych programowania liniowego:
Zagadnienie pierwotne
f(x') = xm+1 → max albo f(x') = - xm+1 → min
przy ograniczeniach
a11 x1 + a21 x2 + ... + am1 xm − xm+1 ≥ 0
a12 x1 + a22 x2 + ... + am 2 xm − xm+1 ≥ 0
.................................
a1n x1 + a2 n x2 + ... + amn xm − xm+1 ≥ 0
x1 + x2 + ... + xm = 1
xi ≥ 0 i = 1,..., m +1
Zagadnienie dualne
g(y’) = yn+1 → min albo g(y’) = -yn+1 → max
przy ograniczeniach
a11 y1 + a12 y2 + ... + a1n yn − yn+1 ≤ 0
a21 y1 + a22 y2 + ... + a2 n yn − yn+1 ≤ 0
.................................
am1 y1 + am 2 y2 + ... + amn yn − yn+1 ≤ 0
y1 +
yj ≥ 0
y2 + ... +
yn = 1
j = 1,..., n +1
Przykład 2:
Gra jak w Przykładzie 1. Macierz gry zmodyfikowanej po dodaniu stałej c=4 jest postaci:
A c = 3 4 6 v = 3 .
5 2 1
v=4
Modele PL dla gry zmodyfikowanej:
max x3
3 x1 + 5 x2 − x3 ≥ 0
4 x1 + 2 x2 − x3 ≥ 0
6 x1 + 1x2 − x3 ≥ 0
x1 + x2 = 1
x1 , x2 , x3 ≥ 0
min y4
3 y1 + 4 y2 + 6 y3 − y4 ≤ 0
5 y1 + 2 y2 + 1y3 − y4 ≤ 0
y1 + y 2 + y3
=1
y1,y2 ,y3 ,y4 ≥ 0
o
o
Rozwiązanie optymalne jest następujące: x1o = 0,75 , x 2 = 0,25 , x3 = 3,5 = v+c
o
o
o
y1o = 0,5 , y 2 = 0,5 , y 3 = 0 , y 4 = 3,5 = v+c.
Optymalne wartości zmiennych to optymalne częstości stosowania strategii oraz wartość zmodyfikowanej gry. Aby
otrzymać wartość gry oryginalnej należy odjąć wartość stałej c.

Podobne dokumenty