Académique Documents
Professionnel Documents
Culture Documents
Algoritma greedy adalah salah satu algoritma dengan strategi solusi langsung (direct solution
strategies)
Algoritma greedy merupakan metode yang paling populer untuk memecahkan persoalan
optimasi.
Persoalan optimasi (optimization problems): persoalan yang menuntut pencarian
solusi optimum.
Persoalan optimasi ada dua macam:
Maksimasi (maximization)
Minimasi (minimization)
Solusi optimum (terbaik) adalah solusi yang bernilai minimum atau maksimum dari sekumpulan
pada setiap langkah dengan harapan sisanya mengarah ke solusi global optimum.
Persoalan: Diberikan uang senilai A. Tukar A dengan koin-koin uang yang ada. Berapa
32 = 1 + 1 + + 1
(32 koin)
32 = 5 + 5 + 5 + 5 + 10 + 1 + 1
(7 koin)
32 = 10 + 10 + 10 + 1 + 1
(5 koin)
dan seterusnya
Minimum: 32 = 25 + 5 + 1 + 1
) hanya 4 koin
Dengan Greedy: Pada setiap langkah, pilihlah koin dengan nilai sebesar mungkin
dari himpunan koin yang tersisa dengan syarat (kendala) tidak melebihi nilai uang
yang ditukarkan.
Tinjau masalah menukarkan uang 32 dengan koin 1, 5, 10, dan 25:
Langkah 1: pilih 1 buah koin 25 (Total = 25)
Langkah 2: pilih 1 buah koin 5 (Total = 25 + 5 = 30)
Langkah 3: pilih 2 buah koin 1 (Total = 25+5+1+1= 32)
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 batas(constraints) yang ada. Kandidat yang
layak dimasukkan ke dalam himpunan solusi, sedangkan kandidat yang tidak layak
dibuang dan tidak pernah dipertimbangkan lagi.
Fungsi obyektif : Fungsi yang memaksimumkan atau meminimumkan nilai solusi
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
Koin: 5, 4, 3, dan 1
Uang yang ditukar = 7.
Solusi dengan algoritma greedy:
7=5+1+1
( 2 koin)
Urutan
T
=================================
1, 2, 3:
5 + (5 + 10) + (5 + 10 + 3 )
1, 3, 2:
5 + (5 + 3) + (5 + 3 + 10)
2, 1, 3:
10 + (10 + 5) + (10 + 5 + 3)
2, 3, 1:
10 + (10 + 3) + (10 + 3 + 5)
3, 1, 2:
3 + (3 + 5) + (3 + 5 + 10)
3, 2, 1:
3 + (3 + 10) + (3 + 10 + 5)
= 38
= 31
= 43
= 41
= 29 (optimal)
= 34
Himpunan kandidat:
t1 = 5, t2 = 10, t3 = 3,
minimum.
Persoalan 0/1 Knapsack yaitu melakukan pengambilan beberapa objek untuk dimasukkan
1
2
3
4
w1 = 6;
w2 = 5;
w3 = 10;
w4 = 5;
p1 = 12
p1 = 15
p1 = 50
p1 = 10
Kapasitas knapsack W = 16
Masukkan objek satu per satu ke dalam knapsack. Sekali objek dimasukkan ke dalam
Kapasitas knapsack W = 16
Properti objek
Greedy by
Solusi
Optimal
wi
pi
pi /wi
profit
weight
density
12
15
10
50
10
Total bobot 15
16
15
15
Total keuntungan 65
37
65
65
Ada 5 kota yang harus dikunjungi dan perjalanan dimulai dari kota E (harus kembali lagi)
C
5
4
5
E
3
8
Pada setiap langkah, (fungsi seleksi) pilih kota yang belum pernah dikunjungi yang
mempunyai jarak terdekat.
C
Langkah
Langkah
Langkah
Langkah
Langkah
A
9