Nilai-nilai pada gambar 3.1 merupakan nilai dari strategi posisi bidak dalam permainan Checker. Pada gambar tersebut dapat kita lihat bahwa nilai tertinggi
terdapat pada kotak-kotak yang berada pada pinggir papan. Hal ini dikarenakan kotak pada pinggir papan merupakan kotak yang paling strategis, karena jika ada bidak pada
kotak ini maka bidak tersebut tidak bisa dimakan oleh bidak lawan.
3.1.4 Nilai Penobatan Raja
Agar dapat lebih leluasa dalam memakan bidak lawan maka sedapat mungkin seorang pemain harus menciptakan bidak raja di pihaknya. Hal ini terjadi bila bidak pion
mencapai baris depan terjauh baris raja. Dengan menjadi raja, maka bidak mampu bergerak maju atau mundur baik dalam melangkah maupun dalam memakan bidak
lawan sedangkan pion biasa hanya dapat berjalan maju saja. Penulis memberikan nilai +50 ketika terjadi kondisi penobatan raja.
3.2 Pohon Permainan dan Nilai Evaluasi
Pohon permainan ialah pohon yang menggambarkan kondisi-kondisi yang mungkin terjadi pada permainan, dimulai dari kondisi yang sedang dihadapi hingga beberapa
kondisi ke depan. Pohon permainan merupakan representasi grafis dari contoh permainan.
Penulis akan membuat suatu pohon permainan untuk suatu kondisi permainan Checker dan membatasi akar pohon hanya sampai tingkat 3. Berikut ialah gambar
kondisi permainan pada Checker.
Universitas Sumatera Utara
Gambar 3.2 Kondisi permainan pada Checker
Dari kondisi gambar 3.2, penulis dapat membuat suatu pohon permainan yang dapat merepresentasikan contoh permainan. Pohon permainan harus sesuai dengan
segala kondisi permainan yang berlaku mulai dari langkah-langkah yang boleh dilakukan sampai aturan-aturan permainan. Gambar 3.3 merupakan pohon permainan
yang diperoleh dari kondisi permainan gambar 3.2.
Gambar 3.3 Pohon permainan pada Checker
Pada gambar 3.3 menjelaskan giliran bermain pada sisi merah. Sisi merah memiliki 5 kemungkinan langkah yaitu 11-15 memindahkan bidak ada kotak 11 ke
kotak 15, 11-16, 4-8, 10-14 dan 10-15. Jika sisi merah memilih langkah 11-15, maka ketika giliran sisi putih bermain ia memiliki 1 kemungkinan langkah yang sesuai
dengan aturan permainan yaitu gerakan melompat 18-11, demikian seterusnya.
Universitas Sumatera Utara
Setelah membangun suatu pohon permainan, maka penulis memberikan nilai evaluasi pada setiap langkah yang terjadi pada pohon permainan. Seperti yang telah
kita ketahui bahwa nilai evaluasi dihitung dari sudut pandang satu pemain, dalam kondisi ini penulis mengevaluasi langkah dari sisi merah. Artinya nilai evaluasi dikali
positif untuk langkah sisi merah dan nilai evaluasi dikali negatif untuk langkah sisi putih.
Gambar 3.4 Pohon dengan nilai evaluasi pada setiap langkah
Pada gambar 3.4 penulis mengganti setiap langkah pada pohon permainan, dengan nilai evaluasi pada langkah tersebut sesuai dengan nilai-nilai evaluasi yang
telah penulis jelaskan pada pembahasan sebelumnya. Tabel 3.1 berisi penjelasan bagaimana nilai-nilai tersebut diperoleh.
Universitas Sumatera Utara
Tabel 3.1 Proses menghitung nilai evaluasi
Node Langkah
m = merah, p = putih
Nilai Bidak
Nilai Gerakan
Melompat Nilai
Posisi Nilai
Penobatan Raja
Nilai Akhir
a m11-15
-1 0+0-1+0 = -1
b m11-16
1 0+0+1+0 = 1
c m4-8
-1 0+0-1+0 = -1
d m10-14
0+0+0+0 = 0 e
m10-15 -1
0+0-1+0 = -1 f
p18-11 -100
-1 0-100-1+0 = -101
g p19-12
-100 -2
0-100-2+0 = -102 h
p18-14 -1
0+0-1+0 = -1 i
p18-15 0+0+0+0 = 0
j p19-15
1 0+0+1+0 = 1
k p19-16
-1 0+0-1+0 = -1
l p18-9
-100 -2
0-100-2+0 = -102 m
p19-10 -100
0-100+0+0 = -100
Algoritma Minimax menggunakan penelusuran Depth-First Search DFS untuk menelusuri pohon permainan dan memberikan nilai pada setiap simpul yang
telah dilaluinya. Agar algoritma bekerja sesuai dengan yang diharapkan, maka nilai- nilai evaluasi yang telah diperoleh harus berada pada leaf node pohon. Hal ini dapat
dilakukan dengan menjumlahkan nilai-nilai evaluasi setiap node yang menuju leaf node tersebut.
Gambar 3.5 Pohon dengan nilai evaluasi pada leaf node
Pada gambar 3.5 tampak bahwa setiap nilai evaluasi telah berada pada leaf node. Sehingga algoritma minimax dapat berjalan pada pohon tersebut.
Universitas Sumatera Utara
3.3 Analisis Algoritma Minimax