PAPER IMPLEMENTASI ALGORITMA MINIMAX PAD

IMPLEMENTASI ALGORITMA MINIMAX PADA PERMAINAN
TIC TAC TOE 5X5”.
Andriana Hadisurya(10112764)1, Mohamad Saeful Ihsan(10112645)2, Galuh Purwa Maharriksa(10112442)3
Fakultas Teknik dan Ilmu Komputer, Jurusan Teknik Informatika
Universitas Komputer Indonesia
Jln. Jl. Dipati Ukur No. 112-114-116 Bandung 40132 INDONESIA
1
github.com/fenakira (fenakira@gmail.com)
2
github.com/mohamadihsan (mars.rizta@gmail.com)
3
github.com/galuhpurwa (purwa.maharriksa@gmail.com)

Abstract
Manusia adalah makhluk yang paling sempurna, dianugrahi otak yang cerdas, dan memiliki banyak kelebihan, namun
manusia tetap memiliki berbagai kelemahan seperti mudah lelah, mudah lupa, dipengaruhi emosi, subjektif, kurang teliti,
malas, dan sebagainya. Kemudian muncul ide untuk menciptakan komputer sebagai alat bantu kerja agar lebih cepat, dan
lebih akurat. Namun saat ini komputer tidak hanya mampu bertindak tetapi juga mampu berfikir sehingga muncul istilah
Artificial Intellegence (AI) atau Kecerdasan Buatan.
Minimax merupakan salah satu contoh dari Kecerdasan Buatan, minimax adalah suatu algoritma yang menggunakan
teknik pencarian Depth-First Search dengan kedalaman terbatas. Adapun media yang cocok untuk penerapan algoritma

minimax adalah permainan Tic Tac Toe, beberapa alasan mengapa Tic Tac Toe digunakan sebagai media penerapan
kecerdasan buatan antara lain Tic Tac Toe sangat mudah menentukan ukuran kesuksesan atau kegagalan, sangat mungkin
untuk dibandingkan dengan kemampuan manusia, mudah dimainkan.

1.
Pendahuluan
1.1. Latar Belakang Masalah

merupakan salah satu contoh yang baik dan cukup
sederhana untuk kita mengerti bagaimana cara kerja dan
efeknya.
Kita sebagai manusia adalah makhluk ciptaan
Allah SWT yang paling sempurna, dianugrahi sebuah otak
yang sangat canggih, yang tidak bisa dibandingkan dengan
komputer manapun.
Kemudian muncul ide untuk menciptakan sebuah
komputer yang cerdas, yang mampu berfikir dan bertindak
selayaknya manusia. Paradigma lama, memposisikan
komputer hanya sebagai alat bantu kerja, agar lebih cepat,
lebih akurat dan lebih rapi. Komputer hanya bertindak bila

ada instruksi dari manusia. Namun kini paradigma itu
mulai berubah, komputer saat ini telah diposisikan sebagai
penasehat. Artinya, komputer tidak hanya mampu
bertindak tetapi juga mampu berfikir atau istilahnya
Artificial Intelligence (AI) atau Kecerdasan Buatan.
Ada beberapa alasan mengapa permainan,
khususnya permainan Tic Tac Toe digunakan sebagai media
penerapan kecerdasan buatan pada kasus ini, antara lain:
a. Pola aturan permainan Tic Tac Toe ini cukup
populer
dan
mudah
untuk
dimainkan,
diasumsikan anak-anak atau dewasa dapat
memainkannya. Meskipun ada orang yang belum
pernah mengenal permainan ini, diharapkan
orang tersebut cepat dapat memainkannya.
b. Sangat mungkin untuk dibandingkan dengan
kemampuan manusia.


Bermain game merupakan salah satu aktifitas
yang sangat disukai oleh sebagian besar masyarakat
didunia ini. Alasan mereka bermain game tentunya
berbeda-beda, ada yang untuk melepas lelah, ada juga yang
memang suka atau hobi bermain game.
Dengan berkembangnya teknologi sekarang ini,
game-game ini tidak hanya dapat kita jumpai pada
kehidupan nyata, tapi juga dapat kita jumpai d idalam
dunia maya. Jenis nya pun semakin banyak dan bervariasi.
Salah satu yang cukup menarik perhatian adalah permainan
komputer.
Permainan-permainan berbasis komputer ini juga
bermacam-macam. Salah satu kelebihannya adalah kita
tidak harus mencari orang untuk menjadi lawan tanding
jika ingin bermain karena permainan berbasis komputer ini
sudah mendukung single-player mode dimana kita dapat
bermain sendiri melawan computer yang dirancang untuk
dapat berlaku seperti pemain manusia atau yang sering
dikenal dengan Artificial Inteligince (AI).

Untuk membuat pemain merasa seperti melawan
pemain manusia lainnya, diperlukan suatu algoritma yang
dapat membuat AI ini mampu mengambil keputusan yang
terbaik agar dapat mengalahkan pemain atau setidaknya
menghalau pemain menang. Algoritma minimax ini
merupakan algoritma yang sangat sering dipakai untuk
permasalah tersebut. Dan permainan Tic Tac Toe

1

c.

Sangat mudah untuk menentukan ukuran
kesuksesan, atau kegagalan.
d. Dengan
asumsi-asumsi
tersebut,
maka
diharapkan setiap pengguna mampu bermain
dengan baik bersama komputer. Sehingga yang

dibutuhkan pemain atau user dalam memainkan
permainan ini hanyalah ketelitian dan logika
berfikir yang baik.
Minimax merupakan salah satu teknik permainan
yang terkenal. Minimax menggunakan teknik pencarian
Depth-First Search dengan kedalaman terbatas, dan fungsi
evaluasi yang digunakan adalah fungsi evaluasi statis,
dengan mengansumsikan bahwa lawan akan membuat
langkah terbaiknya yang dapat dilakukan, algoritma
minimax cocok digunakan untuk permainan catur, Othello,
checkers, dan Tic Tac Toe.
Tugas dari minimax adalah memetakan seluruh
kemungkinan permainan dimana masing-masing hasil
akhir permainan punya nilai Heuristik. Minimax dirancang
untuk memaksimalkan keuntungan dan meminimalkan
kerugian dalam kasus terburuk dari bermain game. Tujuan
dari minimax ini yaitu memilih peluang terkecil agent
kalah atau memilih peluang terbesar agar agent bisa
menang. Idenya adalah untuk memilih langkah berikutnya
dengan nilai minimax tertinggi (terbaik playoff dicapai

terhadap lawan bermain langkah terbaik mereka).
Game tic-tac-toe itu sendiri merupakan permainan
klasik berjenis permainan papan (board-game) dengan
papan permainan dengan ukuran tertentu, disini kami buat
dalam ukuran 5x5. Dalam game tic-tac-toe terdapat dua
puluh lima buah ruang (5x5) berbentuk kotak
yang bersekat (bidak). Game ini menggunakan dua simbol
pemain yaitu X atau O. Game ini dimulai dengan mengisi
salah satu bentuk simbol pada salah satu bidak,
hingga lima buah simbol yang berbentuk sama tersusun
membentuk garis vertikal, atau horizontal.
Berdasarkan uraian di atas, maka Tugas Besar ini
diberi
judul
“IMPLEMENTASI
ALGORITMA
MINIMAX PADA PERMAINAN TIC TAC TOE 5X5”.

1.4. Batasan Masalah
Penerapan kecerdasan buatan ini tentu akan

sangat kompleks dan rumit bila harus memenuhi semua
kriteria dari beberapa aspek secara sekaligus. Agar
penelitian ini mencapai sasaran yang jelas dan karena
keterbatasan kemampuan, maka batasan masalah pada
penelitian ini sebagai berikut :
a. Permainan ini dimainkan oleh satu orang pemain
melawan komputer.
b. Bentuk papan permainan berbentuk matriks 5x5.
c. Algoritma pencarian dan pelacakan yang
digunakan
yaitu
menggunakan
algoritma
minimax.
2.
Landasan Teori
2.1. Konsep Dasar Kecerdasan Buatan
Kecerdasan buatan atau lebih dikenal sebagai
Artificial Intelligence, memiliki beberapa defenisi, antara
lain :

a. Artificial intelligence adalah ilmu yang
mengembangkan komputer supaya dapat bekerja
dan berpikir serta mengambil keputusan seperti
layaknya manusia.
b. Artificial intelligence merupakan salah satu
bagian ilmu komputer yang membuat agar mesin
(komputer) dapat melakukan pekerjaan seperti
dan sebaik yang dilakukan oleh manusia.
c. Artificial intelligence merupakan software yang
memungkinkan komputer digital bisa meniru
beberapa fungsi otak manusia yang terbatas.
2.2. Konsep Dasar Algoritma
Defenisi Algoritma, “Algoritma adalah urutan
langkah-langkah logis penyelesaian masalah yang disusun
secara sistematis”. Sedangkan menurut Kamus Besar
Bahasa Indonesia, terbitan Balai Pustaka, 1988.
“Algoritma adalah urutan logis pengambilan putusan
untuk pemecahan masalah”.

1.2. Identifikasi Masalah

Beberapa masalah pokok yang akan dibahas pada
penelitian ini antara lain:
a. Bagaimana menerapkan algoritma minimax ke
dalam permainan Tic Tac Toe
1.3. Maksud dan Tujuan
Maksud dari penulisan Tugas Besar ini adalah
menerapkan dan mengimplementasikan algoritma minimax
pada permainan Tic TacToe 5x5, adapun tujuannya yaitu :
a. Untuk mengetahui solusi pencarian dan pelacakan
yang dilakukan algoritma minimax pada
permainan Tic Tac Toe.
b. penggunaan algoritma minimax untuk membuat
AI yang dapat mencari dan menentukan keputusan
terbaik dalam permainan Tic Tac Toe sedemikian
sehingga AI tersebut dapat mengalahkan pemain.

2.3. Algoritma Pencarian Artificial Intelligence
Pencarian dan pelacakan merupakan salah satu hal
penting yang menentukan keberhasilan dan kesuksesan
sebuah kecerdasan buatan. Pada dasarnya terdapat 2 teknik

pencarian dan pelacakan yang digunakan dalam kecerdasan
buatan, yaitu Pencarian Buta (Blind Search) dan Pencarian
Heuristik (Heuristic Search).
3.
Analisis dan Perancangan
3.1. Analisis
Dalam sub bab ini akan dibahas hal-hal yang
berhubungan dengan pembuatan permainan Tic Tac Toe

2

yang meliputi aturan permainan, dan komponen-komponen
permainan.
3.2. Aturan Permainan
Sebelum ke aturan permainan, disini akan di
gambarkan keadaan awal dalam game Tic Tac Toe 5x5 ini
akan menampilkan arena permainan dengan papan kotakkotak yang berdimensi 5x5, dimana terdapat 5 baris dan 5
kolom. Objek yang akan bermain dalam game ini adalah
“user” atau pemain dan komputer yang telah diberi AI.
Didalam game ini terdapat menu sebelum

memasuki permainan, antara lain :
Mulai Permainan
: jika memilih menu ini maka
akan masuk ke bagian permainan dan didalamnya
anda akan diberi pilihan lagi apakah anda akan
bermain pertama atau kedua.
2. Keluar
: untuk keluar dari permainan.
Ada beberapa aturan dalam permainan ini, antara
lain :
a. Permainan dimulai ketika pemain sudah memilih
akan jalan terlebih dahulu atau kedua. Pemain
diberi tanda atau symbol X dan komputer diberi
tanda O.
b. Yang melakukan permainan pertama, bebas
meletakan simbol dipapan kotak yang tersedia.
c. Komputer (AI) akan jalan sesuai dengan strategi
yang dia punya.
d. Pemain ataupun komputer harus membentuk satu
garis lurus baik vertikal, horizontal untuk
memenangkan permainan ini.
e. Komputer yang telah diberi AI bertugas
menghalangi pemain untuk menang dengan cara
meletakkan simbol O di garis yang dibuat oleh
pemain.
1.

2.

Kondisi Kalah
Kondisi kalah terjadi apabila kita tidak berhasil
membentuk 5 buah simbol X secara horizontal
ataupun vertikal. Atau kondisi dimana AI menang
terlebih dahulu.

3.

Kondisi Seri
Kondisi seri terjadi apabila semua kotak telah
terisi tetapi belum ada yang bisa membentuk 5
buah simbol secara berurutan secara vertical
ataupun horizontal.

Kemudian
goalnya
adalah
menyelesaikan
permainan ini dengan membuat sebuah garis lurus yang
terdiri 5 kotak deretan simbol secara vertical, horizontal.
Terdapat beberapa kondisi yang mungkin terjadi
pada permainan ini, yaitu :
1.

Kondisi Menang
Kondisi menang terjadi apabila kita berhasil
membentuk sebuah garis lurus yang terdiri dari 5
buah simbol X, baik secara horizontal atau
vertical.

3.3. Komponen-komponen Permainan
Komponen penelusuran dalam aplikasi minimax
pada permainan Tic Tac Toe ini adalah :
- Initial State
Initial state merupakan keadaan saat pencarian
akan dilakukan, pada saat permainan mulai dilakukan (jika
pemain pertama jalan pertama). Initial state selalu berubah
saat giliran jalan pemain pertama.

3

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 tic-tactoe 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.
Gambar 3.1. Keadan Awal
- Operator
Operator pada permainan ini adalah pemain dapat
meletakkan simbolnya (X atau O) secara sembarang di
kotak yang masih kosong.
3.4. Analisis Algoritma Minimax
Peran komputer sebagai lawan tanding tentunya
harus didukung dengan kemampuan yang dimiliki oleh
komputer, dengan demikian algoritma minimax yang
diterapkan pada algoritma dari bentuk permainan tersebut
bertujuan agar komputer memiliki kemampuan tanding
yang baik.
Minimax adalah sebuah algoritma yang di desain
untuk memaksimalkan kemenangan dan meminimalkan
kekalahan dalam skenario terburuk di dalam game. Idenya
adalah untuk memilih langkah berikutnya yang mempunyai
nilai minimax tertinggi (mencapai langkah terbaik ketika
melawan musuh yang mempunyai langkah terbaik).
Pada permainan Tic Tac Toe ini mempunyai lebih
sedikit kemungkinan solusi, sehingga kita akan
mempunyai cukup komputasi untuk memainkan setiap
kombinasi langkah dari setiap posisi dan kondisi. Namun
hal ini dapat dihindari dengan membatasi sejauh mana
komputer akan menganalisis hasil dari langkah-langkah
yang mungkin (menentukan kedalaman pohon). Tetapi
dengan hal ini, kita harus menambah kedalaman pohon
tersebut setiap langkahnya agar kedalaman pohon pada
state tersebut sama dengan state sebelumnya.
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,

4

Source Code Algoritma Minimax
3.4.1.
-

5

Spesifikasi Algoritma Minimax
Kompleksitas Waktu : O(bm)
Yaitu jumlah node dari seluruh level (b0 + b1 + b2
+ … + bm )

-

Kompleksitas Ruang : O(m)
Mengasumsikan bahwa kita menelusuri pohon
DFS satu jalur dalam satu waktu.

3.5. Analisis Sistem
Pembahasan selanjutnya akan menjelaskan
tentang cara kerja sistem yang sedang berjalan dan
mengevaluasi masalahmasalah yang timbul dari sistem
yang sedang berjalan.
3.6. Batasan sumber daya dan evaluasi heuristik
(Resource limits and heuristic evaluation)
Resource limits
Kita dapat membatasi kedalaman yang kita cari ke
depan (keterbatasan sumber daya) dalam rangka untuk
membuatnya lebih layak. Oleh karena itu mencari 3 lapisan
depan untuk melihat apakah sesuatu yang mengerikan
terjadi, bukan sampai akhir permainan.

4.1.1. Pendukung Laptop
Perangkat keras dan perangkat lunak yang
digunakan untuk mengimplementasikan aplikasi di laptop
sebagai berikut:
1) Perangkat Lunak
a) Sistem Operasi Windows 7
b) Dev C

Heuristic Evaluation
Kita dapat menggunakan heuristik untuk
mengevaluasi suat keadaan, dan kemudian memangkas
bagian yang buruk, atau hanya menargetkan yang lebih
baik.

2) Perangkat Keras
a) Processor Intel Core i3 1.80 GHz
b) VGA Intel HD 4000
c) Memory (RAM) 4 GB

4.

Implementasi dan Pengujian
Pada bab ini akan dilakukan implementasi dan
pengujian terhadap sistem yang baru. Tahapan ini
dilakukan setelah perancangan selesai dilakukan dan
selanjutnya akan diimplementasikan pada bahasa
pemrograman. Setelah implementasi maka dilakukan
pengujian terhadap sistem yang baru dan akan dilihat
kekurangan-kekurangan pada aplikasi yang baru untuk
pengembangan sistem selanjutnya.

4.2. Pengujian Sistem
Pengujian aplikasi permainan Tic-Tac- Toe
dilakukan dengan tujuan agar aplikasi yang dibangun
memiliki kualitas yang lebih baik dan sesuai dengan yang
diharapkan. Untuk mewujudkan tujuan dari uji coba sistem
maka dibutuhkan penanganan kesalahan atas proses input,
penanganan atas proses output, penanganan kesesuaian
lingkungan, menjalankan program dari awal sampai akhir,
dan menjalankan program secara tidak berurutan.

4.1. Implementasi
Anggap lah ada 2 pemain A dan B. Jika pemain A
bisa menang dalam 1 langkah, maka langkah tersebut
adalah langkah kemenangannya. Jika pemain B
mengetahui bahwa langkah tersebut akan mengarahkan ke
hasil akhir dimana pemain A akan menang, dan di lain
kondisi ada langkah lain yang akan mengarahkan ke hasil
akhir seri, maka langkah terbaik untuk pemain B adalah
langkah yang akan mengarahkan hasil akhir permainan ke
hasil seri. Di setiap tahap algoritma ini mengasumsikan
bahwa pemain A mencoba untuk memaksimalisasi peluang
menang. Di lain pihak, pada giliran berikutnya pemain B
akan mencoba meminimalisir peluang menang untuk
pemain A.
Pembentukan pohon pencarian solusi digunakan
dengan menggunakan konsep Depth-First, dimulai dari
awal permainan sampai akhir permainan.
Berikut ini merupakan langkah yang dilakukan
komputer dan juga pemain:

4.2.1. Pengujian permainan Tic-Tac-Toe
dengan algoritma minimax
Minimax adalah teknik pelacakan atau pencarian
dengan kedalaman terbatas, semakin banyak level
kedalamannya maka langkah yang dibuat akan lebih baik
karena komputer dapat lebih mengetahui prediksi langkah
kedepan.
4.2.2. Hasil Analisis
AI akan selalu memilih langkah yang dapat
meminimalisir kemungkinan pemain (manusia) untuk
menang dan memblok semua langkah kemenangan
pemain. Dengan demikian permainan akan seri apabila
pemain cukup teliti dalam menentukan langkah. Namun

6

jika pemain melakukan langkah yang salah, maka AI akan
langsung menggunakan kesempatan tersebut
5.

Kesimpulan
Permainan Tic Tac Toe ini merupakan permainan
satu lawan satu. Game ini kami buat aturan yaitu hanya
pemain melawan komputer. Untuk setiap permainan satu
lawan satu, hampir selalu digunakan algoritma Minimax
dalam permainan komputer. Proses pembangunan
pencarian Minimax dilakukan dengan metode Depth-FirstSearch. Algoritma Minimax mampu menganalisis segala
kemungkinan posisi permainan untuk menghasilkan
keputusan yang terbaik. Oleh karena itu, dalam permainan
Tic Tac Toe yang kami buat ini menggunakan algoritma
minimax.
Algoritma minimax merupakan algoritma yang
sangat bagus dan cocok untuk pengambilan
keputusan oleh AI. Algoritma minimax ini menggunakan
konsep DFS dalam pembentukan pohon solusi. Pohon
solusi dibentuk dari awal permainan sampai akhir
permainan.
Semakin akurat fungsi heuristic yang digunakan,
semakin baik pula pengambilan keputusan yang dilakukan
oleh AI. Dengan menggunakan algoritma minimax untuk
AI dalam permainan Tic Tac Toe, pemain (manusia) akan
kesulitan melawan AI tersebut.

REFERENSI
[1] http://wiki.bethanycrane.com/minimax
[2] http://www.weijima.com/index.php?
option=com_content&view=article&id=11
[3] http://mathworld.wolfram.com/Tic-Tac-Toe.html
[4] http://www.neverstopbuilding.com/minimax

7

Dokumen yang terkait

IMPLEMENTASI LOAD BALANCING DAN FAIL OVER UNTUK MENDUKUNG PRAKTIKUM JARKOM 2

6 80 14

DESAIN DAN IMPLEMENTASI RANGKAIAN PENGENDALI (Elektronika) ROBOT OTOMATIS PADA KONTES ROBOT INDONESIA 2007 ”Analisa rangkaian pengendali robot otomatis Black Pearl”

1 73 1

IMPLEMENTASI MIKROKONTROLER ATMEGA 8535 STUDI KASUS PENGONTROL SUHU ALIRAN AIR DALAM PIPA DENGAN METODE KONTROL FUZZY LOGIK

28 240 1

PERANCANGAN ULANG TATA LETAK FASILITAS PRODUKSI GUNA MEMINIMUMKAN BIAYA MATERIAL HANDLING DENGAN MENGGUNAKAN ALGORITMA CRAFT (Study Kasus Pada PT. Oval Indah Furniture Karanglo Malang)

2 67 1

PERAN PERAWAT DALAM IMPLEMENTASI KOLABORATIF PEMBERIAN TERAPI INSULIN SEBAGAI TINDAKAN DALAM PENURUNAN KADAR GULA DALAM DARAH PADA KLIEN DENGAN HIPERGLIKEMI DI RUANG AIRLANGGA RSUD KANJURUHAN KEPANJEN TAHUN 2012

1 55 23

HUBUNGAN IMPLEMENTASI PERAWAT TENTANG PATIENT SAFETY DENGAN RESIKO CEDERA PADA INFANT DAN TODDLER

38 264 22

DISKRIMINASI PEREMPUAN MUSLIM DALAM IMPLEMENTASI CIVIL RIGHT ACT 1964 DI AMERIKA SERIKAT

0 34 14

IMPLEMENTASI MODEL COOPERATIVE LEARNING TIPE STAD (STUDENT TEAMS ACHIEVEMENT DIVISION) UNTUK MENINGKATKAN HASIL BELAJAR SISWA PADA POKOK BAHASAN MENGENAL UNSUR BANGUN DATAR KELAS II SDN LANGKAP 01 BANGSALSARI

1 60 18

IMPLEMENTASI PROGRAM PENYEDIAAN AIR MINUM BERBASIS MASYARAKAT (Studi Deskriptif di Desa Tiris Kecamatan Tiris Kabupaten Probolinggo)

21 177 22

JUDUL INDONESIA: IMPLEMENTASI PENDIDIKAN INKLUSIF DI KOTA METRO\ JUDUL INGGRIS: IMPLEMENTATION OF INCLUSIVE EDUCATION IN METRO CITY

1 56 92