8
Gambar 2.1 Struktur Kecerdasan Buatan pada Game Millington, 2006
Struktur kecerdasan buatan dapat dibagi menjadi tiga bagian, movement pergerakan, decision making pengambilan keputusan, dan strategy strategi. Dua
bagian pertama movement dan decision making bekerja pada per-karakter yang ada pada game, sedangkan bagian strategy bekerja pada keseluruhan permainan. Tidak
semua permainan membutuhkan ketiga bagian tersebut. Contohnya pada board game, hanya membutuhkan bagian ketiga, yaitu strategy. Movement artinya diperlukan
sebuah algoritma yang membuat keputusan untuk melakukan sebuah gerakan. Sedangkan decision making diperlukan sebuah algoritma untuk memberi tahu langkah
apa yang harus dilakukan selanjutnya oleh karakter dan tentunya setiap karakter memiliki batasannya masing-masing untuk mengambil sebuah keputusan. Dan bagian
strategy berarti algoritma yang digunakan diterapkan pada seluruh karakter permainan, bukan algoritma yang hanya mengontrol satu karakter, tapi melibatkan
pengontrolan seluruh grup karakter. Walaupun setiap karakter pada grup karakter memiliki pergerakan dan cara pengambilan keputusan yang berbeda-beda untuk setiap
karakter, tapi tetap saja sebenarnya pergerakan seluruh bagian game dikontrol oleh strategi grup yang sama.
2.3 Algoritma
Algoritma adalah proses yang di lakukan langkah demi langkah yang menghasilkan sebuah solusi untuk menyelesaikan masalah pada kecerdasan buatan Millington,
2006. Contohnya saja algoritma untuk menemukan langkah terbaik untuk
Universitas Sumatera Utara
9
memenangkan permainan, atau algoritma untuk menentukan langkah selanjutnya yang harus diambil karakter, dan masih banyak contoh lainnya.
Algoritma membutuhkan struktur data untuk menyimpan data yang akan dipergunakan algoritma untuk diolah agar manghasilkan suatu solusi dari sebuah
masalah. Algotitma banyak digunakan untuk menyelesaikan berbagai masalah pada
computer science yang banyak diimplementasikan pada aplikasi seperti database system, expert system, robot control system, dan lain-lain. Pada sebuah game system,
dibutuhkan mesin pencari pada inti aplikasinya. Ada banyak algoritma pencarian yang telah digunakan untuk meningkatkan efisiensi pencarian seperti branch and bound,
alpha-beta pruning, algoritma minimax, dan lain-lain Borovska Lazarova, 2007.
2.4 Algoritma pada Board Game
Board game dijalankan dengan menerapkan algoritma turn-based yang biasanya hanya dimainkan oleh dua orang pemain yang bermain secara bergantian. Agar
menang kita harus membuat lawan kita menjadi kalah. Jika menang kita mendapat point +1, dan lawan kita yang kalah akan mendapat poin -1. Ini disebut juga dengan
zero-sum game Millington, 2006. Tidak peduli cara apa yang diambil, apakah mencoba untuk menang atau membuat lawan menjadi kalah akan menghasilkan hasil
yang sama. Board game juga adalah permainan dengan perfect information. Perfect
information berarti tidak ada informasi yang disembunyikan oleh kedua pemain Carolus, 2006. Tidak seperti dalam permainan kartu, contohnya poker, yang mana
salah satu pemain tidak mengetahui informasi kartu lawan, begitu juga sebaliknya. Perfect information membuat kedua pemain mengetahui mengenai permainan yang
akan dimainkan. Kedua pemain tahu hasil yang akan dicapai terhadap suatu langkah yang akan diambil, atau juga langkah selanjutnya yang bisa diambil setelah
sebelumnya melakukan suatu langkah. Yang tidak diketahui hanyalah langkah yang akan diambil lawan. Namun tetap saja akan diketahui kemungkinan-kemungkinan
langkah yang akan diambil lawan dan dampak untuk langkah kita selanjutnya. Pada dasarnya, algoritma minimax memiliki konsep pencarian dengan teknik
Depth First Search DFS. DFS akan membuat semua kemungkinan langkah dalam bentuk pohon dimana cabang-cabangnya merupakan kemungkinan langkah yang
Universitas Sumatera Utara
10
tercipta akibat langkah yang dibuat oleh parent node sampai akhirnya didapat salah satu pemain yang memenangkan permainan Timothy, 2014.
Pada gambar 2.2 ditunjukan bagaimana pohon permainan untuk permainan tic tac toe.
Gambar 2.2 Pohon Permainan dari Permainan Tic Tac Toe Borovska Lazarova, 2007
Setiap permainan turn-based dapat direpresentasikan dalam bentuk pohon permainan. Gambar 2.2 menunjukan pohon permainan dari permainan tic tac toe
untuk dua langkah pertamanya. Setiap node pada pohon menunjukan posisi papan permainan dan setiap cabangnya menunjukan langkah yang dapat diambil. Jumlah
cabang untuk setiap papannya adalah sama dengan jumlah dari langkah yang dapat diambil. Ada saatnya pada suatu posisi papan tidak ada lagi langkah yang bisa
diambil. Itu berarti telah mencapai akhir permainan dan point akhir akan diberikan pada setiap pemain. Pada zero-sum games, point akhir setiap pemain jika ditambahkan
akan sama dengan nol.
2.5 Algoritma Minimax