INITIAL STATE:
Matches merupakan
permainan yang menggunakan kecerdasaan buatan (AI). Dimana masing-masing player
dituntut untuk mengalahkan AI yang telah di buat. Kita harus menentukan langkah
yang benar untuk bisa mengalahkan AI, jika kita salah langkah, maka kita akan
kalah melawan AI. Perlu diketahui disini AI pada game ini sangat sulit di
kalahkan, kemungkinan untuk di kalahkan yaitu sekitar 10%. Di game ini ada 2 pilihan, yaitu computer terlebih dahulu,
atau player yang maju dahulu. Jika kita ingin menang melawan AI, di haruskan
kita tidak boleh mengambil ikon paling terakhir, atau kita akan kalah dari AI.
Didalam game matches
terdapat konsep AI yang diwajibkan untuk saya kembangkan pada praktikum ini.
Kali ini saya akan mengembangkan game Matches yang sudah saya pilih dengan
mengganti icon menjadi karakter Hamtaro dikarenakan saya suka dengan kartun
Hamtaro dan saya ingin mengingatkan terus tentang kartun semasa kecil saya
dahulu dan teman-teman saya. Itulah alasan mengapa game ini saya beri nama
“Hamtaro Matches”. Begitulah cerita singkat saya kenapa saya memilih matches
sebagai syarat sidang dalam praktikum kecerdasaan buatan ini.
Dibawah ini adalah rancangan tampilan matches
yang sudah saya kembangkan.
Tampilan Timer:
Tampilan Awal Permainan:
Tampilan Saat Permainan Sedang Berjalan:
Tampilan Saat Memilih Button Tentang:
Tampilan ketika kita memilih button help akan
menampilkan bagaimana cara bermain Matches. Button ini akan langsung terhubung
ke Web Browser karena sudah saya hubungkan langsung dengan web ketika
mengembangkan permainan ini.
Permainan dimulai
dengan menekan button Opsi, disitu akan terlihat pilihan computer dahulu atau
kita yang terlebih dahulu. Disini saya memilih untuk maju terlebih dahulu,
player pertama akan memilih salah satu ikon yang akan dihilangkan. Berikutnya
untuk CPU yang memilih untuk ikon mana yang akan dipilih untuk maju. Jika
player yang mengambil batang terakhir, maka pemain akan kalah, tapi jika AI
yang mengambil batang terakhir maka AI akan kalah. Namun disini AI sangat sulit
dikalahkan. Kita bisa mengambil berapapun batang yamg kita inginkan tapi harus
berada dalam satu kolom, begitu juga computer.
RULES:
Identifikasi ruang
keadaan permasalahan ini dapat di lambangkan dengan sebuah field dengan
background sebuah gambar. Di field tersebut terdapat 6 tingkatan yang terdiri
dari ikon-ikon yang tersusun sesuai tinggi yang di inginkan. Pemain hanya
terdiri dari player dan AI (CPU).
Keadaan awal dan tujuan.
Keadaan awal = papan permainan.
Keadaan tujuan = bagi yang terakhir meng-klik
ikon, dialah yang kalah.
Aturan-aturan:
1. Pada
button Opsi kita akan menentukan siapa yang akan memulai permainan terlebih
dahulu, AI atau Player.
2. Bermain
dengan 2 pemain, player mengawal permainan dengan memilih salah satu ikon yang
sudah tersedia.
3.
Yang terakhir memilih icon maka dipastikan akan kalah.
GOALS:
Tampilan Saat Pemain Menang:
Tampilan Saat Pemain Kalah:
Pada tampilan pertama, player dinyatakan
telah menang, karena langkah kesalahan AI. Sedangkan pada tampilan kedua palyer
dinyatakan kalah karena menjadi yang terakhir memilih ikon.
KONSEP AI:
AI akan selalu berjalan dan
memberikan perlawanan kepada kita sehingga tidak akan begitu mudah dapat
memenangkan game tersebut, pada saat memainkan permainan ini akan mendapatkan
hasil akhir berupa kita menang atau kita kalah melawan komputer, karena
prinsipnya game ini ingin anda yang kalah. Kesimpulan dari permainan ini ialah
bagaimana cara untuk memenangkan perlawanan dari komputer dengan tidak
mengambil korek api yang paling akhir (don’t take the last), jika pengguna
(user) dapat tidak mengambil korek api yang terakhir maka pengguna tersebut
ememnangkan permainan game Matches dan jika pengguna (user) mengambil korek api
yang paling akhir maka pengguna (user) tersebut dinyatakan kalah dalam
permainan game Matches ini.
ALGORITMA:
Berikut ini adalah algoritma yang
dipakai dalam permainan ini :
1.
Memilih salah satu beberapa dari 36 icon yang susunannya berbentuk
seperti korek api namun tingginya berbeda. icon yang telah di sediakan, pengguna (user) atau lawan (komputer) dapat memilih sesuai dengan yang di inginkan.
2.
Jika 36 icon telah
di pilih secara bergantian.
3.
Dengan cara mengklik
kiri pada mouse dan arahkan kursor kearah icon yang ingin di ambil.
4.
Jika pengguna (user)
bermain
sebagai pemain (player) pertama dan sudah
memilih pensil yang di inginkan untuk di ambil,
maka berikutnya lawan (komputer) yang memilih icon yang di
inginkan untuk diambil.
5.
Jika icon yang di sediakan telah habis maka akan dilihat siapa yang mengambil ikon yang paling
akhir untuk menentukan menang atau tidaknya pengguna (user) ataupun lawan
(komputer) karena syarat ketentuan permainan ini ialah akan menang jika tidak
mengambil icon yang paling akhir dan akan kalah jika mengambil ikon yang paling akhir.
6.
Jika pengguna (user)
bermain cepat dalam pengambilan icon maka lawan (komputer) akan menyamakan kecepatan seperti pengguna (user) dalam proses pengambilan icon.
7.
Jika
lawan (komputer) memenangkan permainan ini maka keluar message "You Lost!" Jika pengguna (user)yang memenangkan permainan ini maka akan keluar message “You Win".
8.
Permainan
selesai bila 36 icon telah habis baik
diambil pengguna (user) ataupun lawan (komputer). Dan akan menampilkan message menang atau tidaknya dalam permainan ini.
Dalam Game matches ini menggunakan Algoritma Backtracking
menggunakan dan DFS dalam pembentukan pohon solusi.
1. Pohon solusi dibentuk dari awal permainan sampai
akhir permainan.
2. Untuk permainan yang di nyatakan cukup kompleks
seperti permainan Matches, pembentukan pohon solusi di mulai dari awal
permainan sampai akhir permainan dapat direalisasikan karena pada game ini
mempunyai batasannya, yaitu kotak yang telah di batasin berapa banyak yang
dapat di beri tanda, sehingga bila anda ingin mengurutnya bisa di lakukan dan
di ketahui cara untuk memenangkan game ini. Sehingga bila anda cari dalam pohon
solusi bisa di selesaikan sampai tidak ada kemungkinan lagi untuk di cari
solusinya.
3. Semakin akurat fungsi heuristic yang digunakan,
semakin baik pula pengambilan keputusan yang dilakukan oleh AI.
Dengan menggunakan algoritma Bactracking untuk AI
dalam permainan Matches, pengguna (user) tidak akan begitu mudah untuk melawan
AI tersebut.