Aplikasi Graph Minimum Spaning Tree Shortest Path.

Slides:



Advertisements
Presentasi serupa
ALGORITMA GREEDY : MINIMUM SPANNING TREE
Advertisements

TEKNIK PENCARIAN (SEARCHING)
Algoritma Greedy.
Matematika Diskrit Dr.-Ing. Erwin Sitompul
PERTEMUAN 14 POHON (TREE).
Graf Berarah PART 5 DOSEN : AHMAD APANDI, ST.
Pengenalan Graph Disusun Oleh: Budi Arifitama Pertemuan 9.
Algoritma Greedy (lanjutan)
P O H O N.
GRAPH STRUKTUR DATA Disusun Oleh :
Struktur Data Graph.
*copyleft*1 Ade Ariyani A Agung Taufiqurrahman Annas Firdausi Hario Adit W Kartika Anindya P Kelompok XII Implementation of Dijkstra’s Shortest Path Algorithm.
APLIKASI PENGOPTIMALAN JARINGAN LISTRIK
Pendahuluan Graf digunakan untuk merepresentasikan objek-objek diskrit dan hubungan antara objek-objek tersebut Representasi : Objek : noktah, bulatan.
Design and Analysis Algorithm
5. Pohon Merentang Minimum
BAB VIII G R A F.
Presented By : Group 2. A solution of an equation in two variables of the form. Ax + By = C and Ax + By + C = 0 A and B are not both zero, is an ordered.
Pertemuan 23 Minimum Cost Spanning Tree
1 Diselesaikan Oleh KOMPUTER Langkah-langkah harus tersusun secara LOGIS dan Efisien agar dapat menyelesaikan tugas dengan benar dan efisien. ALGORITMA.
Pertemuan 13 Graph + Tree jual [Valdo] Lunatik Chubby Stylus.
Cayley’s Spanning Tree Formula
Masalah Transportasi II (Transportation Problem II)
APLIKASI GRAF.
Mata kuliah :K0362/ Matematika Diskrit Tahun :2008
GRAPH.
Algoritma Greedy (lanjutan)
POHON / TREE.
Graf Berarah / DIGRAPH PART 5 DOSEN : AHMAD APANDI, ST.
Fak. Teknologi Industri
TEORI GRAPH (LANJUTAN)
Algoritma Greedy.
Algoritma Greedy Team Fasilkom.
TEORI GRAPH by Andi Dharmawan.
Floyd-Warshall algorithm
P O H O N ( T R E E ) Fitri Utaminingrum
TERAPAN POHON BINER.
Greedy Pertemuan 7.
Design and Analysis Algorithm
Analisis Jaringan.
GRAF TIDAK BERARAH PART 2 Dosen : Ahmad Apandi, ST
Diagram Pohon (Tree Diagram)
MATERI PERKULIAHAN ANALISIS ALGORITMA
Modul 5 Algoritma & Struktur Data
Pertemuan 12 METODA GREEDY lanjutan….
Algoritma Greedy (lanjutan)
ALGORITMA GREEDY, KRUSKAL, MINIMUM SPANNING TREE
MATERI PERKULIAHAN ANALISIS ALGORITMA
BAB 7: Graf.
Kuliah ke 6 Strategi Algoritma
Algoritma Prim Algoritma Kruskal Algoritma Dijkstra
Matematika Diskrit Semester Ganjil TA Short Path.
BAB 10: Short Path Matematika Diskrit DU1023 Heru Nugroho, S.Si., M.T.
Materi 11 Teori Graf.
STRUKTUR DATA Struktur Data Graf.
P O H O N ( T R E E ) Fitri Utaminingrum
Trees Directed Graph Algoritma Dijkstra
ALGORITMA GRAF.
P O H O N ( T R E E ) Fitri Utaminingrum
ANALISA JARINGAN.
TUGAS MATEMATIKA DISKRIT KELAS B (POHON) Engelinus Nana ( ) Eka Christy ( ) Engelinus Nana ( ) Eka Christy ( )
Pohon Merentang Matematika Diskrit.
ALGORITMA GREEDY : MINIMUM SPANNING TREE
POHON DAN APLIKASI GRAF
Graf By Serdiwansyah N. A..
Pertemuan – 13 GRAF.
Jenis-jenis Graf Tertentu Oleh: Mulyono & Isnaini Rosyida
Anyquestion?.
Logika Matematika/DPH1A3
Graf dan Analisa Algoritma
Transcript presentasi:

Aplikasi Graph Minimum Spaning Tree Shortest Path

Pohon Merentang Minimum (Minimum Spanning Tree) Contoh Aplikasi Teori Graph Pohon Merentang Minimum (Minimum Spanning Tree) (a) Graf G = (V, E) (b) Pohon merentang minimum

(a) Algoritma Prim Strategi greedy yang digunakan: Pada setiap langkah, pilih sisi e dari graf G(V, E) yang mempunyai bobot terkecil dan bersisian dengan simpul- simpul di T tetapi e tidak membentuk sirkuit di T. Komplesiats algoritma: O(n2)

In computer science, Prim's algorithm is an algorithm that finds a minimum spanning tree for a connected weighted undirected graph. This means it finds a subset of the edges that forms a tree that includes every vertex, where the total weight of all the edges in the tree is minimized. Prim's algorithm is an example of a greedy algorithm. The algorithm was developed in 1930 by Czech mathematician Vojtěch Jarník and later independently by computer scientist Robert C. Prim in 1957 and rediscovered by Edsger Dijkstra in 1959. Therefore it is also sometimes called the DJP algorithm, the Jarník algorithm, or the Prim–Jarník algorithm.

Pada algoritma prim, dimulai pada vertex yang mempunyai sisi (edge) dengan bobot terkecil. Sisi yang dimasukkan ke dalam himpunan T adalah sisi graph G yang bersisian dengan sebuah simpul di T, sedemikian sehingga T adalah Tree (pohon). Sisi dari Graph G ditambahkan ke T jika ia tidak membentuk cycle.  (NOTE: dua atau lebih edge kemungkinan mempunyai bobot yang sama, sehingga terdapat pilihan vertice, dalam hal ini dapat diambil salah satunya.)  

Ambil sisi (edge) dari graph yg berbobot minimum, masukkan ke dalam T Pilih sisi (edge) (i,j) yg berbobot minimum dan bersisisan dengan simpul di T, tetapi (i,j) tidak membentuk cycle di T. tambahkan (i,j) ke dalam T Ulangi prosedur no 2 sebanyak (n-2) kali

PROCEDURE Prim (G: weighted connected undirected graph with n vertices) BEGIN T := a minimum-weight edge FOR i := 1 to n-2 DO e := a minimum-weight edge one of whose vertices is in T, and one is not in T T := T with e added END RETURN T

Solusi : 37 E D G C B H A F I 4 8 11 7 2 6 1 9 14 10 LANGKAH SISI BOBOT 1 (H,G) 2 (G,F) 3 (F,C) 4 (C,I) 5 (C,D) 7 6 (C,B) 8 (B,A) (D,E) 9 E D G C B H A F I 4 8 11 7 2 6 1 9 14 10 Solusi : 37

Langkah 1 Langkah 3 Langkah 3 Langkah 2

Langkah 6 Langkah 4 Langkah 5 Langkah 7

Try It 2 3 F C a e c b d f 10 15 13 20 12 5 11 21 16 10 A 7 3 4 8 18 4 B D 9 H 10 25 2 3 G E 7

(a) Algoritma Kruskal Strategi greedy yang digunakan: Pada setiap langkah, pilih sisi e dari graf G yang mempunyai bobot minimum tetapi e tidak membentuk sirkuit di T. Kompleksitas algoritma: O(|E| log |E|)

Pada algoritma kruskal, sisi (edge) dari Graph diurut terlebih dahulu berdasarkan bobotnya dari kecil ke besar. Sisi yang dimasukkan ke dalam himpunan T adalah sisi graph G yang sedemikian sehingga T adalah Tree (pohon). Sisi dari Graph G ditambahkan ke T jika ia tidak membentuk cycle. T masih kosong pilih sisi (i,j) dengan bobot minimum pilih sisi (i,j) dengan bobot minimum berikutnya yang tidak membentuk cycle di T, tambahkan (i,j) ke T Ulangi langkah 3 sebanyak (n-2) kali. Total langkah (n-1) kali

(Sort the edges in an increasing order) A:={} while E is not empty do { take an edge (u, v) that is shortest in E and delete it from E if u and v are in different components then add (u, v) to A Note: each time a shortest edge in E is considered.

Langkah Sisi bobot 1 e-c 5 2 a-b 10 3 d-e 11 4 c-f 12 b-e 13 a e c b d 1 e-c 5 2 a-b 10 3 d-e 11 4 c-f 12 b-e 13 a e c b d f 10 15 13 20 12 5 11 21 16

10 10 20 20 10 20 a b c a b c a b c 13 13 5 5 13 15 12 15 12 5 15 12 e e e 21 21 21 11 11 11 d f d f d f 16 16 16 10 10 20 20 a b c a b c 13 13 5 5 15 12 15 12 e e 21 21 11 11 d f d f 16 16

Try It

Langkah Sisi bobot 1 N1,N2 2 N7,N8 3 N2,N3 4 N1,N6 5 N3,N4 6 N2,N7 7 N4,N5

Both Prim’s and Kruskal’s Algorithms work with undirected graphs Both work with weighted and unweighted graphs but are more interesting when edges are weighted Both are greedy algorithms that produce optimal solutions

7. Lintasan Terpendek (Shortest Path) Beberapa macam persoalan lintasan terpendek: Lintasan terpendek antara dua buah simpul tertentu (a pair shortest path). Lintasan terpendek antara semua pasangan simpul (all pairs shortest path). Lintasan terpendek dari simpul tertentu ke semua simpul yang lain (single-source shortest path). Lintasan terpendek antara dua buah simpul yang melalui beberapa simpul tertentu (intermediate shortest path).

Persoalan: Diberikan graf berbobot G = (V, E) Persoalan: Diberikan graf berbobot G = (V, E). Tentukan lintasan terpendek dari sebuah simpul asal a ke setiap simpul lainnya di G. Asumsi yang kita buat adalah bahwa semua sisi berbobot positif. Algoritma Dijkstra adalah salah satu metode untuk memecahkan masalah pencarian rute terpendek. Algoritma ini biasanya diterapkan pada sebuah aplikasi pencari rute jalan yang terdekat dari suatu daerah ke daerah lainnya.

Strategi greedy: Lintasan dibentuk satu per satu Strategi greedy: Lintasan dibentuk satu per satu. Lintasan berikutnya yang dibentuk ialah lintasan yang meminimumkan jumlah jaraknya.

Contoh 8.

Algoritma Dijkstra Strategi greedy: Pada setiap langkah, ambil sisi yang berbobot minimum yang menghubungkan sebuah simpul yang sudah terpilih dengan sebuah simpul lain yang belum terpilih. Lintasan dari simpul asal ke simpul yang baru haruslah merupakan lintasan yang terpendek diantara semua lintasannya ke simpul-simpul yang belum terpilih.

Tentukan MST nya

Tentukan lintasan terpendek dari A menuju B menggunakan Algoritma Dijkstra C B A 10 100 30 50 5 20