Algoritma Greedy (lanjutan)

dokumen-dokumen yang mirip
Algoritma Greedy (lanjutan)

Algoritma Greedy (Bagian 2) IF2251 Strategi Algoritmik Oleh: Rinaldi Munir

Design and Analysis Algorithm

Algoritma Greedy. Bahan Kuliah IF2211 Strategi Algoritma. Program Studi Informatika Sekolah Teknik Elektro dan Informatika ITB. Oleh: Rinaldi Munir

Penggunaan Algoritma Greedy dalam Membangun Pohon Merentang Minimum

Aplikasi Graf pada Persoalan Lintasan Terpendek dengan Algoritma Dijkstra

Implementasi Algoritma Greedy pada Permainan Ludo

Create PDF with GO2PDF for free, if you wish to remove this line, click here to buy Virtual PDF Printer

Permodelan Pohon Merentang Minimum Dengan Menggunakan Algoritma Prim dan Algoritma Kruskal

Design and Analysis Algorithm. Ahmad Afif Supianto, S.Si., M.Kom. Pertemuan 06

Penerapan Algoritma Greedy untuk Memecahkan Masalah Pohon Merentang Minimum

Implementasi Algoritma Greedy dalam Pembagian kerja pada Mesin yang Identik

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

Algoritma greedy merupakan metode yang paling populer untuk memecahkan persoalan optimasi.

ALGORITMA GREEDY : MINIMUM SPANNING TREE. Perbandingan Kruskal dan Prim

Studi Algoritma Optimasi dalam Graf Berbobot

Pendahuluan. Algoritma greedy merupakan metode yang paling populer untuk memecahkan persoalan optimasi.

Design and Analysis of Algorithms CNH2G3- Week 8 Greedy Algorithm

Analisis Penerapan Algoritma Kruskal dalam Pembuatan Jaringan Distribusi Listrik

Aplikasi Algoritma Dijkstra dalam Pencarian Lintasan Terpendek Graf

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

Analisa dan Perancangan Algoritma. Ahmad Sabri, Dr Sesi 2: 16 Mei 2016

Analisis Pengimplementasian Algoritma Greedy untuk Memilih Rute Angkutan Umum

Algoritma Brute Force (lanjutan)

UNIVERSITAS GUNADARMA

PRINSIP ALGORITMA GREEDY DAN APLIKASINYA DALAM BERBAGAI ALGORITMA LAIN

DEFINISI. Pohon adalah graf tak-berarah terhubung yang tidak mengandung sirkuit. pohon pohon bukan pohon bukan pohon 2

RANCANG BANGUN APLIKASI MINIMUM SPANNING TREE (MST) MENGGUNAKAN ALGORITMA KRUSKAL

Algorima Greedy Pada Self Serve Gas Station

IMPLEMENTASI GRAF DENGAN MENGGUNAKAN STRATEGI GREEDY

IMPLEMENTASI GRAF DENGAN MENGGUNAKAN STRATEGI GREEDY

Penerapan Algoritma Greedy dalam Optimasi Keuntungan Perusahaan Pengiriman Barang

BRUTE FORCE & GREEDY

IMPLEMENTASI ALGORITMA GREEDY PADA PERMAINAN OTHELLO

PENERAPAN ALGORITMA GREEDY UNTUK PENENTUAN JALUR DISTRIBUSI BANTUAN PASCA BENCANA ALAM

PERBANDINGAN KOMPLEKSITAS PENERAPAN ALGORITMA GREEDY UNTUK BEBERAPA MASALAH

Optimisasi Penjadwalan Proses Pada Central Processing Unit Dengan Menggunakan Algoritma Greedy

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

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

METODE GREEDY. Secara matematis, masalah knapsack tersebut dapat ditulis sebagai berikut :

PENGGUNAAN ALGORITMA GREEDY PADA MESIN PENCARI

TERAPAN POHON BINER 1

APLIKASI ALGORITMA GREEDY DALAM PENENTUAN SPESIFIKASI KOMPUTER RAKITAN

Penerapan Teori Graf Pada Algoritma Routing

Program Dinamis. Oleh: Fitri Yulianti

Algoritma Brute Force(lanjutan) Lecture 6 CS3024

Pohon. Bahan Kuliah IF2120 Matematika Diskrit. Program Studi Teknik Informatika ITB. Rinaldi M/IF2120 Matdis 1

Program Dinamis (Dynamic Programming)

What Is Greedy Technique

Pembahasan Pencarian Lintasan Terpendek Menggunakan Algoritma Dijkstra dan A*

NASKAH UJIAN UTAMA. JENJANG/PROG. STUDI : DIPLOMA TIGA / MANAJEMEN INFORMATIKA HARI / TANGGAL : Kamis / 18 FEBRUARI 2016

x 6 x 5 x 3 x 2 x 4 V 3 x 1 V 1

Penerapan Algoritma Greedy dalam Algoritma Penjadwalan Prosesor Tunggal Shortest Job First

Algoritma Brute Force (Bagian 2) Oleh: Rinaldi Munir Bahan Kuliah IF2251 Strategi Algoritmik

TUGAS RESUME MATERI KULIAH ALGORITMA DAN STRUKTUR DATA STRATEGI ALGORITMA : H

Definisi. Pohon adalah graf tak-berarah, terhubung, dan tidak mengandung sirkuit. pohon pohon bukan pohon bukan pohon (ada sikuit) (tdk terhubung)

Implementasi Brute Force dan Greedy dalam Permainan Big Two (Capsa)

BAB II LANDASAN TEORI

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

Penerapan Algoritma Greedy Pada Game Tower Defense: Tower of Greece

Pohon (TREE) Matematika Deskrit. Hasanuddin Sirait, MT 1

ALGORITMA PENCARIAN SIMPUL SOLUSI DALAM GRAF

INTRODUCTION TO GRAPH THEORY LECTURE 2

Matematika Diskret (Pohon) Instruktur : Ferry Wahyu Wibowo, S.Si., M.Cs.

BAB 2 LANDASAN TEORI

IF5110 Teori Komputasi. Teori Kompleksitas. (Bagian 1) Oleh: Rinaldi Munir. Program Studi Magister Informatika STEI-ITB

Solusi UTS Stima. Alternatif 1 strategi:

ALGORITMA MENCARI LINTASAN TERPENDEK

Aplikasi Algoritma Greedy dalam Permainan Kartu Truf

Algoritma Brute-Force dan Greedy dalam Pemrosesan Graf

Aplikasi Graf pada Penentuan Jadwal dan Jalur Penerbangan

Soal dan Jawaban Materi Graf, Pohon, dan Kompleksitas Algoritma

Algoritma Brute Force (lanjutan)

Penerapan Algoritma Prim dan Kruskal Acak dalam Pembuatan Labirin

Penggunaan Algoritma Greedy dalam Optimasi Masalah Perkebunan

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

Aplikasi Algoritma Greedy pada Pemilihan Jenis Olahraga Ringan

Penentuan Jarak Terpendek dan Jarak Terpendek Alternatif Menggunakan Algoritma Dijkstra Serta Estimasi Waktu Tempuh

Minimum Spanning Trees algorithm

Penerapan Algoritma Greedy dalam Algoritma Disk Scheduling Shortest Seek Time First

Penerapan Algoritma Greedy dalam Pencarian Rantai Penjumlahan Terpendek

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

Penerapan algoritma Greedy dalam penentuan Porter Generic Strategies untuk suatu perusahaan

Algoritma Prim dengan Algoritma Greedy dalam Pohon Merentang Minimum

Sirkuit Euler & Sirkuit Hamilton SISTEM INFORMASI UNIVERSITAS GUNADARMA 2012/2013

SISTEM INFORMASI UNIVERSITAS GUNADARMA 2012/2013. Graf Berarah

OPTIMISASI PARTICLE SWARM PADA PEMASANGAN JARINGAN PIPA AIR PDAM"

BAB IV ANALISIS PEMILIHAN ALGORITMA LINTASAN TERPENDEK DAN PENYELESAIAN KASUS RUTE PENERBANGAN DOMESTIK

Penerapan Algoritma Greedy untuk Permainan Halma

Aplikasi Algoritma Greedy yang Dimodifikasi dalam Pencarian Lintasan Terpendek

Gambar 6. Graf lengkap K n

Program Dinamis (dynamic programming):

Penggunaaan Algoritma Greedy Dalam Aplikasi Vending Machine

Penerapan Algoritma A* dalam Penentuan Lintasan Terpendek

APLIKASI GREEDY PADA ALGORITMA HUFFMAN UNTUK KOMPRESI TEKS

Penggunaan Algoritma Greedy untuk menyelesaikan Permainan Othello

BAB 1 PENDAHULUAN. 1.1 Latar belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

PENGGUNAAN ALGORITMA GREEDY DALAM PERMAINAN KARTU BLACK JACK

PERBANDINGAN ALGORITMA DIJKSTRA DAN ALGORITMA BELLMAN-FORD PADA JARINGAN GRID

Transkripsi:

Algoritma Greedy (lanjutan)

5. Penjadwalan Job dengan Tenggang Waktu (Job Schedulling with Deadlines) Persoalan: - Ada n buah job yang akan dikerjakan oleh sebuah mesin; - tiap job diproses oleh mesin selama 1 satuan waktu dan tenggat waktu (deadline) setiap job i adalah d i 0; - job i akan memberikan keuntungan sebesar p i jika dan hanya jika job tersebut diselesaikan tidak melebihi tenggat waktunya;

- Bagaimana memilih job-job yang akan dikerjakan oleh mesin sehingga keuntungan yang diperoleh dari pengerjaan itu maksimum? Fungsi obyektif persoalan ini: Maksimasi F = i J p i Solusi layak: himpunan J yang berisi urutan job yang sedemikian sehingga setiap job di dalam J selesai dikerjakan sebelum tenggat waktunya. Solusi optimum ialah solusi layak yang memaksimumkan F.

Contoh 7. Misalkan A berisi 4 job (n = 4): (p 1, p 2, p 3, p 4 ) = (50, 10, 15, 30) (d 1, d 2, d 3, d 4 ) = (2, 1, 2, 1) Mesin mulai bekerja jam 6.00 pagi. Job Tenggat Harus selesai (d i ) sebelum pukul 1 2 jam 8.00 2 1 jam 7.00 3 2 jam 8.00 4 1 jam 7.00

Pemecahan Masalah dengan Exhaustive Search Cari himpunan bagian (subset) job yang layak dan memberikan total keuntungan terbesar.

Contoh: (p 1, p 2, p 3, p 4 ) = (50, 10, 15, 30) (d 1, d 2, d 3, d 4 ) = (2, 1, 2, 1) Barisan job Keuntungan (F) Keterangan {} 0 layak {1} 50 layak {2} 10 layak {3} 15 layak {4} 30 layak {1, 2} - tidak layak {1, 3} 65 layak {1, 4} - tidak layak {2, 1} 60 layak {2, 3} 25 layak {2, 4} - tidak layak {3, 1} 65 layak {3, 2} - tidak layak {3, 4} - tidak layak {4, 1} 0 layak (Optimum!) {4, 2} - tidak layak {4, 3} 45 layak Solusi optimum: J = {4, 1} dengan F = 80. Kompleksitas algoritma exhaustive search : O(n 2 n ).

Pemecahan Masalah dengan Algoritma Greedy Strategi greedy untuk memilih job: Pada setiap langkah, pilih job i dengan p i yang terbesar untuk menaikkan nilai fungsi obyektif F.

Contoh: (p 1, p 2, p 3, p 4 ) = (50, 10, 15, 30) (d 1, d 2, d 3, d 4 ) = (2, 1, 2, 1) Langkah J F = p i Keterangan 0 {} 0-1 {1} 50 layak 2 {4,1} 50 + 30 = 80 layak 3 {4, 1, 3} - tidak layak 4 {4, 1, 2} - tidak layak Solusi optimal: J = {4, 1} dengan F = 80.

function JobSchedulling1(input C : himpunan_job) himpunan_job { Menghasilkan barisan job yang akan diproses oleh mesin } Deklarasi i : integer J : himpunan_job { solusi } Algoritma J {} while C {} do i job yang mempunyai p[i] terbesar C C {i} if (semua job di dalam J {i} layak) then J J {i} endif endwhile { C = {} } return J Kompleksitas algoritma greedy : O(n 2 ).

6. Pohon Merentang Minimum 1 10 2 50 1 10 2 30 4 45 25 20 55 40 5 35 15 3 4 45 25 20 55 5 35 15 3 6 6 (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 simpulsimpul di T tetapi e tidak membentuk sirkuit di T. Komplesiats algoritma: O(n 2 )

(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 )

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). Tentukan lintasan terpendek dari sebuah simpul asal a ke setiap simpul lainnya di G. Asumsi yang kita buat adalah bahwa semua sisi berbobot positif.

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

Contoh 8. 45 1 50 2 10 40 15 35 20 10 20 30 5 3 15 4 3 6 Simpul Simpul Lintasan terpendek Jarak asal tujuan 1 3 1 3 10 1 4 1 3 4 25 1 2 1 3 4 2 45 1 5 1 5 45 1 6 tidak ada -

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.

45 1 50 2 10 40 15 35 20 10 20 30 5 3 15 4 3 6 Lelaran Simpul yang Lintasan S D dipilih 1 2 3 4 5 6 1 2 3 4 5 6 Inisial - - 0 0 0 0 0 0 0 50 10 40 45 (1,2) (1,3) (1,4) (1,5) (1,6) 1 1 1 1 0 0 0 0 0 50 10 40 45 (1,2) (1,3) (1,4) (1,5) (1,6) 2 3 1, 3 1 0 1 0 0 0 50 10 25 45 (1,2) (1,3) (1,3,4) (1,5) (1,6) 3 4 1, 3, 4 1 0 1 1 0 0 45 10 25 45 (1,3,4,2)(1,3)(1,3,4) (1,5) (1,6) 4 2 1, 3, 4, 2 1 1 1 1 0 0 45 10 25 45 (1,3,4,2)(1,3)(1,3,4) (1,5) (1,6) 5 5 1, 5 1 1 1 1 1 0 45 10 25 45

Aplikasi algoritma Dijkstra: Routing pada jaringan komputer (560 km, 56 kbps) (1040 km, 10 kbps) Router 2 (1225 km, 35 kbps) (890 km, 10 kbps) Router 3 (450 km, 30 kbps) Router 1 (2275 km, 25 kbps) (340 km, 20 kbps) (1210 km, 11 kbps) Router 6 Router 3 (350 km, 5 kbps) Router 5

Lintasan terpendek (berdasarkan delai): Router Asal Router Tujuan Lintasan Terpendek 1 1 2 3 4 5 6-1, 4, 2 1, 4, 6, 3 1, 4 1, 4, 2, 5 1, 4, 6 2 1 2 3 4 5 6 3 1 2 3 4 5 6 4 1 2 3 4 5 6 2, 4, 1-2, 4, 6, 3 2, 4 2, 5 2, 4, 6 3, 6, 4, 1 3, 6, 4, 2-3, 6, 4 3, 5 3, 6 4, 1 4, 2 4, 6, 2 4, 6, 3 4, 2, 5 4, 6

Router Asal Router Tujuan Lintasan Terpendek 5 1 2 3 4 5 6 5, 2, 4, 1 5, 2 5, 3 5, 2, 4-5, 3, 6 6 1 2 3 4 5 6 6, 4, 1 6, 4, 2 6, 3 6, 4 6, 3, 5 -

Asal Tujuan Via 2 1 4 2 2-2 3 4 2 4 2 2 5 2 2 6 4 Asal Tujuan Via 4 1 4 4 2 4 4 3 6 4 4-4 5 2 4 6 4 (560 km, 56 kbps) Asal Tujuan Via 1 1-1 2 4 1 3 4 1 4 4 1 5 4 1 6 4 Router 1 (1040 km, 10 kbps) (2275 km, 25 kbps) Router 2 (1225 km, 35 kbps) (890 km, 10 kbps) Router 4 (340 km, 20 kbps) (450 km, 30 kbps) (1210 km, 11 kbps) Router 6 Asal Tujuan Via 6 1 4 6 2 4 6 3 6 6 4 6 6 5 3 6 6 - Router 3 Asal Tujuan Via 3 1 6 3 2 6 3 3-3 4 6 3 5 3 3 6 3 (350 km, 5 kbps) Router 5 Asal Tujuan Via 5 1 2 5 2 5 5 3 5 5 4 2 5 5-5 6 3