STRATEGI ALGORITMA(Greedy & Dynamic Programming)
Click here to load reader
-
Upload
karni-hamdani-magoki -
Category
Documents
-
view
115 -
download
2
Transcript of STRATEGI ALGORITMA(Greedy & Dynamic Programming)
STRATEGI ALGORITMA
STRATEGI ALGORITMA
1. GREEDYAlgoritma greedy merupakan metode yang paling populer untuk memecahkan persoalan optimasi. Persoalan optimasi (optimization problems) adalah persoalan mencari solusi optimum.Hanya ada dua macam persoalan optimasi: 1. Maksimasi (maximization) 2. Minimasi (minimization).
Prinsip greedy: “take what you can get now!”.
• Algoritma greedy membentuk solusi langkah per langkah (step by step). Pada setiap langkah, terdapat
banyak pilihan yang perlu dieksplorasi. Oleh karena itu, pada setiap langkah harus dibuat keputusan yang terbaik dalam menentukan pilihan. Pada setiap langkah, kita membuat pilihan optimum lokal (local optimum) dengan harapan bahwa langkah sisanya mengarah ke solusi optimum global (global optimm).
•Contohnya:Sebuah Negara memiliki satuan koin untuk pembayaran: $1, $5, $10, $100, $200.Andaikan seorang memiliki uang dengan jumlah $12,352. Berapa jumlah koin minimal dengan nominal tersebut? Penyelesaian:
STRATEGI ALGORITMA GREEDY & DYNAMIC PROGRAMING Page 2
Strategi greedy: Pada setiap langkah, pilihlah koin dengan nilai terbesar dari himpunan koin yang tersisa.
Himpunan solusi feasible $12,352:{$1, $5, $10, $100, $200.}
[ 12,352200 ]= 6 buah koin x $200 =$12.200
Sisa $152
Himpunan solusi feasible $152{$1, $5, $10, $100}
[ 152100 ]= satu buah koin x $100 = $100
Sisa $52
Himpunan solusi feasible $52{$1,$5,$10}
[ 5210 ]= 5 buah koin x $10 =$50
Sisa $2
Himpunan solusi feasible $2{$1}
[ 21 ]= 1 buah koin x $1 =$2
Sisa 0
Jadi jumlah koin adalah 69 (solusi optimal)
2. DYMANIC PROGRAMINGProgram Dinamis (dynamic programming): metode pemecahan masalah dengan cara menguraikan
STRATEGI ALGORITMA GREEDY & DYNAMIC PROGRAMING Page 3
solusi menjadi sekumpulan langkah (step) atau tahapan (stage) sedemikian sehingga solusi dari persoalan dapat dipandang dari serangkaian keputusan yang saling berkaitan. Pada penyelesaian persoalan dengan metode ini:1. terdapat sejumlah berhingga pilihan yang
mungkin,2. solusi pada setiap tahap dibangun dari hasil
solusi tahap sebelumnya,3. kita menggunakan persyaratan optimasi dan
kendala untuk membatasi sejumlah pilihan yang harus dipertimbangkan pada suatu tahap.
KARAKTERISTIK PERSOAALAN DYNAMIC PROGRAMING:
1. Persoalan dapat dibagi menjadi beberapa tahap (stage), yang pada setiap tahap hanya diambil satu keputusan.
2. Masing-masing tahap terdiri dari sejumlah status (state) yang berhubungan dengan tahap tersebut. Secara umum, status merupakan bermacam kemungkinan masukan yang ada pada tahap tersebut.
3. Hasil dari keputusan yang diambil pada setiap tahap ditransformasikan dari status yang bersangkutan ke status berikutnya pada tahap berikutnya.
4. Ongkos (cost) pada suatu tahap meningkat secara teratur (steadily) dengan bertambahnya jumlah tahapan.
STRATEGI ALGORITMA GREEDY & DYNAMIC PROGRAMING Page 4
5. Ongkos pada suatu tahap bergantung pada ongkos tahap-tahap yang sudah berjalan dan ongkos pada tahap tersebut.
6. Keputusan terbaik pada suatu tahap bersifat independen terhadap keputusan yang dilakukan pada tahap sebelumnya.
7. Adanya hubungan rekursif yang mengidentifikasikan keputusan terbaik untuk setiap status pada tahap k memberikan keputusan terbaik untuk setiap status pada tahap k + 1.
8. Prinsip optimalitas berlaku pada persoalan tersebut.
Contoh:
STRATEGI ALGORITMA GREEDY & DYNAMIC PROGRAMING Page 5
B
5
6
5
3
4
35
J
E
F
Srategi dynamic programming:
Step 2
Dist (E)= {A,B,E} , cost (E)= 8
Dist (F)={A,C,F} , cost (F)= 6
Dist (G)= {A,C,G}, Cost(G)=7
Dist (H)= {A,D,H}. cost(H)= 5
Dist (I)={A,D,I}, cost (I) = 7
Step 3
STRATEGI ALGORITMA GREEDY & DYNAMIC PROGRAMING Page 6
A C
5
3
2
5
6
5
4
2
4
2
6
4
6
L
K
G
H
I
D
Step 1 Step 2 Step 3 Step 4
Dist (J)={A,C,F,J}, cost (J)= 6+3=9
Dist (K)={A,D,H,K}, cost (K)=5+2=7
Step 4
Dist (L)={A,D,H,K,L}, cost(L)=13.
Contoh kasusAda 4 buah jenis kotak sbb
STRATEGI ALGORITMA GREEDY & DYNAMIC PROGRAMING Page 7
4
4
5
2 II2 4 I
Akan disusun kedalam sebuah kotak persegi panjang dengan luas 35x15 cm. Dengan metode greedy dan metode dynamic programming susunlah ke 4 buah kotak tersebut kedalam persegi panjang se optimal mungkin…!!!!
1. METODE GREEDY
STRATEGI ALGORITMA GREEDY & DYNAMIC PROGRAMING Page 8
2
3
2
4
2
6
35
15
IIII
2
Menyusun bangun yang mempunyai luas terbesar yakni bangunan yang mempunyai
luas 10x4 yang dibentuk dari bangunan I & IV , kemudian masukkan kotak tersebut kedalam persegipanjang 35x15
Dengan prinsip“take what you can get now” ,, kita masukkan lagi bangun yang cukup
untuk menempati sisa bagian yang kosong. Sehingga kita mengambil kotak yang luasnya 8x2 yang dibentuk dari 2 bangunan III yang digabung
Setelah memasukkan kotak diatas, masih ada bagian yang kosong yang dapat diisi dengan bangunan no III
Setelah semua bangunan diatas disi, maka akan bersisa luas bangunan sebesar 53 cm2
Untuk lebih jelasnya diperlihatkan pada gambar berikut ini:
STRATEGI ALGORITMA GREEDY & DYNAMIC PROGRAMING Page 9
10
80
2
20
IV
I
I
4
III III
2III
Luas Sisa = 53 cm2
2. DYNAMIC PROGRAMING Persegi panjang dibagi 4 bagian ruangan
STRATEGI ALGORITMA GREEDY & DYNAMIC PROGRAMING Page 10
15
III IIIIIII
IV
I4
Setiap bagian diisi dengan kotak seoptimal mungkin . untuk lebih jelasnya diperlihatkan pada gambar dibawah ini
LUAS SISA = 11cm2
STRATEGI ALGORITMA GREEDY & DYNAMIC PROGRAMING Page 11
18
6
85
4
517
IIIIIII
6
IIIIII
STRATEGI ALGORITMA GREEDY & DYNAMIC PROGRAMING Page 12