Program Dinamis 17042014

18

Transcript of Program Dinamis 17042014

7/23/2019 Program Dinamis 17042014

http://slidepdf.com/reader/full/program-dinamis-17042014 1/18

7/23/2019 Program Dinamis 17042014

http://slidepdf.com/reader/full/program-dinamis-17042014 2/18

Pada persoalan ini,1. Tahap (k ) adalah proses memasukkan barang ke dalam

karung (knapsack ).2. Status ( y ) menyatakan kapasitas muat karung yang tersisa

setelah memasukkan barang pada tahap sebelumnya.

Dari tahap ke-1, kita masukkan objek ke-1 ke dalam karunguntuk setiap satuan kapasitas karung sampai batas

kapasitas maksimumnya. Karena kapasitas karung adalahbilangan bulat, maka pendekatan ini praktis.

7/23/2019 Program Dinamis 17042014

http://slidepdf.com/reader/full/program-dinamis-17042014 3/18

Pertimbangkan untuk memuat sebuah kapaldengan persediaan barang N

Setiap unit barang I memiliki beban w i dan nilai v i (i=1, 2, , …, N)

Beban muatan maksimum adalahW  Hal itu diperlukan untuk menentukan muatan

barang yang paling bernilai tanpa melebihi bebanmaksimum kapal Secara khusus, pertimbangkan kasus khusus

tentang tiga barang berikut ini dan asumsikan

bahwa W =5

7/23/2019 Program Dinamis 17042014

http://slidepdf.com/reader/full/program-dinamis-17042014 4/18

Contoh:

i  wi  vi

1 2 65

2 3 80

3 1 30

7/23/2019 Program Dinamis 17042014

http://slidepdf.com/reader/full/program-dinamis-17042014 5/18

Pertimbangkan masalah umum barang N  terlebih dahulu.

Jika k i adalah adalah jumlah unit barang i,

maka masalah menjadi:

Maksimumkan v1k 1 + v2k 2+…. + v Nk  N

Dengan batasan

w1k 1 + w2k 2 + ….. + w Nk  N ≤W 

k i integer nonnegative

7/23/2019 Program Dinamis 17042014

http://slidepdf.com/reader/full/program-dinamis-17042014 6/18

Model DP disusun dengan terlebih dahulu mempertimbangkan

ketiga unsur

1. 

Tahap j diwakili oleh barang  j, j=1,2,…., N  

2. Keadaan  y j   pada tahap  j adalah jumlah beban yang

diberikan pada tahap  j, j+1,….,N ; y1=W dan y j=0, 1, …,

untuk j=2,3, …,N  

3. k  j alternatif  pada tahap j adalah jumlah unit barang j

7/23/2019 Program Dinamis 17042014

http://slidepdf.com/reader/full/program-dinamis-17042014 7/18

ersamaan rekursif mundur

 f  N (y N  )=max{v N k  N  } basis

 f  j(y j )=max{v jk  j+f  j+1(y j-w jk  j )} rekurens

7/23/2019 Program Dinamis 17042014

http://slidepdf.com/reader/full/program-dinamis-17042014 8/18

Tahap 3

 f 3(y3 )=max{30k 3 } max k 3=[5/1]=5

 y3  30k 3  Solusi Optimalk 3=0 1 2 3 4 5 f 3(y3 ) k 3*

v3k 3=0 30 60 90 120 150

0 0 0 0

1 0 30 30 1

2 0 30 60 60 23 0 30 60 90 90 3

4 0 30 60 90 120 120 4

5 0 30 60 90 120 150 150 5

7/23/2019 Program Dinamis 17042014

http://slidepdf.com/reader/full/program-dinamis-17042014 9/18

Tahap 2

 f 2(y2 )=max{80k 2+f 3(y2-3k 2 )} max k 2=[5/3]=1

 y2  80k 2+f 3(y2-3k 2 ) SolusiOptimal

k 2=0 1 f 2(y2 ) k 2*

v2k 2=0 80

0 0+0=0   0 0

1 0+30=30   30 0

2 0+60=60   60 0

3 0+90=90   80+0=80 90 0

4 0+120=120   80+30=110 120 0

5 0+150=150   80+60=140 150 0

7/23/2019 Program Dinamis 17042014

http://slidepdf.com/reader/full/program-dinamis-17042014 10/18

Tahap 1

 f 1(y1 )=max{65k 1+f 2(y1-2k 1 )} max k 1=[5/2]=2

 y1  65k 1+f 2(y1-2k 1 ) SolusiOptimal

k 1=0 1 2 f 1(y1 ) k 1*

v1k 1=0 65 130

5 0+150=150 65+90=155 130+30=160 

  160 2

Pemecahan Optimum yang berhubungan [k 1* , k 2

* k 3* ]=[2,0,1]

 jumlah nilai 160

7/23/2019 Program Dinamis 17042014

http://slidepdf.com/reader/full/program-dinamis-17042014 11/18

Contoh:

i  wi  pi

1 2 65

2 3 80

3 1 30

7/23/2019 Program Dinamis 17042014

http://slidepdf.com/reader/full/program-dinamis-17042014 12/18

Misalkan ketika memasukkan objek pada

tahap k , kapasitas muat karung sekarang

adalah  y – w k .

Untuk mengisi kapasitas sisanya, kita

menerapkan prinsip optimalitas dengan

mengacu pada nilai optimum dari tahapsebelumnya untuk kapasitas sisa

 y – w k ( yaitu f k -1( y  – w k )).

7/23/2019 Program Dinamis 17042014

http://slidepdf.com/reader/full/program-dinamis-17042014 13/18

Selanjutnya, kita bandingkan nilai

keuntungan dari objek pada tahap k (yaitu pk )

plus nilai f k -1( y  – w k ) dengan keuntungan

pengisian hanya k  –

1 macam objek, f k -1( y ).

Jika pk + f k -1( y  – w k ) lebih kecil dari f k -1( y ),

maka objek yang ke-k tidak dimasukkan kedalam karung, tetapi jika lebih besar, maka

objek yang ke-k dimasukkan.

7/23/2019 Program Dinamis 17042014

http://slidepdf.com/reader/full/program-dinamis-17042014 14/18

  Relasi rekurens untuk persoalan ini adalah

 f 0( y) = 0,  y = 0, 1, 2, …, M   (basis)

 f k ( y) = -,  y < 0 (basis)

 f k ( y) = max{ f k -1( y), pk  + f k -1( y  –  wk )}, (rekurens)k  = 1, 2, …, n 

7/23/2019 Program Dinamis 17042014

http://slidepdf.com/reader/full/program-dinamis-17042014 15/18

  f k ( y ) adalah keuntungan optimum dari persoalan0/1 Knapsack pada tahap k untuk kapasitas karungsebesar y .

  f 0( y ) = 0 adalah nilai dari persoalan knapsack kosong(tidak ada persoalan knapscak ) dengan kapasitas y ,

  f k ( y ) = - adalah nilai dari persoalan knapsack untuk

kapasitas negatif. Solusi optimum dari persoalan 0/1Knapsack adalah f n(M).

7/23/2019 Program Dinamis 17042014

http://slidepdf.com/reader/full/program-dinamis-17042014 16/18

Tahap 1:

 f 1( y) = max{ f 0( y), p1}

= max{ f 0( y), 65 }

 y

Solusi Optimum

 f 0( y) 65  f 1( y)  x1*

0 0 0 0

1 0 0 0

2 0 65 65 1

3 0 65 65 1

4 0 65 65 1

5 0 65 65 1

7/23/2019 Program Dinamis 17042014

http://slidepdf.com/reader/full/program-dinamis-17042014 17/18

Tahap 2:

 f 2( y) = max{ f 1( y), p2 + f 1( y  –  w2)}

= max{ f 1( y), 80 + f 1( y  –  3)}

 y

Solusi Optimum

 f 1( y) 80 + f 1( y  –  3)  f 2( y)  x2*

0 0 0 01 0 0 0

2 65 65 0

3 65 80 + 0 = 80  80 1

4 6580 + 0 =

80

 80 1

5 65 80 + 65 = 145  145 1

7/23/2019 Program Dinamis 17042014

http://slidepdf.com/reader/full/program-dinamis-17042014 18/18

Tahap 3:

 f 3( y) = max{ f 2( y), p3 + f 2( y  –  w3)}

= max{ f 2( y), 30 + f 2( y  –  1)}

 y

Solusi Optimum

 f 2( y) 30 + f 2( y  –  1)  f 3( y)  x3*

5 145 30 + 80 = 110 145 0

Solusi optimum X  = (1, 1, 0) dengan p = f  = 145.