Tutorial a Star Algorithm
April 1, 2019 | Author: Cahyo Dimas Kurnianto | Category: N/A
Short Description
Download Tutorial a Star Algorithm...
Description
Cahyo Dimas Kurnianto FTI-UKSW
Laporan A* Algorithm
Disusun Oleh : Cahyo Dimas
Titus Hendardhy
Kristian A. Wijaya
Bangkit Fajar P
Irfan Yanuardi
Universitas Kristen Satya Wacana 2011
Samidfti.blogspot.com
Cahyo Dimas Kurnianto FTI-UKSW
PENDAHULUAN A.
Latar Belakang Masalah Seiring kemajuan jaman, pencarian suatu lokasi dengan cara manual seperti menggunakan peta masih sering digunakan orang untuk mencari jalan terpendek untuk sampai pada tujuan. Akan tetapi hal tersebut membutuhkan waktu yang lama dan juga membutuhkan ketelitian dari pembacanya.
Maka dari itu, dibuatlah beberapa algoritma tentang pencarian jalur terpendek untuk menggantikan pencarian manual dengan menggunakan peta. Pada laporan ini, pencarian jalur terpendek akan dibahas menggunakan Algoritma A* (A Star) B.
Tujuan Penulis mempunyai beberapa tujuan yang akan digunakan yaitu yang pertama, untuk memenuhi tugas Algoritma dan Struktur Data Lanjut.
Tujuan kedua penulis membuat laporan ini, penulis ingin memberikan informasi kepada pembaca untuk mengetahui bahwa pencarian jalur terpendek dapat dicari menggunakan algoritma a* dan menjelaskan tentang cara kerja dari Algoritma A Star pada game pathfinding. .
Samidfti.blogspot.com
Cahyo Dimas Kurnianto FTI-UKSW
PEMBAHASAN
A.
Pengertian
Algoritma A* (A Star) merupakan perbaikan dari metode BFS (Best First Search) dengan memodifikasi fungsi heuristicnya. Heuristik sendiri adalah penilai yang memberi harga pada tiap simpul yang memandu A* mendapatkan solusi yang diinginkan. Algoritma A* (A Star) akan diterapkan dalam pencarian jalan terpendek pada game pathfinding. Pencarian jalan terpendek pada game pathfinding akan diasumsikan dengan titik awal (keadaan pertama) dan titik tujuan (keadaan akhir) yang diimplementasikan pada pe ncarian di ruang kosong maupun di ruang dengan penghalang seperti halnya permainan labirin. Ruang yang akan dibangun akan berbentuk puzzle (kotak) supaya mempermudah dalam penerapan cara kerja algoritma A*. Hasil pencarian algoritma tersebut akan menghasilkan jalan terpendek dar i suatu titik awal ke titik tujuan. . Algoritma A* dikatakan mirip dengan algoritma Dijkstra, namun pada algoritma Dijkstra, nilai fungsi heuristiknya selalu 0 (nol) sehingga tidak ada fungsi yang mempermudah pencarian solusinya B.
Cara Kerja Algoritma A* Dalam Game Path Finding
Dari gambar tersebut, kotak hijau di sebelah kiri merupakan node awal, sedangkan kotak merah di sebelah kanan merupakan node tujuan. Tiga kotak biru di antara node awal dan tujuan merupakan rintangan yang tidak bisa dilewati (Imposible). Angka-angka dalam kotak masingmasing adalah nilai f (kiri atas) dan h (kanan bawa h). Pada saat bergerak secara horizontal dan vertikal, biayanya adalah sepuluh, sedangkan pergerakan secara diagonal biayanya 14.
Samidfti.blogspot.com
Cahyo Dimas Kurnianto FTI-UKSW
Pada kotak di sebelah kanan node awal, g bernilai sepuluh dan h bernilai 30. Nilai g sepuluh karena dari node awal ke kotak tersebut hanya perlu bergerak horizontal satu kali. H bernilai 30 didapat dari banyaknya langkah yang diperlukan untuk mencapai tujuan dari kotak tersebut. Selanjutnya, algoritma ini akan memeriksa kotak mana yang bernilai f-nya terkecil dan mengembangkan jalan di sekitar kotak tersebut. Dengan cara seperti ini telah dijelaskan di atas sebelumnya, hasil akhir ini adalah seperti gambar C.
Prinsip
Prinsip algoritma ini adalah mencari jalur terpendek dari sebuah simpul awal (starting point) menuju simpul tujuan dengan memperhatikan harga (F) terkecil. Diawali dengan menempatkan A pada starting point, kemudian memasukkan seluruh simpul yang bertetangga dan tidak memilik atribut rintangan dengan A ke dalam open list. Kemudian mencari nilai H terkecil dari simpul-simpul dalam o pen list tersebut. Kemudian memindahkan A ke simpul yang memiliki nilai H terkecil. Simpul sebelum A disimpan sebagai parent dari A dan dimasukkan ke dalam closed list. Jika terdapat simpul lain yang bertetangga dengan A (yang sudah berpindah) namun belum termasuk kedalam anggota open list, maka masukkan simpul-simpul tersebut ke dalam open list. Setelah itu, bandingkan nilai G yang ada dengan nilai G sebelumnya (pada langkah awal, tidak perlu dilakukan perbandingan nilai G). Jika nilai G sebelumnya lebih kecil maka A kembali ke posisi awal. Simpul yang pernah dicoba dimasukkan ke dalam closed list. Hal terebut dilakukan berulangulang hingga terdapat solusi atau tidaka ada lagi simpul lain yang berada pada open list.
Samidfti.blogspot.com
Cahyo Dimas Kurnianto FTI-UKSW
D.
Elemen – Elemen Algoritma A*
E.
Starting point Sebuah terminologi untuk posisi awal sebuah benda. A Simpul yang sedang dijalankan dalam algortima pencarian jalan terpendek. Simpul Petak-petak kecil sebagai representasi dari area pathfinding. Bentuknya dapat berupa persegi, lingkaran, maupun segitiga. Open list Tempat menyimpan data simpul yang mungkin diakses dari starting point maupun simpul yang sedang dijalankan. Closed list Tempat menyimpan data simpul sebelum A yang juga merupakan bagian dari jalur terpendek yang telah berhasil didapatkan. Harga (F) Nilai yang diperoleh dari penjumlahan nilai G, jumlah nilai tiap simpul dalam jalur terpendek dari starting point ke A, dan H, jumlah nilai perkiraan dari sebuah simpul ke simpul tujuan. Simpul tujuan Simpul yang dituju. Rintangan Sebuah atribut yang menyatakan bahwa sebuah simpul tidak dapat dilalui oleh A
Kelebihan dan Kekurangan Algoritma A*
KELEBIHAN
1. A* akan meminimumkan total biaya lintasan. 2. Pada kondisi yang tepat, A* akan memberikan solusi yang terbaik dalam waktu yang optimal. 3. Berbentuk puzzle (kotak) supaya mempermudah mencari jalan terpendek 4. Algoritma A* menerapkan teknik heuristik dalam membantu penyelesaian persoalan 5. A* baru berhenti ketika mendapatkan solusi yang dianggap solusi terbaik.
KEKURANGAN
1. Data yang dihasilkan masih kurang valid,karena masih perk iraan 2. Kecepatan dalam memperoleh data masih dipengaruhi oleh nilai/jarak pada simpul
Samidfti.blogspot.com
Cahyo Dimas Kurnianto FTI-UKSW
PENUTUPAN
A.
Kesimpulan
Jadi, dalam pencarian jalur terpendek kususnya dalam game path finding, algoritma A* dapat menjadi solusi yang paling tepat untuk menyelesaikannya, karena A* merupakan hasil penyempurnaan dari Algoritma pendahulunya.
Salatiga, 1 Juli 2011
Samidfti.blogspot.com
View more...
Comments