Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
1
Problem Solving Game Playing
Ref : Artificial Intelligence: A Modern Approach ch. 5 Senin, 18 Feb 2002
2
Review Problem dng. tugas 1 (tugas bab 3) ? Informed search
Best-first search : Greedy search. A* search. Memory bounded search : Iterative Deepening A* search (IDA*). Simplified Memory-bounded A* search (SMA*). Iterative Improvement Algorithms : Hill Climbing. Simulated Annealing.
3
Review Heuristik Pemilihan fungsi heuristik ? Membuat fungsi heuristik
Akurat. Efisien. Membuat fungsi heuristik Melemahkan permasalahan. Menggabungkan beberapa fungsi heuristik yg. admissable. Statistik. Memberikan bobot pada faktor-faktor yg. diperkirakan mempengaruhi tercapainya suatu goal (learning from observation).
4
Game Playing Permainan sederhana, spt. jenis simple puzzle (e.g. 8-puzzle), dapat diselesiakan dng. metode-metode search sebelumnya (blind & informed search). Permainan (game) yg. melibatkan minimal 2 org. pemain, berarti melibatkan pula unpredictable opponent contingency problem. Search space game besar & biasanya ada batas waktu Pemain harus menentukan langkah selanjutnya berdasarkan informasi yg. dimiliki saat ini (tdk. tahu pasti hasil tindakannya) lebih mendekati real world problem
5
Game Playing Game bisa dibagi menjadi :
(src:slide buku Russell&Norvig) Beberapa metode search utk. game playing : Minimax. Alpha-Beta Pruning. Expectiminimax.
6
Minimax Utk. game yg. deterministic & memiliki perfect information.
Terdiri atas level max & min Max : pemain node yg. di-expand berikut adalah yg. nilainya terbesar. Min : lawan (asumsi: lawan bermain semaksimal mungkin utk. meminimumkan nilai kita). node yg. di-expand berikut adalah yg. nilainya terkecil. Node di-expand sampai terminal states (states dimana game berakhir), pada terminal dilakukan penghitungan utility function-nya. Nilai ini kemudian dipropagasikan ke atas sampai root berdasarkan max/min. Yg. penting nilai relatif, bukan absolut.
7
Minimax Complete. Optimal (jk. lawan memilih yg. langkah yg.optimal juga). Dng. b : branching factor, m : max. depth : Time complexity : O(bm). Space complexity : O(bm). Contoh : Utk. catur : reasonable game jk. b 35, m 100. tdk. feasible jk. harus meng-explore semua. Solusi : Menentukan depth (cutting-off search). Pruning.
8
Minimaxing with Fixed-Depth Limit
Sama dengan minimaxing, hanya saja node di-expand sampai batas depth tertentu, misal sampai level n (n ply). Biasa disebut n-move look-ahead. Nodes pada level n dianggap sebagai leaf (cutoff, minimax biasa : terminal) & penghitungan evaluation function (minimax biasa : utility function) dilakukan pada leaves tsb. Evaluation function : estimasi utility (heuristik). Jk. pemilihan n tidak tepat, dapat terjadi suatu langkah dipilih krn. berdasarkan penghitungan evaluation function akan menang, tapi ternyata akan mengakibatkan kekalahan.
9
Minimaxing with Fixed-Depth Limit
Maslah : Cutoff test. Cutoff harus dilakukan pada posisi quiescent (funsi evaluasi tdk. menghslkan nilai yg. sangat berbeda dng. kenyataan nanti). Solusi : meng-expand posisi non-quiescent hingga diperoleh posisi quiescent. Pencarian ini disebut : quiescent search. Contoh : utk catur
10
Minimaxing with Fixed-Depth Limit
Horizon problems : Jk. posisi yg. dihadapi dapat mengakibatkan kekalahan & posisi tsb. sukar utk. dihindari. Umumnya yg. dilakukan hanya menunda terjdinya posisi tsb. shg. melewati batas depth (over the horizon). Belum ada general solution utk. mengatasinya. Contoh : utk catur
11
Minimaxing with Fixed-Depth Limit
Tidak complete (kecuali jk. depth limit = max level). Tidak optimal (kecuali jk. depth limit = max level). Dng. b : branching factor, d : depth : Time complexity : O(bd). Space complexity : O(bd). Branching factor (b) game, umumnya besar (e.g.: 35 utk. catur). Dng. minimax, jk. b sngt. besar, mk. depth yg. feasible utk. di-explore lebih sedikit, berarti look-ahead juga kecil. Contoh : utk. catur, mis. waktu utk. berpikir : 100 sec & waktu meng-explore node : 104 nodes/sec, mk. utk. tiap move, kita dapat meng-explore 106 nodes. bd = 106 35d = 106 d = 4 Jadi hanya bisa melihat 4 langkah ke depan (dlm. catur : novice).
12
Alpha-Beta Pruning Sebenarnya tdk. semua nodes perlu di-explore
Alpha-beta pruning tidak meng-expand node-node yg. tidak mungkin dipilih. Expand dilakukan secara DFS. Sama seperti minimax, hanya saja nilai max (alpha) yg. ada hingga sekarang & nilai min (beta) yg. ada hingga sekarang disimpan, shg. : Jk. pd. level max, menjumpai node yg. value-nya < alpha, node tsb. tidak di-expand. Jk. pd. level min, menjumpai node yg. value-nya > beta, node tsb. tdk. di-expand. Utk. jelasnya : lihat contoh di papan.
13
Alpha-Beta Pruning Complete.
Optimal (jk. lawan memilih yg. langkah yg.optimal juga). Dng. b : branching factor, d : depth : Time complexity : O(bd/2) rata-rata. Space complexity : O(bd) max. Umumnya, waktu yg. dibutuhkan alpha-beta pruning adalah 1/2 waktu yg. dibutuhkan minimax, mk. look-ahead yg. mungkin juga menjadi 2X lipat. Mis.: utk. contoh catur di slide 11, dng. alpha-beta pruning, ada 8 langkah yg. dapat dilihat (average player).
14
Expectiminimax Utk. game-game yg. non-deterministik (ada unsur kemungkinan/chance), misal jumlah langkah dibatasi oleh nilai dari dadu yg. dilempar (monopoli), mk. perlu ditambahkan chance nodes pada search tree-nya. Sama dng. minimax, hanya saja antara level max dng. min / min dng. max, terdapat chance nodes yg. menunjukkan probabilitas dapat dilakukannya suatu langkah (lihat contoh). Alpha-beta pruning ? pruning dapat juga dilakukan dng. memberikan batas pada utility/evaluation function, shg. jk. ada node yg. melebih/kurang dr. batas atas/batas bawah fungsi, dapat langsung di-ignore.
15
Expectiminimax Nilai absolut evaluasi/utility dpt. berpengaruh. Contoh : Time complexity : O(bmnm) atau O(bdnd), n : jumlah kemungkinan (misal hasil melempar 1 dadu, n = 6).
16
Game Playing (Accomplishment)
Catur : 1997 : Deep Blue (IBM) mengalahkan juara dunia, Garry Kasparov. Deep Blue mampu melihat 40 langkah ke depan, elo rating sekitar 2600 yg. berarti termasuk 100 besar pecatur dunia. Checkers : 1994 : Chinook (buatan Jonathan Schaeffer & team, University of Alberta) menjadi juara dunia checkers.
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.