Jurnal Rekursif, Vol. 4 No. 3 September 2016, ISSN 2303-0755
APLIKASI PERMAINAN MUL-MULAN DENGAN MENGGUNAKAN ALGORITMA MINIMAX Bobby Kurniawan1, Boko Susilo2, Diyah Puspitaningrum3 1,2,3
Program Studi Teknik Infomatika, Fakultas Teknik, Universitas Bengkulu. Jl.WR. Supratman Kandang Limun Bengkulu 38371A INDONESIA (telp: 0736-341022; fax: 0736-341022) 1
[email protected], 2
[email protected], 3
[email protected]
Abstrak: Permainan Mul-mulan merupakan permainan asah otak tradisional yang sangat sederhana tanpa menghabiskan banyak sumber daya dan biaya. Permainan ini dimainkan oleh dua orang yang saling berhadap-hadapan. Penelitian ini membangun aplikasi permainan mul-mulan menggunakan algoritma minimax dan menentukan ketertarikan pengguna pada permainan mul-mulan. Algoritma minimax adalah algoritma yang dapat menganalisis semua kemungkinan posisi permainan untuk menghasilkan keputusan terbaik dengan mencari langkah yang akan membuat lawan mengalami kerugian. Terdapat 3 level dalam permainan ini yaitu mudah, sedang, dan sulit. Adapun metode pengembangan system yang digunakan untuk membangun aplikasi ini adalah model waterfall. Hasil penelitian yang dilakukan yaitu aplikasi yang dibangun berbasis desktop dengan menggunakan bahasa pemrograman Microsoft Visual Basic 6.0 yang diberi nama Aplikasi Permainan Mul-mulan dan memiliki ketertarikan pengguna sebesar 45%. Kata Kunci: Mul-mulan, Minimax, Visual Basic. Abstract: Mul – Mulan is a traditional brain
applicationn built using Microsoft Visual Basic
teasers game that very simple without spending
6.0, was named Applications Game Mul-Mulan
a lot of resources and costs. The game is played
and have an interest of 45%.
by two people face to face. This study builds
Keywords: Mul-mulan, Minimax Algorithm,
mul-mulan game application using minimax
Visual Basic
algorithm and determine user interest in mulmulan’s game. Minimax algorithm is an
I. PENDAHULUAN
algorithm that can analyze all the possible
Seiring dengan perkembangan zaman yang
positions of the game to make the best decision
semakin modern, maka kini semakin banyak pula
to seek measures that will make the opponent at
permainan-permainan yang sangat canggih dan
a disadvantage. There are 3 levels in this
didukung dengan teknologi tinggi, dan biasanya
application are easy, medium, and hard. As for
permainan-permainan ini ditujukan bagi anak-
method development system used to build this
anak. Akibat dari perkembangan zaman, maka tak
application is the waterfall model. Results of
heran jika anak-anak sekarang tidak mengenal
research
beragam permainan tradisional yang ada di negara
conducted
ejournal.unib.ac.id
that
esktop-based
245
Jurnal Rekursif, Vol. No. Juli 2016, ISSN 2303-0755
yang kaya akan seni dan budayanya ini. Berbeda
bermain game, dibandingkan bermain dengan
ketika beberapa puluh tahun yang lalu, ketika
teman-temannya.
masih kecil mungkin anak-anak lebih mengenal
Banyak sekali permainan tradisional Indonesia
Mul-
yang dapat membantu pola berpikir anak, seperti
mulan, enggrang, bakiak, congklak, kelereng,
halnya sebuah permainan asah otak tradisional
engklek, dan lain-lain.
yang disebut Mul-mulan. Permainan ini hampir
permainan-permainan
tradisional seperti
Permasalahannya adalah bukan anak-anak tidak
mirip dengan permainan catur. Bagi generasi
ingin menerima kemajuan teknologi yang terjadi
setelah tahun 80-an, mungkin masih akrab dengan
saat ini. Namun perlu disadari bahwa, kemajuan
permainan
teknologi tidak seluruhnya membawa dampak
memainkannya.
positif namun juga membawa dampak negatif yang
primadona permainan tradisional di zamannya
tanpa disadari, terutama bagi anak-anak yang
sehingga anak-anak, laki-laki maupun perempuan
sedang mengalami fase perkembangan
banyak yang menyukainya.
ini,
atau
bahkan
Permainan
ini
sering
pula
merupakan
Saat ini berbagai macam permainan modern telah
Adapun contohnya pada penelitian sebelumnya
mudah didapatkan, baik secara online ataupun
tentang Algoritma Minimax ini adalah pada skripsi
offline dan sangat mudah untuk diakses oleh anak-
“Analisis Algoritma Minimax Optimasi Alpha -
anak,
yang
Beta Pruning pada Game Congklak” [1], Program
membiarkannya bahkan ada pula orang tua yang
Studi Ilmu Komputer, Universitas Veteran. Pada
menfasilitasi di rumah, dengan alasan sebagai
penelitian tersebut, telah dibuat sebuah aplikasi
hiburan anak ketika anak-anak berada di rumah.
menggunakan bahasa Java berbasis desktop yang
Selain disediakan di rumah, banyak juga orang-
diimplementasikan pada desktop yang dikhususkan
orang
untuk melatih berpikir otak kiri anak. Permainan
dan
yang
tidak
sedikit
membuka
orang
usaha
tua
game
seperti
congklak ini melatih strategi mengumpulkan angka
playstation, game online, dan lain-lain Apabila
hal
ini
berjalan
tanpa
adanya
pengawasan dari orang tua tentu cukup berbahaya
terbanyak agar bisa mengalahkan lawan. Permainan ini dimainkan oleh dua orang yang
dengan
saling berhadap-hadapan. Adapun yang disebut
permainan-permainan modern secara tidak sadar
bidak dalam permainan Mul-mulan biasanya
itu akan menjerumuskan anak ke hal yang bisa
menggunakan batu kerikil sebesar ibu jari. Setiap
berdampak negatif. Seperti misalnya anak sulit
pemain memiliki 9 (sembilan) bidak, yang bisa
untuk bersosialiasi, karena anak hanya selalu
dibuat menggunakan kertas, daun maupun batu
beriteraksi dengan permainan moderen, dimana
kerikil. Sementara papan permainannya sendiri
permainan-permainan modern saat ini biasanya
dapat di buat pada sembarang tempat. Bisa di atas
hanya dilakukan sendiri tanpa adanya interaksi
tanah, lantai tembok, papan kayu, kertas, dan lain-
dengan orang lain. Selain itu pula anak akan
lain dengan menggunakan arang, kapur tulis,
menjadi pasif dalam kehidupan nyata, ketika anak-
pulpen, bahkan dengan menggunakan ranting kayu
anak yang sudah kecanduan tehadap game maka
yang dicorat-coret, asal tampak ada garis lurus
cendrung anak akan pasif dalam kehidupan nyata,
memanjang dan menyilang, biasanya seukuran 30
lebih memilih berdiam diri di rumah sambil
cm x 30 cm.
bagi
246
perkembangan
anak.
Karena
ejournal.unib.ac.id
Jurnal Rekursif, Vol. 4 No. 3 September 2016, ISSN 2303-0755
Permainan Mul-mulan di masa sekarang sudah
konteks tidak serius atau dengan tujuan refreshing.
sangat sulit ditemukan di kalangan anak-anak.
Suatu
Padahal sebagaimana disebutkan permainan ini
menganalisa interaksi antara sejumlah pemain
merupakan permainan asah otak yang sangat
maupun perorangan yang menunjukkan strategi
sederhana tanpa menghabiskan banyak sumber
strategi yang rasional. Teori permainan pertama
daya apalagi biaya. Akan sangat disayangkan jika
kali ditemukan oleh sekelompok ahli Matematika
permainan Mul-mulan sampai lenyap menghilang
pada tahun 1944. Teori itu dikemukakan oleh John
tanpa ada kejelasan digerus zaman.
von Neumann and Oskar Morgenstern yang berisi :
cara
belajar
yang
digunakan
dalam
Untuk menghindari terjadinya hal tersebut,
Permainan terdiri atas sekumpulan peraturan yang
maka akan dilakukan perancangan permainan Mul-
membangun situasi bersaing dari dua sampai
mulan berbasis desktop. Diharapkan permainan
beberapa orang atau kelompok dengan memilih
Mul-mulan akan bisa menjadi lebih interaktif,
strategi yang dibangun untuk memaksimalkan
sehingga dapat menarik minat anak-anak Indonesia
kemenangan sendiri atau pun untuk meminimalkan
untuk
kemenangan
mengasah
otak
dan
mengembangkan
lawan.
Peraturan-peraturan
kemampuan dalam mengatur strategi dengan
menentukan kemungkinan tindakan untuk setiap
bermain Mul-mulan. Agar permainan Mul-mulan
pemain, sejumlah keterangan diterima setiap
bisa dimainkan oleh satu orang maka yang menjadi
pemain sebagai kemajuan bermain, dan sejumlah
lawannya adalah komputer yang telah diberi
kemenangan
kecerdasan
situasi”.
yaitu
menggunakan
algoritma
atau
kekalahan dalam berbagai
Minimax. Salah satu algoritma yang digunakan untuk permainan Mul-mulan adalah Minimax. Minimax merupakan
algoritma
yang
digunakan
untuk
menentukan pilihan langkah selanjutnya agar memperkecil
kemungkinan
kehilangan
nilai
maksimal. Algoritma ini mendeskripsikan kondisi apabila
terdapat
pemain
yang
mengalami
keuntungan, pemain lain akan mengalami kerugian senilai dengan keuntungan yang diperoleh lawan dan
sebaliknya.
Algoritma
Minimax
adalah
algoritma berupa pohon pencarian yang akan menelusuri setiap node untuk memperoleh hasil
B. Permainan Mul – Mulan Mul-mulan
merupakan
permainan
logika
berjenis board game yang dimainkan oleh dua pemain dimana setiap pemain berusaha menyusun 3 buah bidak sewarna dalam satu baris baik horizontal, vertikal maupun diagonal. Ukuran papan permainan Mul-mulan standar adalah 7 x 7 kotak dengan memiliki 24 titik yang bisa ditempati bidak. Board game sendiri adalah permainan dengan kepingan-kepingan yang ditempatkan di atas, dipindahkan dari atau digerakkan di atas suatu permukaan khusus, permukaan khusus itu disebut papan permainan [2].
yang maksimum.
II. LANDASAN TEORI A. Permainan Permainan
adalah
sesuatu
yang
dapat
dimainkan dengan aturan tertentu sehingga ada yang menang dan ada yang kalah, biasanya dalam
ejournal.unib.ac.id
Gambar 1. Papan Permainan
247
Jurnal Rekursif, Vol. No. Juli 2016, ISSN 2303-0755
C. Peraturan Permainan Mul-Mulan
Algoritma minimax merupakan salah satu
Dimainkan oleh 2 orang, papan permainan
algoritma yang sering digunakan untuk game
dalam keadaan kosong. Setiap pemain masing-
kecerdasan buatan yang menggunakan teknik
masing memiliki 9 buah bidak. Untuk menentukan
Depth First Search (DFS) dalam pencariannya
pemain yang berjalan pertama kali dilakukan suit.
pada pohon dengan kedalaman terbatas [3].
Dua pemain, melangkah bergiliran meletakkan
Algoritma minimax digunakan untuk memilih
bidak masing-masing di titik yang kosong pada
langkah terbaik, dimana kedua pemain akan saling
papan hingga bidak habis. Setelah tidak ada lagi
berusaha untuk memenangkan permainan. Selain
bidak di tangan maka langkah selanjutnya dengan
itu, algoritma minimax ini bekerja secara rekursif
menggeser bidak sesuai dengan garis yang telah
dengan mencari langkah yang akan membuat
ditentukan. Pemain yang behasil membuat 3 bidak
lawan mengalami kerugian minimum. Algoritma
dalam 1 baris disebut “mul” dan berhak mengambil
minimax mendeskripsikan kondisi apabila terdapat
1 pion lawannya. Jika 2 bidak lawan letaknya
pemain yang mengalami keuntungan, pemain lain
berseberangan
akan
dan
tengahnya
kosong,
maka
pemain bisa menaruh bidak di tengahnya dan 2 bidak lawan akan diambil. Istilahnya “gotong“.
mengalami
kerugian
senilai
dengan
keuntungan yang diperoleh lawan dan sebaliknya. Algoritma
minimax
akan
melakukan
Pemain dinyatakan kalah jika bidaknya tak tersisa
pengecekan pada seluruh kemungkinan yang ada,
lagi.
sehingga akan menghasilkan pohon permainan
D. Algoritma Minimax
yang
Minimax adalah teknik pelacakan mendalam.
berisi
semua
kemungkinan
permainan
tersebut [6]. Dengan pohon permainan ini setiap
Ide dasar dari minimax adalah untuk memulai pada
pemain
posisi yang terakhir dan menggunakan pembangkit
mungkin diberikan pada situasi permainan saat ini.
langkah
menghasilkan
Sehingga untuk setiap langkah dan semua langkah
sekumpulan posisi yang paling baik [3]. Algoritma
selanjutnya dapat diketahui. Dalam repersentasi
minimax merupakan algoritma yang diterapkan
pohon pada algoritma minimax, terdapat dua jenis
dalam game yang melibatkan dua pemain yang
simpul, yaitu simpul min dan simpul max. Max
saling bergantian, seperti tic-tac-toe, chess, go,
akan memilih langkah dengan nilai tertinggi dan
othello dan game yang menggunakan strategi atau
min akan memilih langkah dengan nilai terendah
logika lainnya [4]. Persamaan antara semua game
[3]. Dalam penentuan keputusan max/min tersebut
tersebut yaitu semua merupakan game logika dan
dibutuhkan suatu nilai yang merepresentasikan
game dengan informasi yang lengkap. Ini berarti
kerugian atau keuntungan yang akan diperoleh jika
bahwa game merupakan sekumpulan aturan main
langkah tersebut dipilih. Dapat mempergunakan
dan dasar pemikiran yang logis. Adanya aturan
fungsi penaksiran statis pada kumpulan posisi
main dan dasar pemikiran yang logis tersebut,
tersebut
maka nantinya setiap pemain dapat mengetahui
sederhana.
semua
yang mungkin dari pemain
mengembalikan nilai tersebut ke posisi awal untuk
lawannya, sehingga pemain bisa tetap “memantau”
menggambarkan evaluasi dari hasil tersebut.
kondisi
Fungsi
yang
langkah
permainan
berlangsung [5].
248
mungkin
untuk
sewaktu
game
sedang
mengetahui
dan
memilih Setelah
dari
mengembalikan
langkah-langkah
yang
terbaik
dengan
melakukannya,
dapat
penaksiran nilai
yang
statis
yang
besar
adalah untuk
ejournal.unib.ac.id
Jurnal Rekursif, Vol. 4 No. 3 September 2016, ISSN 2303-0755
mengindikasikan situasi yang baik, jadi tujuannya
(seperti pesawat tempur, radar, dan kapal selam)
adalah untuk memaksimalkan nilai dari fungsi
untuk beberapa kegiatan (penyebaran ke berbagai
penaksiran statis untuk posisi selanjutnya. Prosedur
target dan tujuan). Karena tidak ada metode
minimax
yang
sistematis yang tersedia untuk memecahkan
didasarkan pada dua prosedur pembantu. Adapun
masalah alokasi sumber daya, militer diatas (tim
pohon pencarian Minimax seperti pada Gambar 2
matematikawan) mengembangkan metode untuk
berikut ini.
memecahkan masalah secara ilmiah. Metode
merupakan
prosedur
rekursi
yang dikembangkan oleh tim berperan penting dalam memenangkan pertempuran udara oleh inggris. Metode tersebut seperti program linier, yang dikembangkan sebagai hasil riset pada militer. Perkembangan Gambar 2. Pohon Pencarian Minimax
diberikan.
semakin
dapat dilihat dengan semakin banyak metode
Optimasi adalah tindakan untuk memperoleh yang
optimasi
mengalami kemajuan hingga masa modern, hal ini
E. Optimasi
hasil
metode
terbaik Dalam
dengan
yang
optimasi
yang popular dan banyak dipakai antara lain seperti
pemeliharaan dari sistem teknik, harus diambil
Dynamic Programming, Integer Programming,
beberapa teknologi dan keputusan managerial
Game Theory, dan metode optimasi modern.
dalam beberapa tahap. Tujuan akhir dari semua
Metode optimasi modern juga disebut metode
keputusan seperti itu adalah meminimalkan
optimasi non-tradisional, muncul sebagai metode
upaya
untuk
yang ampuh dan popular untuk menyelesaikan
diinginkan.
masalah teknik optimasi yang kompleks. Metode
sebagai
yang termasuk seperti algoritma genetik, optimasi
yang
partikel swarm, optimasi koloni semut, optimasi
memberikan nilai maksimum atau minimum dari
berbasis jaringan syaraf tiruan, optimasi fuzzy, dan
suatu fungsi.
simulated annealing.
memaksimalkan
konstruksi,
solusi yang semakin optimal. Metode
dan
yang
desain,
keadaan
optimasi yang ditemukan dan dapat menghasilkan
diperlukan manfaat
atau
yang
Optimasi juga dapat didefinisikan proses
untuk
mendapatkan
keadaan
Metode mencari optimum dikenal sebagai teknik
mathematical
programming dan biasa
MTD(f) adalah salah satu pengembangan dari optimasi
algoritma
minimax.
Algoritma
ini
dipelajari sebagai bagian riset operasi. Riset
dikembangkan
operasi adalah cabang matematika yang berkaitan
Schaeffer, Wim Pijls, and Arie de Bruin pada tahun
dengan penerapan metode ilmiah dan teknik
1994. MTD(f) adalah singkatan dari Memory-
pengambilan
penetapan
enhanced Test Driver with node n and value f.
penyelesaian terbaik atau optimal. Pada awal dari
Dalam penelitiannya, Aske Plaat menyatakan
subyek riset operasi dapat ditelusuri pada periode
bahwa
awal Perang Dunia II, selama perang, militer
minimax paling efisien dibandingkan algoritma-
inggris menghadapi masalah mengalokasikan
algoritma minimax sebelumnya. Sebelum MTD(f),
keputusan
dan
oleh
algoritma
Aske
MTD(f)
Plaat,
adalah
Jonathan
algoritma
sumber daya yang sangat langka dan terbatas
ejournal.unib.ac.id
249
Jurnal Rekursif, Vol. No. Juli 2016, ISSN 2303-0755
banyak algoritma-algoritma optimasi minimax
digunakan pencarian zero-window, jadi untuk
seperta alpha-beta, negascout.
setiap
Dalam
beberapa
Alpha-beta
akan
permainan
mengembalikan batas bawah dan batas atas dari
komputer seperti catur, othello, dan checkers,
nilai Minimax berturut-turut. Pencarian dengan
algoritma ini mempunyai performa rata-rata lebih
zero-window memberikan lebih banyak jalan
baik daripada Negascout (variasi dari Alphabeta
pintas, tetapi lebih sedikit informasi –hanya batas
yang diimplementasikan dalam hampir semua
dari nilai minimax saja. Untuk menyiasati hal itu
permainan catur, checkers, dan othello). Salah satu
MTD(f) perlu memanggil Alpha-beta beberapa
program
yang
kali, untuk mendekati nilai itu. Imbas dari
menggunakan metode komputasi pararel, juga
pemanggilan Alpha-beta secara berulang-ulang
menggunakan
dapat dihilangkan dengan menggunakan versi dari
catur
pencariannya
percobaan
pemanggilan
terkuat,
milik
MTD(f)
MIT
sebagai
menggantikan
algoritma
Negascout
yang
digunakan oleh program catur pendahulunya,
Alpha-beta yang menyimpan nilai simpul dalam memori.
StarSocrates. III. METODOLOGI
Algoritma MTD(f) diatas memanggil fungsi Minimax berkali-kali dengan pencarian Minimax, tidak
seperti
Negascout
yang
A.
menggunakan
Teknik Pengumpulan Data Langkah-langkah
yang
dilakukan
dalam
pencarian wide-window. Pemanggilan Minimax
penelitian ini adalah:
mengembalikan batas dari nilai evaluasi Minimax.
1) Observasi : Metode pengumpulan data dengan
Batas dari nilai itu kemudian disimpan dalam
cara
upperbound (batas atas) dan lowerbound (batas
memainkan
bawah),
menggali
membentuk
sebuah
interval
yang
mengamati
masyarakat
permainan informasi
melingkupi nilai Minimax yang sebenarnya pada
permainan.
pencarian dengan Kedalaman tertentu. Positif dan
2) Kepustakaan:
yang
Mul-Mulan
mengenai
Teknik
masih dan
peraturan
pengumpulan
data
negatif tak hingga adalah kependekan dari nilai
dengan pengumpulan data
diluar interval pada daun pohon. Ketika batas atas
melalui berbagai sumber di internet dengan
dan batas bawahnya bernilai sama atau batas
tujuan
bawah telah melampaui nilai batas atas, maka nilai
permainan
Minimax telah ditemukan.
Minimax.
Efisiensi dari MTD(f) berasal dari pencarian Alpha-beta
dengan
zero-window,
dan informasi
memperdalam pengetahuan Mul-Mulan
dan
tentang
Algoritma
3) Analisa: Kajian yang dilaksanakan terhadap
dan
suatu
masalah
untuk
meneliti
struktur
menggunakan sebuah nilai batas yang baik
permasalahan tersebut secara mendalam. Alam
(variabel beta) untuk melakukan pencarian zero-
hal ini adalah bagaimana merancang permainan
window tersebut. Dalam versi yang sebelumnya,
Mul-Mulan dengan menggunakan algoritma
Alpha-beta dipanggil dengan pencarian wide-
Minimax.
window seperti ini AlphaBeta (root, -INFINITY, +INFINITY,
depth),
yang
memastikan
nilai
kembaliannya berada dalam interval alpha dan beta.
250
Sedangkan
dalam
algoritma
MTD(f),
B.
Metode Pengembangan Sistem Tahapan dari model waterfall ini adalah
mengarahkan kegiatan pengembangan dasar dari
ejournal.unib.ac.id
Jurnal Rekursif, Vol. 4 No. 3 September 2016, ISSN 2303-0755
fase pertama hingga fase terakhir, alur metode
dampak negatif yang tanpa disadari, terutama bagi
sistem dapat dilihat pada gambar 3.
anak-anak
yang
sedang
mengalami
fase
perkembangan [2]. Apabila
hal
ini
berjalan
tanpa
adanya
pengawasan dari orang tua tentu cukup berbahaya bagi
perkembangan
anak.
Karena
dengan
permainan-permainan modern secara tidak sadar itu akan menjerumuskan anak ke hal yang bisa berdampak negatif. Seperti misalnya anak sulit untuk bersosialiasi, karena anak hanya selalu beriteraksi dengan permainan modern, dimana permainan-permainan modern saat ini biasanya hanya dilakukan sendiri tanpa adanya interaksi dengan orang lain. Selain itu pula anak akan menjadi pasif dalam kehidupan nyata, ketika anakanak yang sudah kecanduan tehadap game maka Gambar 3. Diagram Alir Penelitian
cendrung anak akan pasif dalam kehidupan nyata, IV. ANALISIS DATA DAN PERANCANGAN
lebih memilih berdiam diri di rumah sambil bermain game, dibandingkan bermain dengan
A.
Analisis Permasalahan dan Kebutuhan
teman-temannya.
Seiring dengan perkembangan zaman yang
Permainan Mul-mulan di masa sekarang sudah
semakin modern, maka kini semakin banyak pula
sangat sulit ditemukan di kalangan anak-anak.
permainan-permainan yang sangat canggih dan
Padahal sebagaimana disebutkan permainan ini
didukung dengan teknologi tinggi, dan biasanya
merupakan permainan asah otak yang sangat
permainan-permainan ini ditujukan bagi anak-
sederhana tanpa menghabiskan banyak sumber
anak. Akibat dari perkembangan zaman, maka tak
daya apalagi biaya. Akan sangat disayangkan jika
heran jika anak-anak sekarang tidak mengenal
permainan Mul-mulan sampai lenyap menghilang
beragam permainan tradisional yang ada di negara
tanpa ada kejelasan digerus zaman [2].
Indonesia yang kaya akan seni dan budayanya.
Untuk menghindari terjadinya hal tersebut,
Berbeda ketika beberapa tahun atau beberapa puluh
maka akan dilakukan perancangan permainan Mul-
tahun yang lalu, ketika masih kecil mungkin anak-
mulan berbasis desktop. Diharapkan permainan
anak
permainan-permainan
Mul-mulan akan bisa menjadi lebih interaktif,
tradisional seperti mul-mulan, enggrang, bakiak,
sehingga dapat menarik minat anak-anak Indonesia
congklak, kelereng, engklek, dan lain-lain.
untuk
lebih
mengenal
mengasah
otak
dan
mengembangkan
Permasalahannya adalah bukan anak-anak
kemampuan dalam mengatur strategi dengan
tidak ingin menerima kemajuan teknologi yang
bermain Mul-mulan. Agar permainan Mul-mulan
terjadi saat ini. Namun perlu disadari bahwa,
bisa dimainkan oleh satu orang maka yang menjadi
kemajuan teknologi tidak seluruhnya membawa
lawannya adalah komputer yang telah diberi
dampak positif bagi anak namun juga membawa
ejournal.unib.ac.id
251
kecerdasan
Jurnal Rekursif, Vol. No. Juli 2016, ISSN 2303-0755
yaitu
menggunakan
Tabel 1. Formasi Mul
algoritma
Minimax. Salah satu algoritma yang digunakan untuk permainan mul-mulan adalah Minimax. Minimax merupakan
algoritma
yang
digunakan
untuk
menentukan pilihan langkah selanjutnya agar memperkecil
kemungkinan
kehilangan
nilai
maksimal. Algoritma ini mendeskripsikan kondisi apabila
terdapat
pemain
yang
mengalami
keuntungan, pemain lain akan mengalami kerugian senilai dengan keuntungan yang diperoleh lawan dan
sebaliknya.
Algoritma
Minimax
adalah
algoritma berupa pohon pencarian yang akan menelusuri setiap node untuk memperoleh hasil
C.
Perancangan UML Aplikasi ini dirancang dengan menggunakan
yang maksimum. kembali
pemodelan UML (Unified Modeling Language).
dengan
UML dibutuhkan dalam pemodelan visual guna
kemajuan teknologi diharapkan mampu menarik
menspesifikasikan, menggambarkan, membangun,
minat masyarakat untuk memainkan kembali
dan dokumentasi dari setiap perangkat lunak. UML
permaianan warisan bangsa serta memotivasi agar
merupakan bahasa visual untuk pemodelan dan
masyarakat bisa menghargai dan melestarikan
komunikasi mengenai sebuah sistem dengan
permainan tradisional lainnya yang sangat beragam
menggunakan diagram dan teks-teks pendukung.
Diharapkan permainan
dengan
Mul-mulan
membangun dan
dikemas
1.
di seluruh nusantara. B.
UseCase
Diagram
:
Use
case
mendeskripsikan sebuah interaksi antara satu atau
Formasi Mul Dalam aturan permainan mul-mulan terdapat
formasi yang di sebut dengan “Mul”. Formasi “mul” merupakan posisi 3 baris bidak dalam satu baris baik secara diagonal atau horizontal sesuai dengan papan permainan. Dua atau tiga buah kepingan yang berada pada satu baris ataupun kolom tentunya berbeda nilainya dengan keping
lebih aktor dengan sistem informasi yang akan dibuat. Use case digunakan untuk mengetahui fungsi apa saja yang ada di dalam sebuah sistem informasi
dan
siapa
saja
yang
berhasil
menggunakan fungsi-fungsi itu. Use case diagram dari aplikasi yang akan dibangun dapat dilihat pada gambar 4.
tunggal, begitu pula halnya dengan sederetan kepingan yang tidak terbendung lawan tentunya memiliki nilai lebih unggul dibandingkan dengan yang terbendung. Berikut adalah tabel nilai formasi pada permainan mul-mulan bidak user
dan ‘O’ adalah bidak komputer dan _
adalah bidak kosong.
252
dengan ‘X’ adalah Gambar 4 Use Case Diagram Aplikasi
ejournal.unib.ac.id
Jurnal Rekursif, Vol. 4 No. 3 September 2016, ISSN 2303-0755
Dilihat dari gambar 4 pada sistem ini terdapat satu aktor yaitu user. Aktor dapat mengakses menu Beranda Permainan, Pilih Level, Menu Tentang Gameplay, dan melihat tentang Aplikasi. 2. Sequence Diagram : Sequence diagram menggambarkan tahap demi tahap yang seharusnya dilakukan untuk menghasilkan sesuatu sesuai dengan use case diagram. Sehingga pada sistem ini dapat diketahui rangkaian langkah aktor secar
Gambar 6 Activity Diagram Permainan Mul-Mulan
bertahap dari menu utama sampai menu yang aling
Pada Gambar 6 Aktifitas diawali dengan
akhir. Sequence Diagram dari aplikasi yang akan
pemain memilih level permainan yang terdapat
dibangun dapat dilihat pada gambar 5.
pada aplikasi. Setelah memilih level permainan maka sistem akan menampilkan pemilihan level. Setelah memilih level permainan pemain akan mulai permainan dan sistem akan menampilkan permainan. Pemain juga dapat memilih menu tentang aplikasi dan sistem akan menampilkan halaman tentang aplikasi. Pemain akan memilih menu gameplay maka sistem akan menampilkan menu halaman tentang gameplay.
V. HASIL DAN PEMBAHASAN Gambar 5. Sequence Diagram Aplikasi
A. Implementasi Antar Muka
Pada gambar di atas menjelaskan kelas-kelas
Adapun tampilan dan potongan source code
yang terdapat pada sistem, terlihat bahwa ada
untuk setiap menu pada aplikasi ini adalah sebagai
empat class, yaitu class halaman utama, class pilih
berikut:
level, class menu tentang aplikasi, dan class menu gameplay.
1. Menu Utama Aplikasi : Tampilan menu utama aplikasi dapat dilihat pada gambar 7.
3. Activity Diagram : Activity diagram menyediakan analisis dengan kemampuan untuk memodelkan
proses-proses
dalam
sistem
informasi. Activity diagram dapat digunakan untuk memodelkan aliran kerja, use case individu atau logika keputusan yang didalamnya memuat metode individu. aktivitas
Activity
diagram
menggambarkan
sistem bukan apa
yang dilakukan
aktor,jadi aktivitas yang dapat dilakukan oleh sistem. Activity diagram dari permainan mul-mulan dapat dilihat pada gambar 6.
ejournal.unib.ac.id
Gambar 7 Tampilan Menu Utama Aplikasi
253
Jurnal Rekursif, Vol. No. Juli 2016, ISSN 2303-0755
Halaman Utama merupakan halaman pertama yang akan tampil saat aplikasi dijalankan. Pada halaman ini terdapat judul aplikasi yaitu Mul-ulan Indonesia. Pada halaman utama ini terdapat tiga button menu yang dapat dipilih oleh pengguna yaitu menu Mulai Permainan, Game, dan About.
2. Halaman Mulai Permainan: Halaman mulai
permainan
terdapat
tampilan
papan
permainan mul mulan yang masih kosong, dan tedapat keterangan jumlah dan sisa bidak komputer Gambar 9 Tampilan Tentang Aplikasi
dan player, juga terapat timer yang menunjukkan sisa
waktu
akan
habis.
Tampilan
4. Halaman Menu Tentang Gameplay: Menu
Halaman
Permainan dapat dilihat pada Gambar 8.
tentang
aplikasi
merupakan
menu
yang
menjelaskan tentang cara permainan aplikasi yang dibuat. Tampilan menu tentang gameplay dapat dilihat pada Gambar 10.
Gambar 8 Tampilan Halaman Mulai Permainan
3. Halaman Menu Tentang Aplikasi: Menu
Gambar 10 Tampilan Menu Halaman Gameplay
tentang aplikasi merupakan menu yang berfungsi untuk membantu pengguna dalam penjelasan tentang aplikasi permainan mul mulan ini. Pada menu tentang ini berisikan penjelaskan secara singkat tentangaplikasi. Tampilan menu tentang aplikasi dapat dilihat pada Gambar 9 berikut :
B. Pengujian Algoritma Minimax Seperti yang telah dipaparkan pada bab sebelumnya, dalam permainan mul-mulan tedapat strategi permainan mul-mulan, yaitu Posisi mul. Posisi mul adalah posisi dimana bidak sejajar 3 baris
secara
horizontal
atau
vertikal.
Agar
permainan lebih menarik agen cerdas akan menerapka algoritma minimax untuk mencapai posisi mul.
254
ejournal.unib.ac.id
Jurnal Rekursif, Vol. 4 No. 3 September 2016, ISSN 2303-0755
Untuk menentukan berbagai posisi mul dari
bahwa tidak ada posisi mul, selanjutnya agen
berbagai posisi papan yang terjadi, maka bisa
cerdas akan kembali ke B(1) dan turun ke C(2) dan
dilakukan dengan mencari petak lawan yang dapat
ditemukan posisi mul di C(2), pihak agen cerdas
dibalik oleh pemain. Yang harus dilakukan adalah
akan melakukan pencarian dari B(1) lagi untuk
memberikan nilai evaluasi pada setiap bidak
mencari kemungkinan lain dan turun ke C(3)
dengan cara memperhitungkan beberapa factor
terlihat bahwa tidak ada posisi mul. Selanjutnya
diantaranya adalah jumlah papan, 3 daerah petak,
agen cerdas akan kembali ke B(2) dan turun ke
dan jumlah bidak, dan tentunya pemakaian
D(1) dan tidak ditemukan posisi mul D(1) lalu
algoritma Minimax tidak dapat terlepas dari metode
turun ke f(1) dan ditemukan posisi mul, pihak agen
pencarian yang dalam hal ini metode Depth First
cerdas lagi dengan kembali ke B(2) kemudian
Search, sehingga akan dilakukan untuk melakukan
turun ke D(2) terlihat tidak ada posisi mul disana
pencarian nilai evaluasi terbaik berdasarkan posisi
dan turun ke G(1) dan tidak ada posisi mul. Agen
MIN (Musuh) atau MAX (Player) dari algoritma
cerdas akan melakukan pencarian ke atas lagi dari
Minimax. (lingkaran merah adalah bidak komputer
B(3) turun ke E(1) dan turun ke H(1) tidak
atau agen cerdas) dan (lingkaran biru bidak player).
ditemukan posisi mul disana, dan akan kembali ke
Berikut ini penerapan minimax untuk beberapa
posisi E(2) dan terlihat tidak ada kemungkinan
posisi mul yang mungkin terjadi seperti Posisi Mul
posisi mul disana.
Secara Vertikal (bidak kanan)
Dari analisa diatas dapat diketahui bahwa Proses pembangunan pohon pencarian Minimax dilakukan dengan metode Depth First Search. Algoritma Minimax mampu menganalisis segala kemungkinan
posisi
menghasilkan
keputusan
permainan yang
untuk
terbaik.
Agar
optimasi dapat berjalan dengan baik, maka diperlukan “tebakan pertama” sebagai pengarah untuk menemukan nilai Minimax yang baik. Semakin baik tebakan pertama, maka algoritma Gambar 11 Skema Pencarian Posisi Mul Secara Vertikal
tersebut akan semakin efisien, dan diperlukan lebih
Penjelasan dari Gambar 11 langkah pertama
sedikit pengulangan. Jika diberikan tebakan posisi
agen cerdas akan meletakkan secara random
langkah Minimax, maka langkah tercepat dari
bidaknya pada papan, setelah itu agen cerdas akan
langkah - langkah lain (optimasi) untuk mencapai
membuat urutan rute pencarian dari A - B(1) –
posisi mul adalah di posisi C(2) dengan rute A -
C(1) – B(1) – C(2) – B(1)– C(3) – B(1) – A - B(2)
B(1) – C(1) – B(1) – C(2) terletak pada level 3.
– D(1) – F(1) – D(1) – B(2) - D(2) – G(1) – D(2) – VI. KESIMPULAN
B(2) – A - B(3) – E(1) – H(1) – E(1) – B(3) – E(2). Lalu agen cerdas akan mulai menganalisa bidak
Setelah
melakukan
aplikasi
terhadap
permainan pada giliran kedua, mulai dari B(1),
pengerjaan
B(2), B(3). Kemudian agen cerdas akan melakukan
permainan mul-mulan, ada beberapa kesimpulan
pencarian di kedalaman kedua di C(1) terlihat
yang didapatkan yaitu:
ejournal.unib.ac.id
penelitian
evaluasi
permainan
255
Jurnal Rekursif, Vol. 4 No. 3 September 2016, ISSN 2303-0755
1. Aplikasi Permainan Mul – Mulan dengan menggunakan
telah
menggunakan angket dan metode skala likert
berhasil dibangun dengan menggunakan model
menunjukkan bahwa Aplikasi Permainan Mul
perancangan sistem UML dan menggunakan
– Mulan dengan menggunakan algoritma
Microsoft Visual Basic 6.0 yang dijalankan
Minimax berada pada kategori “SETUJU”
pada desktop.
(45%) bahwa permainan ini menarik.
2. Komputer
Algoritma
paling
Minimax
4. Dari hasil uji ketertarikan sistem dengan
banyak
memenangkan
permainan berada pada level sulit sebanyak 117 kali atau 78% dari 150 kali permainan dan pemain
paling
banyak
memenangkan
permainan berada pada level mudah sebanyak 67 kali atau 45% dari 150 kali permainan berdasarkan
hasil
uji
pemain
melawan
komputer. 3. Dari hasil uji kelayakan sistem dengan menggunakan angket dan metode skala likert menunjukkan bahwa Aplikasi Permainan Mul – Mulan dengan menggunakan algoritma Minimax berada pada kategori “BAIK” (39%) pada variabel tampilan, “BAIK” (49%) pada variabel kemudahan pengguna, dan “BAIK” (43%) pada variabel kinerja sistem.
256
REFERENSI [1] Pratiwi, D. (2010). Analisis Algoritma Minimax Optimasi Alpha - Beta Pruning pada Game Congklak. Skripsi. Yogyakarta: Universitas Veteran. [2] Dharmamulya, S. (2004). Permainan Tradisional Jawa. Bandung: Kepel Press Purwanggani. [3] Kusumadewi, S. (2003). Artificial Intelligence Teknik dan Aplikasinya. Yogyakarta: Graha Ilmu. [4] Wijaya, S. (2010). Penerapan Konsep Algoritma Minimax dan Alpha Beta. Skripsi. Medan: Universitas Sumatera Utara. [5] Akbar, M. (2011). Analisis dan Implementasi Kecerdasan Buatan Pada Permainan Checker Menggunakan Algoritma Minimax dengan Negascout. Skripsi. Medan: Universitas Sumatera Utara. [6] Jannah, N. (2010). Analisis dan Implementasi Algoritma Minimax Dengan Optimasi Alpha Beta Pruning Pada Permainan Five in Row. Skripsi. Medan: Universitas SUmatera Utara.
ejournal.unib.ac.id