SlideShare a Scribd company logo
ANALISIS ALGORITMA
Strategi Algoritma: Greedy
Pemateri:
Adam Mukharil Bachtiar
adam@email.unikom.ac.id
Selain Brute Force terdapat
strategi algoritma lain yaitu
Greedy.
Strategi Greedy dikenal popular
untuk menyelesaikan
permasalahan optimasi.
Permasalahan optimasi sendiri
dibagi menjadi dua yaitu
maksimasi dan minimasi.
Greedy:
Sebuah pendekatan yang membentuk solusinya langkah
perlangkah dan dalam setiap langkah ada hal yang harus
dieksplorasi untuk menentukan pilihan terbaik.
Karakteristik:
1 Greedy memiliki prinsip “Take what you can get now”
2 Pada setiap langkah yang dikerjakan greedy, diambil solusi optimum local
dengan harapan langkah sisanya menuju ke arah solusi optimum global.
3 Greedy = Rakus, tamak.
(+):
Jika permasalahan yang dihadapi tidak membutuhkan
jawaban terbaik mutlak maka strategi ini seringkali optimal
dalam menghasilkan solusi hampiran dan dapat dibuktikan
secara matematis.
(-): Solusi optimum global belum tentu solusi optimum terbaik
tetapi bisa jadi pseudo-optimum.
Untuk menyelesaikan masalahnya,
Greedy mempunyai beberapa
elemen yang harus diidentifikasi.
1 Himpunan kandidat (C)
2 Himpunan solusi (S)
3 Fungsi Seleksi
4 Fungsi Kelayakan
5 Fungsi Objektif
Elemen Greedy
yang harus
diidentifikasi
Skema Umum
Greedy
Problem 1: Penukaran Uang
Problem/Kasus:
Diberikan uang senilai A. Tukar A dengan koin-koin uang yang ada.
Berapa jumlah minimum koin yang diperlukan untuk penukaran
tersebut?
Jenis Kasus:
Minimasi
Himpunan Kandidat:
Himpunan koin yang merepresentasikan nilai 1, 5, 10, 25, paling
sedikit mengandung satu koin untuk setiap nilai.
Himpunan Solusi:
Total nilai koin yang dipilih tepat sama jumlahnya dengan nilai uang yang
ditukarkan.
Fungsi Seleksi:
Pilihlah koin yang bernilai tertinggi dari himpunan kandidat yang tersisa.
Fungsi Layak:
Memeriksa apakah nilai total dari himpunan koin yang dipilih tidak
melebihi jumlah uang yang harus dibayar.
Fungsi Objektif:
Jumlah koin yang digunakan minimum.
Koin:
5, 4, 3, 2, dan 1.
Uang yang ditukar:
7.
Solusi Greedy:
7 = 5 + 1 + 1 (jumlah 3 koin)
Solusi Optimal:
7 = 4 + 3 (jumlah 2 koin)
Koin:
10, 7, dan 1.
Uang yang ditukar:
15.
Solusi Greedy:
15 = 10 + 1 + 1 + 1 + 1 + 1
(jumlah 6 koin)
Solusi Optimal:
15 = 7 + 7 + 1 (jumlah 3 koin)
Koin:
15, 10, dan 1.
Uang yang ditukar:
20.
Solusi Greedy:
20 = 15 + 1 + 1 + 1 + 1 + 1
(jumlah 6 koin)
Solusi Optimal:
20 = 10 + 10 (jumlah 2 koin)
Solusi optimal didapatkan dengan
konsep Exhaustive Search.
Agar pemilihan koin berikutnya optimal
maka perlu mengurutkan himpunan
koin dalam urutan menurun.
Jika himpunan koin sudah terurut
menurun maka kompleksitas algoritma
Greedy menjadi !(#).
Problem 2: 1/0 Knapsack
Solusi 1/0 knapsack menggunakan
Greedy dengan Greedy Heuristic.
Greedy by profit:
Pada setiap langkah, pilih objek yang mempunyai keuntungan
terbesar.
Greedy by weight:
Pada setiap langkah, pilih objek yang memiliki beban teringan.
Greedy by density:
Pada setiap langkah, knapsack diisi dengan objek yang memiliki ⁄"#
$%
yang terbesar
Semua pendekatan tersebut sama-sama
bertujuan memaksimalkan keuntungan
dengan cara yang berbeda (maksimasi).
Kasus 1:
Kapasitas Knapsack:
16
1 2 3 4
p 12 15 50 10
w 6 5 10 5
Solusi Kasus 1:
Properti Objek Greedy by Solusi
Optimali wi pi pi/wi Profit Weight Density
1 6 12 2 0 1 0 0
2 5 15 3 1 1 1 1
3 10 50 5 1 0 1 1
4 5 10 3 0 1 0 0
TOTAL BOBOT 15 16 15 15
TOTAL KEUNTUNGAN 65 37 65 65
Solusi optimal X = (0,1,1,0)
Kesimpulan: Greedy by profit dan density yang memberikan solusi optimal
Kasus 2:
Kapasitas Knapsack:
100
1 2 3 4 5 6
p 40 35 18 4 10 2
w 100 50 45 20 10 5
Solusi Kasus 2:
Properti Objek Greedy by Solusi
Optimali wi pi pi/wi Profit Weight Density
1 100 40 0.4 1 0 0 0
2 50 35 0.7 0 0 1 1
3 45 18 0.4 0 1 0 1
4 20 4 0.2 0 1 1 0
5 10 10 1.0 0 1 1 0
6 5 2 0.4 0 1 1 0
TOTAL BOBOT 100 80 85 100
TOTAL KEUNTUNGAN 40 34 51 55
Kesimpulan: Ketiga pendekatan gagal menghasilkan keuntungan optimum
Problem 3: Pelayanan Antrian
Problem/Kasus:
Sebuah server (dapat berupa processor, pompa, kasir di bank, dll)
mempunyai n pelanggan (customer, client) yang harus dilayani.
Waktu pelayanan untuk setiap pelanggan i adalah ti.
Jenis Kasus:
Minimasi
Kasus:
Solusi Exhaustive Search:
Pelanggan 1 Pelanggan 2 Pelanggan 3
t 5 10 3
Urutan Kebutuhan Waktu Layanan
1à2à3 5 + (5 + 10) + (5 + 10 + 3) = 38
1à3à2 5 + (5 + 3) + (5 + 3 + 10) = 31
2à1à3 10 + (10 + 5) + (10 + 5 + 3) = 43
2à3à1 10 + (10 + 3) + (10 + 3 + 5) = 41
3à1à2 3 + (3 + 5) + (3 + 5 + 10) = 29
3à2à1 3 + (3 + 10) + (3 + 10 + 5) = 34
Optimal
Penyelesaian dengan Exhaustive Search
seperti tadi membutuhkan kompleksitas
sebesar !(#. #!).
Dengan strategi Greedy, pada setiap
langkah pilih pelanggan yang
membutuhkan waktu terkecil di antara
pelanggan lain yang belum terlayani.
Kasus:
Solusi Greedy:
Pelanggan 1 Pelanggan 2 Pelanggan 3
t 5 10 3
Langkah Pelanggan yang dilayani Kebutuhan Waktu Layanan
1 3 3
2 1 3 + 5
3 2 3 + 5 + 10 = 29
Hasil Exhaustive Search 3 + (3 + 5) + (3 + 5 + 10) = 29

More Related Content

PDF
TOGAF Sample Matrices, Catalogs and Diagrams from the Open Group
PPTX
What is GRC – Governance, Risk and Compliance
PPTX
Algoritma Greedy (contoh soal)
PPTX
Penerapan it governance pada pemerintahan
PPT
Multimedia software tools
PPTX
3. Panduan Penggunaan Aplikasi ASIK Sehat Indonesiaku.pptx
PPTX
PPT integrasi layanan primer puskesmas.pptx
PPTX
Multimedia
TOGAF Sample Matrices, Catalogs and Diagrams from the Open Group
What is GRC – Governance, Risk and Compliance
Algoritma Greedy (contoh soal)
Penerapan it governance pada pemerintahan
Multimedia software tools
3. Panduan Penggunaan Aplikasi ASIK Sehat Indonesiaku.pptx
PPT integrasi layanan primer puskesmas.pptx
Multimedia

What's hot (20)

PDF
Analisis Algoritma - Penerapan Strategi Algoritma Brute Force
PDF
Analisis Algoritma - Strategi Algoritma Divide and Conquer
PDF
Analisis Algoritma - Strategi Algoritma Brute Force
PPT
Algoritma brute force
PDF
Analisis Algoritma - Teorema Notasi Asimptotik
PPTX
Efisiensi algoritma
PDF
Analisis Algoritma - Pengantar Kompleksitas Algoritma
PPT
Algoritma penjadwalan proses
PDF
Pertemuan 12 Algoritma Greedy
PPT
Modul 8 - Jaringan Syaraf Tiruan (JST)
PDF
Analisis Algoritma - Notasi Asimptotik
PDF
Matematika Diskrit - 11 kompleksitas algoritma - 03
PPTX
Deadlock pada sistem operasi
PPTX
Perbandingan algoritma brute force , divide and conquer
PPT
Modul 4 representasi pengetahuan
PPT
Metode pencarian heuristik
PDF
Algoritma greedy
PDF
Jaringan Syaraf Tiruan (JST)
PPTX
Algoritma pencarian lintasan jalur terpendek
PPTX
Algoritma pencarian (searching algorithm)
Analisis Algoritma - Penerapan Strategi Algoritma Brute Force
Analisis Algoritma - Strategi Algoritma Divide and Conquer
Analisis Algoritma - Strategi Algoritma Brute Force
Algoritma brute force
Analisis Algoritma - Teorema Notasi Asimptotik
Efisiensi algoritma
Analisis Algoritma - Pengantar Kompleksitas Algoritma
Algoritma penjadwalan proses
Pertemuan 12 Algoritma Greedy
Modul 8 - Jaringan Syaraf Tiruan (JST)
Analisis Algoritma - Notasi Asimptotik
Matematika Diskrit - 11 kompleksitas algoritma - 03
Deadlock pada sistem operasi
Perbandingan algoritma brute force , divide and conquer
Modul 4 representasi pengetahuan
Metode pencarian heuristik
Algoritma greedy
Jaringan Syaraf Tiruan (JST)
Algoritma pencarian lintasan jalur terpendek
Algoritma pencarian (searching algorithm)
Ad

Similar to Analisis Algoritma - Strategi Algoritma Greedy (20)

PPTX
Algoritma Greedy
PPTX
Algoritma greedy (Materi perkuliahan jurusan teknologi informasi).pptx
PDF
Pertemuan 12 Algoritma Greedy
PPTX
Algoritma Greedy
PPT
5-algoritma-grsdfghhhhgtfrdeswdxfcgveedyasdfg-1.ppt
PPT
Algoritma-Greedy- Untuk Pengambilan Keputusan
PPT
Algoritma-Greedy-(2016).ppt
PPTX
207 p12
PPTX
12 metode greedy
PPTX
12 metode greedy
PPTX
12 metode greedy
PPTX
Bab 12 metode greedy
PPT
algoritma_greedy.ppt algoritma kelas 11 tik
PPT
algoritma greedy team fasilkom optimalitation
PPT
algoritma_greedy.ppt
PPTX
untuk informatika kelas xi yang merujuk pada kurikulum merdeka
PPTX
untuk informatika kelas xi yang merujuk pada kurmer
DOC
Greedy knapsack
PDF
Bab II - Strategi Algorima & Pemrograman (Algoritma Greedy).pdf
DOC
Riset operasi
Algoritma Greedy
Algoritma greedy (Materi perkuliahan jurusan teknologi informasi).pptx
Pertemuan 12 Algoritma Greedy
Algoritma Greedy
5-algoritma-grsdfghhhhgtfrdeswdxfcgveedyasdfg-1.ppt
Algoritma-Greedy- Untuk Pengambilan Keputusan
Algoritma-Greedy-(2016).ppt
207 p12
12 metode greedy
12 metode greedy
12 metode greedy
Bab 12 metode greedy
algoritma_greedy.ppt algoritma kelas 11 tik
algoritma greedy team fasilkom optimalitation
algoritma_greedy.ppt
untuk informatika kelas xi yang merujuk pada kurikulum merdeka
untuk informatika kelas xi yang merujuk pada kurmer
Greedy knapsack
Bab II - Strategi Algorima & Pemrograman (Algoritma Greedy).pdf
Riset operasi
Ad

More from Adam Mukharil Bachtiar (20)

PDF
Materi 8 - Data Mining Association Rule.pdf
PDF
Clean Code - Formatting Code
PDF
Clean Code - Clean Comments
PDF
PDF
Clean Code and Design Pattern - Meaningful Names
PDF
Model Driven Software Development
PDF
Scrum: How to Implement
PDF
Pengujian Perangkat Lunak
PDF
Data Mining Clustering
PPTX
Data Mining Klasifikasi (Updated 30 Desember 2020)
PDF
Analisis Algoritma - Strategi Algoritma Dynamic Programming
PDF
Analisis Algoritma - Kelas-kelas Dasar Efisiensi Algoritma
PDF
Activity Diagram
PDF
UML dan Use Case View
PDF
Analisis Algoritma - Langkah Desain Algoritma
PDF
Validasi ide Menggunakan Javelin Board (Idea Validation)
PDF
Analisis Algoritma - Pengantar Analisis Algoritma
PDF
Mini Google Design Sprint
PDF
Scrum: How to Implements (Update)
PDF
Business Model Canvas: Cara Pengisian
Materi 8 - Data Mining Association Rule.pdf
Clean Code - Formatting Code
Clean Code - Clean Comments
Clean Code and Design Pattern - Meaningful Names
Model Driven Software Development
Scrum: How to Implement
Pengujian Perangkat Lunak
Data Mining Clustering
Data Mining Klasifikasi (Updated 30 Desember 2020)
Analisis Algoritma - Strategi Algoritma Dynamic Programming
Analisis Algoritma - Kelas-kelas Dasar Efisiensi Algoritma
Activity Diagram
UML dan Use Case View
Analisis Algoritma - Langkah Desain Algoritma
Validasi ide Menggunakan Javelin Board (Idea Validation)
Analisis Algoritma - Pengantar Analisis Algoritma
Mini Google Design Sprint
Scrum: How to Implements (Update)
Business Model Canvas: Cara Pengisian

Analisis Algoritma - Strategi Algoritma Greedy

  • 1. ANALISIS ALGORITMA Strategi Algoritma: Greedy Pemateri: Adam Mukharil Bachtiar adam@email.unikom.ac.id
  • 2. Selain Brute Force terdapat strategi algoritma lain yaitu Greedy.
  • 3. Strategi Greedy dikenal popular untuk menyelesaikan permasalahan optimasi.
  • 4. Permasalahan optimasi sendiri dibagi menjadi dua yaitu maksimasi dan minimasi.
  • 5. Greedy: Sebuah pendekatan yang membentuk solusinya langkah perlangkah dan dalam setiap langkah ada hal yang harus dieksplorasi untuk menentukan pilihan terbaik.
  • 6. Karakteristik: 1 Greedy memiliki prinsip “Take what you can get now” 2 Pada setiap langkah yang dikerjakan greedy, diambil solusi optimum local dengan harapan langkah sisanya menuju ke arah solusi optimum global. 3 Greedy = Rakus, tamak.
  • 7. (+): Jika permasalahan yang dihadapi tidak membutuhkan jawaban terbaik mutlak maka strategi ini seringkali optimal dalam menghasilkan solusi hampiran dan dapat dibuktikan secara matematis.
  • 8. (-): Solusi optimum global belum tentu solusi optimum terbaik tetapi bisa jadi pseudo-optimum.
  • 9. Untuk menyelesaikan masalahnya, Greedy mempunyai beberapa elemen yang harus diidentifikasi.
  • 10. 1 Himpunan kandidat (C) 2 Himpunan solusi (S) 3 Fungsi Seleksi 4 Fungsi Kelayakan 5 Fungsi Objektif Elemen Greedy yang harus diidentifikasi
  • 13. Problem/Kasus: Diberikan uang senilai A. Tukar A dengan koin-koin uang yang ada. Berapa jumlah minimum koin yang diperlukan untuk penukaran tersebut? Jenis Kasus: Minimasi
  • 14. Himpunan Kandidat: Himpunan koin yang merepresentasikan nilai 1, 5, 10, 25, paling sedikit mengandung satu koin untuk setiap nilai. Himpunan Solusi: Total nilai koin yang dipilih tepat sama jumlahnya dengan nilai uang yang ditukarkan. Fungsi Seleksi: Pilihlah koin yang bernilai tertinggi dari himpunan kandidat yang tersisa.
  • 15. Fungsi Layak: Memeriksa apakah nilai total dari himpunan koin yang dipilih tidak melebihi jumlah uang yang harus dibayar. Fungsi Objektif: Jumlah koin yang digunakan minimum.
  • 16. Koin: 5, 4, 3, 2, dan 1. Uang yang ditukar: 7. Solusi Greedy: 7 = 5 + 1 + 1 (jumlah 3 koin) Solusi Optimal: 7 = 4 + 3 (jumlah 2 koin)
  • 17. Koin: 10, 7, dan 1. Uang yang ditukar: 15. Solusi Greedy: 15 = 10 + 1 + 1 + 1 + 1 + 1 (jumlah 6 koin) Solusi Optimal: 15 = 7 + 7 + 1 (jumlah 3 koin)
  • 18. Koin: 15, 10, dan 1. Uang yang ditukar: 20. Solusi Greedy: 20 = 15 + 1 + 1 + 1 + 1 + 1 (jumlah 6 koin) Solusi Optimal: 20 = 10 + 10 (jumlah 2 koin)
  • 19. Solusi optimal didapatkan dengan konsep Exhaustive Search.
  • 20. Agar pemilihan koin berikutnya optimal maka perlu mengurutkan himpunan koin dalam urutan menurun.
  • 21. Jika himpunan koin sudah terurut menurun maka kompleksitas algoritma Greedy menjadi !(#).
  • 22. Problem 2: 1/0 Knapsack
  • 23. Solusi 1/0 knapsack menggunakan Greedy dengan Greedy Heuristic.
  • 24. Greedy by profit: Pada setiap langkah, pilih objek yang mempunyai keuntungan terbesar. Greedy by weight: Pada setiap langkah, pilih objek yang memiliki beban teringan. Greedy by density: Pada setiap langkah, knapsack diisi dengan objek yang memiliki ⁄"# $% yang terbesar
  • 25. Semua pendekatan tersebut sama-sama bertujuan memaksimalkan keuntungan dengan cara yang berbeda (maksimasi).
  • 26. Kasus 1: Kapasitas Knapsack: 16 1 2 3 4 p 12 15 50 10 w 6 5 10 5
  • 27. Solusi Kasus 1: Properti Objek Greedy by Solusi Optimali wi pi pi/wi Profit Weight Density 1 6 12 2 0 1 0 0 2 5 15 3 1 1 1 1 3 10 50 5 1 0 1 1 4 5 10 3 0 1 0 0 TOTAL BOBOT 15 16 15 15 TOTAL KEUNTUNGAN 65 37 65 65 Solusi optimal X = (0,1,1,0) Kesimpulan: Greedy by profit dan density yang memberikan solusi optimal
  • 28. Kasus 2: Kapasitas Knapsack: 100 1 2 3 4 5 6 p 40 35 18 4 10 2 w 100 50 45 20 10 5
  • 29. Solusi Kasus 2: Properti Objek Greedy by Solusi Optimali wi pi pi/wi Profit Weight Density 1 100 40 0.4 1 0 0 0 2 50 35 0.7 0 0 1 1 3 45 18 0.4 0 1 0 1 4 20 4 0.2 0 1 1 0 5 10 10 1.0 0 1 1 0 6 5 2 0.4 0 1 1 0 TOTAL BOBOT 100 80 85 100 TOTAL KEUNTUNGAN 40 34 51 55 Kesimpulan: Ketiga pendekatan gagal menghasilkan keuntungan optimum
  • 31. Problem/Kasus: Sebuah server (dapat berupa processor, pompa, kasir di bank, dll) mempunyai n pelanggan (customer, client) yang harus dilayani. Waktu pelayanan untuk setiap pelanggan i adalah ti. Jenis Kasus: Minimasi
  • 32. Kasus: Solusi Exhaustive Search: Pelanggan 1 Pelanggan 2 Pelanggan 3 t 5 10 3 Urutan Kebutuhan Waktu Layanan 1à2à3 5 + (5 + 10) + (5 + 10 + 3) = 38 1à3à2 5 + (5 + 3) + (5 + 3 + 10) = 31 2à1à3 10 + (10 + 5) + (10 + 5 + 3) = 43 2à3à1 10 + (10 + 3) + (10 + 3 + 5) = 41 3à1à2 3 + (3 + 5) + (3 + 5 + 10) = 29 3à2à1 3 + (3 + 10) + (3 + 10 + 5) = 34 Optimal
  • 33. Penyelesaian dengan Exhaustive Search seperti tadi membutuhkan kompleksitas sebesar !(#. #!).
  • 34. Dengan strategi Greedy, pada setiap langkah pilih pelanggan yang membutuhkan waktu terkecil di antara pelanggan lain yang belum terlayani.
  • 35. Kasus: Solusi Greedy: Pelanggan 1 Pelanggan 2 Pelanggan 3 t 5 10 3 Langkah Pelanggan yang dilayani Kebutuhan Waktu Layanan 1 3 3 2 1 3 + 5 3 2 3 + 5 + 10 = 29 Hasil Exhaustive Search 3 + (3 + 5) + (3 + 5 + 10) = 29