Tidak ada bagian dari skripsi ini yang pernah diterbitkan oleh pihak lain, kecuali bagian yang dijadikan acuan, berdasarkan kaidah penulisan ilmiah yang benar. Apabila di kemudian hari ternyata laporan tugas akhir yang saya tulis terbukti merupakan adaptasi/plagiarisme, maka saya bersedia menanggung segala resiko yang saya terima. Dengan hak bebas hak non-eksklusif ini STMIK Teknokrat Lampung berhak menyimpan, memindahtangankan, mengelola dalam bentuk database, memelihara dan mempublikasikan tugas akhir saya sepanjang nama saya sebagai penulis/pencipta tetap ada dan sebagai pemilik hak cipta. .
Alhamdulillahirabbil 'alamin puji syukur kehadirat Allah SWT yang telah memberikan rahmat, hidayah, serta kesehatan yang baik, sehingga saya dapat menyelesaikan disertasi saya dengan judul penelitian Penerapan Algoritma A* (A-Star) pada Spy Hunter Permainan. Tesis ini disusun sebagai salah satu syarat untuk memperoleh gelar sarjana pada program Sarjana Teknik Informatika Sekolah Tinggi Teknokrat Manajemen Informatika dan Komputer. Agus Mulyanto, S.Kom., M.T., M.Si., selaku ketua Program Studi Teknik Informatika dan sebagai guru ujian dalam penulisan skripsi.
Teman-teman Jurusan Informatika yang telah memberikan dukungan moril hingga terselesaikannya skripsi ini. Akhir kata penulis berharap kepada Allah SWT membalas segala kebaikan semua pihak yang telah membantu dan semoga skripsi ini dapat membawa manfaat bagi pengembang ilmu pengetahuan.
Firmansyah 11312111
PENDAHULUAN
- Latar Belakang
- Rumusan Masalah
- Tujuan Penelitian
- Batasan Masalah
- Manfaat Penelitian
- Sistematika Penulisan
Game bergenre FPS dipilih karena game bergenre tersebut sangat populer saat ini. Beberapa contoh game FPS yang sedang banyak diminati adalah point blank dan dead trigger. Dengan menggunakan teknologi saat ini, penulis menerapkan perbandingan antara algoritma A* (Astar) dan NavMesh agar karakter dapat saling menghindari dan mencari rute tercepat atau terdekat sambil bergerak menuju titik tujuan (target) pergerakan yang telah ditentukan. Berdasarkan uraian latar belakang di atas maka dapat ditarik rumusan masalah yaitu bagaimana menerapkan dan membandingkan algoritma pencarian A* (A Star) dan NavMesh yang diterapkan pada NPC untuk mencari dari NPC hingga mengeksekusi pemain (titik tujuan). ).
Tujuan dari penelitian ini adalah untuk menguji perbandingan antara algoritma A* (Astar) dan NavMesh dalam proses pencarian NPC pemain (titik tujuan) dengan rute terdekat atau terpendek dalam permainan sebagai alat pengujian. Sekadar membahas perbandingan algoritma A* (Astar) dengan NavMesh pada software Unity3d dengan bahasa pemrograman C#. Dapat memberikan tambahan pemahaman pencarian dengan menerapkan algoritma A* (A-Star) dan NavMesh pada game yang akan dibuat atau dikembangkan oleh pemula.
Dapat memberikan informasi penelusuran ilustratif untuk memudahkan seseorang mengembangkan game untuk menyiapkannya. Setiap bab dibagi menjadi sub-bab, sistem pada setiap bab adalah sebagai berikut: Bab 1 Pendahuluan.
Tinjauan Pustaka
Penulisan skripsi ini telah sesuai dengan peraturan penulisan, dimana penulisan skripsi ini dibagi menjadi enam bab.
Metode Penelitian
Implementasi
Simpulan dan Saran
AI (Artificial Intellegence)
Permainan AI (Artificial Intelligence) merupakan salah satu prinsip dasar dalam menciptakan kecerdasan buatan pada generasi awal AI. Sejak awal, berbagai pakar AI sangat tertarik dengan karakteristik game karena game merupakan salah satu bentuk simulasi nyata yang mampu memberikan tantangan dan rangsangan intelektual.
Unity
Algoritma A*
Optimalitas A* dapat dilihat jika h(n) merupakan heuristik yang dapat diterima, artinya nilai h(n) tidak akan memberikan perkiraan biaya yang terlalu tinggi untuk mencapai tujuan. Contoh heuristik yang dapat diterima adalah jarak dengan menggambar garis lurus, karena jarak terdekat antara dua titik adalah dengan menggambar garis lurus (Agung Pamungkas, 2014). Kehadiran rintangan dalam permainan seperti kursi, batu, pohon memungkinkan untuk mengubah navigasi karakter saat berjalan.
Jadi secara otomatis karakter akan melewati rintangan untuk sampai ke titik tujuan yang ditentukan. Sistem navigasi bertujuan untuk mengontrol pergerakan karakter dan memungkinkan karakter mengambil keputusan seperti melewati tangga untuk mencapai lantai dua atau melompat untuk melewati beberapa celah. Komponen Bantuan Agen NavMesh yang memungkinkan karakter menghindari satu sama lain saat bergerak menuju tujuan mereka.
Komponen Tautan Off-Mesh yang digunakan untuk gerakan seperti melompati pagar, membuka pintu sebelum melewatinya, dll. Komponen Hambatan NavMesh untuk mendeskripsikan rintangan sehingga karakter dapat menghindarinya dan mencari jalan lain di sekitarnya untuk mencapai tujuan. Kerangka penelitian pada hakikatnya adalah kerangka hubungan antara konsep-konsep yang ingin diamati atau diukur melalui penelitian yang dilakukan.
Sebuah kerangka yang timbul dari masalah implementasi dan perbandingan algoritma A* dengan NavMesh untuk mengetahui keakuratan rute yang ditempuh dan rata-rata waktu yang dibutuhkan untuk menemukan titik sasaran (Target). Tujuan dari penelitian ini adalah untuk mengetahui keakuratan rute yang ditempuh dan rata-rata waktu yang diperlukan untuk mencapai tujuan dengan cepat, kemudian memvalidasi atau menguji algoritma A* dengan NavMesh untuk mengetahui perbandingan antara algoritma A* dan NavMesh. Setelah dikonfirmasi, pihaknya akan melakukan perbandingan untuk mengetahui keakuratan rute yang ditempuh dan rata-rata waktu yang dibutuhkan untuk menemukan target.
Tahapan Penelitian
Pada tahap ini dilakukan tinjauan literatur dari buku dan jurnal, buku-buku yang dijadikan referensi dalam penelitian adalah buku-buku tentang kecerdasan buatan, terutama untuk pemilihan metode pencarian, jurnal-jurnal tentang penggunaan algoritma. membantu penulis menyelesaikan penelitian ini. Analisis data berguna untuk mengetahui permasalahan dan cara penyelesaiannya, sehingga implementasi dan perbandingan yang akan kita lakukan akan bermanfaat. Tahapan ini melakukan pemodelan atau desain, yang terdiri dari desain yang akan kita bangun sebagai alat untuk mengimplementasikan dan membandingkan algoritma dan navmesh.
Fase ini merupakan fase pengujian implementasi dan perbandingan algoritma dan navmesh apakah perbandingan tersebut cocok atau tidak dalam mencari jalur terdekat. e) Tahap 5: Penutupan. Kemudian pada fase ini diberikan isi kesimpulan dan saran terhadap penelitian yang telah dilakukan.
Alat Penelitian
- Inisialisasi Awal
- Isi Properti Dari Node
Algoritma A* akan menghitung jarak suatu jalur, kemudian menyimpannya dan kemudian menghitung jarak jalur lainnya. Nilai merupakan nilai dari node yang nilainya diambil dari perhitungan alamat koordinat node tersebut.
Perhitungan Fungsi Heuristik
Diawali dengan menghitung jarak antar target dengan menggunakan metode Euclidean distance, setiap jarak ditambah dengan metode permutasi terhadap target yang ada sehingga menghasilkan susunan arah yang memiliki jarak minimal. Setelah mendapatkan tiap susunan sesuai takaran masing-masing, tambahkan jarak garis lurus dari penerus tiap takaran.
Tahap Pertama (Arena)
Tahap Kedua (Biaya pergerakan)
Tahap Ketiga (Estimasi gerakan)
Tahap Keempat (Penilaian)
Tahap Kelima (Perulangan)
- Mengikuti Jalur Node
- Implentasi Sistem
- Pembahasan
- Tampilan Map Sebagai Alat Bantu Perbandingan
- Tampilan NPC (Zombie)
- Tampilan NavMesh Pada Map
- Tampilan Algoritma A* Tanpa Penghalang Pada Map
- Tampilan Algoritma A* Dengan Penghalang Pada Map
- Tampilan NavMesh Dengan Penghalang Pada Map
- Pengujian Perbandingan
- Saran
NPC disini yang dimaksud sebagai titik awal pencarian waypoint dalam perbandingan yang akan diuji untuk mencari rute terdekat dengan rata-rata waktu yang dihabiskan. Algoritma A* bebas hambatan akan langsung menentukan titik tujuan yang ingin Anda tuju tanpa harus mencari rute lain. NavMesh Tanpa hambatan akan langsung menentukan titik tujuan yang ingin Anda tuju tanpa harus mencari rute lain.
NavMesh dengan penghalang akan mencari rute terdekat dengan mencari Layar NavMesh dengan penghalang pada peta dapat dilihat sebagai berikut pada Gambar 4.8. Dalam pengujian tersebut penulis melakukan uji coba untuk mengetahui waktu rata-rata tanpa hambatan untuk jarak jauh dan pendek, dan uji coba untuk mengetahui waktu rata-rata dengan hambatan untuk jarak jauh dan pendek, serta melihat keakuratan pencarian jalur tercepat di sekitar titik tujuan. . Dari hasil percobaan pencarian NPC ke titik sasaran (pemain) dengan menggunakan algoritma A* dan NavMesh, dilakukan uji coba untuk mengetahui tingkat efisiensi waktu rata-rata jarak jauh tanpa hambatan yang diperlukan NPC ke Playar untuk melakukan pencarian. proses.
Dari hasil percobaan pencarian dari NPC ke titik sasaran (pemain) dengan menggunakan algoritma A* dan NavMesh, dilakukan uji coba untuk mengetahui tingkat efisiensi waktu rata-rata dalam jarak pendek tanpa diperlukan hambatan untuk melakukan proses pencarian NPC. kepada pemain. Dari hasil percobaan pencarian dari NPC menuju titik sasaran (pemain) dengan menggunakan algoritma A* dan NavMesh, dilakukan uji coba untuk mengetahui rata-rata tingkat efisiensi waktu jarak jauh dengan kendala yang diperlukan untuk menyelesaikan proses pencarian tersebut. NPC setelah pemain. Berdasarkan hasil pengujian, rata-rata waktu algoritma A* dalam mencari titik target jarak jauh tanpa hambatan adalah 1,43 detik sedangkan menggunakan Navmesh adalah 1,41 detik, sehingga rata-rata waktu pencarian titik target jarak jauh tanpa hambatan adalah 2 detik lebih cepat dibandingkan untuk menggunakan algoritma A*.
Berdasarkan hasil yang telah diuji, rata-rata waktu yang dibutuhkan algoritma A* untuk menemukan titik target jarak pendek adalah 0,59 detik sedangkan menggunakan navmesh adalah 0,57 detik, sehingga perhitungan rata-rata waktu untuk menemukan titik target navmesh lebih cepat 2 detik. . dibandingkan dengan menggunakan algoritma A*. Berdasarkan hasil yang telah diuji, rata-rata waktu yang dibutuhkan algoritma A* untuk mencari target jarak jauh adalah 1,63 detik sedangkan menggunakan navmesh adalah 1,59 detik, sehingga rata-rata waktu untuk mencari target navmesh lebih cepat 4 detik dibandingkan. menggunakan algoritma A*. Berdasarkan rumusan dan pembahasan masalah serta hasil penelitian mengenai perbandingan algoritma A* dan NavMesh dalam mengetahui waktu rata-rata dan keakuratan pencarian titik tujuan atau rute tercepat untuk mencapai tujuan yang telah ditentukan.
Sebagai perbandingan, waktu yang dihasilkan oleh algoritma A* lebih lama dibandingkan menggunakan NavMesh; perbedaan waktu tanpa penghalang dan dengan penghalang adalah 2 detik ketika menemukan titik tujuan. Tingkatkan rintangan dan perluas peta atau area permainan untuk melihat waktu rata-rata yang diperlukan untuk menemukan rute tercepat menuju titik tujuan.