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