Professional Documents
Culture Documents
Teorija Igara - Slajdovi
Teorija Igara - Slajdovi
Vebe
Teorija igara
Mart 2013.
Program vebi
Algoritmi pretraivanja
Teorija igara
Formalna logika
Produkcioni sistemi
Strategije reavanja problema
Uvod u mainsko uenje
Rad u neizvesnom okruenju
2
Uvod
Jedna od prvih primena
vetake inteligencije
Teorija igara
Grana primenjene matematike
Pokuava da matematiki opie ponaanje
u stratekim situacijama,
u kojima uspeh pojedinca u donoenju odluke
zavisi od delanja drugih uesnika
Ne koristi se samo u igrama
ekonomija, biologija, politika...
Nash-ova teorema
Skup strategija je Neov ekvilibrijum
ako nijedan igra ne moe da napreduje
ako jednostrano promeni svoju strategiju.
Ako znam strategije drugih igraa,
i znam da se one nee menjati,
da li u imati koristi od promene moje
strategije?
Nash-ova teorema
Ako je odgovor Da onda takav skup
NIJE strategija Neov ekvilibrijum.
Ali, ako svaki igra ne eli da promeni
strategiju (ili mu je svejedno),
takav skup JESTE Neov ekvilibrijum
Svaka strategija u ekvilibrijumu je
najbolji odgovor na ostale strategije u
ekvilibijrumu
Strategija
Strategija igraa u teoriji igara
predstavlja jednu od mogunosti koju
moe da izabere u situaciji koja ne zavisi
samo od njegovih akcija, ve i od akcija
drugih uesnika u igri.
Strategija odluuje koje e akcije igra
izvesti u svakom trenutku igre
Strategija
Strategija nije potez.
Potez predstavlja akciju igraa u nekom
trenutku u toku igranja igre.
na primer: izabrati polje u X-O igri
Vrste strategija
ista strategija (pure strategy) daje
kompletne podatke kako e igra igrati
igru.
Odreuje potez koji e igra izabrati u
kakvoj god situaciji da se nae.
Skup strategija jednog igraa je skup
istih strategija koje su mu dostupne.
Vrste strategija
Meovita strategija (mixed strategy)
predstavlja dodelu verovatnoe svakoj
istoj strategiji.
Ovo omoguava igrau da nasumino
izabere istu strategiju.
Poto je verovatnoa kontinualna veliina,
postoji beskonano mnogo meovitih
strategija
Matrica isplativosti
Payoff matrix predstavlja reprezantaciju
igre na osnovu strategija i funkcija isplativosti
Funkcija isplativosti je dobitak igraa ukoliko
su izabrane strategije u ijem se preseku
dobitak nalazi
Strategija 1
Strategija 2
Strategija 1
(2,2)
(4,1)
Strategija 2
(1,4)
(3,3)
Igra 2
0,0
1,-1
-1,1
-1,1
0,0
1,-1
1,-1
-1,1
0,0
Payoff matrica
Zatvorenikova dilema
Dva kriminalca su uhapena i policija ih ispituje odvojeno.
Ako jedan svedoi protiv drugog, a drugi odbije da
svedoi, onaj ko je svedoio odlazi slobodan,
a onaj ko je odbio biva osuen na 10 godina zatvora.
Ako obojica svedoe jedan protiv drugog,
obojica dobijaju po 5 godina zavtora.
Ako odbojica odbiju da svedoe, dobijaju po jednu
godinu zatvora.
Krimos 1: Krimos 2:
Svedoi
Odbije
Krimos 1:
Svedoi
-5,-5
-10,0
Krimos 2:
Odbije
0,-10
-1,-1
Zatvorenikova dilema
Razmiljanje Krimosa 1:
Recimo da Krimos 2 svedoi protiv mene. Onda ja dobijam 5
godina zatvora ako svedoim protiv njega, a 10 godina ako
odbijem da svedoim. Bolje mi je da svedoim.
Recimo da Krimos 2 odbije da svedoi protiv mene. Ako ja
svedoim protiv njega, onda odlazim slobodan, a ako i ja odbijem
da svedoim, dobijam 1 godinu zatvora. Bolje mi je da svedoim.
Krimos 1:
Svedoi
-5,-5
-10,0
Krimos 2:
Odbije
0,-10
-1,-1
Dominantna strategija
Ako postoji striktno dominantna
strategija za jednog igraa,
taj igra e je koristiti u svim
Neovim ekvilibrijumima.
Ako oba igraa imaju
striktno dominantnu strategiju,
igra ima jedinstven Neov ekvilibrijum.
Dominantna strategija
Takav Neov ekvilibrijum nije uvek
Pareto optimalan
moda postoji izbor u igri koji nije u
ekvilibrijumu, a koji bi bio bolji za oba igraa
Pareto optimalnost
niko ne moe da napreduje,
a da bar nekom od uesnika ne bude loije
Prisoners dilemma
Neov ekvilibrijum: par strategija takav da nijedan
igra nee imati vei dobitak ako promeni strategiju,
ako se drugi igra dri svoje strategije
(Svedoi, svedoi) je ekvilibrijum dominantne strategije
-5,-5
-10,0
Krimos 2:
Odbije
0,-10
-1,-1
Zatvorenikova dilema u
realnom ivotu
Rat cena
Sarauj
Trka oruja
Odbij
Upotreba steroida
Kontrola zagaenja
Sarauj
Odbij
pobeda
pobeda
velika pobeda
veliki poraz
veliki poraz
velika pobeda
poraz poraz
Trka oruja
Recimo da dve zemlje potpiu sporazum da se vie nee
naoruavati. Svaiji interes je da to potuju,
pod pretpostavkom da i drugi potuju sporazum, jer bi taj
novac mogli da uloe u zdravstveni sistem, ekologiju, ...
Meutim, svako moe da strahuje da druga zemlja kri
sporazum i da nastavlja sa naoruavanjem
Zemlja #2
Zemlja #1
Nastavi
naoruavanje
Potuj
sporazum
Nastavi
naoruavanje
(2,2)
(4,1)
Potuj
sporazum
(1,4)
(3,3)
Trka oruja
Recimo da Zemlja #1 izabere da potuje sporazum,
dok Zemlja #2 nastavi da se naoruava.
Onda bi Zemlja #2 bila u prednosti, jer nastavlja da jaa
svoju vojsku.
Neov ekvilibrijum za ovu igru je da obe zemlje nastave sa
naoruavanjem.
Reenje: meusobna inspekcija.
Zemlja #2
Zemlja #1
Nastavi
naoruavanje
Potuj
sporazum
Nastavi
naoruavanje
(2,2)
(4,1)
Potuj
sporazum
(1,4)
(3,3)
Lov na jelena
Lovac 1:
jelen
Lovac 2:
zec
Lovac 2:
jelen
2,2
1,0
Lovac 2:
zec
0,1
1,1
Zatvorenikova dilema
naspram Lova na jelena
Stag hunt
Prisoner dilemma
Sarauj
Odbij
Sarauj
pobeda,
pobeda
velika pobeda,
veliki poraz
Odbij
veliki poraz,
velika pobeda
poraz, poraz
Lovac 1:
jelen
Lovac 2:
zec
Lovac 2:
jelen
v. pobeda,
v. pobeda
pobeda,
poraz
Lovac 2:
zec
poraz,
pobeda
pobeda,
pobeda
Coordination game
(Bitka polova)
ena:
Balet
ena:
Fudbal
Mu:
Balet
3, 2
0, 0
Mu:
Fudbal
0, 0
or
2, 3
Neov ekvilibrijum?
(Balet, balet) ili (fudbal, fudbal)
Pravo
Igra 2
Pravo
Skreni
Skreni
Pravo
-10, -10
-1, 1
Skreni
1, -1
0, 0
Igra 2
Pravo
Skreni
Skreni
Pravo
Skreni
Pravo
-10, -10
-1, 1
Skreni
1, -1
0, 0
Pravo
I1: Skreni
sa verovat. 1-p
I2: Pravo
sa verovat. q
-10, -10
-1, 1
I2: Skreni
sa verovat. 1-q
1, -1
0, 0
da
ne
da
Maksimizuj korist
ne
Da li je protivnik racionalan?
da
ne
da
Primeni ekvilibrijum
strategiju
ne
Maksimizuj najgori
mogui ishod
Povlaenje
Nije ekvilibrijum
Blokada
SAD
Vazduni
napad
(3,3)
(2,4)
Nastavak
(4,2)
(0,0)
Nuklearni
rat
Teorija igara
Ograniena primena za igre u
realnom vremenu
koristi se samo za izradu strategija
kretanje, donoenje odluka, iscrtavanje
posebni algoritmi
Igre na tabli
Plodno polje za AI
Razvijeni algoritmi razliog kvaliteta:
amaterski nivo - Go
nivo velemajstora - poker
nivo ampiona - ah
bolji od ampiona otello (reversi)
reene igre gomoku, mice, X-O, awari
33
Tipovi igara
Klasifikacija na osnovu:
broja igraa
cilja igre
informacije
34
Broj igraa
35
Cilj igre
POBEDA!
Jedan pobeuje a svi gube > zero-sum
pobeda vredi 1 poen, nereeno 0, poraz -1
poker, ah, gomoku, X-O
Informacije
Potpune informacije (IN)
potpuno poznato trenutno stanje igre
igra ne zna ta e protivnik odigrati,
ali zna koja je posledica svakog poteza
ah, gomoku, X-O, mice...
lake za analizu
37
Najpoznatiji algoritmi
Razvijeni su za igre
sa dva igraa,
dostupne su im potpune informacije i
igra je zero-sum
Uz odreene modifikacije,
mogua primena i na druge vrsta igara
38
Stablo igre
Potezna igra moe da se predstavi
stablom igre
Svaki vor je jedna pozicija u igri
Svako grananje je jedan mogui potez
odigran po pravilima igre
Nivo 0:
O na potezu
Nivo 1:
X na potezu
Nivo 2:
O na potezu
40
Faktor grananja
Broj grananja je jednak
moguem broju poteza tekueg igraa
za X-O u prvom potezu 9, zatim 8,...
Gomoku tabla 19x19 ->
prvi potez - 361 mogunost; drugi 360,...
Dubina stabla
Broj ukupno odigranih poteza
do zavretka igre
Konaan
X-O 9 poteza
pravilima ogranien broj poteza
Beskonaan
ah - skoro beskonaan broj poteza
42
Transpozicija
Dolazak do istog stanja razliitim
sekvencama poteza
vie puta u toku igre
samo jednom, ali na vie razliitih naina
Stablo?
Ne, grane se mogu stapati
Terminalne pozicije
Odreena stanja nemaju naslednike
Takva stanja nemaju mogue poteze
To su terminalne pozicije
predstavljaju kraj igre
44
Minimax ideja
Cilj odabrati najbolji potez
izabrati svoj najbolji potez,
zatim izabrati najbolji odgovor na taj potez,
zatim odgovor na odgovor na taj potez...
Razmiljanje unapred
Procena kvaliteta moguih poteza
45
Funkcija procene
Kako odrediti ta je najbolji potez?
Koristiti - statiku funkciju procene
Treba da pokae trenutno stanje
koliko je igra blizu pobede
46
47
Minimax ideja
Birati mogui potez pretragom unapred
Izabrati jedan od moguih poteza,
zatim izabrati protivnikov odgovor,
pa na odgovor na protivnikov odgovor...
Kada biramo potez za sebe,
biramo najbolji mogui (najgori po protivnika)
Kada na protivnik bira potez,
bira najbolji za njega (najgori za nas)
51
52
Minimax
Koliko poteza unapred treba proveriti?
dubina pretrage
Problem je vreme
53
Zadatak 1: Minimax
metoda
Upotrebom minimax algoritma, za
dato stablo igre, pronai naredni
potez koji e biti odigran
MAX
A
a
MIN
a1
C
b1
a3
a2
MAX
D
b3
c1
c3
c2
b2
12
14
54
55
MAX
-
a
MIN
C
b1
a3
a2
MAX
a1
D
b3
c1
c3
c2
b2
12
14
56
MAX
-
a
MIN
C
b1
a3
a2
MAX
a1
D
b3
c1
c3
c2
b2
12
14
57
MAX
-
a
MIN
C
b1
a3
a2
MAX
a1
D
b3
c1
c3
c2
b2
12
14
58
MAX
-
a
MIN
C
b1
a3
a2
MAX
a1
D
b3
c1
c3
c2
b2
12
14
59
MAX
3
a
MIN
C
b1
a3
a2
MAX
a1
D
b3
c1
c3
c2
b2
12
14
60
MAX
3
a
MIN
b1
a3
a2
MAX
a1
D
b3
c1
c3
c2
b2
12
14
61
MAX
3
a
MIN
b1
a3
a2
MAX
a1
D
b3
c1
c3
c2
b2
12
14
62
MAX
3
a
MIN
b1
a3
a2
MAX
a1
D
b3
c1
c3
c2
b2
12
14
63
MAX
3
a
MIN
b1
a3
a2
MAX
a1
D
b3
c1
c3
c2
b2
12
14
64
MAX
3
a
MIN
b1
a3
a2
MAX
a1
D
b3
c1
c3
c2
b2
12
14
65
MAX
3
a
MIN
b1
a3
a2
MAX
a1
+
b3
c1
c3
c2
b2
12
14
66
MAX
3
a
MIN
b1
a3
a2
MAX
a1
14
b3
c1
c3
c2
b2
12
14
67
MAX
3
a
MIN
b1
a3
a2
MAX
a1
5
b3
c1
c3
c2
b2
12
14
68
MAX
3
a
MIN
b1
a3
a2
MAX
a1
2
b3
c1
c3
c2
b2
12
14
69
MAX (X)
70
MAX (X)
71
Alfa-beta odsecanje
Ogroman broj vorova smanjiti graf
Inae, mala dubina loa efikasnost
Reenje ograniiti vrednost procene
donjom i gornjom granicom
Mi i dalje igramo najbolji potez,
a protivnik najgori (po nas)
72
Alfa odsecanje
Alfa je vrednost najpovoljnijeg poteza po nas
koji je do sada pronaen
Predstavlja donju granicu procene poteza koji
moemo da prihvatimo
Nikada neemo odigrati loiji potez,
od najboljeg do tada pronaenog (alfa)
Kasnije moemo pronai bolji potez
Ako nas protivnik natera na loiji potez od alfa,
neemo ga izabrati, odbaciemo taj deo stabla
73
MIN
a3
a8
MAX
10
a3
a?
74
Beta odsecanje
Predstavlja gornju granicu koju
moda moemo da dostignemo ()
Sigurno ne moemo vie od toga
Postoji ansa da nas protivnik natera
da odigramo i loije
Eliminiemo podstablo gde je
vrednost mogueg poteza vea od
75
return najboljaVrednost
beta = min (beta, najboljaVrednost)
return najboljaVrednost
# kraj minimax algoritma
76
Zadatak 2: Alfa-beta
odsecanje
Upotrebom minimax algoritma uz primenu
alfa-beta odsecanja za dato stablo igre
pronai naredni potez koji e biti odigran.
Naznaiti koji vorovi stabla nee biti
obidjeni
MAX
A
a
MIN
a1
C
b1
a3
a2
MAX
D
b3
c1
c3
c2
b2
12
14
77
[-,+]
MAX
-
a
MIN
a1
[-,+]
C
b1
a3
a2
MAX
D
b3
c1
c3
c2
b2
12
14
78
[-,+]
MAX
-
a
MIN
a1
[-,3]
C
b1
a3
a2
MAX
D
b3
c1
c3
c2
b2
12
14
79
[-,+]
MAX
-
a
MIN
a1
[-,3]
C
b1
a3
a2
MAX
D
b3
c1
c3
c2
b2
12
14
80
[-,+]
MAX
-
a
MIN
a1
[-,3]
C
b1
a3
a2
MAX
D
b3
c1
c3
c2
b2
12
14
81
[3,+]
MAX
3
a
MIN
a1
[-,3]
b1
a3
a2
MAX
[3,+]
b3
c1
c3
c2
b2
12
14
82
[3,+]
MAX
3
a
MIN
a1
[-,3]
b1
a3
a2
MAX
[3,+]
b3
c1
c3
c2
b2
12
14
83
[3,+]
MAX
3
a
MIN
a1
[-,3]
b1
a3
a2
MAX
[3,+]
b3
c1
c3
c2
b2
12
14
84
[3,+]
MAX
3
a
MIN
a1
[-,3]
b1
a3
a2
MAX
[3,+]
b3
c1
[3,+]
c3
c2
b2
12
14
85
[3,+]
MAX
3
a
MIN
a1
[-,3]
b1
a3
a2
MAX
[3,+]
14
b3
c1
[3,+]
c3
c2
b2
12
14
86
[3,+]
MAX
3
a
MIN
a1
[-,3]
b1
a3
a2
MAX
[3,+]
b3
c1
[3,+]
c3
c2
b2
12
14
87
[3,+]
MAX
3
a
MIN
a1
[-,3]
b1
a3
a2
MAX
[3,+]
b3
c1
[3,+]
c3
c2
b2
12
14
88
B?
89
M?
90
Zadatak 3: Progresivno
produbljivanje
Za svaki list je naznaena statika
vrednost. Uobiajeno, to je statika
vrednost vea, bolja je situacija iz
prespektive MAX igraa
S
MAX
MIN
MAX
MIN
91
Progressive deepening
Na turnirima od igraa se oekuje da napravi
odredjeni broj poteza u zadatom vremenu
ogranienom od strane nemilosrdnog sata
esta je primena metode progresivnog
produbljivanja
Najpre se analizira ishod za dubinu 1,
zatim za dubinu 2, pa dubinu 3, ...
Kada vreme istekne, rezultat je najbolji potez
sa nivoa koji je za jedan manji od tekueg
Uvek postoji potez spreman da se odigra!
93
Reenje (a)
S
MAX
MIN
MAX
MIN
2 + 4 + 10
94
Reenje (b)
MAX
MIN
MAX
MIN
[4,+]
[-,4]
[2,4]
[4,+]
2+4+9
73
[4,7]
[7,+]
[4,7]
ta ako zamenimo E i F? 2 + 3
95
Stohastiki igra
ta ako ne znamo ta e biti rezultat akcije?
podela karata u pokeru
bacanje kockica
Vrednosti treba da
predstavljaju prosek ishoda,
expectimax, a ne najgori
sluaj (minimax)
*(stohastiki sistem je onaj ije stanje je nedeterministiko)
96
Expectimax pretraga
Izraunaj prosean rezultat pod optimalnom
igrom
max vorovi kao kod minimax
chance vorovi kao min vorovi,
ali je ishod neizvestan
izraunati njihove oekivane
vrednosti, odnosno izraunati
prosek sa teinama njihove dece
(eng. weighted average)
97
Expectimax pretraga
98
Verovatnoa
Sluajna promenljiva predstavlja
dogaaj iji je ishod nepoznat
Raspodela verovatnoe je dodela
teina ishodima
Primer: kia
sluajna promenljiva: K = ako ima guve
ishodi: K {nema, blaga, jaka}
99
Verovatnoa
Vremenom, kako se dobijaju nove
informacije, verovatnoa moe da se
promeni.
Primer: kia
P(K=jaka) = 0.20,
P(K=jaka| oblano=da) = 0.60
100
Oekivanje
Vrednosti koje nas zanimaju vrlo esto zavise
od sluajne promenljive
Oekivanje
Oekivanje funkcije sluajne promenljive:
102
Expectimax pretraga
103
Expectimax pretraga
104
Expectimax pretraga
U expectimax pretrazi imamo model
verovatnoe kako e se protivnik,
ili okruenje, ponaati
Model moe biti:
jednostavna uniformna distribucija
npr. bacanje kockica
sofisticiran i zahtevati mnogo raunanja
Expectimax evaluacija
Za minimax pretragu je potrebno da bolja
stanja dobiju vee vrednosti funkcije procene,
da bismo mogli ispravno da ih uredimo
Za expectimax elimo da veliine budu
smislene:
da li je 50% / 50% ansa izmeu A i B bolja od
100% anse za C
106
Expectimax evaluacija
107
Neizvesnost
Nije prisutna samo igrama
108