Aplikasi Teori Graf untuk Pencarian Rute Angkutan Kota Terdekat untuk Tempat-tempat di Bandung

dokumen-dokumen yang mirip
Penerapan Algoritma A* Sebagai Algoritma Pencari Jalan Dalam Game

APLIKASI GRAF DALAM PEMBUATAN JALUR ANGKUTAN KOTA

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

Aplikasi Teori Graf dalam Pencarian Jalan Tol Paling Efisien

Aplikasi Graf Berbobot dalam Menentukan Jalur Angkot (Angkutan Kota) Tercepat

PENERAPAN ALGORITMA BIDIRECTIONAL A* PADA MOBILE NAVIGATION SYSTEM

Penerapan Travelling Salesman Problem dalam Penentuan Rute Pesawat

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

BAB 2 LANDASAN TEORI

ALGORITMA PENCARIAN SIMPUL SOLUSI DALAM GRAF

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

Penggunaan Algoritma Greedy dalam Membangun Pohon Merentang Minimum

Penggunaan Algoritma Dijkstra dalam Penentuan Lintasan Terpendek Graf

Pemodelan Sistem Lalu Lintas dengan Graf Ganda Berarah Berbobot

Pencarian Lintasan Terpendek Pada Aplikasi Navigasi Menggunakan Algoritma A*

Penerapan Algoritma Branch and Bound untuk Penentuan Jalur Wisata

Penerapan Algoritma A* dalam Penentuan Lintasan Terpendek

Studi Algoritma Optimasi dalam Graf Berbobot

MEMBANDINGKAN KEMANGKUSAN ALGORITMA PRIM DAN ALGORITMA KRUSKAL DALAM PEMECAHAN MASALAH POHON MERENTANG MINIMUM

Aplikasi Graf Pada Algoritma Pathfinding Dalam Video Game

PENERAPAN ALGORITMA BRANCH AND BOUND DALAM MENENTUKAN RUTE TERPENDEK UNTUK PERJALANAN ANTARKOTA DI JAWA BARAT

Perancangan Rute Kunjungan Terpendek ke Objek- Objek Wisata di Jakarta dengan Menggunakan Algoritma Prim

Algoritma Prim sebagai Maze Generation Algorithm

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

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI

Aplikasi Shortest Path dengan Menggunakan Graf dalam Kehidupan Sehari-hari

APLIKASI GRAF DALAM BISNIS TRAVEL BANDUNG-BOGOR

Penerapan Greedy pada Jalan Jalan Di Bandung Yuk! V1.71

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

Analisis Pengimplementasian Algoritma Greedy untuk Memilih Rute Angkutan Umum

Pencarian Lintasan Terpendek Pada Peta Digital Menggunakan Teori Graf

Aplikasi Teori Graf Pada Knight s Tour

Penerapan Pewarnaan Graf dalam Alat Pemberi Isyarat Lalu Lintas

Penerapan Program Dinamis Pada Sistem Navigasi Otomotif

BAB II TINJAUAN PUSTAKA

APLIKASI TEORI PRIM DALAM MENENTUKAN JALUR MUDIK

BAB III ANALISIS DAN PERANCANGAN SISTEM

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

Pengaplikasian Graf dan Algoritma Dijkstra dalam Masalah Penentuan Pengemudi Ojek Daring

Permodelan Pohon Merentang Minimum Dengan Menggunakan Algoritma Prim dan Algoritma Kruskal

Graf dan Pengambilan Rencana Hidup

Penerapan Graf pada PageRank

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

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

Aplikasi Graf dalam Rute Pengiriman Barang

Pembahasan Pencarian Lintasan Terpendek Menggunakan Algoritma Dijkstra dan A*

Perancangan Sistem Transportasi Kota Bandung dengan Menerapkan Konsep Sirkuit Hamilton dan Graf Berbobot

Pengaplikasian Graf dalam Menentukan Rute Angkutan Kota Tercepat

Penerapan Algoritma Greedy untuk Memecahkan Masalah Pohon Merentang Minimum

BAB 2 LANDASAN TEORI

PERBANDINGAN ALGORTIMA PRIM DAN KRUSKAL DALAM MENENTUKAN POHON RENTANG MINIMUM

Analisa Lalu Lintas dan Keamanan di Kota Bandung dengan Penerapan Teori Graf dan Pohon

APLIKASI ALGORITMA GREEDY PADA PERSOALAN PEWARNAAN GRAF

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

Penerapan Algoritma Branch and Bound pada Penentuan Staffing Organisasi dan Kepanitiaan

Pengembangan Teori Graf dan Algoritma Prim untuk Penentuan Rute Penerbangan Termurah pada Agen Penyusun Perjalanan Udara Daring

Penerapan Search Tree pada Penyelesaian Masalah Penentuan Jalur Kota Terpendek.

BAB II LANDASAN TEORI

Pendeteksian Deadlock dengan Algoritma Runut-balik

METODE BRANCH AND BOUND UNTUK MENEMUKAN SHORTEST PATH

Metode Path Finding pada Game 3D Menggunakan Algoritma A* dengan Navigation Mesh

Penerapan Graf dalam Game dengan Kecerdasan Buatan

Kasus Perempatan Jalan

Aplikasi Teori Graf dalam Manajemen Sistem Basis Data Tersebar

Penentuan Rute Terpendek Tempat Wisata di Kota Tasikmalaya Dengan Algoritma Floyd-warshall

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

Aplikasi Graf pada Penentuan Jadwal dan Jalur Penerbangan

Penerapan Graf dan Algoritma Prim dalam Perancangan Rute Wisata di Kota Tokyo yang Efisien

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

Penerapan Sirkuit Hamilton dalam Perencanaan Lintasan Trem di ITB

Implementasi Graf dalam Penentuan Rute Terpendek pada Moving Object

Optimasi Pemilihan Rute Terpendek Angkutan Umum Sesuai Preferensi Pengguna dengan Algoritma A* Berbasis Google Maps

PERBANDINGAN METODE PENCARIAN DEPTH-FIRST SEARCH, BREADTH-FIRST SEARCH DAN BEST-FIRST SEARCH PADA PERMAINAN 8-PUZZLE

UKDW BAB 1 PENDAHULUAN. 1.1 Latar Belakang Masalah

Aplikasi Pohon Merentan Minimum dalam Menentukan Jalur Sepeda di ITB

Aplikasi Graf pada Persoalan Lintasan Terpendek dengan Algoritma Dijkstra

Penerapan Teori Graf Pada Algoritma Routing

Penerapan Algoritma BFS & DFS untuk Routing PCB

Penerapan Graf dalam Optimasi Jalur Penerbangan Komersial dengan Floyd-Warshall Algorithm

Pemodelan AI dalam Permainan Snake dengan Algoritma Branch and Bound

I. PENDAHULUAN II. DASAR TEORI. Penggunaan Teori Graf banyak memberikan solusi untuk menyelesaikan permasalahan yang terjadi di dalam masyarakat.

PENGEMBANGAN APLIKASI GAME ARCADE 3D MARI SELAMATKAN HUTAN INDONESIA

PENYELESAIAN TRAVELING SALESMAN PROBLEM (TSP) MENGGUNAKAN ALGORITMA RECURSIVE BEST FIRST SEARCH (RBFS)

PENYELESAIAN TRAVELLING SALESMAN PROBLEM MENGGUNAKAN METODE SIMPLE HILL CLIMBING

Penyandian (Encoding) dan Penguraian Sandi (Decoding) Menggunakan Huffman Coding

BAB 1 PENDAHULUAN 1.1 LATAR BELAKANG

Penerapan Teori Graf dalam Game Bertipe Real Time Strategy (RTS)

Penggunaan Pohon Biner Sebagai Struktur Data untuk Pencarian

Aplikasi Pohon dan Graf dalam Kaderisasi

Aplikasi Algoritma Prim dalam Penentuan Pohon Merentang Minimum untuk Jaringan Pipa PDAM Kota Tangerang

Pencarian Jalur Terpendek dengan Algoritma Dijkstra

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah 1.2 Perumusan Masalah

TERAPAN POHON BINER 1

Aplikasi Pohon Merentang Minimum dalam Rute Jalur Kereta Api di Pulau Jawa

I. PENDAHULUAN. Gambar 1: Graf sederhana (darkrabbitblog.blogspot.com )

Penerapan Program Dinamis dalam Menentukan Rute Terbaik Transportasi Umum

Perbandingan Algoritma Dijkstra dan Algoritma Floyd-Warshall dalam Penentuan Lintasan Terpendek (Single Pair Shortest Path)

Algoritma Prim dengan Algoritma Greedy dalam Pohon Merentang Minimum

Penerapan Graf Berupa Senarai Berkait serta Algoritma Dijkstra dalam Pemrosesan Data Struktur Bangunan

Transkripsi:

Aplikasi Teori Graf untuk Pencarian Rute Angkutan Kota Terdekat untuk Tempat-tempat di Bandung Luqman Abdul Mushawwir NIM: 13507029 Jurusan Teknik Informatika ITB, Jalan Ganeca 10, Bandung, email: if17029@students.if.itb.ac.id Abstract Makalah ini membahas masalah pendatang yang seringkali sulit menemukan angkutan kota untuk berjalan-jalan ataupun mengunjungi suatu tempat di Bandung. Untuk mengatasi masalah ini, digunakan graf dan metoda pathfinding untuk mencari jalan terdekat atau termurah dari duatu tempat ke tempat lain. Kata Kunci: Graf, angkutan kota, Bandung, pathfinding, turis, jalan. 1. PENDAHULUAN Angkutan kota (angkot) merupakan angkutan umum yang paling banyak ada di kota Bandung. Dalam satu ruas jalan saja, bisa ada berbagai angkot dengan berbagai jurusan. Untuk mencapai suatu tujuan saja, seseorang dapat memilih banyak angkot. Setiap angkot memiliki tarif yang berbeda-beda, juga jalur tempuh yang berbeda-beda. Bagi orang yang sudah lama di Bandung, dalam menentukan angkot yang akan dinaiki tentu saja mudah. Namun, bagi orang-orang pendatang dan turis yang berkunjung, tentu saja sangat sulit untuk menemukan angkot yang langsung menuju tujuan mereka dengan cepat dan murah. simpul terminal. Dalam makalah ini, graf berarah dipakai dalam menunjukkan arah jalur dari suatu jalan. 3. TEORI PATHFINDING 3.1 Dasar Algoritma A* Pada dasarnya, pathfinding dilakukan untuk mencari jalan paling dekat yang dapat ditempuh dari suatu tempat ke tempat lain. Banyak cara yang dapat dilakukan untuk pathfinding ini. Algoritma yang akan dipakai untuk pathfinding pada masalah kali ini adalah algoritma A* (A-star algorithm). Algoritma A* didasari oleh sebuah persamaan sebuah benda yang sedang berjalan dari suatu tempat ke tempat lain: F(s) = G(s) + H(s)... (1) Dengan F(s) adalah jarak dari tempat awal ke tempat akhir, G(s) adalah jarak yang sudah ditempuh oleh benda itu dari tempat awal, dan H(s) adalah jarak dari tempat benda itu berada ke tempat akhir. Contoh mudahnya adalah seperti berikut: Sebenarnya banyak cara untuk menemukan rute yang cepat dan murah dengan angkot dari suatu tempat ke tempat lain. Namun, dengan graf berbobot, akan menjadi lebih mudah dalam pengimplementasian ke program, sehingga akan lebih mudah dalam pemakaian, terutama bagi orang-orang yang tidak tahu Bandung. 2. TEORI GRAF Graf dapat didefinisikan sebagai himpunan tidak kosong antara pasangan simpul-simpul dan sisi-sisi yang menghubungkan sepasang simpul. Himpunan simpul tidak boleh kosong, sedangkan himpunan sisi boleh kosong. Jadi suatu titik juga bisa disebut suatu graf. Graf yang hanya terdiri dari satu buah simpul tanpa sebuah sisi pun disebut graf trivial. Pada permasalahan makalah ini, graf yang dipakai adalah graf berarah. Graf berarah adalah graf yang setiap sisinya diberikan orientasi arah. Sisi-sisi yang berarah ini biasa disebut busur. Pada graf berarah, sisi (u,v) tidak sama dengan (v,u). Untuk busur (u,v), simpul u merupakan simpul asal dan v merupakan Gambar 1: Contoh pathfinding. Pada gambar 1, dapat dilihat Pacman yang mencari jalan terdekat dari kotak di pojok kiri atas ke pojok kanan bawah, dengan berbagai alternatif jalan tentu saja.

Jalan Tamansari Jalan Ir. H. Juanda Sekarang, pathfinding yang dilakukan Pacman berdasarkan pada persamaan (1). Pada gambar 1, F(s) = 4 G(s) = 0 H(s) = 4 Setelah bergerak ke gambar 2, F(s) = 4 G(s) = 1 H(s) = 3 Setelah itu, Pacman akan mempunyai tiga alternatif jalan, yaitu 3a, 3b, dan 3c. Pada 3a, Pada 3b, Pada 3c, F(s) = 6 F(s) = 6 F(s) = 4 G(s) = 2 G(s) = 2 G(s) = 2 H(s) = 4 H(s) = 4 H(s) = 2 Konsep pathfinding adalah mencari jalan terpendek ke tujuan, yaitu H(s) yang paling pendek. Jika dilihat dari data di atas, maka sudah jelas Pacman akan memilih ke jalan 3c. Algoritman A* sendiri dilakukan dengan mencoba satu per satu jalan yang tersedia, dan membandingkan jarak yang terdekat ke tempat tujuan. 3.2 Penerapan Algoritma A* Penerapan Algoritma A* dalam pemrograman sendiri adalah dengan priority queue, dengan variabel OPEN, yaitu jalan yang belum pernah dilewati, dan CLOSED, yaitu jalan yang sudah pernah dilewati. [3] OPEN = priority queue containing START CLOSED = empty set while lowest rank in OPEN is not the GOAL: current = remove lowest rank item from OPEN add current to CLOSED set priority queue rank to g(neighbor) + h(neighbor) set neighbor's parent to current reconstruct reverse path from goal to start by following parent pointers Intinya, algoritma A* berjalan dengan melihat semua kemungkinan jalan yang ada dari START sampai GOAL, dan melihat mana jalan yang paling cepat. 4. KOTA BANDUNG DAN RUTE JALAN 4.1 Graf Kota Bandung Kota Bandung dapat digambarkan sebagai graf. Pada graf Kota Bandung tersebut, setiap persimpangan jalan digambarkan sebagai simpul, dan jalan-jalan yang menghubungkan simpul-simpul tersebut digambarkan sebagai sisi. Tentu saja jalan-jalan yang dimaksud adalah jalan besar yang dilewati oleh angkot saja, karena yang dibahas di sini adalah rute angkot. Dengan cara penggambaran seperti yang telah digambarkan di atas, kita dapat menggambarkan seluruh rute angkot yang ada di Kota Bandung. Begitu pula dengan semua tempat-tempat kunjungan dan wisata yang ada di Bandung, semua yang berada di jalan-jalan yang dilewati angkot. Adapun graf untuk menggambarkan Kota Bandung itu sendiri adalah graf berarah, yaitu menunjukkan arah jalan di sana. Contoh graf dari jalan di sekitar ITB: Jalan Ganeca for neighbors of current: cost = g(current) + movementcost(current, neighbor) Jalan Gelap Nyawang if neighbor in OPEN and cost less than g(neighbor): remove neighbor from OPEN, because new path is better if neighbor in CLOSED and cost less than g(neighbor): Jalan Pasteur remove neighbor from CLOSED if neighbor not in OPEN and neighbor not in CLOSED: set g(neighbor) to cost add neighbor to OPEN Gambar 2: Graf jalan sekitar ITB Dengan cara penggambaran seperti di atas, kita bisa mendapatkan graf Kota Bandung.

Dalam masalah pencarian rute angkot terdekat, tentu saja dibutuhkan data-data tentang jarak dari suatu simpul ke simpul lain. Oleh karena itu, graf Kota Bandung yang sebelumnya merupakan graf berarah, diubah menjadi graf berbobot yang bobotnya merupakan jarak dari satu simpul ke simpul lain. Contoh graf jalan sekitar jalan Suci: umum. Terkadang, dalam jalan yang pendek pun dapat terdapat kemacetan yang sangat luar biasa sehingga tidak dapat cepat mencapai tujuan. Dalam pemodelan graf, faktor-faktor tersebut dimasukkan dalam pengali yang akan berpengaruh pada jarak tempuh dalam bobot simpul. Dari sana, diketahui bahwa bobot simpul bukanlah jarak seperti sedia kala, namun merupakan waktu tempuh. Bobot kepadatan lalu lintas didefinisikan antara 1-10. Skala 1 adalah keadaan jalan yang sangat lancar, sedangkan skala 10 adalah kemacetan lalu lintas. Skala ini nantinya akan dikalikan dengan bobot jarak pada setiap sisi pada graf yang sudah dibuat. Contoh graf yang sudah mempunyai bobot waktu tempuh : Gambar 3: Graf jalan dengan bobot jarak Dengan jarak pada gambar sudah dikali skala. Dengan adanya data-data pada peta, tentu kita sudah akan tahu mana jalan yang akan ditempuh, jika ingin menempuh jarak terpendek. Menurut algoritma A*, jika seseorang ingin berjalan dari A ke C dengan jarak terpendek, pasti orang itu akan berjalan dari A ke B, lalu dari B ke C, bukannya dari A ke B, lalu ke D dan baru ke C. 4.2 Pengaruh Kepadatan Lalu Lintas dalam Graf Ternyata, dalam lalu lintas jalan yang sebenarnya, tidak semudah itu, apalagi berkenaan dengan angkutan Gambar 4: Graf jalan dengan bobot jarak dan skala kemacetan Jika seseorang ingin berjalan dari B ke C, dengan algoritma A*, pasti lebih memilih jalan dari B-D-C daripada jalan B-C langsung, karena B-D-C memiliki Gambar 5: Graf yang sudah dilengkapi tarif angkutan kota

bobot 35, sedangkan B-C memiliki bobot 36. 4.3 Pengaruh Tarif Angkot dalam Graf Mungkin saja nanti dalam aplikasinya, orang mencari jalan yang hanya mengeluarkan uang paling sedikit, walaupun jauh. Pada graf, bobot pada ruas jalan diganti dengan bobot tarif angkot, dengan catatan setiap kita berganti angkot, harus mengeluarkan biaya tambahan. Adapun untuk mengetahui yang mana yang optimal, semua aspek (jarak, kemacetan, dan ongkos) harus dikalikan agar terlihat mana jalan yang paling optimal, baik dari segi ongkos maupun dari segi waktu tempuh. 5. PENERAPAN PATHFINDING DALAM CONTOH KASUS Seorang turis yang menginap di daerah Cimahi, ingin menuju ke Istana Plaza dengan menggunakan angkutan kota. Didapat data angkutan kota yang mengarah ke sana dapat dilihat pada gambar 5. Titik awal (Penginapan) adalah A, sedangkan titik akhir (Istana Plaza) adalah H. Jalan baru bercabang di B. Sekarang ditinjau hanya dari jaraknya, diperoleh data sebagai berikut: Jarak tempuh = 4 + 15 + 23 + 8 = 50 Jarak tempuh = 4 + 13 + 8 + 10 = 35 Jalur A-B-E-G-F-H: Jarak tempuh = 4 + 13 + 5 + 4 + 10 = 36 Jika sang turis ingin berjalan kaki dari A menuju H, maka jarak terdekat adalah 35. Namun, jika dilihat jarak aktual dari A ke H yang mencapai 6 km, pasti sang turis tidak mau berjalan kaki ke sana. Sang turis pun memutuskan untuk menaiki angkot dengan angaran ongkos yang tak terbatas. Ia hanya ingin mencapai tempat tujuannya dengan cepat, tidak mempedulikan ongkos yang harus ia keluarkan. Maka hitungannya menjadi jarak dikali kemacetan. Waktu tempuh = 8 + 45 + 46 + 24 = 123 Waktu tempuh = 8 + 39 + 32 + 50 = 129 Jalur A-B-E-F-G-H: Waktu tempuh = 8 + 39 + 30 + 28 + 50 = 155 Jika sang turis menempuh jalan menaiki angkot tanpa memperhatikan ongkos yang ia punya, maka lebih baik ia memilih jalan A-B-C-D-H. Jika seorang turis lainnya ingin menuju ke tempat yang sama dari titik B, tetapi mempunyai ongkos yang pas-pasan, dan ingin mengambil rute yang paling murah. Maka hitungannya adalah dengan tarif angkot. Jalur B-C-D-H: Ongkos angkot: (1500 + 500) + (2000 + 500) + (1000 + 500) = 6000 Jalur B-E-F-H: Ongkos angkot: Tanpa berganti angkot di F = (1500 + 500) + (1000 + 500) + 1000 = 4500 Dengan berganti angkot di F = (1500 + 500) + (1000 + 500) + (1000 + 500) = 5000 Jalur B-E-F-G-H: Ongkos angkot: Tanpa berganti angkot di E dan F = (1500 + 500) + 500 + 500 + 1000 = 4000 Berganti angkot di E saja = (1500 + 500) + (500 + 500) + 500 + 1000 = 4500 Berganti angkot di F saja = (1500 + 500) + 500 + 500 + (1000 + 500) = 4500 Berganti angkot di E dan F = (1500 + 500) + (500 + 500) + 500 + (1000 + 500) = 5000 Dari data di atas, didapat ongkos yang paling murah adalah dengan jalur B-E-F-G-H tanpa mengganti angkot, artinya hanya menaiki angkot Cimahi-St.Hall dari B sampai H. Ternyata sang turis ingin mendapatkan hasil yang optimal. Tidak terlalu mahal, juga tidak terlalu lama. Dengan keinginannya yang seperti itu, dihitunglah hasil perkalian dari semuanya (setelah diambil yang terbaik dari masing-masing alternatif). Akumulasi = 123 * 6000 = 738000 Akumulasi = 129 * 4500 = 580500 Jalur B-E-F-H: Akumulasi = 155 * 4000 = 620000 Dari sana, sang turis mendapatkan jalan terbaik yaitu dengan jalur A-B-E-F-H. Dan dari pengalaman penulis, memang jalan yang paling nyaman untuk dilewati adalah jalur A-B-E-F-H. 6. KESIMPULAN Dalam mencapai suatu tujuan dari tujuan yang lain, dapat dengan melewat berbagai jalan. Namun, pasti ada alternatif terbaik dari jalan-jalan tersebut. Dari sana, dapat digunakan metode pathfinding untuk mencari jalan terbaik.

DAFTAR REFERENSI [1] Munir, Rinaldi. Buku Teks Ilmu Komputer Matematika Diskrit. Informatika Bandung, 2005. [2] Russell, S. J.; Norvig, P. (2003). Artificial Intelligence: A Modern Approach [3]http://theory.stanford.edu/~amitp/GameProgrammi ng/implementationnotes.html. Waktu akses: 6 Januari 2009, 00.32 [4] http://en.wikipedia.org/wiki/a*_search_algorithm. Waktu akses: 6 Januari 2009, 01.25