Uploaded by User79674

PENERAPAN ALGORITMA MINIMAX PADA TIC-TAC-TOE JAVASCRIPT

advertisement
ISSN 2549-4805
Prosiding Seminar Nasional Informatika
dan Sistem Informasi
Volume 3, Nomor 3, Okt 2019 - Feb 2020
PENERAPAN ALGORITMA MINIMAX
SEBAGAI PENGAMBIL KEPUTUSAN PADA
PERMAINAN TIC-TAC-TOE
BERBASIS JAVASCRIPT
Nurhayati, S.Kom., M.Kom
Teknik Informatika, Universitas Pamulang
Jl. Surya Kencana No. 1, Pamulang, Tanggerang Selatan-Indonesia
E-mail : [email protected]
2019
ABSTRAK
Pada saat ini perkembangan teknologi semakin maju. Banyak sekali
mesin-mesin canggih yang bermunculan. Mesin mesin itu sudah layaknya
seseorang yang bisa menggantikan pekerjaan orang. Bukan hanya itu,
perkembangan dalam dunia game semakin berkembang. Dimana banyak game
yang telah menananmkan Artifical Intelegent (AI) kedalam game. Sehingga
permainan game semakin menarik. Game yang sederhana menjadi menarik
dengan ditambahkan AI kedalam program game. Setiap game memiliki tingkat
kesulitan mulai dari mudah, menengah dan susah. Banyak algoritma yang dapat
diterapkan dalam sebuah game. Salah satu contohnya adalah algoritma minimax.
Algoritma minimax merupakan metode yang sangat terkenal dalam pengambilan
keputusan untuk meminimalisir peluang kalah atau rugi. Algoritma sederhana
namun cukup terkenal untuk pembuatan game sederhana. Dimana algoritma ini
bekerja dengan mengukur seberapa baik posisi pada saat itu. Algoritma ini
menggunakan heuristic f(n)=1 jika menang, f(n)=() jika permainan seimbang,
f(n)=-1 jika komputer kalah. Dengan algoritma minimax komputer akan langsung
mencari state hingga state terakhir dari setiap kemungkinan yang ada. Sehingga
komputer dengan cepat memiliki solusi terbaik sehingga dapat memenangkan
permainan. Dengan menambahkan algoritma minimax pada permainan Tic-tac-toe
yang bertindak sebagai AI, membuat komputer dengan leluasa mencari solusi
terbaik dan membuat komputer memenangkan permainan. Adapun hasil terbaik
yang diperoleh pemain adalah imbang. Algoritma minimax juga tidak terlalu sulit
untuk diterapkan pada permainan Tic-tac-toe, Selain itu algoritma ini sangat
mudah untuk dipahami
Kata Kunci : Tic-tac-toe, Aritifica Intelegent, Minimax Heuristic
ABSTRACT
At this time the development of technology is increasingly advanced. Lots
of sophisticated machines that appear. The machines are like someone who can
replace someone else's work. Not only that, developments in the game world are
growing. Where many games have embedded Artifical Intelligence (AI) into the
game. So the game more interesting. Simple games become interesting by adding
AI to the game program. Each game has difficulty levels ranging from easy,
medium and difficult. Many algorithms can be applied in a game. One example is
the minimax algorithm. Minimax algorithm is a very well-known method of
971
ISSN 2549-4805
Prosiding Seminar Nasional Informatika
dan Sistem Informasi
Volume 3, Nomor 3, Okt 2019 - Feb 2020
decision making to minimize the chance of losing or losing. Simple algorithm but
quite famous for making simple games. Where this algorithm works by measuring
how well the position at the time. This algorithm uses the heuristic f (n) = 1 if it
wins, f (n) = () if the game is balanced, f (n) = - 1 if the computer loses. With the
minimax algorithm the computer will immediately search for the state until the
last state of every possibility that exists. So the computer quickly has the best
solution so that it can win the game. By adding the minimax algorithm to the Tictac-toe game which acts as an AI, making the computer freely find the best
solution and make the computer win the game. The best results obtained by the
play]er is a draw. Minimax algorithm is also not too difficult to apply to the game
Tic-tac-toe, besides that this algorithm is very easy to understand
Keyword : Tic-tac-toe, Aritifica Intelegent, Minimax Heuristic
BAB I PENDAHULUAN
Tic-Tac-Toe adalah permainan strategi berbentuk kotak 3x3 dimana dua
pemain memposisikan secara bergiliran penanda (lingkaran atau silang) yang telah
ditentukan. Pemenang adalah yang pertama menempatkan penanda nya menjadi
satu baris vertikal, horisontal atau diagonal[1]. Di era serba digital ini permainan
Tic-Tac-Toe telah diadaptasi kedalam aplikasi permainan.
Penggunaan aplikasi permainan sering kali dilakukan secara seorang diri saja
karena tidak ada lawan yang dapat diajak bermain bersama. Beberapa aplikasi
permainan harus dilakukan setidaknya oleh dua orang pemain terutama permainan
two player, board games, misalnya : permainan catur, Tic-Tac-Toe dan Othello.
Agar permainan dapat berjalan dengan semestinya, dibutuhkan lawan tanding
untuk mengganti kekosongan pemain tersebut berbentuk digital dengan
diterapkannya AI pada komputer sebagai pengambil keputusan.
Minimax merupakan salah satu contoh dari kecerdasan buatan yang
digunakan untuk menentukan pilihan agar memeperkecil kemungkinan kehilangan
nilai maksimal[2]. Beberapa alasan mengapa Minimax cocok diterapkan pada
permainan Tic-Tac-Toe antara lain mudah diterapkan, sederhana dan bersifat
zero-sum-game (pendapatan poin untuk pemain yang satu merupakan kehilangan
poin untuk pemain lawan) yang mana hanya terdapat dua pemain saja.
Dalam merancang dan membangun aplikasi ini peneliti menggunakan metode
pengembangan sistem waterfall, peneliti menggunakan metode ini karena kualitas
dari sistem yang dihasilkan akan baik karena pelaksanaannya dilakukan secara
bertahap sehingga tidak terfokus pada tahapan tertentu. Model ini bisa disebut
juga dengan clasic life cycle.
BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI
2.1 Tic-Tac-Toe
Tic Tac Toe adalah permainan yang masuk kategori genre strategy board
game yang pada umum nya berbentuk grid 3 x 3 yang dapat dimainkan hanya
dengan kertas dan alat tulis saja. Permainan ini mempunyai nama lain Nought &
Cross. Ada juga yang menyebutnya X dan O karena umumnya dimainkan dengan
menggunakan bidak /simbol huruf X dan huruf O[3].
2.2 Kecerdasan Buatan / Artifical Intelegence (AI)
972
ISSN 2549-4805
Prosiding Seminar Nasional Informatika
dan Sistem Informasi
Volume 3, Nomor 3, Okt 2019 - Feb 2020
Kecerdasan buatan atau artificial intelligence merupakan salah satu bagian
ilmu komputer yang membuat agar mesin (komputer) dapat melakukan pekerjaan
seperti dan sebaik yang dilakukan oleh manusia[4]. Pada awal diciptakannya,
komputer hanya difungsikan sebagai alat hitung saja. Namun seiring dengan
perkembangan jaman, maka peran komputer semakin mendominasi kehidupan
umat manusia. Komputer tidak lagi digunakan sebagai alat hitung, lebih dari itu,
komputer diharapkan untuk dapat diberdayakan untuk mengerjakan segala sesuatu
yang bisa dikerjakan oleh manusia.
2.3 Algoritma Minimax
Algortima Minimax merupakan algoritma yang digunakan untuk
menentukan pilihan agar memperkecil kemungkinan kehilangan nilai maksimal.
Algoritma ini diterapkan dalam permainan yang melibatkan dua pemain seperti
tic-tac-toe, checkers, go dan permainan yang menggunakan strategi atau logika
lainnya. Hal ini berarti permainan-permainan tersebut dapat dijelaskan sebagai
suatu rangkaian aturan atau premis[5].
BAB III ANALISA DAN PERANCANGAN
3.1. Analisa Sistem
Analisa sistem merupakan penguraian dari suatu sistem informasi secara utuh
kedalam bagian-bagian komponennya dengan maksud untuk mendefenisikan dan
mengevaluasi permasalahan, kesempatan, hambatan yang terjadi dan kebutuhan
yang diharapkan sehingga dapat diusulkan perbaikan.
3.2. Perancangan Aplikasi
3.2.1. Use case diagram
Use Case merupakan gambaran sekenario dari interaksi antara user dan
sistem. sebuah diagram usecase menggambarkan hubungan antara actor
(pengguna) dan kegiatan yang dapat dilakukan terhadap aplikasi. Berikut ini
adalah usecase diagram yang memperlihatkan peranan aktor dalam interkasinya
terhadap sistem.
Gambar 3.1 Use Case Diagram Aplikasi Tic-Tac-Toe
973
ISSN 2549-4805
Prosiding Seminar Nasional Informatika
dan Sistem Informasi
Volume 3, Nomor 3, Okt 2019 - Feb 2020
3.2.2 Acitivity Diagram
Activity diagram menggambarkan berbagai alir aktivitas dalam sistem yang
sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin
terjadi, dan bagaimana mereka berakhir.
Berikut merupakan alur activity diagram dari aplikasi Tic-Tac-Toe dengan
Algoritma Minimax sebagai pengambil keputusan :
Gambar 3.2 Activity Diagram Play Tic-Tac-Toe
Aktifitas Play dimulai dengan membuka aplikasi,lalu muncul menu utama.
Player akan diminta memilih tingkat permainan mudah, normal dan sulit. Setelah
memilih tingkatan, pilih play untuk memulai permainan. Disini player akan
bermain melawan AI dengan tingkat kesulitan yang sudah dipilih sebelumnya.
3.2.3 Sequence Diagram
Sequence diagram digunakan untuk menggambarkan sebuah proses yang
dilakukan oleh user atau actor terhadap sistem yang ada. Berikut sequence
diagram yang ada pada sistem permainan Tic Tac Toe. Berikut adalah alur
sequance diagram dari aplikasi Tic-Tac-Toe.
1. Sequence Diagram Menu Utama
974
ISSN 2549-4805
Prosiding Seminar Nasional Informatika
dan Sistem Informasi
Volume 3, Nomor 3, Okt 2019 - Feb 2020
Gambar 3. 3 Sequence Diagram Menu Utama
Keterangan :
Setelah player menjalankan aplikasi maka muncullah splash screen, yang
akan langsung menampilkan menu utama.
3.4. Perancangan Antarmuka Pengguna (User Interface)
a. Perancangan Menu Utama
Gambar 3. 4 Rancangan Tampilan Menu Utama
BAB IV IMPLEMENTASI DAN PENGUJIAN
4.1 Spesifikasi Sistem
Implementasi aplikasi diharapakan dapat memberikan kemudahan kepada
pengguna aplikasi untuk mencari informasi komponen-komponen yang berada
pada komputer. Berikut merupakan spesifikasi perangkat pendukung untuk proses
implementasi meliputi spesifikasi perangkat keras (hardware) dan perangkat
lunak(software).
975
ISSN 2549-4805
Prosiding Seminar Nasional Informatika
dan Sistem Informasi
Volume 3, Nomor 3, Okt 2019 - Feb 2020
4.1.1 Spesifikasi Perangkat Keras
Hardware atau perangkat keras (dalam hal ini adalah komputer) digunakan
untuk menunjang atau membantu dalam pengolahan data, yang diharapkan akan
mempermudah pengerjaan dan mengelola informasi, sehingga informasi dan data
dapat dipenuhi dengan cepat kepada berbagai pihak yang membutuhkan.
Untuk memenuhi standar spesifikasi hardware untuk pembuatan sistem ini
diperlukan spesifikasi dari hardware sebagai berikut :
4.1. Notebook Asus
No
Perangkat Keras
Keterangan
Intel(R) Celeron(R) CPU 847 1.10 GHz
1 Processor
1.10GHz
2 RAM
4,00 GB
3 Hardisk
500 GB
4 LCD
12”HD
Tabel 4.1 Spesifikasi Perangkat Keras Spesifikasi Perangkat Lunak
(Software)
4.1.2 Spesifikasi Perangkat Lunak
Spesifikasi perangkat linak (software) yang digunakan adalah untuk
mengimplementasikan aplikasi media yang digunakan untuk menjalankan sistem
dapat dilihat sebagai berikut:
No
Perangkat Lunak
Keterangan
1 Sistem Operasi
Windows 7 Ultimate 64 bit
2 Aplikasi
Sublime 2
3 Browser
Google Chrome, Mozila Firefox
Tabel 4. 2 Spesifikasi Perangkat Lunak
4.2. Implementasi Antarmuka
Spesifikasi Antarmuka adalah perancangan aplikasi yang telah dibuat. Pada
tahap implementasi ini antar muka yang dibuat pada tahap perancangan. Adapun
bentuk halaman utama hasil implementasi adalah tampilan menu utama dan papan
permainan.
a. Tampilan Menu Utama
976
ISSN 2549-4805
Prosiding Seminar Nasional Informatika
dan Sistem Informasi
Volume 3, Nomor 3, Okt 2019 - Feb 2020
Gambar 4. 1 Tampilan Menu Utama
BAB V KESIMPULAN DAN SARAN
5.2 Kesimpulan
Kesimpulan yang dapat diberikan setelah meninjau hasil analisa,
perancangan, serta tujuan dan manfaat berdasarkan perancangan sistem aplikasi
Tic-Tac-Toe dengan algoritma minimax sebagai pengambil keputusan sebagai
berikut
1. Dengan membuat sebuah sistem aplikasi permainan Tic-Tac-Toe dengan
algoritma minimax sebagai pengambil keputusan dapat mengisi
kekosongan pemain pada permainan tersebut
2. Dengan dibuatnya aplikasi ini, kita dapat mengetahui algoritma minimax
cocok diterapkan sebagai AI pada permainan Tic-Tac-Toe
3. Algoritma minimax dapat diatur tingkat kedalaman dalam pencarian solusi
yang mempengarui tingkat kecerdasan AI
5.2 Saran
Untuk pengembangan aplikasi ini lebih lanjut, maka ada beberapa saran
yang dapat diajukan agar aplikasi dapat berjalan dan berkembang lebih baik,
yaitu:
1. Dapat ditambah variasi atau peraturan tambahan agar penelitian dan
aplikasi ini terus berkembang
2. Algoritma minimax bukan satu satunya metode pengambil keputusan yang
dapat digunakan, alangkah baik untuk mencoba metode lain yag lebih
efektif
DAFTAR PUSTAKA
[1] Khoirush Sholih Ridhwaana Akbar, Algoritma Minimax dalam Pengambilan
Keputusan pada Permainan Tic-tac-toe, Teknik Informatika ITB, Bandung,
2007.
[2] Sandi Kosasi, Permainan Papan Strategi Menggunakan Algoritma Minimax,
Seminar Nasional Teknologi Informasi, Komunikasi dan Industri (SNTIKI) 6,
Pekanbaru, 2014.
[3] Christianto, Edo Dwi TA, Implementasi Metode Alpha-beta Pruning Pada
Permainan Tic Tac Toe Dengan Visualisasi Simple Directmedia
Layer, Undergraduate thesis, Institut Bisnis dan Informatika Stikom
Surabaya, 2017
[4] Nurulliana Zi, Implementasi Konsep Kecerdasan Buatan Dengan Metode Best
First Search (Bsf) Untuk Pembuatan Game Ular Tangga Modifikasi,
Universitas Sumatra Utara, Medan, Skripsi 2011.
[5] Ayuningtyas N , Algoritma Minimax Dalam Permainan Checkers, 2006
Irving Vitra, (2006). Konsep permainan Tic-Tac-Toe Menggunakan
Algortima Genetika, SNATI, Yogyakarta, 2006
977
Download