DYNAMIC PROGRAMMING
Pemrograman Dinamis (dynamic programing / DP)
Prosedur matematis yang dirancang untuk memperbaiki efisiensi
OPERATIONAL RESEARCH II perhitungan masalah pemrograman matematis tertentu dengan
menguraikannya menjadi bagian-bagian masalah yang lebih kecil.
Penyederhanaan perhitungan.
Agustina Eunike, ST., MT., MBA. Menjawab masalah dalam tahap tahap (stages), dengan setiap
Industrial Engineering University of Brawijaya tahap meliputi satu variabel optimasi.
Perhitungan di tahap yang berbeda dihubungkan melalui
perhitungan rekursif, untuk menjamin bahwa pemecahan layak
untuk tiap tahap juga layak untuk keseluruhan masalah.
1
30/03/2015
2
30/03/2015
Contoh 1 : Rute Terpendek Alternatif keputusan yang Dapat diambil pada Setiap Tahap
7
B E 1
2 4
6 4 3 H I
H B C D
3 6
E 1 4
4 2 F 6 3
A A 2 4 3
C F G 3 3
4 J
3 4
3
4 3
I
1 E F G J
B 7 4 6 H 3
D G 3 C 3 2 4 I 4
5
D 4 1 5
n=1 n=2 n=3 n=4
3 3
x3
H * * H
s f 4 (S) x4 6
f 3 ( s, x3 ) csx3 f ( x3 )
4
*
4
J
H 3 J 3 4
H I f 3* ( s ) x *3
E 4 8 4 H
I
I 4 J I
F 9 7 7 I
G 6 7 6 H
3
30/03/2015
n=2 E n=1
3
7 11
2
Kota B merupakan kota yang terdekat dengan kota tujuan awal(kota 2 B
C F A), akan tetapi memilih kota yang terdekat TIDAK selalu
menghasilkan solusi yang terbaik jika tidak memperhatikan masalah
secara keseluruhan. 4
4 Pada kasus ini memilih kota yang terdekat justru memberikan A
solusi yang paling buruk.
C 7
G 6
3
f 3 (s, x2 ) csx2 f 3* ( x2 ) D
8
E F G f 2* ( s ) x *2
f1 (s, x1 ) csx1 f 2* ( x1 )
B 11 11 12 11 E atau F
B C D f 1* ( s ) x1*
C 7 9 10 7 E
A 13 11 11 11 C atau D
D 8 8 11 8 E atau F
G 6 7 6 H
G 6 7 6 H
4
30/03/2015
Solusi Solusi 1
7
B E 1
f1 (s, x1 ) csx1 f 2* ( x1 ) f 3 (s, x2 ) csx2 f 3* ( x2 ) 2 4
f 1* ( s ) x1* *
B C D E F G f 2* ( s ) x2 6 4 3
H
A 13 11 11 11 C atau D B 11 11 12 11 E atau F 3 6
4 2
C 7 9 10 7 E
A C F
D 8 8 11 8 E atau F 4 J
3 4
* * f 3 ( s, x3 ) csx3 f 4* ( x3 ) 3
s f 4 (S) x4
x *3 4 3
H I f 3* ( s ) I
H 3 J 1
E 4 8 4 H
I 4 J
F 9 7 7 I
D G 3
5
G 6 7 6 H
Solusi 2 Solusi 3
7 7
B E 1 B E 1
2 4 2 4
6 4 3 6 4 3
H H
3 6 3 6
4 2 4 2
A C F A C F
4 J 4 J
3 4 3 4
3 3
4 3 4 3
I I
1 1
D G 3 D G 3
5 5
5
30/03/2015
Kapasitas gudang untuk menyimpan transformator adalah 30 unit. Transformator yang tidak dikirim dalam
bulan yang sama dapat disimpan dalam gudang dengan biaya $ 100 per unit per bulan. Persediaan pada awal
bulan Mei adalah 20 unit dan persediaan pada awal bulan September ditetapkan sebesar 0 unit. Untuk
praktisnya transformator hanya dapat diproduksi, dikirm dan disimpan dalam jumlah kelipatan 10 unit.
6
30/03/2015
Review Question
Kapankah metode programa dinamis bisa digunakan untuk menentukan
solusi suatu permasalahan?
Apakah yang dimaksud dengan:
State
Tahap
Variabel Keputusan
Fungsi Rekursif
Kenapa dalam metode programa dinamis tidak mempunyai struktur model
matematis yang pasti sehingga untuk masalah yang beda akan DETERMINISTIC DYNAMIC PROGRAMMING
menghasilkan struktur model yang berbeda juga?
DETERMINISTIC DP DETERMINISTIC DP
State pada stage berikutnya ditentukan oleh state dan Struktur dasar:
kebijakan keputusan pada stage saat ini.
Pengkategorian:
Fungsi tujuan
Minimasi atau Maksimasi
Set of states
Variabel Diskrit
Variabel Kontinyu
Vektor
PROBABILISTIC DP
State pada stage berikutnya mengikuti suatu distribusi
peluang.
Distribusi peluang ditentukan oleh stage saat ini.
Untuk permasalahan yang sederhana dapat
digambarkan menggunakan decision tree
PROBABILISTIC DYNAMIC PROGRAMMING Lebih kompleks dibandingkan deterministic DP.
7
30/03/2015
PROBABILISTIC DP References
Struktur dasar: Frederick Hillier and Gerald J.Lieberman, Introduction to
Operations Research, Holden Day Ltd, San Fransisco,
1997.
Taha, Hamdy, Operation Research : An Introduction,
Macmillan Publishing Company., New York, 1997.