Anda di halaman 1dari 13

GAME PLAYING

Algoritma Minimax
Sejarah
• Teori Game: tahun 1950
• Game pertama: Catur
• Konsep cerdas dibutuhkan untuk mengontrol dan mengklasifikasikan
karakter pemain atau bukan
Jenis Game
• Perfect information Game
Pemain mengeahui semua langkah yang mungkin terjadi dari dirinya
sendiri dan dari lawan, beserta hasil akhir dari permainan mereka.
• Imperfect Information Game
Pemain tidak tahu semua kemungkinan langkah lawan
Jenis Game (2)
• Deterministik
Perilaku yang sudah ditentukan sebelumnya dan dapat diprediksi 
cenderung mudah ditebak
• Non Deterministik
Perilaku memiliki tingkat ketidakpasstian dan agak bisa ditebak
(tingkat ketidakpastian tergantung pada metode AI yang digunakan
dan seberapa baik metode tersebut dipahami). Contoh: karakter non
player belajar untuk beradaptasi dengan taktik tempur pemain.
Pembelajaran dapat menggunakan JST, Bayesian, atau algoritma
Genetika
Game Playing
• Game diwakili oleh pohon pencarian dimana node-node
menunjukkan semua kemungkinan game dan edges mewakili langkah
antara kedua pemain.
• Untuk menggambarkan game secara lengkap, digunakan pohon
pencarian.
Pohon pencarian
• Pohon pencarian menggambarkan pemahaman visual dari pencarian
langkah-langkah yang diperbolehkan dalam suatu permainan
• Titik-titik keputusan pada pohon diwakili oleh node yang terhubung
oleh cabang-cabang
• Node-node melambangkan permainan
• Node paling atas disebut akar -- > tempat dimulainya pencarian, yaitu
di level 0
• Node paling bawah disebut daun atau node terminal
Komponen Game Playing
• Keadaan awal
• Fungsi Penerus (Succesor Function)
• Goal test
• Path Cost/ Utility/ Payoff Function  Memberikan nilai numerik
untuk keadaan terminal. Misal menang, kalah, seri didefinisikan
dengan nilai 1, -1, 0
Fungsi Evaluasi
• Metode untuk mengukur seberapa baik sebuah posisi pada saat itu
• Contoh:
Misal 𝑓(𝑛) adalah fungsi evaluasi ke - 𝑛
𝑓 𝑛 ≫ 0  posisi 𝑛 baik untuk komputer dan jelek bagi lawan
𝑓 𝑛 ≪ 0  posisi 𝑛 baik untuk lawan dan jelek bagi komputer
𝑓 𝑛 = 0  posisi 𝑛 netral
Algoritma Minimax
• Dikembangkan pada tahun 1928 oleh John Von Neuman
• Hanya berlaku untuk game yang memiliki dua pemain yang bermain secara
bergantian, yaitu manusia melawan komputer.
• Minimax dapat berjalan dengan baik jika seluruh keadaan langkah yang
mungkin terjadi dari para pemain dapat diketahui, Contoh: Catur, Tic Toe,
Checker, dll
• Algoritma minimax tidak dapat digunakan jika komputer tidak bisa melihat
semua langkah pemain yang mungkin terjadi.
• Dalam algortima Minimax, MAX adalah sebutan bagi pemain (komputer)
yang bertujuan untuk mendapat nilai maksimal, dan MIN adalah sebutan
bagi lawan yang bertujuan mendapat nilai minimal
Prosedur Minimax
• Tandai masing – masing level pada ruang pencarian esuai dengan
langkahnya pada level tersebut
• Mulai pada node daun, dengan menggunakan fungsi evaluasi, berikan
nilai pada masing-masing node
• Arah menjalar keatas:
• Jika node orangtua adalah MAX, pilihlah nilai terbesar yang terdapat pada
node anak dan berikan nilai MAX pada orang tua
• Jika node orangtua adalah MIN, pilihlah nilai terbesar yang terdapat pada
node anak dan berikan nilai MIN pada orang tua
Contoh: Game TIC TAC TOE
• Misalkan pada keadaan sekarang, O (lawan) sudah mendapatkan
giliran bermain dan X (komputer) akan melakukan langkah berikutnya.
Langkah apa yang sebaiknya dilakukan oleh komputer berdasarkan
keadaan ini?
0

O sebagai MIN (Level 0)

+1 +1
0
X sebagai MAX (Level 1)

0 0 +1
-1 +1 -1 O sebagai MIN (Level 2)

0 +1
+1 0
X sebagai MAX (Level 4)
Latihan
• Misalkan diketahui representasi pohon pengetahuan pada game
sembarang dengan 2 pemain yang bermain bergantian adalah sebagai
berikut:
MAX – Level 0

MIN – Level 1

MAX – Level 2

MAX – Level 0

MAX – Level 4

3 17 2 12 15 25 0 2 5 3 2 14