Algoritma Greedy Team Fasilkom.

Slides:



Advertisements
Presentasi serupa
ALGORITMA GREEDY : MINIMUM SPANNING TREE
Advertisements

Latihan Algoritma Greedy
Algoritma Greedy.
Algoritma Greedy.
PENGURUTAN (SORTING).
Bahan Kuliah IF3051 Strategi Algoritma Oleh: Rinaldi Munir
Algoritma Greedy.
PENCARIAN (SEARCHING)
Bahan Kuliah IF2211 Strategi Algoritma
Program Dinamis (Dynamic Programming)
Design and Analysis of Algorithm Dynamic Programming
Algoritma Greedy (lanjutan)
Notasi Algoritma.
Pencarian Tanpa Informasi
Struktur seleksi.
Divide and Conquer.
Program Dinamis (dynamic programming): metode pemecahan masalah dengan cara menguraikan solusi menjadi sekumpulan langkah (step) atau tahapan (stage)
Design and Analysis Algorithm
5. Pohon Merentang Minimum
Kasus Buat algoritma untuk menghitung total pembayaran dari proses pembelian.
Analisa Algoritma Greedy Algorithm
Algoritma Greedy.
Algoritma Brute Force Oleh: Muhammad Musta’in ( )
Algoritma Greedy (lanjutan)
Penerapan BFS dan DFS pada Pencarian Solusi
MATERI PERKULIAHAN ANALISIS ALGORITMA
Algoritma Pencarian (searching)
Algoritma Bruteforce Team Fasilkom.
Model Arus Jaringan.
TEORI GRAPH (LANJUTAN)
Algoritma Greedy.
CSG3F3/ Desain dan Analisis Algoritma
Bahan Kuliah IF2211 Strategi Algoritma
Bahan Kuliah IF2211 Strategi Algoritma Oleh: Rinaldi Munir
P O H O N ( T R E E ) Fitri Utaminingrum
TERAPAN POHON BINER.
MATERI PERKULIAHAN ANALISIS ALGORITMA
Pertemuan 25 MERANCANG ALGORITMA DENGAN KOMPLEKSITAS TERTENTU
Greedy Pertemuan 7.
Design and Analysis Algorithm
Program Dinamis.
MATERI PERKULIAHAN ANALISIS ALGORITMA
Modul 5 Algoritma & Struktur Data
PENGURUTAN (SORTING).
Pertemuan 12 METODA GREEDY lanjutan….
Algoritma Bruteforce (disarikan dari diktat Strategi Algoritma, Rinaldi Munir) Team Fasilkom.
Algoritma Greedy (lanjutan)
ALGORITMA GREEDY, KRUSKAL, MINIMUM SPANNING TREE
MATERI PERKULIAHAN ANALISIS ALGORITMA
Kuliah ke 6 Strategi Algoritma
MATERI PERKULIAHAN ANALISIS ALGORITMA
MATERI PERKULIAHAN ANALISIS ALGORITMA
Array 1.
Program Dinamis (Dynamic Programming)
PEMROGRAMAN DINAMIS Pertemuan 7
Program Dinamis (Dynamic Programming)
Program Dinamis (Dynamic Programming)
STRUKTUR DATA Struktur Data Graf.
P O H O N ( T R E E ) Fitri Utaminingrum
ALGORITMA GRAF.
Array Buat algoritma untuk mencari nilai terbesar dari 5 nilai mahasiswa yang diinputkan dengan array.
P O H O N ( T R E E ) Fitri Utaminingrum
ANALISA JARINGAN.
Algoritma Greedy Wahyul Wahidah Maulida, ST., M.Eng.
Algoritma Brute Force.
ALGORITMA GREEDY : MINIMUM SPANNING TREE
Quiz Logika & Algoritma
Penerapan BFS dan DFS pada Pencarian Solusi
Anyquestion?.
Aplikasi Graph Minimum Spaning Tree Shortest Path.
Transcript presentasi:

Algoritma Greedy Team Fasilkom

Definisi Algoritma greedy merupakan metode yang paling populer untuk memecahkan persoalan optimasi Persoalan optimasi (optimization problems): persoalan yang menuntut pencarian solusi optimum Solusi optimum (terbaik) adalah solusi yang bernilai minimum atau maksimum dari sekumpulan alternatif solusi yang mungkin.

Definisi Elemen persoalan optimasi: kendala (constraints) fungsi objektif(atau fungsi optiamsi) Solusi yang memenuhi semua kendala disebut solusi layak (feasible solution). Solusi layak yang mengoptimumkan fungsi optimasi disebut solusi optimum.

contoh Memilih beberapa jenis investasi (penanaman modal) Contoh masalah sehari-hari yang menggunakan prinsip greedy: Memilih beberapa jenis investasi (penanaman modal) Mencari jalur tersingkat dari Bandung ke Surabaya Memilih jurusan di Perguruan Tinggi Bermain kartu remi

Penukaran Uang Misal pada suatu negara kita tersedia mata uang : dolar (100 sen), kuarter (25 sen), dim(10 sen), nikel(5 sen) dan peni(1 sen) Masalah : Bagaimana menentukan algoritma untuk memeberikan uang kembalian dari suatu pembayaran di super market dengan menggunakan sejumlah koin yang tersedia sekecil mungkin 100 25 10 5 1

Penukaran Uang Masalah : Ada seorang konsumen yan mempunyai uang kembalian sebesar 2.89 $ (289 sen) berapa coin yang harus di berikan oleh kasir ? Solusi : Kasir semestinya memberikan kembalian dengan 10 coin : 2 $ ,3 kuarter, 1 dim, 4 peni Urutan pemberian adalah di mulai dari yang terbesar 100 25 10 5 1

File Lain

Algoritma Function TukarKoin(n):himp koin /*Buat kembalian n unit dengan kemungkinan jmlh koin paling sedikit kontan C adalah jenis koin*/ Const C={100,25,10,5,1} /*kandidat yg di pilih*/ S atau {} /* S =himp solusi*/ S0 /* s jumlah dari item S*/ While sn do x item terbesar dr C, dengan s+xn if tidak ada item then return “solusi tidak ada” SS {koin bernilai x} ss+x Return S

Algoritma Algoritma ini rakus/tamak karena setiap langkahnya harus memilih koin terbesar yang dapat di temukan, tanpa memikirkan konsekwensi ke depannya.

Karakteristik AG Himpunan kandidat. Himpunan solusi Berisi elemen-elemen pembentuk solusi.  Himpunan solusi Berisi kandidat-kandidat yang terpilih sebagai solusi persoalan.  Fungsi seleksi (selection function) Memilih kandidat yang paling memungkinkan mencapai solusi optimal. Kandidat yang sudah dipilih pada suatu langkah tidak pernah dipertimbangkan lagi pada langkah selanjutnya.  Fungsi kelayakan (feasible) Memeriksa apakah suatu kandidat yang telah dipilih dapat memberikan solusi yang layak, yakni kandidat tersebut bersama-sama dengan himpunan solusi yang sudah terbentuk tidak melanggar kendala (constraints) yang ada. Kandidat yang layak dimasukkan ke dalam himpunan solusi, sedangkan kandidat yang tidak layak dibuang dan tidak pernah dipertimbangkan lagi. Fungsi obyektif, yaitu fungsi yang memaksimumkan atau meminimumkan nilai solusi (misalnya panjang lintasan, keuntungan, dan lain-lain).

Algoritma Greedy procedure greedy(input C: himpunan_kandidat; output S : himpunan_solusi) { menentukan solusi optimum dari persoalan optimasi dengan algoritma greedy Masukan: himpunan kandidat C Keluaran: himpunan solusi S } Deklarasi x : kandidat; Algoritma: S{} { inisialisasi S dengan kosong } while (belum SOLUSI(S)) and (C  {} ) do xSELEKSI(C); { pilih sebuah kandidat dari C} C C - {x} { elemen himpunan kandidat berkurang satu } if LAYAK(S  {x}) then SS  {x} endif endwhile {SOLUSI(S) sudah diperoleh or C = {} }

algoritma greedy tidak beroperasi secara menyeluruh terhadap semua alternatif solusi yang ada (sebagaimana pada metode exhaustive search). pemilihan fungsi SELEKSI: Mungkin saja terdapat beberapa fungsi SELEKSI yang berbeda, sehingga kita harus memilih fungsi yang tepat jika kita ingin algoritma bekerja dengan benar dan menghasilkan solusi yang benar-benar optimum

BUATLAH PROGRAM-NYA MENGGUNAKAN JAVA BUATLAH PROGRAM-NYA MENGGUNAKAN JAVA? Input Jumlah Koin = Nilai Koin [1] = Nilai Koin[2] = …… Nilai Koin [N] = Input Total Uang yang akan DITUKAR : Solusi Greedy Jumlah Koin [1] = Jumlah Koin[2] = …… Jumlah Koin [N] = TOTAL KOIN : TUGAS KELOMPOK min. 3 max 4 orang DAN HITUNG LANGKAHNYA… DIKUMPULKAN MINGGU DEPAN …

Implementasi MST (Minimum Spanning Tree) (Pohon Rentang Minimum) KnapSack MST (Minimum Spanning Tree) (Pohon Rentang Minimum) Algoritma Kruskal Algoritma Prim Shortest Path (Jalur Terpendek) Dijkstra