Download - Multi-Stage (Dynamic) Programming
![Page 1: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/1.jpg)
Multi-Stage (Dynamic) Programming
![Page 2: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/2.jpg)
Dynamic Programming
• Biasanya masalah RO diselesaikan secara tunggal dan sekaligus ( sekali pukul)
• DP intinya memecah (mendekomposisi) problem menjadi subproblem yang lebih kecil dan kemudian menggabungkan (mengkomposisi) kembali subproblem2 tsb untuk mendapatkan jawaban yang diinginkan
![Page 3: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/3.jpg)
Ciri-ciri Dynamic Programming
1. Keputusan suatu masalah ditandai optimisasi pada tahap berikutnya.
2. Masalah yang akan diselesaikan harus dipisah menjadi n subproblem.
3. DP berhubungan dengan problem2 dimana pilihan dibuat pada masing2 stage (tahap2). Seluruh kemungkinan dicerminkan oleh state (keadaan2)
![Page 4: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/4.jpg)
Ciri-ciri Dynamic Programming
4. Setiap keputusan pada tahap-tahap mempunyai fungsi return yang akan mengevaluasi pilihan yang dibuat thd tujuan keseluruhannya (max/min).
5. Tahap proses keputusan dihubungkan dengan tahap yang berdekatan melalui fungsi transisi.
6. Ada hubungan rekursif yang menghubungkan optimasi thp n dg thp (n-1) atau menghubung- kan optimasi thp n dengan thp (n+1).
![Page 5: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/5.jpg)
Ciri-ciri Dynamic Programming
• Hubungan itu ada dua, yaitu :– Forward recursive equation– Backward recursive equation
![Page 6: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/6.jpg)
Forward recursive equation
f0(X0) = 0
fj*(Xj) = opt { Rj(kj) @ f*j-1(Xj@kj) }
J = 1,2,3, … n
![Page 7: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/7.jpg)
Forward recursive equation
f0(X0) = 0
f1*(X1) = opt { R1(k1) @ f*0(X1@k1) }
f2*(X2) = opt { R2(k2) @ f*1(X2@k2) }
f3*(X3) = opt { R3(k3) @ f*2(X3@k3) }
dst… sampai dg nJ = 1,2,3, … n
![Page 8: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/8.jpg)
Backward recursive equation
fn+1(Yn+1) = 0
fj*(Yj) = opt { Rj(kj) @ f*j+1(Yj@kj) }
J = 1,2,3, … n
![Page 9: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/9.jpg)
Backward recursive equation
fn+1(Yn+1) = 0
fn*(Yn) = opt { Rn (kn) @ f*n+1(Yn@kn) }
fn-1*(Yn-1) = opt { Rn-1(kn-1) @ f*n(Yn-1@kn-1) }
fn-2*(Yn-2) = opt { Rn-2(kn-2) @ f*n-1(Yn-2@kn-2) }dst.. sampai dg n =1
J = 1,2,3, … n
![Page 10: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/10.jpg)
Arti simbol :
• f*(X) atau f*(Y) fungsi return optimum
• X atau Y state (keadaan)
• X@k atau Y@k fungsi transisi
• j stage (tahap) ke j
• K variabel keputusan
• @ simbol matematika (+,-,x, : ,akar dll)
![Page 11: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/11.jpg)
Model Dynamic Programming
• Masalah Penentuan Route
• Masalah Alokasi
• Masalah Muatan (knapsack)
• Masalah Capital Budgeting
![Page 12: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/12.jpg)
Masalah Penentuan Route
• Suatu sistem jalan menghubungkan 3 sumber yang akan membawa sampah ke dua tempat pembuangan limbah. Tiap-tiap garis lurus membutuhkan 1 hari untuk menempuh jarak dari 1 node ke 1 node berikutnya. Sehingga diperlukan 4 hari perjalanan dari H ke D.
![Page 13: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/13.jpg)
Masalah Penentuan Route
• Pada tiap node terdapat pemeriksaan dan penempatan ulang dari limbah tersebut yang menyebabkan keterlambatan. Lamanya waktu keterlambatan yang dapat diantisipasi ditunjukkan dalam bilangan yang berada dalam node tersebut. Tujuannya menentukan suatu route sehingga keterlambatan pengangkutan tersebut minimum ??
![Page 14: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/14.jpg)
Masalah Penentuan Route
H1
H2
H3
4
3
3
6
5
7
4
4
3
2
D1
D2
Tahap 1
Tahap 2Tahap 3
![Page 15: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/15.jpg)
Masalah Penentuan Route
• Diselesaikan dengan cara Backward (mundur) sebagai berikut !!
![Page 16: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/16.jpg)
Masalah Penentuan Route
H1
H2
H3
4
3
3
6
5
7
4
4
3
2
D1
D2
Tahap 1
Tahap 2Tahap 3
4
3
2
![Page 17: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/17.jpg)
Masalah Penentuan Route
H1
H2
H3
4
3
3
6
5
7
4
4
3
2
D1
D2
Tahap 1
Tahap 2Tahap 3
4
3
2
8
![Page 18: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/18.jpg)
Masalah Penentuan Route
H1
H2
H3
4
3
3
6
5
7
4
4
3
2
D1
D2
Tahap 1
Tahap 2Tahap 3
4
3
2
8
9
![Page 19: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/19.jpg)
Masalah Penentuan Route
H1
H2
H3
4
3
3
6
5
7
4
4
3
2
D1
D2
Tahap 1
Tahap 2Tahap 3
4
3
2
8
9
6
![Page 20: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/20.jpg)
Masalah Penentuan Route
H1
H2
H3
4
3
3
6
5
7
4
4
3
2
D1
D2
Tahap 1
Tahap 2Tahap 3
4
3
2
8
9
6
12
11
9
12
![Page 21: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/21.jpg)
Masalah Penentuan Route
H1
H2
H3
4
3
3
6
5
7
4
4
3
2
D1
D2
Tahap 1
Tahap 2Tahap 3
4
3
2
8
9
6
12
11
9
12
![Page 22: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/22.jpg)
Masalah Penentuan Route
H1
H2
H3
4
3
3
6
5
7
4
4
3
2
D1
D2
Tahap 1
Tahap 2Tahap 3
4
3
2
8
9
6
12
11
9
12
![Page 23: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/23.jpg)
Masalah Penentuan Route
H1
H2
H3
4
3
3
6
5
7
4
4
3
2
D1
D2
Tahap 1
Tahap 2Tahap 3
4
3
2
8
9
6
12
11
9
12
![Page 24: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/24.jpg)
Masalah Penentuan Route
H1
H2
H3
4
3
3
6
5
7
4
4
3
2
D1
D2
Tahap 1
Tahap 2Tahap 3
4
3
2
8
9
6
12
11
9
12
![Page 25: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/25.jpg)
Masalah Penentuan Route
H1
H2
H3
4
3
3
6
5
7
4
4
3
2
D1
D2
Tahap 1
Tahap 2Tahap 3
4
3
2
8
9
6
12
11
9
12
![Page 26: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/26.jpg)
Masalah Penentuan Route
H1
H2
H3
4
3
3
6
5
7
4
4
3
2
D1
D2
Tahap 1
Tahap 2Tahap 3
4
3
2
8
9
6
12
11
9
12
Minimum keterlambatan 9 hari
![Page 27: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/27.jpg)
Masalah Alokasi
• Keuntungan pd empat macam kegiatan merupakan fungsi dari jam kerja yang dialokasikan pd masing2 kegiatan dituangkan dalam tabel berikut ini . Jika setiap hari tersedia 4 jam kerja, bagaimana alokasi waktu sehingga keuntungan perharinya maksimum ???
![Page 28: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/28.jpg)
Masalah Alokasi
Jam Kerja
K E G I A T A N
1 2 3 4
0 0 0 0 0
1 1 2 3 2
2 3 5 7 5
3 6 8 10 8
4 9 11 12 10
![Page 29: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/29.jpg)
Masalah Alokasi
• Kegiatan Tahap ( stage )
• Xj adalah banyaknya jam kerja yang dialokasikan pada tahap j.
• Pj(Xj) adalah keuntungan dari alokasi X jam kerja pd kegiatan j.
• Maks : Z = P1(X1) + P2(X2) + P3(X3) + P4(X4)
• Kendala : X1 + X2 + X3 + X4 = 4 dan
X1 , X2, X3 , X4 ≥ 0
![Page 30: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/30.jpg)
Masalah Alokasi• State ( keadaan) nya disimbolkan dengan
Yj , dimana :• Y1 = juml jam kerja yang disediakan pada tahap
1,2,3,4• Y2 = juml jam kerja yang disediakan pada tahap
2,3,4• Y3 = juml jam kerja yang disediakan pada tahap
3,4• Y4 = juml jam kerja yang disediakan pada tahap
4
![Page 31: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/31.jpg)
Masalah Alokasi• Sedangkan fungsi keuntungan tiap stage
(tahap) adalah :• f*4(Y4)= keuntungan optimum pada tahap 4 dgn
Y4 tertentu • f*3(Y3)= keuntungan optimum pada tahap 3,4
dgn Y3 tertentu • f*2(Y2)= keuntungan optimum pada tahap 2,3,4
dgn Y2 tertentu• f*1(Y1)= keuntungan optimum pada tahap 1,2,3,4
dgn Y1 tertentu
![Page 32: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/32.jpg)
Tahap 4 : f*4(Y4) =maks {P4(X4)} dgn f5(Y5) = 0
Y4
P4(X4)f4*(Y4) X*4
X4=0 X4=1 X4=2 X4=3 X4=4
0 0 - - - - 0 0
1 - 2 - - - 2 1
2 - - 5 - - 5 2
3 - - - 8 - 8 3
4 - - - - 10 10 4
![Page 33: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/33.jpg)
Tahap 3 : f*3(Y3) =maks {P3(X3) + f*4(Y4) }
Y3
P3(X3) + f*4(Y4)f3*(Y3) X*3
X3=0 X3=1 X3=2 X3=3 X3=4
0 0+0=0 - - - - 0 0
1 0+2=2 3+0=3 - - - 3 1
2 0+5=5 3+2=5 7+0=7 - - 7 2
3 0+8=8 3+5=8 7+2=9 10+0=10 - 10 3
4 0+10=10 3+8=11 7+5=12 10+2=12 12+0=12 12 2,3,4
![Page 34: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/34.jpg)
Tahap 2 : f*2(Y2) = maks {P2(X2) + f*3(Y3) }
Y2
P2(X2) + f*3(Y3)f2*(Y2) X*2
X2=0 X2=1 X2=2 X2=3 X2=4
0 0+0=0 - - - - 0 0
1 0+3=3 2+0=2 - - - 3 0
2 0+7=7 2+3=5 5+0=5 - - 7 0
3 0+10=10 2+7=9 5+3=8 8+0=8 - 10 0
4 0+12=12 2+10=12 5+7=12 8+3=11 11+0=11 12 0,1,2
![Page 35: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/35.jpg)
Tahap 1 : f*1(Y1) = maks {P1(X1) + f*2(Y2) }
Y1
P1(X1) + f*2(Y2)f1*(Y1) X*1
X1=0 X1=1 X1=2 X1=3 X1=4
0 0+0=0 - - - - 0 0
1 0+3=3 1+0=1 - - - 3 0
2 0+7=7 1+3=4 3+0=3 - - 7 0
3 0+10=10 1+7=8 3+3=6 6+0=6 - 10 0
4 0+12=12 1+10=11 3+7=10 6+3=9 9+0=9 12 0
![Page 36: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/36.jpg)
Jadi keuntungan maks adalah 12, dengan beberapa alokasi alternatif sbb :
Alternatif
(i)
Tahap 1 Tahap 1 Tahap 1 Tahap 1(Kegiatan-1) (Kegiatan-2) (Kegiatan-3) (Kegiatan-4)
1 0 0 4 0
2 0 0 3 1
3 0 0 2 2
4 0 2 2 0
5 0 1 3 0
![Page 37: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/37.jpg)
Masalah Muatan (Knapsack)
• Sebuah perusahaan angkutan sedang mempertimbangkan mengangkut 3 jenis barang. Berat masing-masing barang dan biaya angkutannya seperti pada tabel di bawah . Armada tersebut memiliki kapasitas maks. W = 5 ton. Barang apa saja yang harus diangkut dan berapa banyaknya agar penerimaan maksimum ??
![Page 38: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/38.jpg)
Masalah Muatan (Knapsack)
Barang (i) Berat / item (dlm ton)
Biaya / item(vi) dlm
juta Rp
1 2 65
2 3 80
3 1 30
![Page 39: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/39.jpg)
Masalah Capital Budgeting
• Sebuah perusahaan memiliki beberapa usulan proyek dari ketiga pabriknya guna kemungkinan pengembangan. Masing-masing pabrik memasukkan proposalnya beserta biaya(Cost) dan penerimaan (Revenue) nya seperti tabel di bawah. Proposal dengan biaya nol berarti tidak ada dana yang dialokasikan pada suatu pabrik. Tujuan perusahaan adalah memaksimumkan seluruh penerimaan, dari alokasi dana yang dimiliki sebesar 5 milyar ???
![Page 40: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/40.jpg)
Masalah Capital Budgeting
Proposal
kePabrik 1 Pabrik 2 Pabrik 3
Cost (C1)
Revenue (R1)
Cost (C2)
Revenue (R2)
Cost (C3)
Reveneu (R3)
1 0 0 0 0 0 0
2 1 5 2 8 1 3
3 2 6 3 9 - -
4 - - 4 12 - -
![Page 41: Multi-Stage (Dynamic) Programming](https://reader033.vdocuments.net/reader033/viewer/2022061522/5681409b550346895dac3d82/html5/thumbnails/41.jpg)
Masalah Capital Budgeting
• DIKERJAKAN UNTUK PR_ 9