Abdul Ghofur, 2016
BAB I
PENDAHULUAN
1.1 Latar Belakang
Permainan komputer atau yang sering kita sebut game merupakan salah
satu aplikasi yang banyak diminati oleh para pengguna perangkat teknologi
informasi dan komunikasi seperti mobile phone dan personal computer (P C).
Semakin maraknya online store application yang tersedia di internet membuat
pertumbuhan game semakin pesat. Berdasarkan hasil analisis yang dilakukan
Flurry (flurry.com) menyatakan bahwa bahkan game yang ditakutkan akan
mencapai tingkat kejenuhan pada tahun 2013 mencatat pertumbuhan dari tahun
ke tahun sebesar 66%. Diagram pertumbuhan game mobile dapat dilihat pada
Gambar 1.1 berikut ini :
Gambar 1.1 Diagram aplikasi mobile yang banyak digunakan
Pada sebuah game, biasanya terdapat implementasi dari algoritma
P athfinding adalah salah satu masalah paling dasar dari kecerdasan buatan
(Artificial Intelligence / AI) yang ada pada game. P athfinding yang buruk dapat
membuat karakter yang ada pada game terlihat brainless (bodoh). Penanganan
masalah pathfinding secara efektif dapat membuat game lebih menyenangkan dan
memberikan pengalaman bermain yang mendalam bagi player (David M. Broug
dan Glenn Seemann, 2004).
Algoritma A* memberikan solusi efektif untuk masalah pathfinding.
Algoritma ini merupakan algoritma Best F irst Search yang menggabungkan
Uniform Cost Search dan Greedy Best-F irst Search. Algoritma A* memberikan
hasil keluaran yang complete dan optimal (Suyanto, 2007).
Ada beberapa penelitian yang sebelumnya telah dilakukan yang
berhubungan dengan penilitian yang akan dilakukan. Penelitian tersebut
diantaranya:
1. Penelitian berjudul “PERBANDINGAN ALGORITMA A* DAN BREADTH
F IRST SEARCH PADA BLOCK MAZE” yang dilakukan oleh Mohammad
Nur Rahman dengan menghasilkan kesimpulan bahwa algoritma A*
memiliki kinerja yang lebih baik dari Breadth F irst Search.
2. Penelitian berjudul “PERBANDINGAN ALGORITMA A* DAN DIJKSTRA BERBASIS WEBGIS UNTUK PENCARIAN RUTE TERPENDEK” yang
dilakukan oleh Rian Putra Pratama dengan menghasilkan kesimpulan bahwa
Algoritma A* memiliki kinerja yang lebih baik dari Dijkstra.
3. Penelitian berjudul “A PERFORMANCE COMPARISON BETWEEN A*
PATHFINDING AND WAYPOINT NAVIGATOR ALGORITHM ON
ANDROID AND IOS OPERATING SYSTEM” yang dilakukan oleh
Abdul Ghofur, 2016
Manopiniwes dengan menghasilkan kesimpulan bahwa Algoritma A*
memiliki proses yang lebih cepat dari waypoint pada kedua perangkat iOS
dan android.
Dari ketiga penelitian sebelumnya yang telah dijelaskan di atas dapat
ditarik kesimpulan bahwa A* memiliki kinerja yang lebih baik dibandingkan
dengan algoritma kecerdasan buatan lainnya.
Untuk mencari jalan dari titik awal ke titik tujuan, kita perlu tahu tentang
peta(map) yang ada seperti posisi jalan yang bisa dilalui dan posisi hambatan.
Untuk itu peta akan direpresentasi ke dalam bentuk yang lain, salah satunya
dalam bentuk grid yang disebut dengan grid graph.
Selain grid graph, ada beberapa bentuk representasi peta diantaranya
waypoint graph, dan navigation mesh. Waypoint graph merepresentasi peta
dengan bentuk penempatan node secara bebas dengan tiap node saling terhubung
satu sama lain. Sedangkan navigation mesh merepresentasi peta dalam beberapa
bentuk segitiga mesh. Mesh tersebut menggambarkan area yang bisa dilalui (Aron
Granborg, 2013).
Grid graph menghasilkan node dalam pola grid lebar*panjang. Grid
graph adalah graph yang paling mudah. Selain itu, grid graph berkerja sangat
baik terutama saat ada perubahan graph yang dibutuhkan secara runtime seperti
pada game RTS dan Tower Defence (Aron Granborg, 2013). Grid graph banyak
digunakan pada beberapa game. Bahkan game genre RTS seperti Age of Empires
dan Warcraft III menggunakan grid graph (Steve Rabin, 2010).
Implementasi metode pathfinding banyak digunakan dalam video game.
Metode pathfinding ini banyak digunakan pada game genre Rea l Time Strategy
(RTS) dan Tower Defence (TD). Selain game genre RTS dan TD, game dengan
genre action puzzle juga ada yang mengimplementasikan metode pathfinding.
Salah satu contohnya adalah Maze Race. Gambar 1.2 di bawah ini menampilkan
game scene dari Maze Race saat metode pathfinding yang sebagai salah satu fitur
Gambar 1.2 Game Scene Maze Race
(Sumber : www.coolmath-games.com/0-mazerace2)
Sebuah game action puzzle mengacu pada sebuah permainan di mana
player (pemain) mencoba memecahkan teka-teki secara real time. Hal ini
biasanya dilakukan dengan batas waktu, di mana player memiliki waktu terbatas
untuk memecahkan teka-teki. Jika player tidak memecahkan teka-teki tersebut
dalam waktu yang ditentukan, maka pemain gagal. Bentuk lain dar i game action
puzzle yang sederhana seperti menempatkan penghitungan waktu (time counter).
Dalam jenis action puzzle ini skor tinggi akan disimpan dan semakin cepat player
bisa memecahkan teka-teki, player akan mendapatkan skor yang lebih tinggi
(Justin Eldridge, 2012).
Berdasarkan latar belakang di atas penulis tertarik untuk melakukan
penelitian dengan mencoba membangun game action puzzle. Dimana pada
penelitian ini penulis mencoba menguji kinerja AI dengan implementasi metode
pathfinding dengan algoritma A*dan grid graph pada non-player character.
1.2 Rumusan Masalah
Berdasarkan uraian latar belakang di atas dapat dirumuskan permasalahan
yang akan diselesaikan dalam penelitian ini adalah:
1. Bagaimana mengimplementasikan metode pathfinding dengan
menggunakan Algoritma A* dan grid graph pada non-player
Abdul Ghofur, 2016
2. Bagaimana hasil dari kinerja metode pathfinding dengan
menggunakan Algoritma A* dan grid graph dilihat dari waktu
eksekusi (runtime) dan jumlah penggunaan memori?
1.3 Batasan Masalah
Untuk memfokuskan penelitian, maka dibuat batasan dari permasalahan di
atas:
1. Algoritma A* hanya digunakan pada metode pathfinding.
2. Game yang dibuat berbasis desktop Sistem Operasi Windows.
3. Heuristik yang digunakan pada algoritma A* adalah Manhattan
Distance.
1.4 Tujuan Penelitian
Tujuan yang ingin dicapai dari penelitian ini adalah:
1. Menghasilkan sebuah game action puzzle dengan
mengimplementasikan metode pathfinding menggunakan Algoritma
A* dan grid graph pada non-player character (NP C).
2. Mengukur kinerja metode pathfinding dengan menggunakan
Algoritma *A dan grid graph pada game action puzzle dilihat dari
waktu eksekusi (runtime) dan jumlah penggunaan memori.
1.5 Manfaat Penelitian
a. Bagi peneliti
1. Menambah wawasan mengenai algoritma kecerdasan buatan yang
digunakan pada game.
2. Memberikan gambaran lebih lanjut tentang game yang bisa
buatan yang ada.
b. Bagi dunia penelitian dan masyarakat umum
1. Menambah studi literatur algoritma diterapkan dalam permainan
terutama permainan yang mengimplementasikan metode pathfinding
dalam gameplay-nya.
2. Menambah studi literatur untuk perancangan non-player cha racter
(NP C) pada game.
1.6 Metodologi Penelitian
Metodologi yang digunakan dalam penelitian ini antara lain :
1. Studi Literatur
Mempelajari dan memahami teori-teori yang berhubungan dengan
penelitian baik secara langsung maupun tidak melalui buku, jurnal, karya
ilmiah, paper dan sumber ilmiah lainnya.
2. Analisis dan Perancangan Perangkat Lunak
Analisis dan perancangan dilakukan dengan menentukan bahasa
pemrograman yang akan digunakan selama pengembangan, struktur data,
dan input/output serta tools pendukung lainnya.
3. Implementasi
Implementasi akan dilakukan setelah melakukan analisis terhadap
kebutuhan yang ada dan mendapatkan hasil yang tepat.
4. Hasil akhir dan penarikan kesimpulan
Pada tahap ini, analisis hasil akhir dilakukan untuk melihat sejauh mana
metode yang digunakan dapat memberikan solusi pada permasalahan
yang diangkat dalam penelitian. Dari hasil yang didapatkan, se lanjutnya
akan dilakukan penarikan kesimpulan dari revisi terakhir.
1.7 Sistematika Penulisan
Abdul Ghofur, 2016
skripsi yang peneliti susun. Sistematika skripsi ini dibagi menjadi beberapa
bagian berikut :
BAB I PENDAHULUAN
Bagian ini merupakan gambaran umum dari penelitian yang
meliputi latar belakang, rumusan masalah, tujuan penelitian,
batasan masalah, metodologi penelitian, dan sistematika penulisan.
BAB II TINJAUAN PUSTAKA
Bagian ini peneliti mempelajari sumber literatur - literatur ilmiah
seperti jurnal, textbook, dan paper untuk mendapatkan data dan
teori tentang pathfinding, algoritma A*, gr id graph, non-player
character, game development, dan game design yang akan
mendukung penelitian yang akan dilakukan.
BAB III METODOLOGI PENELITIAN
Di dalam bagian ini dijelaskan perihal langkah – langkah
penelitian, alat dan bahan yang akan dipakai selama penelitian,
metode pengembangan perangkat lunak, metodologi penelitian
yang dilakukan, dan jadwal penelitian.
BAB IV HASIL PENELITIAN DAN PEMBAHASAN
Berisi hasil penelitian yang telah dilakukan dan membahas
perangkat lunak yang dibangun serta mengukur tingkat
keberhasilanya dalam menjawab permasalahan yang diangkat.
BAB V KESIMPULAN DAN SARAN
Bagian ini menjelaskan kesimpulan yang merupakan jawaban dari
masalah dalam penelitian, serta berisi saran yang bisa menjadi