Implementasi Algoritma A Berbasis Pathfinding Dalam Pengembangan Game Menanam Pohon
IMPLEMENTASI ALGORITMA A* BERBASIS PATHFINDING DALAM
PENGEMBANGAN GAME MENANAM POHON
SKRIPSI
RAHMAT IRFAN POHAN
111401077
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2016
Universitas Sumatera Utara
IMPLEMENTASI ALGORITMA A* BERBASIS PATHFINDING DALAM
PENGEMBANGAN GAME MENANAM POHON
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah
Sarjana Ilmu Komputer
RAHMAT IRFAN POHAN
111401077
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2016
Universitas Sumatera Utara
A-1
PERSETUJUAN
Judul
Kategori
Nama
Nomor Induk Mahasiswa
Program Studi
Fakultas
: IMPLEMENTASI ALGORITMA A* BERBASIS
PATHFINDING DALAM PENGEMBANGAN
GAME MENANAM POHON
: SKRIPSI
: RAHMAT IRFAN POHAN
: 111401077
: SARJANA(S1) ILMU KOMPUTER
: ILMU
KOMPUTER
DAN
TEKNOLOGI
INFORMASI (Fasilkom-TI)
Diluluskan di
Medan, Agustus 2016
Komisi Pembimbing:
Dosen Pembimbing II
Dosen Pembimbing I
M. Andri Budiman, ST, M.Comp.Sc, MEM
Ade Candra, ST, M.Kom
NIP. 197510082008011011
NIP. 197909042009121002
Diketahui/Disetujui oleh
Program Studi S1 Ilmu Komputer
Ketua,
Dr. Poltak Sihombing, M.Kom
NIP. 196203171991021001
134
Universitas Sumatera Utara
A-2
PERNYATAAN
IMPLEMENTASI ALGORITMA A* BERBASIS PATHFINDING DALAM
PENGEMBANGAN GAME MENANAM POHON
Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa
kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, Agustus 2016
Rahmat Irfan Pohan
111401077
Universitas Sumatera Utara
A-3
UCAPAN TERIMA KASIH
Alhamdulillah. Puji dan syukur kehadirat Allah SWT yang dengan rahmat dan
karunia-Nya penulis dapat menyelesaikan penyusunan skripsi ini sebagai syarat
untuk memperoleh gelar Sarjana Komputer pada Program Studi S1 Ilmu
Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas
Sumatera Utara.
Pada pengerjaan skripsi dengan judul Implementasi Algoritma A* berbasis
Pathfinding dalam Pengembangan Game Menanam Pohon, penulis menyadari
bahwa banyak pihak yang turut membantu, baik dari pihak keluarga, sahabat dan
orang-orang terkasih yang memotivasi dalam pengerjaannya. Dalam kesempatan
ini, penulis mengucapkan terima kasih kepada:
Ucapan terima kasih penulis sampaikan kepada:
1.
Bapak Prof. Dr. Runtung Sitepu, S.H., M.Hum. selaku Rektor Universitas
Sumatera Utara.
2.
Bapak Prof. Dr. Opim Sitompul, M.Si. selaku Dekan Fakultas Ilmu
Komputer dan Teknologi Informasi Universitas Sumatera Utara.
3.
Bapak Dr. Poltak Sihombing, M.Kom. selaku Ketua Program Studi S-1
Ilmu Komputer Universitas Sumatera Utara.
4.
Ibu Maya Silvi Lydia, B.Sc, M.Sc. selaku Sekretaris Program Studi S-1
Ilmu Komputer Universitas Sumatera Utara, Wakil Dekan III Fakultas Ilmu
Komputer dan Teknologi Informasi Universitas Sumatera Utara, dan selaku
Dosen Pembanding II yang telah memberikan kritik dan saran dalam dalam
penyempurnaan skripsi ini.
5.
Bapak Ade Candra, ST, M.Kom. selaku Dosen Pembimbing I yang telah
memberikan bimbingan, saran dan masukan kepada penulis dalam
pengerjaan skripsi ini.
6.
Bapak M. Andri Budiman, ST, M.Comp.Sc, MEM selaku Dosen
Pembimbing II yang telah memberikan bimbingan, dukungan, dan saran
kepada penulis dalam pengerjaan skripsi ini.
Universitas Sumatera Utara
A-4
7.
Bapak Dr. Syahril Efendi, S.Si., M.IT selaku Dosen Pembanding I dan
Dosen Pembimbing akademik yang telah memberikan bimbingan, kritik dan
saran dalam penyempurnaan skripsi ini.
8.
Bapak
Buchari,
S.T.,
M.Kes
selaku
Ketua
Pengurus
Student
Entreprenurship Center Universitas Sumatera Utara yang telah memberikan
nasehat, dukungan, dan semangat kepada penulis.
9.
Yang tercinta dan teristimewa Almarhum Ayahanda Ir. Zulkifli Pohan yang
selama masih hidup beliau selalu memberikan nasehat dan memberi
pengaruh besar terhadap penulis dan yang Ibunda tersayang Fatmasari
Hasibuan yang selama ini selalu memberikan doa, dukungan, dan semangat
kepada penulis.
10. Abangda dr. Fathy Zuandi Pohan, Sp.A. yang selalu mendukung penulis dan
menjadi tauladan bagi penulis, dan Kakanda Ferina Zulyana Pohan, S.Sos.
yang memberi dukungan dan semangat terhadap penulis.
11. Seluruh keluarga besar khususnya, Bou Swastina Pohan, Amangboru Hatta
Nasution, Wak Toto, Tante Herawati, Om Rusli Siregar., Abang Hafiz Atra
S.Kom, Kakak dr. Nia Novianti Siregar, Kakak Trisna Dini Nasution S.E.,
Kakak dr. Nindy Jayatri, Abang Pahmi Utamaraja Ginting S.T., M.Sc,
Adinda Ahmad Raihan Siregar dan Keponakan Syah Prima Oktora Nasution
yang selalu membantu, memberi semangat dan dukungan buat penulis.
12. Om Erwin Siregar selaku ketua Persatuan Artis Seluruh Indonesia (PARFI)
Sumatera Utara yang selalu mendukung dan memberi semangat penulis dan
menjadi panutan bagi penulis.
13. Rekan seperjuangan tim VUSEON, adik-adik hebat di S1 Teknologi
Informasi stambuk 2013 Muhammad Putra Yuszar dan Dendy Herlambang
yang telah memberikan bantuan dan semangat terhadap penulis.
14. Seluruh teman-teman Terbaik penulis khususnya M. Adithia, S.Kes, M.
Antonio Gayo S.E., M. Al Amin Nasution, Raja Oloan Siregar, Ikhsan AlZuhri, Rizky Pratama Sembiring, M. Rizki Nugroho, Suryansyah Manik
S.TI, Defriyan Ramzi S.Kes, Rizky Ananda Daulay dan Ijtihad Siregar yang
selalu memberi semangat, dan menjadi tempat berbagi cerita suka dan duka
penulis.
Universitas Sumatera Utara
A-5
15. Seluruh teman-teman seperjuangan S1 Ilmu Komputer stambuk 2011,
khususnya Hari Rahman Nihe S.Kom, Hanafi Ahmad Subrata S.Kom, Rizki
Pratama S.Kom, Al Mizfar S.Kom, Febri Aro Gea S.Kom, Andrus S.Kom,
M. Arief Aulia Anwar dan Satria Ramadhan yang turut membantu, memberi
semangat, dan dukungan terhadap penulis dalam menulis skripsi.
16. Seluruh rekan-rekan bisnis Noire Pomade, khususnya Abang Anto, Martin
Ginting, Mirza, Danil Akbar, Anhar Ismail dan Abang Iqbal Siregar yang
menjadi tempat berbagi cerita, suka dan duka, dan selalu mendukung
penulis.
17. Seluruh tenaga pengajar dan pegawai Fakultas Ilmu Komputer dan
Teknologi Informasi USU, khususnya abang Faisal Hamid di Program Studi
S-1 Ilmu Komputer.
18. Seluruh rekan-rekan asisten lab IKLC (Ilmu Komputer Laboratory Center).
19. Seluruh rekan-rekan pengurus PEMA FASILKOM-TI tahun 2014-2015.
20. Seluruh rekan-rekan UKMI Al-Khwarizi tahun 2012-2014 dan redaksi
Alamagz (Al-Khwarizmi Magazine).
21. Seluruh teman-teman seperjuangan Sobat Bumi Indonesia dan Sobat Bumi
Medan, khususnya Apriandi Syahputra S.S., Tito Hanafi S.Kom, Maharaniy
S.Kep., Surati S.S, Romulus S.T., Ulfah S.Kep, Hafizah Mahfuzah S.S.
22. Seluruh teman-teman PARFI SUMUT khusunya Fradana Satria, Ari
Ridwan, Rudi Micco, Qudrat Syahputra, Chairani Lubis, dan Angelista
Wulandari yang memberi semangat dan dukungan kepada penulis.
23. Semua pihak yang terlibat langsung atau tidak langsung yang penulis tidak
dapat tuliskan satu per satu.
24.
Semoga Allah SWT melimpahkan berkah kepada semua pihak yang telah
memberikan bantuan, perhatian, serta dukungan
kepada penulis dalam
menyelesaikan skripsi ini.
Penulis menyadari bahwa skripsi ini masih terdapat kekurangan. Oleh
karena itu, penulis mengharapkan kritik dan saran yang bersifat membangun demi
kesempurnaan skripsi ini. Sehingga dapat bermanfaat bagi kita semuanya..
Medan, Agustus 2016
Universitas Sumatera Utara
A-6
Penulis
Rahmat Irfan Pohan
Universitas Sumatera Utara
A-7
ABSTRAK
Siapapun pasti menempuh jalan yang mereka anggap sebagai jalan
terpendek bila mereka berpergian dari suatu tempat ke tempat lainnya. Namun
akan sulit bagi seseorang tersebut untuk memilih jalan mana yang terpendek,
karena bisa saja jalan yang dipilih bukan jalan terpendek. Metode untuk
menentukan jalan terpendek tersebut adalah Pathfinding. Pathfinding banyak
digunakan di berbagai bidang Ilmu Komputer, salah satunya pada bidang
pengembangan game. Dalam penelitian ini penulis akan mendesain dan
menganalisis
pathfinding
diimplementasikan
pada
dengan
aplikasi
menggunakan
game
dalam
algoritma
pembuatan
A*
dan
AI(Artificial
Intelligence) sederhana. AI pada game tersebut akan menemukan jalan
terpendeknya sendiri dari start node menuju goal node. Heuristik Algoritma A*
yang digunakan adalah Manhattan Distance yang memungkinan AI dapat berjalan
pada 4 arah yang berbeda. Dari hasil pengujian pathfinding A* didapatkan bahwa
pada proses pencarian, jumlah node yang dikunjungi akan semakin banyak jika
jumlah node penghalang meningkat. Dari hasil pengujian juga menunjukkan
bahwa semakin banyak jumlah node penghalang maka Running Time akan
semakin besar dan waktu rata-rata proses pathfinding A* adalah 0.0732 detik.
Kata kunci : A*, Artificial Intelligence, Game, Pathfinding
Universitas Sumatera Utara
A-8
IMPLEMENTATION OF THE A*-BASED PATHFINDING ALGORITHM
ON GAME DEVELOPMENT OF PLANT TREES
ABSTRACT
Anyone would take the path that they consider to be the shortest path
when they travel from one place to another. But it would be difficult for such a
person to choose which path is the shortest, because it could be the chosen path is
not the shortest path. The method for determining the shortest path is pathfinding.
Pathfinding is widely used in various fields of Computer Science, one of them on
the field of video game development. In this research, the authors will design and
analyze the pathfinding using the A * algorithm and implemented it on a game
application for the creation of a simple AI (Artificial Intelligence). The AI in the
game will find its own shortest path from the start node to the goal node. The
heuristic of Algorithm A * that be used is the Manhattan Distance that allows AI
can walk on 4 different directions. Number of visited nodes will increase if the
grid has many obstacle nodes. The average time of A* pathfinding process is
0.0732 seconds.
Keywords : A*, Artificial Intelligence, Game, Pathfinding
Universitas Sumatera Utara
A-9
DAFTAR ISI
Persetujuan
Hal
ii
Pernyataan
iii
Penghargaan
iv
Abstrak
vii
Abstract
viii
Daftar Isi
ix
Daftar Tabel
xii
Daftar Gambar
xiii
Daftar Lampiran
Bab I Pendahuluan
xv
1
1.1 Latar Belakang
1
1.2 Rumusan Masalah
2
1.3 Batasan Masalah
2
1.4 Tujuan Penelitian
3
1.5 Manfaat Penelitian
3
1.6 Metode Penelitian
3
1.7 Sistematika Penelitian
4
Bab II Tinjauan Pustaka
6
2.1 Video Game
6
2.2 Desain Analisis Algoritma
6
2.3 Teori Graph
7
2.4 Jenis-jenis Graph
7
2.4.1 Berdasarkan Sisi Ganda
8
2.4.2 Berdasarkan Arah
8
2.4.2 Berdasarkan Bobot
9
2.5 Pathfinding
10
Universitas Sumatera Utara
A-10
2.6 Algoritma A*
10
2.6.1 Cara Kerja
11
2.6.2 Sifat Algoritma
12
2.7 Heuristik
13
2.7.1 Manhattan Distance
13
2.7.2 Diagonal Distance
14
2.7.3 Euclidian Distance
15
2.8 Android
15
2.9 Actionscript 3.0
16
2.10 Framework Starling
16
Bab III Analisis Dan PerancanganSistem
18
3.1 AnalisisSistem
18
3.1.1 Analisis Masalah
18
3.1.2 Analisis Kebutuhan
19
3.1.2.1 Kebutuhan Fungsional Sistem
19
3.1.2.2 Kebutuhan Non-Fungsional Sistem
20
3.1.3 Analisis Proses
20
3.2 Pemodelan
21
3.2.1 Use Case Diagram
21
3.2.2 Sequence Diagram
22
3.2.3. Activity Diagram
23
3.3 Flowchart Sistem
24
3.3.1 Flowchart Sistem
25
3.3.2 Flowchart Flowchart Pathfinding Algoritma A*
26
3.3.3 Flowchart Proses Game
27
3.4 Pseudocode Sistem
3.4.1 Pseudocode Pathfinding A*
3.5 Perancangan Antarmuka
28
28
28
3.5.1 Form Utama
29
3.5.2 Form Pilihan Level
29
3.5.3 Form Game
30
Universitas Sumatera Utara
A-11
Bab IV Implementasi dan Pengujian
4.1 Implementasi
32
32
4.1.1 Form Main Menu
32
4.1.2 Form Pilihan Level
33
4.1.3 Form Game
33
4.1.4 Form Bantuan
34
4.1.5 Form Tentang
34
4.2 Pengujian Sistem
35
4.2.1 Skenario Algoritma A*
35
4.2.1.1 Searching
43
4.2.1.2 Backtracking
50
4.2.1.3 Rute Pohon Terdekat
51
4.2.2 Pengujian Pathfinding A*
54
Bab V Kesimpulan dan Saran
58
5.1 Kesimpulan
58
5.2 Saran
59
Daftar Pustaka
60
Universitas Sumatera Utara
A-12
DAFTAR TABEL
Nomor
Tabel
3.1
4.1
4.2
4.3
4.4
4.5
NamaTabel
Halaman
Narrative Use-Case Pathfinding A*
Proses Pathfinding Algoritma A*
Heuristik Manhattan Distance
Banyak Node yang Dikunjungi terhadap Banyak
Penghalang
Banyak Node Dikunjungi terhadap Panjang rute
22
46
53
54
49
55
56
Pengaruh Banyak Node Penghalang, Banyak Node
yang Dikunjungi dan Panjang Rute terhadap Waktu
Universitas Sumatera Utara
A-13
DAFTAR GAMBAR
Nomor
Gambar
2.1
Nama Gambar
Halaman
Graf Sederhana(G1), Graf Ganda (G2), Graf
Semu(G3)
8
2.2
2.3
2.4
2.5
2.6
2.7
2.8
3.1
3.2
3.3
3.4
3.5
3.6
3.7
3.8
3.9
3.10
4.1
4.2
4.3
4.4
4.5
Graf Tidak Berarah
Graf Berarah
Weighted Graph
Unweighted Graph
Ilustrasi Manhattan Distance
Ilustrasi Heuristik Diagonal Distance
Ilustrasi Heuristik Euclidean Distance
Diagram Ishikawa
Diagram Use-Case
Diagram Sequence Untuk Proses Pathfinding A*
Activity Diagram Pathfinding A*
Flowchart Sistem
Flowchart Pathfinding Algoritma A*
Flowchart Proses Game.
Rancangan Tampilan Form Utama
Rancangan Form Pilihan Level
Rancangan Form Game
Form Main Menu
Form Pilihan Level
Form Game
Form Bantuan
Form Tentang
8
9
9
10
14
14
15
19
21
23
24
25
26
27
29
30
30
32
33
33
34
34
4.6
Grid Permainan
34
4.7
Ilustrasi Proses Pathfinding A* ke-1 dan 2
35
Ilustrasi Proses Pathfinding A* ke-3 s.d. 5
36
4.9
Ilustrasi Proses Pathfinding A* ke-6 s.d. 8
37
4.10
Ilustrasi Proses Pathfinding A* ke-9 s.d. 11
38
4.11
Ilustrasi Proses Pathfinding A* ke-12 s.d. 14
39
Ilustrasi Proses Pathfinding A* ke-15 s.d. 17
40
4.13
Ilustrasi Proses Pathfinding A* ke-18 s.d. 20
41
4.14
Ilustrasi Proses Pathfinding A* ke-21 s.d. 23
42
Ilustrasi Proses Pathfinding A* ke-24 s.d. 26
43
4.15
4.16
Ilustrasi Proses Pathfinding A* ke-27 s.d. 29
44
4.17
Ilustrasi Proses Pathfinding A* ke-30
45
4.18
Proses Backtracking
46
4.19
Sebelum proses backtracking (a), sesudah proses
50
4.8
4.12
Universitas Sumatera Utara
A-14
backtracking (b)
4.20
4.21
4.22
4.23
Rute Musuh menuju Pohon T1
52
Rute Musuh menuju Pohon T2
52
Rute Musuh menuju Pohon T3
53
Grafik Banyak Node Dikunjungi terhadap Banyak
53
Penghalang
4.24
Grafik Pengaruh Panjang Rute terhadap Banyak
55
Node yang Dikunjungi
4.25
Grafik Pengaruh Banyak Node Pengahalang,
Banyak Node yang Dikunjungi dan Panjang Rute
terhadap Waktu
57
Universitas Sumatera Utara
A-15
DAFTAR LAMPIRAN
A. Listing Program
B. Curriculum Vitae
A1
B1
Universitas Sumatera Utara
PENGEMBANGAN GAME MENANAM POHON
SKRIPSI
RAHMAT IRFAN POHAN
111401077
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2016
Universitas Sumatera Utara
IMPLEMENTASI ALGORITMA A* BERBASIS PATHFINDING DALAM
PENGEMBANGAN GAME MENANAM POHON
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah
Sarjana Ilmu Komputer
RAHMAT IRFAN POHAN
111401077
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2016
Universitas Sumatera Utara
A-1
PERSETUJUAN
Judul
Kategori
Nama
Nomor Induk Mahasiswa
Program Studi
Fakultas
: IMPLEMENTASI ALGORITMA A* BERBASIS
PATHFINDING DALAM PENGEMBANGAN
GAME MENANAM POHON
: SKRIPSI
: RAHMAT IRFAN POHAN
: 111401077
: SARJANA(S1) ILMU KOMPUTER
: ILMU
KOMPUTER
DAN
TEKNOLOGI
INFORMASI (Fasilkom-TI)
Diluluskan di
Medan, Agustus 2016
Komisi Pembimbing:
Dosen Pembimbing II
Dosen Pembimbing I
M. Andri Budiman, ST, M.Comp.Sc, MEM
Ade Candra, ST, M.Kom
NIP. 197510082008011011
NIP. 197909042009121002
Diketahui/Disetujui oleh
Program Studi S1 Ilmu Komputer
Ketua,
Dr. Poltak Sihombing, M.Kom
NIP. 196203171991021001
134
Universitas Sumatera Utara
A-2
PERNYATAAN
IMPLEMENTASI ALGORITMA A* BERBASIS PATHFINDING DALAM
PENGEMBANGAN GAME MENANAM POHON
Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa
kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, Agustus 2016
Rahmat Irfan Pohan
111401077
Universitas Sumatera Utara
A-3
UCAPAN TERIMA KASIH
Alhamdulillah. Puji dan syukur kehadirat Allah SWT yang dengan rahmat dan
karunia-Nya penulis dapat menyelesaikan penyusunan skripsi ini sebagai syarat
untuk memperoleh gelar Sarjana Komputer pada Program Studi S1 Ilmu
Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas
Sumatera Utara.
Pada pengerjaan skripsi dengan judul Implementasi Algoritma A* berbasis
Pathfinding dalam Pengembangan Game Menanam Pohon, penulis menyadari
bahwa banyak pihak yang turut membantu, baik dari pihak keluarga, sahabat dan
orang-orang terkasih yang memotivasi dalam pengerjaannya. Dalam kesempatan
ini, penulis mengucapkan terima kasih kepada:
Ucapan terima kasih penulis sampaikan kepada:
1.
Bapak Prof. Dr. Runtung Sitepu, S.H., M.Hum. selaku Rektor Universitas
Sumatera Utara.
2.
Bapak Prof. Dr. Opim Sitompul, M.Si. selaku Dekan Fakultas Ilmu
Komputer dan Teknologi Informasi Universitas Sumatera Utara.
3.
Bapak Dr. Poltak Sihombing, M.Kom. selaku Ketua Program Studi S-1
Ilmu Komputer Universitas Sumatera Utara.
4.
Ibu Maya Silvi Lydia, B.Sc, M.Sc. selaku Sekretaris Program Studi S-1
Ilmu Komputer Universitas Sumatera Utara, Wakil Dekan III Fakultas Ilmu
Komputer dan Teknologi Informasi Universitas Sumatera Utara, dan selaku
Dosen Pembanding II yang telah memberikan kritik dan saran dalam dalam
penyempurnaan skripsi ini.
5.
Bapak Ade Candra, ST, M.Kom. selaku Dosen Pembimbing I yang telah
memberikan bimbingan, saran dan masukan kepada penulis dalam
pengerjaan skripsi ini.
6.
Bapak M. Andri Budiman, ST, M.Comp.Sc, MEM selaku Dosen
Pembimbing II yang telah memberikan bimbingan, dukungan, dan saran
kepada penulis dalam pengerjaan skripsi ini.
Universitas Sumatera Utara
A-4
7.
Bapak Dr. Syahril Efendi, S.Si., M.IT selaku Dosen Pembanding I dan
Dosen Pembimbing akademik yang telah memberikan bimbingan, kritik dan
saran dalam penyempurnaan skripsi ini.
8.
Bapak
Buchari,
S.T.,
M.Kes
selaku
Ketua
Pengurus
Student
Entreprenurship Center Universitas Sumatera Utara yang telah memberikan
nasehat, dukungan, dan semangat kepada penulis.
9.
Yang tercinta dan teristimewa Almarhum Ayahanda Ir. Zulkifli Pohan yang
selama masih hidup beliau selalu memberikan nasehat dan memberi
pengaruh besar terhadap penulis dan yang Ibunda tersayang Fatmasari
Hasibuan yang selama ini selalu memberikan doa, dukungan, dan semangat
kepada penulis.
10. Abangda dr. Fathy Zuandi Pohan, Sp.A. yang selalu mendukung penulis dan
menjadi tauladan bagi penulis, dan Kakanda Ferina Zulyana Pohan, S.Sos.
yang memberi dukungan dan semangat terhadap penulis.
11. Seluruh keluarga besar khususnya, Bou Swastina Pohan, Amangboru Hatta
Nasution, Wak Toto, Tante Herawati, Om Rusli Siregar., Abang Hafiz Atra
S.Kom, Kakak dr. Nia Novianti Siregar, Kakak Trisna Dini Nasution S.E.,
Kakak dr. Nindy Jayatri, Abang Pahmi Utamaraja Ginting S.T., M.Sc,
Adinda Ahmad Raihan Siregar dan Keponakan Syah Prima Oktora Nasution
yang selalu membantu, memberi semangat dan dukungan buat penulis.
12. Om Erwin Siregar selaku ketua Persatuan Artis Seluruh Indonesia (PARFI)
Sumatera Utara yang selalu mendukung dan memberi semangat penulis dan
menjadi panutan bagi penulis.
13. Rekan seperjuangan tim VUSEON, adik-adik hebat di S1 Teknologi
Informasi stambuk 2013 Muhammad Putra Yuszar dan Dendy Herlambang
yang telah memberikan bantuan dan semangat terhadap penulis.
14. Seluruh teman-teman Terbaik penulis khususnya M. Adithia, S.Kes, M.
Antonio Gayo S.E., M. Al Amin Nasution, Raja Oloan Siregar, Ikhsan AlZuhri, Rizky Pratama Sembiring, M. Rizki Nugroho, Suryansyah Manik
S.TI, Defriyan Ramzi S.Kes, Rizky Ananda Daulay dan Ijtihad Siregar yang
selalu memberi semangat, dan menjadi tempat berbagi cerita suka dan duka
penulis.
Universitas Sumatera Utara
A-5
15. Seluruh teman-teman seperjuangan S1 Ilmu Komputer stambuk 2011,
khususnya Hari Rahman Nihe S.Kom, Hanafi Ahmad Subrata S.Kom, Rizki
Pratama S.Kom, Al Mizfar S.Kom, Febri Aro Gea S.Kom, Andrus S.Kom,
M. Arief Aulia Anwar dan Satria Ramadhan yang turut membantu, memberi
semangat, dan dukungan terhadap penulis dalam menulis skripsi.
16. Seluruh rekan-rekan bisnis Noire Pomade, khususnya Abang Anto, Martin
Ginting, Mirza, Danil Akbar, Anhar Ismail dan Abang Iqbal Siregar yang
menjadi tempat berbagi cerita, suka dan duka, dan selalu mendukung
penulis.
17. Seluruh tenaga pengajar dan pegawai Fakultas Ilmu Komputer dan
Teknologi Informasi USU, khususnya abang Faisal Hamid di Program Studi
S-1 Ilmu Komputer.
18. Seluruh rekan-rekan asisten lab IKLC (Ilmu Komputer Laboratory Center).
19. Seluruh rekan-rekan pengurus PEMA FASILKOM-TI tahun 2014-2015.
20. Seluruh rekan-rekan UKMI Al-Khwarizi tahun 2012-2014 dan redaksi
Alamagz (Al-Khwarizmi Magazine).
21. Seluruh teman-teman seperjuangan Sobat Bumi Indonesia dan Sobat Bumi
Medan, khususnya Apriandi Syahputra S.S., Tito Hanafi S.Kom, Maharaniy
S.Kep., Surati S.S, Romulus S.T., Ulfah S.Kep, Hafizah Mahfuzah S.S.
22. Seluruh teman-teman PARFI SUMUT khusunya Fradana Satria, Ari
Ridwan, Rudi Micco, Qudrat Syahputra, Chairani Lubis, dan Angelista
Wulandari yang memberi semangat dan dukungan kepada penulis.
23. Semua pihak yang terlibat langsung atau tidak langsung yang penulis tidak
dapat tuliskan satu per satu.
24.
Semoga Allah SWT melimpahkan berkah kepada semua pihak yang telah
memberikan bantuan, perhatian, serta dukungan
kepada penulis dalam
menyelesaikan skripsi ini.
Penulis menyadari bahwa skripsi ini masih terdapat kekurangan. Oleh
karena itu, penulis mengharapkan kritik dan saran yang bersifat membangun demi
kesempurnaan skripsi ini. Sehingga dapat bermanfaat bagi kita semuanya..
Medan, Agustus 2016
Universitas Sumatera Utara
A-6
Penulis
Rahmat Irfan Pohan
Universitas Sumatera Utara
A-7
ABSTRAK
Siapapun pasti menempuh jalan yang mereka anggap sebagai jalan
terpendek bila mereka berpergian dari suatu tempat ke tempat lainnya. Namun
akan sulit bagi seseorang tersebut untuk memilih jalan mana yang terpendek,
karena bisa saja jalan yang dipilih bukan jalan terpendek. Metode untuk
menentukan jalan terpendek tersebut adalah Pathfinding. Pathfinding banyak
digunakan di berbagai bidang Ilmu Komputer, salah satunya pada bidang
pengembangan game. Dalam penelitian ini penulis akan mendesain dan
menganalisis
pathfinding
diimplementasikan
pada
dengan
aplikasi
menggunakan
game
dalam
algoritma
pembuatan
A*
dan
AI(Artificial
Intelligence) sederhana. AI pada game tersebut akan menemukan jalan
terpendeknya sendiri dari start node menuju goal node. Heuristik Algoritma A*
yang digunakan adalah Manhattan Distance yang memungkinan AI dapat berjalan
pada 4 arah yang berbeda. Dari hasil pengujian pathfinding A* didapatkan bahwa
pada proses pencarian, jumlah node yang dikunjungi akan semakin banyak jika
jumlah node penghalang meningkat. Dari hasil pengujian juga menunjukkan
bahwa semakin banyak jumlah node penghalang maka Running Time akan
semakin besar dan waktu rata-rata proses pathfinding A* adalah 0.0732 detik.
Kata kunci : A*, Artificial Intelligence, Game, Pathfinding
Universitas Sumatera Utara
A-8
IMPLEMENTATION OF THE A*-BASED PATHFINDING ALGORITHM
ON GAME DEVELOPMENT OF PLANT TREES
ABSTRACT
Anyone would take the path that they consider to be the shortest path
when they travel from one place to another. But it would be difficult for such a
person to choose which path is the shortest, because it could be the chosen path is
not the shortest path. The method for determining the shortest path is pathfinding.
Pathfinding is widely used in various fields of Computer Science, one of them on
the field of video game development. In this research, the authors will design and
analyze the pathfinding using the A * algorithm and implemented it on a game
application for the creation of a simple AI (Artificial Intelligence). The AI in the
game will find its own shortest path from the start node to the goal node. The
heuristic of Algorithm A * that be used is the Manhattan Distance that allows AI
can walk on 4 different directions. Number of visited nodes will increase if the
grid has many obstacle nodes. The average time of A* pathfinding process is
0.0732 seconds.
Keywords : A*, Artificial Intelligence, Game, Pathfinding
Universitas Sumatera Utara
A-9
DAFTAR ISI
Persetujuan
Hal
ii
Pernyataan
iii
Penghargaan
iv
Abstrak
vii
Abstract
viii
Daftar Isi
ix
Daftar Tabel
xii
Daftar Gambar
xiii
Daftar Lampiran
Bab I Pendahuluan
xv
1
1.1 Latar Belakang
1
1.2 Rumusan Masalah
2
1.3 Batasan Masalah
2
1.4 Tujuan Penelitian
3
1.5 Manfaat Penelitian
3
1.6 Metode Penelitian
3
1.7 Sistematika Penelitian
4
Bab II Tinjauan Pustaka
6
2.1 Video Game
6
2.2 Desain Analisis Algoritma
6
2.3 Teori Graph
7
2.4 Jenis-jenis Graph
7
2.4.1 Berdasarkan Sisi Ganda
8
2.4.2 Berdasarkan Arah
8
2.4.2 Berdasarkan Bobot
9
2.5 Pathfinding
10
Universitas Sumatera Utara
A-10
2.6 Algoritma A*
10
2.6.1 Cara Kerja
11
2.6.2 Sifat Algoritma
12
2.7 Heuristik
13
2.7.1 Manhattan Distance
13
2.7.2 Diagonal Distance
14
2.7.3 Euclidian Distance
15
2.8 Android
15
2.9 Actionscript 3.0
16
2.10 Framework Starling
16
Bab III Analisis Dan PerancanganSistem
18
3.1 AnalisisSistem
18
3.1.1 Analisis Masalah
18
3.1.2 Analisis Kebutuhan
19
3.1.2.1 Kebutuhan Fungsional Sistem
19
3.1.2.2 Kebutuhan Non-Fungsional Sistem
20
3.1.3 Analisis Proses
20
3.2 Pemodelan
21
3.2.1 Use Case Diagram
21
3.2.2 Sequence Diagram
22
3.2.3. Activity Diagram
23
3.3 Flowchart Sistem
24
3.3.1 Flowchart Sistem
25
3.3.2 Flowchart Flowchart Pathfinding Algoritma A*
26
3.3.3 Flowchart Proses Game
27
3.4 Pseudocode Sistem
3.4.1 Pseudocode Pathfinding A*
3.5 Perancangan Antarmuka
28
28
28
3.5.1 Form Utama
29
3.5.2 Form Pilihan Level
29
3.5.3 Form Game
30
Universitas Sumatera Utara
A-11
Bab IV Implementasi dan Pengujian
4.1 Implementasi
32
32
4.1.1 Form Main Menu
32
4.1.2 Form Pilihan Level
33
4.1.3 Form Game
33
4.1.4 Form Bantuan
34
4.1.5 Form Tentang
34
4.2 Pengujian Sistem
35
4.2.1 Skenario Algoritma A*
35
4.2.1.1 Searching
43
4.2.1.2 Backtracking
50
4.2.1.3 Rute Pohon Terdekat
51
4.2.2 Pengujian Pathfinding A*
54
Bab V Kesimpulan dan Saran
58
5.1 Kesimpulan
58
5.2 Saran
59
Daftar Pustaka
60
Universitas Sumatera Utara
A-12
DAFTAR TABEL
Nomor
Tabel
3.1
4.1
4.2
4.3
4.4
4.5
NamaTabel
Halaman
Narrative Use-Case Pathfinding A*
Proses Pathfinding Algoritma A*
Heuristik Manhattan Distance
Banyak Node yang Dikunjungi terhadap Banyak
Penghalang
Banyak Node Dikunjungi terhadap Panjang rute
22
46
53
54
49
55
56
Pengaruh Banyak Node Penghalang, Banyak Node
yang Dikunjungi dan Panjang Rute terhadap Waktu
Universitas Sumatera Utara
A-13
DAFTAR GAMBAR
Nomor
Gambar
2.1
Nama Gambar
Halaman
Graf Sederhana(G1), Graf Ganda (G2), Graf
Semu(G3)
8
2.2
2.3
2.4
2.5
2.6
2.7
2.8
3.1
3.2
3.3
3.4
3.5
3.6
3.7
3.8
3.9
3.10
4.1
4.2
4.3
4.4
4.5
Graf Tidak Berarah
Graf Berarah
Weighted Graph
Unweighted Graph
Ilustrasi Manhattan Distance
Ilustrasi Heuristik Diagonal Distance
Ilustrasi Heuristik Euclidean Distance
Diagram Ishikawa
Diagram Use-Case
Diagram Sequence Untuk Proses Pathfinding A*
Activity Diagram Pathfinding A*
Flowchart Sistem
Flowchart Pathfinding Algoritma A*
Flowchart Proses Game.
Rancangan Tampilan Form Utama
Rancangan Form Pilihan Level
Rancangan Form Game
Form Main Menu
Form Pilihan Level
Form Game
Form Bantuan
Form Tentang
8
9
9
10
14
14
15
19
21
23
24
25
26
27
29
30
30
32
33
33
34
34
4.6
Grid Permainan
34
4.7
Ilustrasi Proses Pathfinding A* ke-1 dan 2
35
Ilustrasi Proses Pathfinding A* ke-3 s.d. 5
36
4.9
Ilustrasi Proses Pathfinding A* ke-6 s.d. 8
37
4.10
Ilustrasi Proses Pathfinding A* ke-9 s.d. 11
38
4.11
Ilustrasi Proses Pathfinding A* ke-12 s.d. 14
39
Ilustrasi Proses Pathfinding A* ke-15 s.d. 17
40
4.13
Ilustrasi Proses Pathfinding A* ke-18 s.d. 20
41
4.14
Ilustrasi Proses Pathfinding A* ke-21 s.d. 23
42
Ilustrasi Proses Pathfinding A* ke-24 s.d. 26
43
4.15
4.16
Ilustrasi Proses Pathfinding A* ke-27 s.d. 29
44
4.17
Ilustrasi Proses Pathfinding A* ke-30
45
4.18
Proses Backtracking
46
4.19
Sebelum proses backtracking (a), sesudah proses
50
4.8
4.12
Universitas Sumatera Utara
A-14
backtracking (b)
4.20
4.21
4.22
4.23
Rute Musuh menuju Pohon T1
52
Rute Musuh menuju Pohon T2
52
Rute Musuh menuju Pohon T3
53
Grafik Banyak Node Dikunjungi terhadap Banyak
53
Penghalang
4.24
Grafik Pengaruh Panjang Rute terhadap Banyak
55
Node yang Dikunjungi
4.25
Grafik Pengaruh Banyak Node Pengahalang,
Banyak Node yang Dikunjungi dan Panjang Rute
terhadap Waktu
57
Universitas Sumatera Utara
A-15
DAFTAR LAMPIRAN
A. Listing Program
B. Curriculum Vitae
A1
B1
Universitas Sumatera Utara