Download as pdf or txt
Download as pdf or txt
You are on page 1of 108

Ekspertski sistemi

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

Prve igre koje su dobile


AI igrae:
ah, X-O, Go, Gomoku,
Othello
Danas: Fifa, Call of Duty,
Warcraft, ...

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...

Primer: Nash equilibrium


John Forbes Nash, Jr. (film Blistavi um)
Dobitnik Nobelove nagrade za ekonomiju 1994.
4

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

Strategija je algoritam za igranje


cele igre, koja govori igrau koji potez
da izabere u svakoj moguoj situaciji.

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)

Simultane jednopotezne igre


Igrai moraju izabrati poteze istovremeno,
ne znajui poteze ostalih igraa
Igra 1

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.

Dominantna strategija: Strategija koja je najbolja za


igraa bez obzira na strategiju koju je izabrao
drugi igra
Krimos 1: Krimos 2:
Svedoi
Odbije

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

Pareto optimalni ishod: nije, jer ako obojica odbiju da


svedoe, zajedno e proi bolje
Krimos 1: Krimos 2:
Svedoi
Odbije
Krimos 1:
Svedoi

-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

Postoji li dominantna strategija?


Postoji li Neov ekvilibrijum?
(jelen, jelen) payoff dominant strategija
(zec, zec) risk dominant strategija

Model kooperativnog delanja

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

Igrai dobijaju ako


jednostrano odbiju

Lovac 1:
jelen

Lovac 2:
zec

Lovac 2:
jelen

v. pobeda,
v. pobeda

pobeda,
poraz

Lovac 2:
zec

poraz,
pobeda

pobeda,
pobeda

Igrai gube ako


jednostrano odbiju

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)

Kako izabrati ekvilibrijum?


Poeljno je imati istu strategiju.

Igra kukavica (chicken)


Igra 1
Skreni

Pravo

Igra 2

Pravo

Skreni

Postoji li dominantna strategija za svakog igraa? - Ne


Neov ekvilibrijum
(pravo, skreni) ili (skreni, pravo)

Anti-coordination igra: obostrano korisno je da se


izabere razliita strategija
Kako izabrati strategiju?
Unapred se obavezati ili koristiti pretnju
Pravo

Skreni

Pravo

-10, -10

-1, 1

Skreni

1, -1

0, 0

Meovita strategija ekvilibrijuma


Igra 1

Igra 2
Pravo

Skreni

Skreni

Pravo

Skreni

Pravo

-10, -10

-1, 1

Skreni

1, -1

0, 0

Pravo

Meovita strategija: igra bira strategiju prema


verovatnoi
Recimo da svako bira Pravo sa verovatnoom 1/10.
Razmotrimo dobitak Igraa 1 dok Igra 2 ne menja
strategiju
Ako izabere Pravo dobitak je: (1/10)(10) + (9/10)1 = 1/10
Ako izabere Skreni dobitak je (1/10)(1) + (9/10)0 = 1/10

Pronalaenje meovite strategije


I1: Pravo
sa verovat. p

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

Oekivani dobitak I1, ako je poznata strategija I2:


I1 bira Pravo: q(10) +(1q)1 = 11q + 1
I1 bira Skreni: q(1) + (1q)0 = q

Da bi strategija I2 bila deo Neovog ekvilibrijuma,


I1 mora da bude ravnoduan prema izboru svoji akcija:
11q + 1 = q or q = 1/10

Slino, dobijamo i p = 1/10

Neov ekvilibrijum i racionalno


donoenje odluka
Ako igra ima jedinstveni Neov ekvilibrijum,
on e biti prihvaen, ako svaki igra:
je racionalan i payoff matrix je tana
ne grei u izvravanju
je sposoban za raunanje Neovog ekvilibrijuma
veruje da odstupanje u njegovoj strategiji nee
izazvati promene u strategijama drugih igraa
opte je poznato da svi igrai zadovoljavaju ove
uslove

Neov ekvilibrijum i racionalno


donoenje odluka
Da li ima dominantnu strategiju?

da

ne

Primeni dominantnu strategiju

Da li zna ta e protivnik da uradi?

da
Maksimizuj korist

ne
Da li je protivnik racionalan?

da

ne

Da li moemo da se dogovorimo Maksimizuj najgori


oko Neovog ekvilibrijuma?
mogui ishod

da
Primeni ekvilibrijum
strategiju

ne
Maksimizuj najgori
mogui ishod

Primer igre Kukavica

Kubanska raketna kriza moe da se modeluje kao igra


1960. SSSR je poeo da snabdeva Kubu raketama.
SAD je zapoeo blokadu da bi zaustavio SSSR
Kako se kriza razvijala, da je svako nastavio sa svojim
akcijama, posledice bi bile katastrofalne
Na svu sreu, pregovori u poslednjem trenutku su izbegli
takav ishod. SAD nisu morale da se povuku,
a SSSR je uspeo da postigne deo svojih interesa
SAD nisu napale Kubu
SSSR
Kompromis

Povlaenje

Nije ekvilibrijum

Blokada

SAD

Vazduni
napad

(3,3)
(2,4)

Nastavak
(4,2)
(0,0)

Nuklearni
rat

Problemi teorije igara


Da li je primenjiva na stvarni ivot?
Ljudi nisu uvek racionalni
Nisu svi uslovi unapred poznati
Politike potekoe mogu da spree primenu
teoretski optimalnih mehanizama
Da li moe bolje da se primeni na AI nego na stvarni ivot?
Raunanje ekvilibirjuma u komplikovanim igrama je teko
Veza izmeu Neovog ekvilibrijuma i racionalnog
donoenja odluka je suptilna

Teorija igara
Ograniena primena za igre u
realnom vremenu
koristi se samo za izradu strategija
kretanje, donoenje odluka, iscrtavanje
posebni algoritmi

Idealna za igre na tabli


potrebna samo strategija
32

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

Najee je broj igraa dva


U tom obliku se uglavnom i prezentuju
Dodavanje igraa komplikuje algoritam
Mnoge optimizacije su primenjive
samo na dva 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

Ne gube svi -> non-zero-sum


neki ishodi dovode do situacije da svi
dobijaju neto
dilema zatvorenika
36

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

Nepotpune informacije (OUT)

faktor sluajnosti kockice


faktor neizvesnosti kartake igre

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

Kako igrai igraju jedan za drugim,


svakom odgovara jedan nivo u stablu
39

Primer stabla igre


X

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,...

Broj grana faktor grananja


odlian indikator teine igre
41

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

Olakava procenu poteza


43

Terminalne pozicije
Odreena stanja nemaju naslednike
Takva stanja nemaju mogue poteze
To su terminalne pozicije
predstavljaju kraj igre

Za svakog igraa se odreuje konani


rezultat
zero-sum zbir rezultata je jednak nuli
non-zero-sum rezultati predstavljaju
kvalitet pobede/poraza

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

Iskazuje se brojem poena iz opsega


koji igra moe da dobije na kraju igre

46

Funkcija procene (2)


Lako ako je terminalna pozicija
ako je pobednik, rezultat f-je procene je 1,
ako je nereeno 0, ako je poraz 1,
ili kako god je rasporeen broj poena

ta ako se nalazimo u sredini igre?


tee izraunavanje
treba ispravno proceniti ko je u prednosti

47

Funkcija procene (3)


Ako je igra jasno u prednosti,
njegov broj poena treba da bude blizu broju
poena koji se dobija za pobedu
Pozicija igraa koji je trenutno nadjaan,
treba da se vrednuje brojem poena
koji oznaava da je poraz blizu
Nije uvek lako odrediti ko je u prednosti
Tada znanje igranja dolazi do izraaja
48

Funkcija procene (4)


Pogreno je vrednovati trenutnu poziciju,
koja nije terminalna,
veim brojem poena od onog
koji se dobija za pobedu
Ako bi u istom potezu mogla da se
izabere i pozicija koja dovodi do pobede,
jer bi (pogreno) bila manje poeljna
49

Funkcija procene (5)


Idelna funkcija procene?
Nemogua misija
Da postoji, sam rezultat funkcije
bi bio dovoljan za odluivanje
ta je najbolji sledei potez
Zato je potrebno uzeti u obzir i
protivnikov odgovor na izabrani potez
50

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

minimax(trenutnoStanje, maxDubina, trenutnaDubina):


ukoliko je terminalno stanje ili je trenutna dubina jednaka maksimalnoj
return vrednost statike funkcije procene za trenutno stanje
ukoliko je trenutni igra MAX
najboljaVrednost = - BESKONANO
ine ukoliko je trenutni igra MIN
najboljaVrednost = BESKONANO
za svaki mogui potez trenutnog igraa odreujemo novo stanje i njegovu vrednost
novoStanje = Kreiraj izgled novog stanja u koje bi se prelo
trenutnaVrednost = minimax(novoStanje,maxDubina,trenutnaDubina+1)
ukoliko je trenutni igra MAX i trenutnaVrednost je vea od najboljeVrednosti
najboljaVrednost = trenutnaVrednost
ukoliko je trenutni igra MIN i trenutnaVrednost je manja od najboljeVrednosti
najboljaVrednost = trenutnaVrednost
return najboljaVrednost
# kraj minimax algoritma

52

Minimax
Koliko poteza unapred treba proveriti?
dubina pretrage

Prostor nije problem

algoritam je rekurzivan, pa je slozenost


O(d), gde je d maksimalna dubina pretrage

Problem je vreme

sloenost je O(n^d), gde je n mogui


broj poteza za svaku poziciju
Uasno mnogo poteza za veliku dubinu

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

Minimax primer u X-O


Plava cifra predstavlja
terminalnu poziciju

MAX (X)

70

Minimax primer u X-O


Plava cifra predstavlja
terminalnu poziciju

MAX (X)

Koja je vrednost f-je procene za


vorove obeleene sa #?

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

Alfa odsecanje - primer


a6

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

minimax(trenutnoStanje, maxDubina, trenutnaDubina, alfa, beta):


ukoliko je terminalno stanje ili je trenutna dubina jednaka maksimalnoj
return vrednost statike funkcije procene za trenutno stanje
ukoliko je trenutni igra MAX
najboljaVrednost = - BESKONANO
ine ukoliko je trenutni igra MIN
najboljaVrednost = BESKONANO
za svaki mogui potez trenutnog igraa odreujemo novo stanje i njegovu vrednost
novoStanje = Kreiraj izgled novog stanja u koje bi se prelo
trenutnaVrednost = minimax(novoStanje,maxDubina,trenutnaDubina+1, alfa, beta)
ukoliko je trenutni igra MAX i trenutnaVrednost je vea od najboljeVrednosti
najboljaVrednost = trenutnaVrednost
ukoliko je najboljaVrednost vea ili jednaka beta vri se odsecanje
return najboljaVrednost
alfa = max (alfa, najboljaVrednost)
ukoliko je trenutni igra MIN i trenutnaVrednost je manja od najboljeVrednosti
najboljaVrednost = trenutnaVrednost
ukoliko je najboljaVrednost manja ili jednaka alfa vri se odsecanje

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

a) Ukoliko se upotrebljava metoda


progresivnog produbljivanja, koliko
statikih vrednosti e biti izraunato?
b) Pretpostaviti da je mogue izvriti
razmetanje grana koje izlaze iz istog
vora na dubini 2 (C, D, E i F). Da li bi
to smanjilo broj izraunavanja statikih
vrednosti prilikom alfa-beta pretrage?
92

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}

distribucija: P(K=nema) = 0.25,


P(K=blaga) = 0.55, P(K=jaka) = 0.20

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

Oekivana vrednost (expected value)


diskretne sluajne promenljive je zbor
verovatnoa za svaki ishod pomnoen
vrednou tog ishoda.
Predstavlja oekivanu vrednost ako se sluajni
eksperiment ponovi veliki broj puta.

Ta vrednost ne mora biti meu vrednostima


koje uzima sluajna promenljiva
101

Oekivanje
Oekivanje funkcije sluajne promenljive:

Primer: oekivane vrednost bacanje fer kockice:

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

Postoji vor za svaki ishod koji je van nae


kontrole: protivnik ili okruenje
105

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

10 ili -100 naspram 0 je razliito od -10 ili 100


naspram 0

106

Expectimax evaluacija

107

Neizvesnost
Nije prisutna samo igrama

kaljem, da li sam bolestan?


email sadri FREE!!!, da li je spam?
zub boli, da li je pokvaren?
pola sata je dovoljno do posla?
...

108

You might also like