Rok Piltaver
PATOLOGIJA PREISKOVANJA V IGRI
OSMIH PLOŠČIC
Predstavitev diplomske naloge
Mentor: akad. prof. dr. Ivan Bratko
Prostor stanj
Problem predstavimo s prostorom stanj
Prostor stanj je graf (pogosto kar drevo)
• Vozlišča = stanja (postavitev figur na šahovnici)
• Povezave = prehodi med stanji (poteza)
Prostor je lahko podan:
• eksplicitno (zemljevid)
• s pravili (pravila šaha)
Prostor stanj
c0
c1 c2
Začetno stanje
Končna stanja
c7 c6
c11 c14 c13
c5 c4 c3
C8 C9 C10 C12
Prostor stanj
Rešitev problema je lahko:
• Ciljno vozlišče (najbližja postaja LPP)
• Pot do ciljnega vozlišča (pot do postaje)
Prostor stanj je običajno prevelik, da bi ga
lahko preiskali v celoti. (čas, pomnilniški prostor)
Preiščemo le del prostora (do določene globine)
Cene povezav/vozlišč ocenimo s pomočjo
hevristične funkcije
Patologija preiskovanja
• Globlje preiskovanje običajno prinaša
boljše rezultate.
• Pojav, ko temu ni tako, imenujemo
patologija preiskovanja.
• Patologija minimaksa: D. S. Nau, "Quality of decision versus depth of search on game trees," 1979.
D. F. Beal, "An analysis of minimax," 1980.
• Patologija enoagentnega preiskovanja: V. Bulitko, idr., "Lookahead pathologies for single agent search," 2003.
Igra osmih ploščic
Patologijo v igri osmih ploščic so opazili: V. Bulitko, "Lookahead pathologies and meta-level control
in real-time heuristic search, " 2003.
A. Sadikov, I. Bratko, "Pessimistic Heuristics Beat
Optimistic Ones in Real-Time Search,“ 2006
Igra osmih ploščic
• Znano je, da je igra patološka
• Je standardni problem za preizkušanje metod enoagentnega preiskovanja
• Prostor stanj je lahko podati s pravili
• n2 - 1 ploščic je NP-težak problem
• 9!/2 stanj
• max 31 potez do rešitve
• Igro lahko rešimo s pomočjo računalnika
Različice igre osmih ploščic
• 4 pravokotne smeri premika
• + 4 diagonalne smeri premika
• Različico igre določa izbira n smeri
• 95 iger z 9! rešljivimi postavitvami
• 31 iger z 9!/2 rešljivimi postavitvami
• 129 iger z <202 rešljivimi postavitvami
Hevristična funkcija
• Hevristična funkcija vrača približke za
dejanske cene vozlišč.
• Cena vozlišča je minimalno število potez,
ki jih potrebujemo za rešitev.
enn )(*h)h(hevristična vrednost napaka hevr. fun.
cena vozlišča
postavitev = stanje v igri
Mera za patologijo preiskovanja
• Je razmerje med deležem napačnih
odločitev pri preiskovanju do globine 5 in
do globine 1.
• pat 5/1 > 1 patologija je prisotna
• pat 5/1 < 1 patologije ni
SolvPosi
SolvPosi
i
i
)(wrong
)(wrong
1/5pat1
5
Mera za patologijo preiskovanja
)(mintree#
))(*min)((mintree#)(wrong
nh
nhnhm
d
dd
Zrnatost hevristične funkcije
• Je število vrednosti, ki jih lahko zavzame
hevristična funkcija.
• Poskuse smo izvajali pri zrnatostih od 2 do
46 in še pri 64, 128, 256, 512, 1024 in
2048.
• Zrnatost hevr. fun. smo zmanjšali s
preslikavo intervalov vrednosti v
celoštevilsk vrednosti.
Zrnatost hevristične funkcije
0
0.2
0.4
0.6
0.8
1
1.2
1.4
2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 128
512
2048
Zrnatost hevristične funkcije (g)
Pato
log
ija (
pat
5/1
)
Min pat Običajna igra Vse smeri Max pat
Odvisnost patologije (pat 5/1) od zrnatosti hevristične
funkcije za izbrane različice igre osmih ploščic
Podobnost bratskih vozlišč
• velika podobnost bratskih vozlišč - kadar
so njihove cene podobne
n
i
i
n
i
i
n
i
i
n
i
i
n
i
i
n
i
i
n
i
ii
XY
yynxxn
yxyxn
s
1
2
1
2
1
2
1
2
111
)()(
N
i
N
j ji
N
i
b
j ik
b
ki
ijN
i i
cN
cN
cb
cb
Cf
i i
1
2
1
1 1
2
1
1
)1
(1
)1
(1
Korelacija
Faktor grozdenja
Podobnost bratskih vozlišč
Patologija različic igre osmih ploščic v odvisnosti od podobnosti bratskih
vozlišč (merjeno na osnovi korelacije) za hevristične funkcije z
zrnatostmi 5, 17 in 2048. Tanke črte predstavljajo trende.
0
0.2
0.4
0.6
0.8
1
1.2
0.877
0.886
0.889
0.891
0.901
0.904
0.905
0.908
0.908
0.912
0.914
0.915
0.917
0.922
0.926
0.926
0.927
0.935
0.940
0.947
0.948
0.953
0.954
0.956
0.966
0.966
Podobnost bratskih vozlišč (s)
Pa
tolo
gij
a (
pa
t 5
/1)
5 17 2048
Podobnost bratskih vozlišč
Patologija različic igre osmih ploščic v odvisnosti od podobnosti bratskih
vozlišč (merjeno s faktorjem grozdenja) za hevristične funkcije z
zrnatostmi 5, 17 in 2048. Tanke črte predstavljajo trende.
0
0.2
0.4
0.6
0.8
1
1.2
0.24
0
0.24
1
0.26
1
0.26
8
0.27
1
0.28
1
0.28
4
0.28
5
0.29
1
0.31
0
0.31
4
0.31
4
0.31
6
0.32
2
0.32
4
0.34
6
0.34
7
0.35
4
0.35
6
0.36
5
0.36
8
0.37
0
0.37
1
0.38
2
0.38
3
0.38
6
0.39
2
0.39
3
0.39
7
0.40
6
0.41
8
0.42
5
Faktor grozdenja
Pato
log
ija (
pat
5/1
)
5 17 2048
Faktor vejitve
Patologija preiskovanja v različicah igre osmih ploščic v
odvisnosti od faktorja vejitve
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.56
1.78 2 2
2.22
2.22
2.22
2.22
2.44
2.44
2.44
2.67
2.67
2.67
2.67
2.67
2.67
2.89
2.89
2.89
2.89
2.89
3.11
3.11
3.33
3.33
3.33
3.33
3.56
3.56
3.78 4
Faktor vejitve (b)
Pato
log
ija (
pat
5/1
)
5 17 2048
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.56 1.78 2 2.22 2.44 2.67 2.89 3.11 3.33 3.56 3.78 4 4.44
Faktor vejitve (b)
Pato
log
ija (
pat
5/1
)
5 17 2048
Faktor vejitve
Patologija preiskovanja, povprečena po različicah igre osmih ploščic z
enakim faktorjem vejitve, v odvisnosti od faktorja vejitve
Hevristična napaka
Odvisnost patologije preiskovanja od zrnatosti hevristične funkcije ob uporabi
različne stopnje hevristične napake (σ {2, 2,5, 3})
0.7
0.75
0.8
0.85
0.9
0.95
1
1.05
1.1
1.15
2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46128
5122048
Zrnatost hevristične funkcije (g)
Pato
log
ija (
pat
5/1
)
2 2.5 3
Hevristična funkcija
Patologija preiskovanja v običajni igri osmih ploščic v odvisnosti od zrnatosti
hevristične funkcije za optimistično, običajno in pesimistično hevristično
funkcijo
0
0.2
0.4
0.6
0.8
1
1.2
2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 128
512
2048
Zrnatost hevristične funkcije (g)
Pato
log
ija (
pat
5/1
)
optimistična običajna pesimistična
Hevristična funkcija
Odvisnost patologije preiskovanja od zrnatosti hevristične funkcije za
hevristične funkcije z enakomerno porazdelitvijo hevristične napake
0
0.2
0.4
0.6
0.8
1
1.2
2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 128
512
2048
Zrnatost hevristične funkcije (g)
Pato
log
ija (
pat
5/1
)
"[0, 6]" "[-6, 0]" "[-3, 3]" "[-6, 6]" normalna porazdelitev
Strojno učenje
Odločitveno drevo
6048 primerov = 126 iger x 48 zrnatosti
4 atributi:
• faktor vejitve (branching)
• podobnost merjeno s korelacijo (corell)
• zrnatost hevristične funkcije (NumVal)
• št. potez za rešitev najtežje postavitve (maxOD)
• Razred je patologija diskretizirana v 3 razrede (min pat, 0,95) (0,95, 1,05) (1,05, max pat)
Strojno učenje
Strojno učenje
Asociacijska pravila
126 primerov (vsaka igra je en primer)
7 atributov:
• faktor vejitve
• podobnost bratskih vozlišč merjeno na osnovi korelacije in s pomočjo faktorja grozdenja
• stopnjo patologije pri zrnatosti 8, 14, 36, 2048
• diskretizirano v 4 razrede (z enako frekvenco)
Strojno učenje
• pat8 = high => pat14 = high
• pat36 = high => pat2048 = high
• b = high => pat8 = high
• b = high => pat36 = high
• s = high => pat14 = low
• cf = low => pat8 = low
• s = high => cf = low
?