Pertemuan Ke 10 - Metode Greedy
Pertemuan Ke 10 - Metode Greedy
Sesi/Perkuliahan ke: X
Tujuan Instruksional Khusus :
1. Mahasiswa dapat mengerti tentang algoritma greedy dan dapat mengaplikasikan
kedalam masalah
2. Mahasiswa dapat mengerti tentang algoritma minimum spanning tree dan dapat
mengaplikasikan kedalam masalah
3. Mahasiswa dapat mengerti tentang algoritma kruskals dan dapat
mengaplikasikan kedalam masalah
Pokok Bahasan : Algoritma Greedy
Deskripsi singkat : Dalam pertemuan ini akan mempelajari tentang Apa itu
Algoritma Greedy, Minimum Spanning Tree dan Algoritma Kruskals
Referensi :
1. Introduction To Algoritms, Thomas N. Cormen, Charles E. Leiserson,
Ronald L. Ruvest. MIT Press
2. Computer Algorithms: introduction to design and analysis. 2nd ed., Sara
Baase, Reading,Mass: Addison-Wesley Company, 1993
3. Analisis dan Desain Berorientasi Objek, Ariesto Hadi Sutopo, JJ Learning:
Yogyakarta, 2002
4. Pengantar Analisis Algoritma, Suryadi MT, Gunadarma: Jakarta, 1992
5. Referensi silabus utama:
http://www.cs.ucl.ac.uk/teaching/syllabus/ug/1b12.htm
Bisa digunakan: (slides-2)
http://www.cs.caltech.edu/~cs138/
http://www.lehigh.edu/~tkr2/teaching/ie170/
http://hercule.csci.unt.edu/~ian/classes/fall03/csci4450/info.html
http://highered.mcgrawhill.com/sites/0070131511/student_view0/chapter1/ch
apter_overview.
Algoritma Greedy
Halaman 1 dari 6
METODE GREEDY
Metode ini digunakan untuk memperoleh solusi yang optimal dari suatu masalah
yang mempunyai 2 indikator yaitu : adanya fungsi tujuan & pembatas (Constrain).
PROCEDURE GREEDY (A,n)
Solusi 0 (solusi awal)
FOR I 1 TO n DO
X SELECT(A)
IF FEASIBLE (Solusi, x)
THEN Solusi UNION (solusi, x)
ENDIF
REPEAT
RETURN (Solusi)
END GREEDY
Keterangan :
A(1:n) mengandung n input data.
FEASIBLE merupakan fungsi yang bernilai boo;ean (0 atau 1)
UNION penggabungan dan pemeriksaan fungsi obyektifnya (update)
SELECT merupakan fungsi untuk mengambil data input dari A
CONTOH :
Himpunan A merupakan himpunan pasangan terurut (x,y), yaitu { (2,1),(3,2),(7,1),
dan (1,0)}. Dari data-data tersebut akan ditentukan suatu pasangan terurut yang
memiliki jumlah x dan y yang minimum. Adapun batasan dari x dan y masingmasing lebih besar dari nol.
Penyelesaiannya :
Solusi 0
N = 1 : x=2 > 0
Y=1 > 0
FEASIBLE (solusi, x)
Solusi {(2,1)}
N = 2 : x=3 > 0
Y=2 > 0
FEASIBLE (solusi, x)
Solusi {(2,1),{3,2)}
Algoritma Greedy
Halaman 2 dari 6
FEASIBLE (solusi, x)
Solusi {{2,1),(3,2),(7,1)}
N=4:x=1 >0
Y =0>0
TIDAK FEASIBLE
Solusi {(2,1),{3,2),(7,1)}
Dari himpunan solusi yang mungkin tersebut diperoleh solusi yang optimal (dalam
hal ini minimum) adalah (2,1) yang jumlahnya sebesar 2 + 1 = 3.
Jadi solusi = (2,1)
METODE GREEDY banyak digunakan dalam berbagai penyelesaian maslah, antara
lain adalah :
1. Optimal Storage on Tapes Problem
2. Kanpsack Problem
3. Minimum Spanning Tree Problem
4. Shortest Path Problem
Dalam hal ini hanya akan dibahas megenai minimum Spanning Tree saja.
Halaman 3 dari 6
ALGORITMA KRUSKAL
Untuk mencari pohon rentang minimum dari graph dengan algoritma yang
ditemukan Kruskal, mula-mula semua garis dalam graph diurut berdasarkan
bobotnya dari kecil ke besar. Kemudian pilih garis dengan bobot terkecil. Pada
setiap langkah dipilih garis dengan bobot terkecil, tetapi tidak membentuk loop
garis-garis yang sudah dipilih terdahulu.
Contoh :
Pandang graph G sebagai berikut :
10
50
30
40
4
5
35
55
20
15
penyelesaian :
Edge
cost
(1,2)
10
( 3,6 )
15
spanning tree
( 4,6 )
20
2
6
Algoritma Greedy
Halaman 4 dari 6
( 2,6 )
25
( 1,4 )
30
( 3,5 )
35
2
3
5
6
+
Total Cost :
Algoritma Greedy
105
Halaman 5 dari 6
Algoritma Greedy
Halaman 6 dari 6