Penerapan Algoritma A Star Dalam Penentuan Jalur Evakuasi Bencana Gedung Bertingkat

dokumen-dokumen yang mirip
Metode Path Finding pada Game 3D Menggunakan Algoritma A* dengan Navigation Mesh

Penerapan Algoritma A* Sebagai Algoritma Pencari Jalan Dalam Game

BAB III ALGORITMA GREEDY DAN ALGORITMA A* membangkitkan simpul dari sebuah simpul sebelumnya (yang sejauh ini terbaik di

Penerapan Algoritma A-star (A*) Untuk Menyelesaikan Masalah Maze

Algoritma A* Memanfaatkan Navigation Meshes dalam 3 Dimensional Pathfinding

Penerapan Algoritma A* (A Star) Sebagai Solusi Pencarian Rute Terpendek Pada Maze

Penerapan Algoritma A* dalam Penentuan Lintasan Terpendek

BAB 2 LANDASAN TEORI

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah 1.2 Perumusan Masalah

Analisis Pengimplementasian Algoritma Greedy untuk Memilih Rute Angkutan Umum

Menentukan Titik Evakuasi Selanjutnya bagi Sekelompok Regu Tim SAR dengan Algoritma Branch and Bound

BAB III ANALISIS DAN PERANCANGAN SISTEM

Pertemuan-07 INFORMATIKA FASILKOM UNIVERSITAS IGM

I. PENDAHULUAN. Kata Kunci Greedy-Best First Search, SMA*, jalur pendek-efisien, Heuristic

Pencarian Lintasan Terpendek Pada Peta Digital Menggunakan Teori Graf

Pencarian Lintasan Terpendek Pada Aplikasi Navigasi Menggunakan Algoritma A*

Penerapan Algoritma Greedy Best First Search untuk Menyelesaikan Permainan Chroma Test : Brain Challenge

Penyelesaian N-Puzzle Menggunakan A* dan Iterative Deepening A*

Pembahasan Pencarian Lintasan Terpendek Menggunakan Algoritma Dijkstra dan A*

Penyelesaian Permainan Sliding Puzzle 3x3 Menggunakan Algoritma Greedy Dengan Dua Fungsi Heuristik

PENERAPAN ALGORITMA A* PADA PERMASALAHAN OPTIMALISASI PENCARIAN SOLUSI DYNAMIC WATER JUG

PENGGUNAAN ALGORITMA BRANCH AND BOUND UNTUK MENYELESAIKAN PERSOALAN PENCARIAN JALAN (PATH-FINDING)

Jurusan Teknik Elektro ITS Surabaya, Jurusan Teknik Elektro ITS Surabaya, Jurusan Teknik elektro ITS Surabaya

Pelacakan dan Penentuan Jarak Terpendek terhadap Objek dengan BFS (Breadth First Search) dan Branch and Bound

PENERAPAN ALGORITMA BIDIRECTIONAL A* PADA MOBILE NAVIGATION SYSTEM

Penentuan Lintasan Terbaik Dengan Algoritma Dynamic Programming Pada Fitur Get Driving Directions Google Maps

Algoritma Pathfinding untuk Game

Penggunaan Algoritma Greedy untuk Mencari Solusi Optimal dalam Permainan Brick Breaker

BAB I PENDAHULUAN. Masalah lintasan terpendek berkaitan dengan pencarian lintasan pada graf

Penggunaan Algoritma Pathfinding pada Game

Perbandingan Algoritma Depth-First Search dan Algoritma Hunt-and-Kill dalam Pembuatan Labirin

Aplikasi Graf Pada Algoritma Pathfinding Dalam Video Game

BAB I PENDAHULUAN. Di tengah masyarakat dengan aktivitas yang tinggi, mobilitas menjadi hal yang penting.

Kecerdasan Buatan. Pertemuan 03. Pencarian Branch & Bound dan Heuristik (Informed)

BAB 2 TINJAUAN PUSTAKA

BAB I PENDAHULUAN UKDW. dalam kehidupan kita sehari-hari, terutama bagi para pengguna sarana

Penghematan BBM pada Bisnis Antar-Jemput dengan Algoritma Branch and Bound

Penerapan Algoritma BFS dan DFS dalam Mencari Solusi Permainan Rolling Block

Implementasi Algoritma DFS pada Pewarnaan Gambar Sederhana Menggunakan Bucket tool

SEARCHING. Blind Search & Heuristic Search

Penerapan Pohon dengan Algoritma Branch and Bound dalam Menyelesaikan N-Queen Problem

Aplikasi Algoritma Greedy pada Optimasi Pelaksanaan Misi dalam Permainan Assassins Creed : Revelations

Penerapan Algoritma A* Untuk Pencarian Rute Terdekat Pada Permainan Berbasis Ubin (Tile Based Game)

VARIASI PENGGUNAAN FUNGSI HEURISTIK DALAM PENGAPLIKASIAN ALGORITMA A*

Aplikasi Branch and Bound Pada Pencarian Jalan Pada Software Navigasi

Penggunaan Algoritma Greedy untuk menyelesaikan Permainan Othello

Penerapan Algoritma DFS pada Permainan Sudoku dengan Backtracking

Penerapan dan Perbandingan Algoritma Path-finding dalam Kecerdasan Buatan Hantu pada Permainan Pac-Man

Simulasi Pencarian Rute Terpendek dengan Metode Algoritma A* (A-Star) Agus Gustriana ( )

ALGORITMA PENCARIAN SIMPUL SOLUSI DALAM GRAF

Team project 2017 Dony Pratidana S. Hum Bima Agus Setyawan S. IIP

Penentuan Keputusan dalam Permainan Gomoku dengan Program Dinamis dan Algoritma Greedy

OPTIMASI RUTE PERJALANAN AMBULANCE MENGGUNAKAN ALGORITMA A-STAR. Marhaendro Bayu Setyawan

METODE BRANCH AND BOUND UNTUK MENEMUKAN SHORTEST PATH

Algoritma A* untuk AI Path Finding bagi NPC

Representasi Graf Berarah dalam Mencari Solusi Jalur Optimum Menggunakan Algoritma A*

BAB I PENDAHULUAN. yang juga diterapkan dalam beberapa kategori game seperti real time strategy

Penerapan Algoritma Greedy dan Algoritma BFS untuk AI pada Permainan Greedy Spiders

BAB 2 LANDASAN TEORI 2.2. Algoritma A* (A Star)

Penerapan Exhaustive Search dan Algoritma A Star untuk Menentukan Rute Terbaik dari KRL Commuter Line dan Bus Transjakarta

PENERAPAN ALGORITMA A* (STAR) UNTUK MENCARI RUTE TERCEPAT DENGAN HAMBATAN

Penerapan strategi BFS untuk menyelesaikan permainan Unblock Me beserta perbandingannya dengan DFS dan Branch and Bound

Aplikasi dan Analisis Algoritma BFS dan DFS dalam Menemukan Solusi pada Kasus Water Jug

Penerapan Algoritma Branch and Bound untuk Penentuan Jalur Wisata

PENGEMBANGAN APLIKASI GAME ARCADE 3D MARI SELAMATKAN HUTAN INDONESIA

Pencarian Jalur Terpendek dengan Menggunakan Graf dan Greedy dalam Kehidupan Sehari-hari

Penerapan Algoritma Runut-balik pada Permainan Math Maze

PERBANDINGAN ALGORITMA BFS DAN DFS DALAM PEMBUATAN RUTE PERJALANAN OBJEK PERMAINAN 2 DIMENSI

Penggunaan Algoritma Dijkstra dalam Penentuan Lintasan Terpendek Graf

Algoritma Brute-Force dan Greedy dalam Pemrosesan Graf

APLIKASI GRAF UNTUK MENENTUKAN JALUR ANGKOT TERCEPAT. Data dari rute-rute angkot di sekeliling ITB (Institut Teknologi Bandung).

Penerapan Algoritma DFS dan BFS untuk Permainan Wordsearch Puzzle

Implementasi Graf dalam Penentuan Rute Terpendek pada Moving Object

BAB I PENDAHULUAN. ini. Salah satu penerapannya yaitu terdapat pada permasalahan dalam melakukan pencarian dari

Aplikasi Graf pada Persoalan Lintasan Terpendek dengan Algoritma Dijkstra

Aplikasi Algoritma Traversal Dalam Binary Space Partitioning

Aplikasi Algoritma Greedy untuk Pergerakan Musuh pada Permainan Pac-Man

Tujuan Instruksional

Mendeteksi Blob dengan Menggunakan Algoritma BFS

Kompleksitas Algoritma A* Pada Implementasi PassiveAI Untuk Game Mobile AI

SIMULASI ALGORITMA A* UNTUK MENYELESAIKAN PATHFINDING

Penerapan Algoritma Branch and Bound untuk Optimasi Rute Penempelan Poster di Papan Mading ITB

Penggunaan Algoritma Branch and Bound dan Program Dinamis Dalam Pemecahan Masalah Rubik s Cube

BAB I PENDAHULUAN 1.1 LATAR BELAKANG

Kecerdasan Buatan. Penyelesaian Masalah dengan Pencarian... Pertemuan 02. Husni

Penerapan Algoritma Greedy dalam Optimasi Keuntungan Perusahaan Pengiriman Barang

Implementasi Algoritma DFS pada permainan Monument Valley

BAB I PENDAHULUAN. 1.1 Latar Belakang Masalah

Pencarian Rute Oleh Non Player Character Menggunakan Algoritma A* Berbasis 2D

Algoritma Branch & Bound untuk Optimasi Pengiriman Surat antar Himpunan di ITB

KECERDASAN BUATAN METODE HEURISTIK / HEURISTIC SEARCH ERWIEN TJIPTA WIJAYA, ST., M.KOM

AI sebagai Masalah Pelacakan. Lesson 2

BAB II DASAR TEORI Kajian Pustaka a. Penerapan Algoritma Flood Fill untuk Menyelesaikan Maze pada Line Follower Robot [1]

Pengaturan Sistem Lampu Lalu Lintas dengan Algoritma Branch and Bound dengan Waktu Tunggu Menggunakan Algoritma Greedy

Analisis Beberapa Algoritma dalam Menyelesaikan Pencarian Jalan Terpendek

BAB 2 LANDASAN TEORI

Aplikasi Shortest Path dengan Menggunakan Graf dalam Kehidupan Sehari-hari

Menentukan Susunan Terbaik Tim Proyek dengan Algoritma Branch and Bound

Kecerdasan Buatan Penyelesaian Masalah dengan Pencarian

Penggunaan Algoritma Greedy Dalam Penentuan Rute Wisata

Transkripsi:

Penerapan Algoritma A Star Dalam Penentuan Jalur Evakuasi Bencana Gedung Bertingkat Gama Pradipta Wirawan / 13517049 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung. Jl. Ganesha 10 Bandung 40132, Indonesia gamapradipta88@gmail.com Abstrak Jalur evakuasi, merupakan salah satu aspek yang cukup penting bagi pengelola gedung dalam melakukan manajemen bencana. Jalur evakuasi berfungsi untuk membantu setiap orang yang berada dalam gedung tersebut untuk menyelamatkan diri saat terjadi bencana atau kejadian yang tidak diinginkan. Penelitian ini dimaksudkan untuk membantu menentukan jalur evakuasi yang efektif sehingga setiap orang yang berada dalam gedung dapat melakukan evakuasi dengan cepat dan aman. Penentuan jalur evakuasi bergantung pada posisi awal dari penghuni atau pengujung dan posisi pintu keluar gedung. Pada makalah ini, akan dijelaskan bagaimana algoritma A* (A Star) dapat membantu pihak pengelola gedung dalam menentukan jalur evakuasi yang aman dan efektif dari posisi pengunjung atau penghuni menuju pintu keluar gedung. Keywords Algoritma A*, Evakuasi Bencana, Gedung Bertingkat, Jalur Evakuasi I. PENDAHULUAN Salah satu faktor yang cukup penting dalam manajemen bencana suatu gedung adalah jalur evakuasi untuk keluar gedung saat terjadi bencana alam atau kejadian-kejadian yang dapat mengancam hidup baik penghuni maupun pengujung gedung tersebut. Tanpa adanya jalur evakuasi, korban dari bencana alam yang terjadi dapat bertambah menjadi sangat banyak. Dengan adanya jalur penyelamatan keluar dari gedung, diharapkan bahwa korban dari bencana yang terjadi dapat dikurangi. Ketika bencana terjadi, baik penghuni maupun pengunjung gedung belum tentu dapat mengetahui lokasi-lokasi yang berbahaya untuk dilewati. Salah satu contohnya adalah gedung yang mengalami kebakaran. Pada saat kebakaran terjadi, baik pengunjung dan penghuni tidak mengetahui letak kebakaran itu terjadi. Akibatnya apabila jalur evakuasi yang disediakan melewati lokasi berbahaya, pengunjung dan penghuni dapat mengambil jalur evakuasi yang berbahaya dan kasus terburuknya adalah bertambahnya jumlah korban dari bencana tersebut. Selain itu jalur evakuasi haruslah merupakan jalur tercepat untuk keluar dari gedung dari posisi penghuni atau pengunjung menuju pintu keluar darurat gedung tersebut. Dengan adanya jalur evakuasi yang cepat maka semakin banyak pula orangorang yang dapat menyelamatkan diri mereka dari bencana alam yang tengah terjadi. Walaupun bencana alam atau kejadian - kejadian buruk tidak dapat dihindari namun dengan adanya jalur evakuasi yang efektif dan aman, maka korban bencana yang terjadi dapat diminimalisir. Namun meski demikian, untuk menentukan jalur evakuasi yang aman dan cepat dibutuhkan informasi yang tepat mengenai lokasi pintu keluar darurat dan juga lokasi-lokasi yang berbahaya untuk dilewati oleh penghuni dan pengunjung gedung tersebut. Salah satu contohnya, kita dapat memanfaatkan sensor kebakaran untuk mendeteksi lokasilokasi yang berbahaya pada saat terjadi kebakaran di dalam gedung tersebut. Dan dengan adanya informasi yang cukup maka penentuan jalur evakuasi dapat memberikan jalur penyelamatan keluar dari gedung yang efektif dan aman. Salah satu algoritma yang dapat memberikan jalur yang efektif adalah algoritma A*. Algoritma ini bertujuan untuk memberikan suatu jalur terpendek dari suatu titik awal menuju titik akhir. Dengan asumsi bahwa waktu bagi pengunjung dan penghuni untuk keluar dari gedung berbanding lurus dengan jarak mereka dari pintu keluar maka algoritma ini cocok untuk menyelesaikan permasalahan ini. A. Path Finding II. DASAR TEORI Path Finding merupakan proses pencarian jalur dari suatu titik atau node menuju titik atau node lainnya. Proses pencarian ini biasa dilakukan untuk melakukan pencarian pada graf. Pada umumnya proses ini bertujuan untuk mencari rute terpendek dari satu node ke node lainnya. B. Shortest Path Shortest Path atau jalur terpendek merupakan optimalisasi dari proses pencarian rute (path finding). Terdapat banyak metode untuk menemukan jalur terpendek, dan pada makalah

ini penulis memakai algoritma A* untuk menemukan jalur terpendek dari suatu titik menuju titik lainnya. C. Algoritma A* Algoritma A* adalah salah satu algoritma pencarian rute yang cukup sering digunakan untuk mencari rute terdekat dari suatu titik menuju titik lainnya. Algoritma A* termasuk dalam algoritma pencarian rute bertipe informed search. Algoritma ini dapat digunakan untuk mencari rute terdekat dari suatu lokasi menuju lokasi lainnya yang dimana terdapat suatu lokasi yang tidak dapat dilewati dalam melakukan pencarian. Algoritma ini menerapkan 2 algoritma sekaligus yaitu algoritma Greedy-Best First Search dan algoritma Dijkstra. Algoritma Dijkstra memiliki kelebihan yaitu algoritma ini dapat mencari rute terpendek dari suatu titik ke titik lainnya. Namun kelemahannya adalah algoritma ini membutuhkan waktu yang cukup lama untuk menjelajahi semua jalur yang ada untuk menemukan jalur terpendek. Gambar 2. Proses pencarian algoritma Greedy-Best First Search Source:http://theory.stanford.edu/~amitp/GameProgramming/AStarC omparison.html Pada Gambar 2. diatas, warna abu-abu melambangkan jalur yang tidak dapat dilalui, warna merah melambangkan titik awal pencarian dan warna ungu melambangkan titik akhir pencarian. Sedangkan warna kuning melambangkan jalur pencarian dari algoritma Greedy-Best First Search. Dari Gambar 2. diatas dapat dilihat proses pencarian yang dilakukan algoritma ini lebih sedikit dibanding algoritma Dijkstra, tapi jalur yang dihasilkan bukan merupakan jalur terpendek dari titik awal ke titik akhir. Algoritma A*, yang merupakan gabungan dari kedua algoritma Greedy-Best First Search dan algoritma Dijkstra mengambil kelebihan dari kedua algoritma tersebut, sehingga dengan waktu pencarian yang cukup cepat algoritma ini dapat menjamin bahwa rute yang dihasilkan merupakan rute terdekat dari suatu titik menuju titik lainnya. Gambar 1. Proses pencarian algoritma Dijkstra Source:http://theory.stanford.edu/~amitp/GameProgramming/AStarC omparison.html Pada Gambar 1. diatas, warna abu-abu melambangkan jalur yang tidak dapat dilalui, warna merah melambangkan titik awal pencarian dan warna ungu melambangkan titik akhir pencarian. Sedangkan warna biru melambangkan jalur pencarian dari algoritma Dijkstra. Dari Gambar 1. diatas dapat dilihat bahwa rute yang dihasilkan merupakan rute terdekat dari titik awal menuju titik akhir, namun proses pencariannya membutuhkan waktu yang cukup lama. Sedangkan algoritma Greedy-Best First Search memiliki kelebihan yaitu lama proses yang dibutuhkan untuk mencari rute dari suatu titik ke titik lainya relatif lebih cepat daripada algoritma Dijkstra, namun rute yang dihasilkan oleh algoritma ini tidak dapat menjamin bahwa rute itu merupakan rute terdekat dari satu titik ke titik lainnya. Gambar 3. Proses pencarian algoritma A* Source:http://theory.stanford.edu/~amitp/GameProgramming/AStarC omparison.html Pada Gambar 3. diatas, warna abu-abu melambangkan jalur yang tidak dapat dilalui, warna merah melambangkan titik awal pencarian dan warna ungu melambangkan titik akhir pencarian.

Sedangkan warna kuning-hijau melambangkan jalur pencarian dari algoritma A*. Dari Gambar 3. diatas dapat dilihat proses pencarian yang dilakukan algoritma ini mengkombinasikan algoritma Dijkstra dan algoritma Greedy-Best First Search yang dimana algoritma ini dapat memberikan rute jalur terpendek dengan proses pencarian yang relatif cepat. 1. Euclidean Distance Algoritma A* dapat memberikan rute terdekat dengan waktu proses pencarian yang cukup singkat dengan menggunakan fungsi f(n). Rumus dari fungsi f(n) dituliskan sebagai persamaan sebagai berikut : f(n) = g(n) + h(n) Fungsi heuristic ini didapatkan dengan menjumlahkan fungsi g(n) yang merupakan harga atau bobot dari titik awal hingga ke titik ke-n dan fungsi h(n) yang merupakan estimasi harga dari titik ke-n. Semakin tinggi keakuratan fungsi h(n) (heuristic) maka semakin cepat dan tepat rute yang akan dihasilkan oleh algoritma A* ini. Dalam implementasinya algoritma A* menggunakan 2 buah senarai yaitu Open List dan Closed List, dan terdapat 3 buah kondisi bagi setiap simpul yang dibangkitkan yaitu sudah berada di Open List, sudah berada di Closed List dan tidak berada di keduanya. Pada ketiga kondisi tersebut diberikan penanganan yang berbeda-beda. Open List adalah senarai yang digunakan untuk menyimpan simpul-simpul yang sudah pernah dibangkitkan dan telah dihitung nilai heuristiknya namun belum dipilih sebagai simpul terbaik. Hal ini dapat diartikan bahwa senarai ini berisi simpulsimpul yang memiliki peluang untuk dipilih menjadi simpul terbaik. Sedangkan Closed List adalah senarai yang digunakan untuk menyimpan simpul-simpul yang sudah pernah dibangkitkan dan sudah pernah dipilih menjadi simpul terbaik. Hal ini dapat diartikan bahwa senarai ini berisi simpul-simpul yang tidak dapat dipilih kembali sebagai simpul terbaik atau dapat dikatakan bahwa simpul-simpul dalam senarai ini tidak memiliki peluang lagi untuk terpilih kembali sebagai simpul terbaik. Dalam proses pemilihan simpul terbaik dari Open List, digunakan fungsi f(n) sebagai parameter pengambilan keputusan simpul terbaik. Dengan memakai fungsi f(n) ini maka pengambilan solusi dengan metode algoritma A* dapat menjadi efektif secara waktu dan dapat memberikan solusi yang terbaik. Gambar 4. Euclidean Distance Source:https://lyfat.wordpress.com/2012/05/22/euclideanvs-chebyshev-vs-manhattan-distance/ Euclidean Distance memperkirakan cost yang dibutuhkan dengan cara menghitung jarak secara horizontal, vertikal, atau diagonal dari suatu simpul menuju simpul lainnya. Formula dari Euclidean Distance adalah sebagai berikut. 2. Chebyshev Distance h(i) = sqrt[(x o X i ) 2 + (Y o Y i ) 2 ] D. Fungsi Heuristic Fungsi heuristic adalah fungsi yang digunakan dalam algoritma A* untuk mengevaluasi perkiraan harga (cost) dari suatu simpul dalam graph menuju simpul lainnya. Dalam permasalahan dengan jarak terdapat 3 jenis fungsi heuristic yang dapat digunakan yaitu Euclidean, Chebyshev, dan Manhattan distance. Gambar 5. Chebyshev Distance Source:https://lyfat.wordpress.com/2012/05/22/euclideanvs-chebyshev-vs-manhattan-distance/ Chebyshev Distance memperkirakan cost yang dibutuhkan dengan cara menghitung jarak dari suatu simpul menuju simpul lainnya dengan asumsi bahwa cost dari simpul tersebut ke semua arah bernilai sama

(secara diagonal, vertikal dan horizontal). Formula dari Chebyshev Distance adalah sebagai berikut. 3. Manhattan Distance h(i) = max[(x o X i ), (Y o Y i )] III. PERANCANGAN ALGORITMA Untuk merancang dan menerapkan algoritma pada persoalan rute evakuasi ini, terdapat beberapa tahapan yang perlu dilakukan terlebih dahulu. Pertama, kita harus dapat memetakan denah lantai dari gedung tersebut, lokasi mana saja yang bisa kita lewati dan lokasi mana yang tidak bisa kita lewati seperti tembok, pilar dan semacamnya. Selain itu kita juga perlu memetakan lokasi pintu darurat pada lantai gedung tersebut. Untuk menggambarkan permasalahan ini, akan digunakan sebuah denah dari sebuah lantai pada suatu gedung. Gambar orang melambangkan posisi dari penghuni atau pengunjung gedung, tangga melambangkan pintu darurat yang menjadi titik akhir dari pencarian rute ini dan api melambangkan posisi kebakaran yang terdeteksi oleh sensor kebakaran gedung tersebut. Gambar 6. Chebyshev Distance Source:https://lyfat.wordpress.com/2012/05/22/euclideanvs-chebyshev-vs-manhattan-distance/ Manhattan Distance memperkirakan cost yang dibutuhkan dengan cara menghitung jarak dari suatu simpul menuju simpul lainnya dengan asumsi bahwa jumlah jarak dari kedua simpul merupakan penjumlahan nilai mutlak dari perbedaan jarak berdasarkan sumbu X dan Y. Formula dari Manhattan Distance sebagai berikut. h(i) = X o X i + Y o Y i E. Jalur Evakuasi Jalur evakuasi merupakan suatu rute yang digunakan untuk menghubungkan seluruh area menuju tempat yang aman. Jalur evakuasi dibuat untuk membantu semua orang yang berada di dalam lokasi untuk dapat menyelamatkan diri dari bahaya bencana ataupun kejadian-kejadian yang tidak diinginkan. Dengan adanya jalur evakuasi, korban-korban dari bencana atau kejadian yang tidak diinginkan diharapkan dapat diminimalisir. Tanpa adanya jalur evakuasi, orang-orang yang berada di lokasi kejadian akan semakin susah untuk menemukan jalur keluar atau tempat aman. Gambar 7. Denah Lantai 1 beserta lokasi api dan penghuni Source:pribadi A. Proses Pemetaan Kondisi Gedung Untuk mendapatkan kondisi yang akurat pada proses pemetaan kondisi gedung maka terlebih dahulu denah kondisi

terkini dari lantai gedung tersebut diubah menjadi Grid 2D seperti berikut ini. T T T T T T E T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T A T T T T T T T T T T T T T T T P T T T T T T T T T T T T T T T T T T Gambar 8. Representasi Denah Gedung dalam Grid 2D Source:pribadi Pada Gambar 8. diatas dapat dipahami bahwa T melambangkan lokasi yang tidak dapat dilewati sebab terdapat tembok disana, E melambangkan posisi pintu keluar yang digunakan untuk lokasi akhir dalam pencarian rute evakuasi, A melambangkan lokasi yang tidak dapat dilewati karena adanya bencana atau kejadian yang tidak diinginkan dan dalam kasus kali ini A melambangkan lokasi api berada. Dan terakhir adalah P yang melambangkan lokasi penghuni itu berada. Kemudian usai memetakan seluruh komponen dari denah lantai gedung tersebut dalam representasi matrix of character, untuk mempermudah dalam pembacaan matriks oleh program maka matriks pada Gambar 8. diubah kembali dengan ketentuan angka 1 sebagai tembok, 0 sebagai tempat yang dapat dilewati dan 2 sebagai tempat pintu keluar dari gedung tersebut. T Sedangkan 3 melambangkan tempat dimana lokasi tersebut tidak dapat dilewati dikarenakan bencana atau kejadian yang tidak diinginkan Matriks tersebut kemudian berubah menjadi berikut ini. 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 2 0 1 0 0 1 0 1 0 0 1 1 1 1 1 1 0 1 0 1 1 0 1 0 1 1 1 0 0 0 0 0 0 0 0 1 0 0 0 0 1 1 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 0 0 1 0 0 0 0 0 1 0 0 0 0 1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 1 1 0 0 0 0 1 1 1 1 1 0 1 0 0 1 1 1 1 1 0 1 0 1 0 1 0 1 1 1 1 1 0 1 0 0 0 0 0 0 1 0 1 0 0 1 1 0 0 0 0 1 1 1 1 1 0 1 0 1 1 1 0 1 0 0 0 0 3 0 0 0 0 0 0 1 1 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 0 0 0 0 0 0 0 0 1 0 0 0 0 1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 1 1 0 0 1 0 1 1 1 1 1 0 1 0 0 1 1 1 1 1 0 1 0 1 0 1 0 1 1 1 1 1 0 0 1 0 0 0 0 0 1 0 1 0 0 1 1 1 0 1 0 1 1 1 1 1 0 1 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Gambar 9. Representasi Denah Gedung dalam Matriks Angka Source:pribadi B. Penentuan Fungsi Heuristic Fungsi heuristik sudah dijelaskan sebelum bahwa fungsi heuristic ini sangat menentukan keefektifan dari algortima A* ini. Oleh sebab itu diperlukan fungsi Heuristic yang cocok untuk permasalah kali ini. Sudah diketahui bahwa terdapat 3 buah jenis fungsi heuristic yang berhubungan dengan permasalahan pencarian jarak terdekat yaitu Euclidean, Chebyshev, dan Manhattan distance.

Euclidean akan menghasilkan jalur yang tepat apabila jalur penelusuran tidak hanya bergerak secara vertikal dan horizontal, akan tetapi dapat bergerak secara diagonal. Chebyshev akan menghasilkan jalur yang tepat apablia jalur penelurusan tidak hanya bergerak secara vertikal dan horizontal, akan tetapi juga dapat bergerak secara diagonal dan cost untuk setiap langkahnya sama, berbeda dengan Euclidean, dimana untuk cost untuk melakukan gerak diagonal lebih besar daripada melakukan gerak vertikal dan horizontal. Manhattan akan menghasilkan jalur yang tepat apabila jalur penelusuran hanya dapat bergerak secara vertikal dan horizontal saja. Setelah mengetahui dan memahami ketiga fungsi heuristic, penulis memutuskan untuk menggunakan Manhattam Distance untuk melengkapi algoritma A* ini. C. Algortima Penentuan Rute Evakuasi Setelah mendapatkan semua data berkaitan dengan data peta, titik akhir dan lokasi yang tidak dapat dilewati karena adanya bencana atau kejadian yang tidak diingini, tahap berikutnya adalah merancang algoritma A* untuk menentukan jalur evakuasi yang cepat dan aman bagi penghuni atau pengunjung gedung. Algoritma A* pada penentuan rute evakuasi ini akan menelusuri setiap kotak dari titik awal penghuni atau pengunjung berada hingga ke titik akhir yaitu pintu keluar darurat dan akan mengembalikan jalur yang terpendek. Berikut adalah kode dari algoritma A* dalam pencarian rute terpendek untuk melakukan evakuasi. for direction in directions: temppost <- tuple(map(operator.add,currentpost,direction)) IF ( isinmaze(temppost)): IF ( isnotwall(temppost)): IF (temppost in closedset): continue temp_g <- g[currentpost]+1 IF (temppost not in openset): openset.append(temppost) ELSE: continue camefrom[temppost] <- currentpost g[temppost] <- temp_g f[temppost] <- g[temppost] + heuristic(temppost,goal) ENDWHILE ENDFOR RETURN route FUNCTION construct_route(self,camefrom, currentpost): route <- [currentpost] while currentpost in camefrom: currentpost <- camefrom[currentpost] route.append(currentpost) ENDWHILE RETURN route ENDFUNCTION FUNCTION heuristic(self,post,goal): RETURN abs(post[0]-goal[0]) + abs(post[1]-goal[1]) ENDFUNCTION FUNCTION AStarSearch(self, start, goal): g <- {start:0} temp_f <- heuristic(start,goal) + g[start] f <- {start:temp_f} closedset <- [] openset <- [] openset.append(start) camefrom <- {} route <- [] directions <- [(1,0),(0,1),(-1,0),(0,-1)] while (openset): currentpost <- openset[0] for post in openset : IF (f[post]<f[currentpost]): currentpost= post ENDFOR IF(currentPost==goal): route <- construct_route(camefrom, currentpost) break openset.remove(currentpost) closedset.append(currentpost) D. Pengujian Algoritma A* Hasil dari pengujian diatas dengan contoh persoalan yang sudah disebutkan sebelumnya, yaitu perancangan jalur evakuasi dari gedung bertingkat saat terjadi bencana berupa kebakaran menghasilkan hasil sebagai berikut. Matriks Peta 111111111111111 000020100101001 111110101101011 100000000100001 111101111101111 100100000100001 110101010101011 100001111101001 111101010101111 101000000101001 100001111101011 101000030000001 111101111101111 100000000100001 110101010101011

100101111101001 111101010101111 100100000101001 110101111101011 100000000000001 111111111111111 Lokasi Penghuni Lokasi penghuni terletak di (16,10) Hasil Tampilan Awal Denah IV. KESIMPULAN Kesimpulan yang dapat diambil dalam makalah ini adalah Algoritma A* terbukti dapat membantu menyelesaikan pembuatan jalur evakuasi bencana pada suatu gedung dengan baik. Algoritma A* juga dapat berjalan dengan baik ketika fungsi heuristik yang dipakai sesuai dengan permasalahan yang ada. Jadi dalam penentuan jalur evakuasi bencana pada gedung terutama gedung-gedung yang rawan terjadi bencana disarankan menerapkan algoritma A* dalam penentuan jalur evakuasi yang cepat dan aman. REFERENCES [1] Route/Path Planning Using A Star dan UCS http://informatika.stei.itb.ac.id/~rinaldi.munir/stmik/2017-2018/a-star- Best-FS-dan-UCS-(2018).pdf [2] A* Algorithm http://theory.stanford.edu/~amitp/gameprogramming/astarcomparison. html Hasil Tampilan Jalur [3] Euclidean vs Chebyshev vs Manhattan Distance https://lyfat.wordpress.com/2012/05/22/euclidean-vs-chebyshev-vsmanhattan-distance/ [4] Is A*, BFS, Dijkstra, or DFS the best? Why? https://www.quora.com/is-a*-bfs-dijkstra-or-dfs-the-best-why [5] Penerapan Algoritma A* (A Star) Sebagai Solusi Pencarian Rute Terpendek Pada Maze https://www.academia.edu/29753048/penerapan_algoritma_a_a_star_ Sebagai_Solusi_Pencarian_Rute_Terpendek_Pada_Maze [6] Algoritma A* (A-Star) https://piptools.net/algoritma-a-star/ PERNYATAAN Dengan ini saya menyatakan bahwa makalah yang saya tulis ini adalah tulisan saya sendiri, bukan saduran, atau terjemahan dari makalah orang lain, dan bukan plagiasi. Dapat dilihat pada tabel diatas bahwa Algortima A* berhasil membuat suatu jalur evakuasi yang cepat dan aman dimana rute yang dihasilkan berhasil menghindari titik berbahaya yang dilambangkan denga kotak berwarna coklat. Sebagai tambahan lingkaran hijau melambangkan pintu keluar darurat dan lingkaran berwanra merah melambangkan posisi awal penhuni ataupun pengunjung gedung tersebut. Bandung, 25 April 2019 Gama Pradipta Wirawan