Anda di halaman 1dari 20

PROPOSAL TUGAS AKHIR

IMPLEMENTASI ALGORITMA MINIMAX PADA PERMAINAN PAPAN


CONNECT FOUR BERBASIS ANDROID

Disusun oleh:
Aditya Fadjar Grazia
171111094

PROGRAM STUDI TEKNIK INFORMATIKA


SEKOLAH TINGGI INFORMATIKA DAN KOMPUTER INDONESIA
MALANG
2022
PROPOSAL TUGAS AKHIR
IMPLEMENTASI ALGORITMA MINIMAX PADA PERMAINAN PAPAN
CONNECT FOUR BERBASIS ANDROID

Sebagai salah satu syarat untuk menyelesaikan


mata kuliah Strategi Algoritma

Disusun oleh:
Aditya Fadjar Grazia
171111094

PROGRAM STUDI TEKNIK INFORMATIKA


SEKOLAH TINGGI INFORMATIKA DAN KOMPUTER INDONESIA
MALANG
2022
KATA PENGANTAR

Puji syukur kepada Tuhan Yang Maha Esa. Berkat anugerahnya penulis mampu
menyelesaikan proposal tugas akhir “Implementasi Algoritma Minimax pada Permainan Papan
Connect Four Berbasis Android” dalam keadaan sehat. Proposal ini penulis buat untuk
memenuhi tugas akhir dari mata kuliah Strategi Algoritma.

Penulis menyadari bahwa dalam penyusunan proposal ini banyak pihak yang telah
mendukung. Untuk itu penulis ucapkan banyak terima kasih kepada:

1. Tuhan Yang Maha Esa yang senantiasa melimpahkan anugerah-Nya kepada penulis.
2. Rakhmad Maulidi, M.Kom selaku dosen pengajar mata kuliah Strategi Algoritma
yang telah memberikan materi sebagai bahan pengerjaan proposal.
3. Orang tua yang selalu memberikan dukungan baik dalam materi maupun moral.
4. Semua pihak yang telah membantu menyelesaikan proposal.

Semoga proposal ini dapat bermanfaat dan dapat digunakan sebagai bahan referensi bagi
pembacanya. Saran dan kritik yang membangun sangat penulis perlukan untuk membuat
proposal yang lebih baik untuk kedepannya. Melalui kata pengantar ini penulis mohon maaf dan
harap memaklumi jika terdapat kesalahan dalam segi penulisan maupun kata-kata yang kurang
tepat.

Malang, 12 Juli 2022

Penulis
BAB 1

PENDAHULUAN

1.1 Latar Belakang


Permainan sudah menjadi salah satu hal yang menjadi kebiasaan umum bagi pengguna
di jaman modern ini. Perkembangan sebuah video game, akan melesat seiring bertambahnya
tahun baik dari segi artificial intelligence untuk memprogram NPC (Non Player Character)
maupun tampilan grafis yang membutuhkan resources besar pada komputer. Selain itu,
permainan yang tak bisa dilupakan yaitu permainan papan sederhana dimana permainan ini
banyak mengalami peningkatan yang cukup signifikan dimana banyak permainan-permainan
papan yang sudah berbentuk digital dan menjadi tempat kompetisi algoritma yang digunakan
agar permainan berjalan seimbang dan optimal. Salah satunya adalah Connect Four.
Connect Four atau biasa disebut dengan Connect 4, Four Up, Flot Four, merupakan
permainan papan dengan jumlah pemain dua orang. Aturan main dari Connect Four adalah
pemain harus memasukkan koin berwarna kedalam papan dengan tujuh kolom dan 6 baris.
Pemain dinyatakan menang jika salah satu pemain dapat menyusun koin tersebut secara
horizontal, vertical, atau diagonal sebanyak 4 koin.
Permainan dalam bentuk digital merupakan permainan tradisional yang aturan, pemain,
dan lingkungan permainan tersebut dijalankan oleh sistem. Perlu adanya fitur multiplayer
agar sebuah permainan dapat berjalan secara optimal dan pemain dapat memenangkan satu
permainan secara efektif. Salah satu cara yang digunakan yaitu dengan
mengimplementasikan algoritma pada sistem permainan.
Algoritma Minimax merupakan salah satu algoritma yang sering digunakan pada
permainan papan yang dimainkan oleh dua pemain dan berbasis zero-sum (salah satu
pemain menang atau kalah). Prinsip dasar Algoritma Minimax ini adalah jalur yang akan
dipilih oleh sistem merupakan jalur maksimal (max node) yang akan menghasilkan nilai
maksimum di jalur tersebut, dan saat lawan bermain akan menghasilkan nilai minimun (min
node). Pada intinya, Algoritma Minimax meminimalkan kekalahan dan memaksimalkan
kemenangan pada suatu permainan.
Dari latar belakang yang telah dipaparkan maka dengan ini penulis ingin membuat
aplikasi permainan dengan judul “Implementasi Algoritma Minimax pada Permainan Papan
Connect Four Berbasis Android” guna mengetahui tingkat optimasi algoritma yang
diimplementasikan pada permainan yang akan dibuat.
1.2 Rumusan Masalah
Berdasarkan latar belakang masalah yang telah diuraikan, maka rumusan masalah pada
penelitian ini adalah bagaimana membangun permainan Connect Four menggunakan
Algoritma Minimax guna mengetahui optimasi algoritma yang diimplementasikan pada
permainan yang akan dibuat ?.
1.3 Tujuan
Berdasarkan rumusan masalah yang telah diuraikan di atas, maka tujuan pada penelitian
ini adalah membangun permainan menggunakan Algoritma Minimax berbasis android.
1.4 Manfaat
Bagi penulis:
1. Mengetahui kinerja Algoritma Minimax pada sistem secara menyeluruh.
2. Memaksimalkan tingkat kemenangan pengguna dengan langkah dan waktu
yang efektif.
Bagi pengguna:
1. Meningkatkan kecerdasan dengan memainkan permainan papan.
2. Mengembangkan keterampilan seperti pengambilan keputusan, interaksi
sosial, dan berpikir kritis.
1.5 Batasan Masalah
1. Permainan yang akan dibangun berbasis Android.
2. Permainan memiliki dua pemain, pengguna dan NPC (Non Player Character).
1.6 Metodologi Penelitian
Dalam pembuatan permainan berbasis android ini dibutuhkan metodologi yang bertujuan
untuk mempermudah pengumpulan bahan dan data yang diperlukan. Berikut metode yang
digunakan:
1.6.1 Tempat dan Waktu Penelitian
Tempat penelitian berada di STIKI Malang yang beralamatkan di Jl. Raya Tidar
No.100, Karangbesuki, Kec. Sukun, Kota Malang, Jawa Timur 65146 dan waktu
penelitian dilaksanakan sejak 13 Juni 2022 hingga 14 Juli 2022.
1.6.2 Bahan dan Alat Penelitian
Bahan:
1. Assets
Assets yang digunakan meliputi jenis font yang digunakan, efek
suara, dan lain-lain.
Alat:
1. Laptop Lenovo G-40 AMD A8-6410 APU with AMD Radeon R5
Graphics 2.0GHz x64 12 GB RAM 512 SSD
2. Sistem Operasi Windows 10 Pro
3. Unity Version: 2020.3.4f1.207 Personal
1.6.3 Pengumpulan Data
Dalam melakukan kegiatan penelitian pembentukan sistem ini penulis
menggunakan metode untuk mengumpulkan data yaitu:
1. Studi Literatur
Penulis melakukan pengumpulan data dengan cara melakukan penelitian
melalui bacaan yang berhubungan dengan tema dan topik judul penelitian
yang dibuat oleh penulis.
1.6.4 Analisa Data

Dalam pembuatan sistem ini penulis menggunakan metode analisis deskriptif


yang didapat dari hasil penelitian penulis berdasarkan studi literatur untuk
mengetahui gambaran lengkap data yang diteliti baik verbal maupun numerik.

1.6.5 Prosedur Penelitian


Prosedur peneletian ini menggunakan tahapan pengembangan multimedia antara
lain:
1. Konsep
Tahap konsep yaitu menentukan tujuan aplikasi (informasi,
hiburan, pelatihan dan lain-lain), identifikasi penggunaan (user), bentuk
aplikasi (presentasi, interaktif, dan lain-lain) dan spesifikasi umum
(ukuran spesifikasi, dasar perancangan, target yang ingin dicapai, dan lain-
lain). Pada tahap ini ditentukan bagian apa saja yang dapat dijadikan
pedoman dalam pembuatan game. Beberapa deskripsi konsep dari game
yang dibuat adalah sebagai berikut:
a. Judul
Connect it Four
b. Pengguna
Pengguna game diasumsikan pernah atau familiar dengan
penggunaan gawai atau pernah memainkan game puzzle dan
mengerti Bahasa Indonesia.
c. Tujuan
Tujuan pembuatan game ini adalah mengembangkan
keterampilan seperti pengambilan keputusan, interaksi sosial, dan
berpikir kritis.
d. Jenis Permainan
Jenis permainan yang digunakan adalah permainan papan
Connect Four.
e. Teknik pembuatan permainan
Penulis membuat game berjenis 2D dengan menggunakan
aplikasi Unity Game Engine.
f. Gambar
Asset gambar yang digunakan memiliki format .png dan
dibuat dengan software editing gambar Adobe Photoshop CS6
g. Audio
Audio yang digunakan penulis dalam pembuatan game
berformat .mp3 dan .wav.
2. Desain
a. Gameplay
Connect Four merupakan permainan papan dengan jumlah
pemain dua orang. Aturan main dari Connect Four adalah pemain
harus memasukkan koin berwarna kedalam papan dengan tujuh
kolom dan 6 baris. Pemain dinyatakan menang jika salah satu
pemain dapat menyusun koin tersebut secara horizontal, vertical,
atau diagonal sebanyak 4 koin
b. Desain Sistem Game
Desain sistem game merupakan sketsa atau gambaran fitur-
fitur yang terdapat di dalam game yang akan dibuat.
3. Material Collecting
a. Bahan Teks

No. Judul Font


1 Home Comic San MS
2 Play Game Comic San MS
3 Settings Comic San MS
4 About Comic San MS
5 Exit Comic San MS
Tabel 1. Bahan Teks
b. Bahan Audio

No Nama Suara Format

1 Backsound mp3

2 Button Sound mp3

3 Coin Sound mp3

4 Win Sound mp3

5 Loss Sound mp3

Tabel 2. Bahan Audio


4. Assembly
Tahapan desain meliputi desain game map dan penataan assets
game agar tampilan yang dimunculkan lebih familiar dengan user.
5. Testing
Pengujian merupakan salah satu hal yang harus dilakukan sebelum
peluncuran sebuah game. Pengujian dilakukan untuk memeriksa fungsi-
fungsi dalam aplikasi permainan Connect Four agar dapat berjalan dengan
baik dan sesuai dengan rancangan yang telah disusun sebelumnya.
6. Distribution
Setelah game Connect Four selesai diuji, maka tahap selanjutnya
adalah pendistribusian aplikasi. Pendistribusian aplikasi game tergantung
pada kapasitas internet dan media yang akan digunakan oleh user.
Program di publish dalam bentuk file .apk untuk Android untuk diupload
melalui Playstore dan media sosial agar pengguna dapat mengunduh
secara gratis.
1.7 Sistematika Penulisan
Untuk memperjelas penyusunan, maka sistematika pembahasan dalam penelitian antara
lain:
BAB I Pendahuluan berisi latar belakang, rumusan masalah, ruang lingkup,
tujuan dan manfaat, sistematika pembahasan dan metode penelitian.
BAB II Berisi teori-teori yang akan digunakan sebagai data penyelesaian masalah
penelitian ini.
BAB III Berisi identifikasi dan pemecahan masalah pada penelitian ini serta
perancangan sistem dan tahapan pengujian pada sistem yang dirancang
pada penelitian ini.
BAB 2

TINJAUAN PUSTAKA

2.1 Penelitian Terdahulu


Berikut referensi yang diambil dari penelitian sebelumnya yang memiliki hubungan
dengan penelitian yang diambil:
2.1.1 Menurut (Waruwu & Purba, 2017), dalam penelitiannya mengatakan game Othello
merupakan permainan yang dimainkan oleh dua pemain dengan tujuan
mendapatkan koin sebanyak mungkindalam papan permainan. Penggunaan
algoritma Minimax pada penelitiannya merupakan hal tepat untuk mencari langkah
yang terbaik sehingga memperkecil peluang untuk kalah dalam permainan dengan
ditunjukkannya kecepatan waktu untuk menyelesaikan satu permainan. Level mudah
8x8 mampu diselesaikan dalam waktu 15 detik, lelevel sedang 10x10 dapat
diselesaikan dalam waktu 10 detik, serta level sulit 12x12 dapat diselesaikan dalam
waktu 5 detik. Namun dalam penelitiannya, perlu adanya pengembangan
menggunakan basis game android.
2.1.2 (Christopher, Daniel, Pratama, & Hakim, 2020) mengatakan permainan Tic-Tac-Toe
adalah sebuah permainan dimana yang pertama kali membentuk baris berisi 3
buah token atau simbol menjadi pemenang. Permainan ini dapat diintegrasikan
ke dalam komputer menggunakan kecerdasan buatan (Artificial Intelligence)
dengan menerapkan algoritma Minimax untuk memperhitungkan setiap
kemungkinan langkah yang dapat diambil. Penerapan kecerdasan buatan
(Artificial Intelligence) ini terbukti membuat permainan Tic-Tac-Toe tersebut tidak
dapat dimenangkan oleh manusia sama sekali. Kecerdasan buatan (Artificial
Intelligence) yang diterapkan ini mampu mengevaluasi semua kemungkinan dengan
baik, sehingga langkah yang diambil merupakan langkah yang paling optimal. Namun
dalam penelitiannya, game tersebut berbasis desktop akan lebih efisien jika
diterapkan berbasis android. Tabel dibawah ini merupakan bukti bahwa penggunaan
algoritma Minimax sudah sesuai penggunaannya pada game Tic-Tac-Toe.

Tabel 2.1 Hasil percobaan permainan dimulai oleh pengguna

Percobaan Pemain menang Pemain kalah Seri


Percobaan 1 Hasil seri
Percobaan 2 O sebagai AI X sebagai Pemain
Percobaan 3 O sebagai AI X sebagai Pemain
Percobaan 4 O sebagai AI X sebagai Pemain
Percobaan 5 Hasil Seri
Sumber: (Christopher, Daniel, Pratama, & Hakim, 2020)

Tabel 2.2 Hasil percobaan permainan dimulai oleh AI

Percobaan Pemain menang Pemain kalah Seri


Percobaan 1 O sebagai AI X sebagai Pemain
Percobaan 2 Hasil seri
Percobaan 3 Hasil seri
Percobaan 4 O sebagai AI X sebagai Pemain
Percobaan 5 Hasil Seri
Sumber: (Christopher, Daniel, Pratama, & Hakim, 2020)

2.1.3 (Kurniawan & Udjulawa, 2020) pada penelitiannya mengatakan Xiangqi, atau Catur
Cina, adalah game yang sangat populer di negara-negara Asia. Dipercayai bahwa
baik Xiangqi maupun Catur Barat/International telah dikembangkan dari
gameChaturanga asli India. Bidak catur Cina biasanya berbentuk cakram datar,
memiliki nama-nama yang mirip dengan yang digunakan dalam catur barat dan
tertulis di atasnya huruf Cina. Selain raja dan dua menteri, masing-masing
pemain mulai dengan dua benteng, dua kuda, dua gajah, dua meriam, dan lima bidak.
Berdasarkan penjelasan singkat game Xiangqi, game tersebut memiliki gerak, buah,
dan papan berbeda dengan catur pada umumnya. Oleh sebab itu dibutuhkan algoritma
Minimax untuk mendapatkan hasil langkah yang maksimal dengan waktu yang cepat.
Dalam penelitiannya, peneliti membuat game tersebut berbasis desktop akan lebih
efisien jika berbasis android serta masih perlu logika pengkodean yang efisien.

2.2 Teori Terkait


2.2.1 Algoritma
Algoritma adalah setiap prosedur komputasi yang terdefinisi dengan baik yang
mengambil beberapa nilai atau set nilai sebagai input dan menghasilkan beberapa
nilai atau menetapkan nilai sebagai output. Dengan demikian algoritma merupakan
urutan langkah komputasi yang mengubah input menjadi output. (Verseti & Ribes,
2019)
2.2.2 Algoritma Minimax
Algoritma Minimax adalah salah satu algoritma yang digunakan pada permainan
papan yang dimainkan dua pemain guna untuk menyelesaikan masalah pada
permainan papan di komputer. Konsep algoritma Minimax ialah memaksimalkan
kemungkinan kemenangan dan meminimalkan kemungkinan kekalahan. (Waruwu &
Purba, 2017)
2.2.3 Video Game
Video game adalah jenis aktivitas bermain, yang dilakukan dalam dunia maya, di
mana para pemain mencoba untuk mencapai setidaknya satu tujuan dan bertindak
sesuai dengan aturan. (Adams & Rollings, 2010)
2.2.4 Adobe Photoshop CS6
Adobe Photoshop CS6 adalah program pengeditan grafis yang digunakan untuk
membuat dan memanipulasi gambar untuk dicetak, web, dan media lainnya. (Space,
2022)
2.2.5 Android
Android adalah sistem operasi berbasis Linux yang dirancang untuk perangkat
bergerak layer sentuh seperti telepon pintar dan tablet. (Yudhanto & Wijayanto,
2017)
2.2.6 Unity
Unity adalah game engine yang paling banyak digunakan dibandingkan game engine
lainnya di pasaran. Unity memiliki alur kerja visual dengan fitur drag and drop serta
dukungan bahasa pemrograman C#. (Halpern, 2018)

BAB 3

ANALISA DAN PERANCANGAN

3.1 Analisa
3.1.1 Identifikasi Masalah
Berdasarkan penelitian terdahulu yang telah dipaparkan diatas, pada game yang
mereka buat player sangat mudah untuk menyelesaikan permainan. Dengan
penerapan algoritma minimax, permainan akan lebih seru disaat AI berusaha
mengalahkan player. Oleh sebab itu, game yang akan dibuat memiliki tiga level
yaitu mudah, sedang, dan sulit.
3.1.2 Pemecahan Masalah
Berdasarkan permasalahan yang telah diidentifikasi, berikut penjelasan tiga level
pada game yang akan dibuat:
1. Level Mudah
Pada saat player memulai permainan dan meletakkan koin pada kolom atau baris
yang dipilih player, pergerakan AI belum bisa menghalangi langkah selanjutnya
untuk player yang berarti AI akan bergerak secara acak pada baris atau kolom
koin. Sehingga player akan sangat mudah untuk menyusun koin sampai koin
tersebut sejajar sebanyak empat koin.
2. Level Sedang
Untuk level sedang AI akan membaca susunan koin dari player ketika sudah
sejajar sebanyak dua koin. Dengan begitu player akan mencari kolom atau baris
baru untuk menyelesaikan gilirannya dalam penyusunan koin.
3. Level Sulit
Sedangkan pada level sulit, AI akan membaca susunan koin player ketika player
baru meletakkan koin sebanyak satu koin. Setelah itu AI akan meletakkan koin
secara acak saat player menyusun dua koin. Disaat yang bersamaan AI juga akan
menyusun koinnya sebanyak dua koin. AI akan menutup jalur langkah dari
player ketika player sudah Menyusun koin ketiganya. Dengan begitu, player
akan mencari kolom atau baris yang kosong agar susunan koinnya sejajar secara
diagonal untuk memenangkan permainan.
3.2 Perancangan
3.2.1 Perancangan Sistem
Sebagaimana umumnya sebuah game memiliki arsitektur. Arsitektur game
merupakan suatu rancangan yang akan menjadi panduan untuk implementasi
program. Arsitektur game dibuat dan disesuaikan berdasarkan kebutuhan pengguna
agar pengguna tidak kesulitan dalam memainkan game tersebut nantinya.
United Modeling Language (UML) merupakan keluarga notasi grafis yang
didukung oleh meta-model tunggal, yang membantu pendeskripsian dan desain
sistem perangkat lunak, khususnya sistem yang dibangun menggunakan
pemrograman beroriental objek.
Usecase merupakan diagram yang bekerja dengan cara mendeskripsikan interaksi
antara pengguna dengan suatu system itu sendiri, melalui gambaran alur bagaimana
sistem tersebut digunakan. Usecase terdiri dari actor sebagai pengguna dan berbagai
interaksi yang dilakukannya. Usecase Permainan Papan Connect Four Berbasis
Android dapat dilihat pada gambar 3.1.
Gambar 3.1 Desain Use Case Diagram
Dari gambar 3.1 diketahui pengguna beberapa hak akses terhadap sistem game,
antara lain:

1. Mulai
Pengguna dapat memulai game dengan memilih menu mulai.
2. Tentang
Pengguna dapat melihat informasi pengembang dari game dengan memilih
menu tentang.
3. Keluar
Pengguna dapat keluar dari game dengan memilih menu keluar.
3.2.2 Perancangan User Interface
Pada tahap pemodelan interfaceini, peneliti menggambarkan desain antar muka
pada sistem informasi ini. Berikut desain antar muka yang sudah dibuat:
a. Splash Screen
Gambar 3.2 Desain UI Splash Screen
b. Menu Utama

Gambar 3.3 Desain UI Menu Utama

c. Pilih Level

Gambar 3.3 Desain UI Pilih Level


d. Pilih Level
Gambar 3.4 Desain UI Permainan
e. Tentang

Gambar 3.5 Desain UI Tentang

f. Keluar

Gambar 3.6 Desain UI Keluar


3.3 Rancangan Pengujian
3.3.1 Metode Pengujian
Metode pengujian yang akan digunakan untuk mengembangkanaplikasi ini adalah
blackbox testing. Blackbox testing adalah pengujian yang dilakukan hanya dengan
mengamati hasil eksekusi melalui data uji dan memeriksa fungsional dari game yang
akan dibuat.
3.3.2 Tahapan Pengujian
Ada beberapa tahapan pengujian yang akan dilakukan, antara lain:
1. Pengujian Interface
2. Pengujian Fungsi Dasar
3. Pengujian Validasi
4. Real Testing

DAFTAR PUSTAKA
Adams, E., & Rollings, A. (2010). Fundamentals of Game Design. California: Pearson Prentice
Hall.

Christopher, A., Daniel, Pratama, E., & Hakim, L. (2020). Penerapan Algoritma Minimax
Terhadap Permainan Tic Tac Toe Dengan Menggunakan Artificial Intelligence. Jurnal
Teknik Informatika Unika St. Thomas (JTIUST).

Halpern, J. (2018). Developing 2D Games with Unity: Independent Game Programming with
C#. New York: Apress.

Kurniawan, M. H., & Udjulawa, D. (2020). Perbandingan Performa Algoritma Minimax Dan
Alpha-Beta Pruning Pada Game Catur Cina. Jurnal Algoritme.
Space, S. (2022, 7 14). Getting Started with Photoshop. Diambil kembali dari University of
Michigan Library: https://guides.lib.umich.edu/photoshop

Verseti, J., & Ribes, D. (2019). Digital STS: A Field Guide for Science & Technology Studies.
New Jersey: Princeton University Press.

Waruwu, C., & Purba, D. (2017). Implementasi Algoritma Minimax Dalam Game Othello.
Jurnal Teknik Informatika Unika St. Thomas (JTIUST), II.

Yudhanto, Y., & Wijayanto, A. (2017). Mudah Membuat danBerbisnis Aplikasi Android dengan
Android Studio. Jakarta: PT Elex Media Komputindo.

Anda mungkin juga menyukai