A. Initial
Game
·
Bahasa dan Program Editor
Game
“Kriting Wajik” adalah game yang diadaptasi dari game Tic Tac Toe lalu saya
kembangkan dengan menggunakan bahasa pemrograman Prolog. Prolog adalah bahasa
pemrograman logika atau disebut juga sebagai bahasa non-procedural. Namanya
diambil dari bahasa Perancis programmation en logique (pemrograman logika).
Bahasa ini diciptakan oleh Alain Colmerauer dan Robert Kowalski sekitar tahun
1972 dalam upaya untuk menciptakan suatu bahasa pemrograman yang memungkinkan
pernyataan logika alih-alih rangkaian perintah untuk dijalankan komputer.
Dalam
hal ini saya menggunakan Strawberry Prolog sebagai program editor. Alasan kami
menggunakan strawberry prolog ini karena menurut kami editor ini mudah untuk
digunakan dan mudah untuk mengimplementasikan AI secara sederhana dan merupakan
aplikasi light edition yang artinya program ini dapat dijalankan langsung tanpa
perlu diinstal. Strawberry Prolog dihasilkan oleh Institut Matematika dan
Informatika pada Akademi Ilmu Pengetahuan Bulgaria . Versi pertama dirilis pada
tahun 1996. Pemimpin tim Strawberry Dimiter Dobrev.
·
Tampilan Menu Utama
Pada tampilan utama
game Kriting Wajik terdapat tiga tombol yang masing-masing fungsinya yaitu
sebagai berikut :
ü Mulai
= Tombol ini berfungsi untuk
masuk ke jendela untuk memainkan game Kriting Wajik.
ü Cara
Bermain = Tombol ini berfungsi untuk
masuk ke jendela cara bermain yang dalamnya terdapat cara memainkan game
Kriting Wajik.
ü Keluar
= Tombol ini berfungsi untuk keluar dari game
Kriting Wajik.
·
Tampilan Main
Pada
tampilan main game Kriting Wajik terdapat sisa waktu, arena bermain, dan menu
dengan submenu Mulai Baru, Cara Main, About, dan Keluar. Fungsi-fungsinya yaitu
sebagai berikut:
ü Sisa
Waktu = Berfungsi untuk menghitung mundur waktu jika waktu habis maka permainan selesai.
ü Arena
Bermain = Tempat untuk
memainkan game Kriting Wajik.
ü Menu
= Berikut submenu dalam Menu
o
Mulai Baru : berfungsi untuk mamulai permainan
dari awal.
o
Cara Main : berfungsi untuk masuk
ke jendela Cara Bermain.
o
About
: berfungsi untuk menampilkan tentang game.
o
Keluar
: berfungsi untuk keluar dari game Kriting Wajik.
·
Tampilan Cara Bermain
Pada
tampilan cara bermain yaitu menjelaskan tentang cara memainkan game Kriting
Wajik. Di dalamnya juga terdapat dua tombol yaitu Kembali Ke Menu dan Main yang
masing-masing fungsinya adalah sebagai berikut :
ü Kembali
Ke Menu =
berfungsi untuk kembali ke layar utama game Kriting Wajik.
ü Main
= berfungsi untuk masuk
ke layar main.
B. Rules
(Peraturan Permainan)
Game
Kriting Wajik adalah game yang diadaptasi dari game Tic Tac Toe. Game TicTacToe
adalah sebuah game 2 dimensi yanng bertujuan untuk melatih otak dan untuk
hiburan semata.
Peraturan Permainan :
1)
Game ini hanya dapat dimainkan oleh satu
pemain melawan satu AI.
2)
Pemain menggunakan logo Kriting
sedangkan AI menggunakan logo Wajik.
3)
Pemain mengisi kotak terlebih dahulu
dalam permainan.
4)
Pemain dan AI saling bergantian untuk
mengisi kotak.
5)
Isi kotak yang masih kosong, tidak bisa
mengisi kotak yang telah diisi sebelumnya.
6)
Cara menyusun untuk memenangkan
permainan bisa dengan vertikal, horizontal maupun diagonal sebanyak sepuluh
(10).
7)
Jika waktu habis, maka permainan akan
selesai dan permainan dianggap seri.
8)
Pemenang adalah yang paling cepat
menyusun Kriting ataupun Wajik sebanyak sepuluh.
C. GOAL
·
Tampilan
Saat Menang
Untuk
memenangkan permainan ini hanya dengan menyusun logo kriting sebanyak sepuluh
dengan cara diagonal, vertical, maupun horizontal dan akan memunculkan kotak
dialog yang mengatakan “Anda Menang”.
·
Tampilan
Saat Kalah
Jika
logo wajik disusun lebih dulu oleh AI sebanyak sepuluh maka pemain akan kalah
dan akan muncul kotak dialog yang mengantakan “Yah Kalah”.
D.
Konsep Algoritma
Kecerdasan buatan atau yang sering disebut dengan AI pada
game ini terletak pada komputer yang akan bertindak sebagai lawan. Algoritma
yang digunakan pada game ini yaitu algoritma Minimax. Komputer akan selalu berusaha mengalahkan user. Komputer
dapat menyusun strateginya sendiri agar menjadi pemenang. Keuntungan yang didapat dengan menggunakan algoritma
minimax ini yaitu
algoritma minimax mampu menganalisis segala kemungkinan posisi permainan untuk
menghasilkan keputusan yang terbaik karena algoritma minimax ini bekerja secara
rekursif dengan mencari langkah yang akan membuat lawan mengalami kerugian
minimum.
Semua
strategi lawan akan dihitung dengan algoritma yang sama dan seterusnya. Ini
berarti, pada langkah pertama komputer akan menganalisis seluruh pohon
permainan. Dan untuk setiap langkahnya, komputer akan memilih langkah yang
paling membuat lawan mendapatkan keuntungan minimum, dan yang paling membuat
komputer itu sendiri mendapatkan keuntungan maksimum. Dalam penentuan keputusan
tersebut dibutuhkan suatu nilai yang merepresentasikan kerugian atau keuntungan
yang akan diperoleh jika langkah tersebut dipilih. Untuk itulah disini
digunakan sebuah fungsi heurisitic untuk mengevaluasi nilai sebagai nilai yang
merepresentasikan hasil permainan yang akan terjadi jika langkah tersebut
dipilih. Biasanya pada permainan tac tic toe ini digunakan nilai 1,0,-1 untuk mewakilkan
hasil akhir permainan berupa menang, seri, dan kalah. Dari nilai-nilai
heuristic inilah komputer akan menentukan simpul mana dari pohon permainan yang
akan dipilih, tentunya simpul yang akan dipilih tersebut adalah simpul dengan
nilai heuristic yang akan menuntun permainan ke hasil akhir yang menguntungkan
bagi komputer. Dan algoritma greedy juga termasuk di dalamnya.
Algoritma
greedy merupakan metode yang paling populer untuk memecahkan masalah optimasi.
Algoritma greedy membentuk solusi langkah per langkah.Pendekatan yang digunakan
di dalam algoritma greedy adalah membuat pilihan yang tampak memberi perolehan
terbaik, yaitu dengan membuat pilihan optimum local pada setiap langkah dengan
harapan akan mengarah ke solusi optimum global.Prinsip algoritma greedy pada
setiap langkah ialah mengambil pilihan terbaik yang dapat diperoleh saat itu
tanpa memperhatikan konsekuensi ke depan, dan berharap bahwa dengan memilih
optimum lokal pada setiap langkah akan menghasilkan optimum global pada akhir
proses.Persoalan optimasi algoritma greedy disusun oleh elemen-elemen berikut :
1)
Himpunan kandidat, yang berisi
elemen-elemen pembentuk solusi.
2)
Himpuan solusi, berisi kandidat-kandidat
yang terpilih sebagai solusi persoalan.
3)
Fungsi seleksi, dinyatakan dengan
predikat SELEKSI memilih kandidat yang paling memungkinkan mencapai solusi
optimal pada setiap langkah.
4)
Fungsi kelayakan, dinyatakan dengan
predikat LAYAK, memeriksa apakah suatu kandidat yang telah dipilih dapat
memberikan solusi yang layak dengan tidak melanggar constraints yang ada.
5)
Fungsi objektif, yang memaksimumkan atau
meminimumkan nilai solusi.Prinsip algoritma greedy pada setiap langkah ialah
mengambil pilihan terbaik yang dapat diperoleh saat itu tanpa memperhatikan konsekuensi
ke depan, dan berharap bahwa dengan memilih optimum lokal pada setiap langkah
akan menghasilkan optimum global pada akhir proses.
E. Glosarium
1)
Strawberry Prolog : Adalah dialek dari Prolog bahasa pemrograman . Sintaksnya sangat dekat dengan
ISO-Prolog tapi itu memiliki banyak ekstensi yang bukan bagian dari standar.
2)
AI (Artificial Intelegent) : Biasa disebut dengan Kecerdasan Buatan adalah kecerdasan yang diciptakan
dan dimasukkan ke dalam suatu mesin, dalam hal ini adalah computer
agar dapat melakukan pekerjaan seperti yang dapat dilakukan oleh manusia.
3)
Algoritma greedy : Merupakan
metode yang paling populer untuk memecahkan masalah optimasi.
4)
Kriting
: Logo kriting diambil dari logo kartu bridge.
5) Wajik
:
Logo wajik diambil darilogokartubridge
Daftar Pustaka
§ http://www.ittelkom.ac.id/staf/zka/Materi%20Desain%20Analisis%20Algoritma/M09Algoritma%20Greedy.pdf
Nama : Ivan Muhammad Rifai
NPM : 53411756
Kelas : 3IA11
No comments:
Post a Comment