Kenapa mempelajari games?
Kriteria menang atau kalah jelas
Dapat mempelajari permasalahan
Alasan histori
Menyenangkan
•
•
•
•
• Biasanya mempunyai
besar (misalnya game
search space yang
catur mempunyai
35
100nodes dalam search tree dan
10
40legal
Seberapa hebat
computer game
player?
- Catur:
• Deep Blue mengalahkan Gary Kasparov pada
tahun 1997
• Gary Kasparav vs. Deep Junior (Feb 2003):
Checkers:
• Chinook adalah juara dunia
Go:
• Computer player adalah sangat tangguh
Bridge:
seri
Garry Kasparov and Deep Blue. © 1997, GM Gabriel Schwartzman's Chess Camera,
~~
OS> 1111 "11'1
0' ':l . -1111 111 11:1 1:11 11'1 1'11 i j"
.
.
i1
1
!• i
i
a'"
,
l
8i
;
'"
0 I
~J.I.
a
oS!
!
~t
~
I
~
8 ~
.
.
1 3.
.
s It ~.5 ...
i
> 0
~ ~§ ~ .. .
a
j
i
l
l
~
a
.
:
u
!'>~... ~ ~ . . -e :; z' " . V.
.i.
-5 i
J
ljf
i
U
isi
f
~ ; !'o . :1i ~ . . j,if~
j
J. I " QI <: 0 0 '" ' . .11 "~
. .
~J
~JI
.! <:
~
l
QI EB ''. "" . f. a ! .c 'll -Il ..
0
0
d
f
j
~
.. .u
k
...
'-'." ~
January/February 2003
://www.chessbase.coalnew
sdetail.
..e.
Yahoo! news ~, Bookmarks 0 Location:
..e.
Google..e.
Systems Desk
Gil' Whal's
Columbia Bank
Related
UMBC Phone Directory ~ CSEE Calendar ~ >
ONLIN E
DATAIASE > lEW PRODUCTS
> SUPPORT
>
DOWILDA
D
> GERMAN PAGE
,
> SPANISH PAGE
,
S
HOP
> CATALOG
,
':iJC1D1m .... : TIl. ftnt foUl. Omelll Wort. CIIIsI CbamDlonshlJ
MAN (Kaaparov) VS MACHINE (Deep JunIor)
>
CONTACT JaD'Vottd Sc:ttedl
lfe
> OK"l.D(1DA.TIlIt!'t.SE
> PlAYDtDATJLItJtSE
> eN USB.U"£ WORU > DIS'l'JU8urOllS
>~
Score
ChasBGUN~'J
",!\bac
k
MAfl.u ] l'1I.f'upillioll
Ciri umum pada game
2 pemain
Kesempatan pemain bergantian
Zero-sum: kerugian seorang pemain adalah
keuntungan pemain lain
Perfect information: pemain mengetahui semua
informasi state dari game
Tidak mengandung probabilistik (seperti dadu)
Contoh: Tic-Tac-Toe, Checkers, Chess, Go,
Nim,
Othello
•
•
•
•
•
•
• Game tidak termasuk Bridge,
Backgammon, dan semisalnya
Bagaimana bermain game?
• Cara bermain game:
-Pertimbangkan semua kemungkinan jalan Berikan nilai pada semua kemungkinan jalan Jalankan pada kemungkinan yang
mempunyai terbaik
Tunggu giliran pihak lawan jalan Ulangi cara diatas
nilai
-• Key problems:
-Representasikan "board" atau "state" Buatlah next board yang legal
Evaluation function
• Evaluation function atau static evaluator digunakan
untuk mengevaluasi nilai posisi yang baik
Zero-sum assumption membolehkan untuk
menggunakan single evaluation function untuk
mendeskripsikan nilai posisi
•
-f(n) f(n) f(n) f(n) f(n)
00 0: posisi n baik untuk saya dan jelek untuk lawan «« 0: posisi n jelek untuk saya dan baik untuk lawan near 0: posisi n adalah posisi netrallseri
Contoh evaluation function
• Tic-Tac-Toe
fen) = [# of 3-lengths open for me] - [#
you]
of 3-lengths open for
dimana 3-length adalah complete row, column, atau diagonal yang terisi
Alan Turing's function untuk catur
- f(n) = w(n)/b(n) dimana wen) = jumlah point value bidak putih and ben) = jumlah point value dari bidak hitam
Deep Blue eyang mengalahkan Gary Kasparov tahun
1997) mempunyai lebih dari 8000 features untuk
evaluation function
•
Minimax
• John von Neumann pada tahun 1944
menguraikan sebuah algoritma search
pada
game, dikenal dengan nama Minimax,
memaksimalkan posisi pemain dan
meminimalkan posisi lawan
MAX 1 A
MIN 1 8 ·3 c
MAX 4 D 1 E 2 F ·3 G
4 ·5 ·5 1 ·7 2 ·3 ·8
2
1
2 2 1
2 7 1 8 2 7 1 8 2 7 1 8
2
Jalan yang dipilih oleh Minimax
Static evaluator value
2 1
MAX
Contoh: Game Nim
• •
Diawali serangkaian batang
Setiap pemain harus memecah serangkaian batang menjadi
2 kumpulan dimana jumlah batang di kosong
tiap kumpulan tidak boleh sama dan tidak boleh
+
+
Misalkan jumlah total batang = 7
2-1-1-1-1-1
2-2-1-1-1 3-1-1-1-1
2-2-2-1 3-2-1-1
4-1-1-1
5-1-1 4-2-1 3-2-2 3-3-1
4-3
6-1 5-2
Asumsi
• MIN bermain dulu
• Evaluation function:
- 0 M
�
IN menang
MAX
0
0
MAX 4-1-1-1 3-2-1-1 2-2-2-1
4-3 5-2
6-1
MIN
1
71 1 1
0 1 0 1
MIN 5-1-1 4-2-1 3-2-2 3-3-1
1
MIN 3-1-1-1-1
0
2-2-1-1-1
1
MAX
Alpha-beta pruning
•
•
Merupakan improvisasi dari Minimax
Basic idea
HIf you have an idea that is surely bad, don't take
the time to see how truly awful it is." (Pat
Winston)
MAX >=2
• Tidak perlu menghitung nilai pada node ini.
• Nilai pada node tersebut
tidak akan berpengaruh pada root-nya.
MIN =2 «=1
MAX
A M AX
<=6 B C
MIN
6 D >=8 E
MAX
H I J K
6 5 8
>=6 A
MAX
6 B <=2 C
MIN
6 D >=8 E 2 F G
MAX
H I J K L M
6 5 8 2 1
>=6 A
MAX
6 B 2 C
MIN
6 D >=8 E 2 F G
MAX
H I J K L M
6 5 8 2 1
cutoff
Alpha-beta Pruning
6 A
MAX
6 B
2 C beta
MIN
6 D >=8 E alpha 2 F G
c utoff
MAX
H I J K L M
6 5 8 2 1
= agent
Referensi
• Notes by Charles R. Dyer, University of
Wisconsin-Madison.
Game Playing, Graham Kendall.
Modul Ajar Kecerdasan Buatan, Entin Martiana,
Tessy Badriyah, Riyanto Sigit, Politeknik
Elektronika Negeri Surabaya, 2005.
Artificial Intelligence (Teori dan Aplikasinya), Sri
Kusumadewi, cetakan pertama, Penerbit Graha Ilmu,
2003.
•
•