Anda di halaman 1dari 35

Program Dinamik (Dynamic Programming)

Riset Operasi TIP FTP UB

Program Dinamik : Pendahuluan (1)

Program dinamik merupakan suatu pendekatan solusi bukan suatu teknik

Tidak terbatas pada golongan masalah tertentu

Pendekatan solusi adalah merinci suatu masalah menjadi masalah-masalah yang lebih kecil tahapan (stages)

Penyelesaian tahapan secara berurutan

Hasil dari suatu keputusan (solusi) pada suatu tahap akan mempengaruhi keputusan tahap berikutnya

Program Dinamik : Pendahuluan (2)

Pemrograman dinamik merupakan teknik matematis yang dapat berguna untuk membuat suatu urutan keputusan yang saling berkaitan Pemrograman dinamis tidak mempunyai rumusan yang baku Tiap permasalahan memerlukan perumusan tertentu Teknik pemrograman dinamis dikenal juga dengan multistage programming

Klasifikasi Program Dinamis


Status Diskret Status Kontinyu

Tunggal

Majemuk

Tunggal

Majemuk

Deterministik

Probabilistik

Prosedur Pemecahan Masalah

Prosedur pemecahan

Rekursi maju (forward recursion) Rekursi mundur (backward recursion) Cara mendefinisikan status dalam sistem.

Perbedaan prosedur

Prosedur rekursi mundur secara umum lebih efisien

Langkah-langkah Pemecahan

Tentukan prosedur pemecahan (maju atau mundur). Tentukan tahap (stage). Definisikan variabel status (state) pada tiap tahap. Definisikan variabel keputusan pada tiap tahap. Definisikan fungsi pengembalian pada tiap tahap. Definisikan fungsi transisi. Definisikan fungsi rekursif. Perhitungan. Tentukan solusi optimal dengan backtracking.

Permasalahan

Sebuah perusahaan membagi wilayah pemasarannya menjadi tiga: utara, timur, selatan. Perusahaan tersebut memilliki 3 tenaga penjual yang akan dialokasikan ke tiga wilayah tersebut tanpa membatasi jumlah tenaga penjual di setiap wilayah sdrs hasil penjualan maksimum.

Contoh Program Dinamik (1) Permasalahan


Alternatif Keputusan Salesman/Daerah 0 1 2 3 Tingkat Pengembalian/Daerah Utara 0 7 12 20 Timur 0 9 15 18 Selatan 2 6 10 16

Contoh Program Dinamik (2) Model Matatematika Masalah


Maksimum R1+R2+R3 Ditujukan D1+D2+D3 3 Dimana R1, R2, R3 = pengembalian dari tiap 3 daerah D1, D2, D3 = keputusan penempatan salesman ke tiap 3 daerah

Contoh Program Dinamik (3) Tahap 1 : Alokasi ke Daerah Selatan


Keadaan 1 (S1): Salesman Tersedia 0 1 2 Keputusan 1 (D1): Alokasi Salesman 0 0 1 0 1 2 3 0 1 2 Pengembalian 1(R1): Jumlah Penjualan 2 2 6 2 6 10 2 6 10

16

Contoh Program Dinamik (4) Tahap 1 : Alokasi ke Daerah Selatan (Opt)


Keadaan 1 (S1): Salesman Tersedia 0 1 Keputusan 1 (D1): Alokasi Salesman 0 0 1 Pengembalian 1(R1): Jumlah Penjualan 2 2 6

0
1 2

2
6 10 2 6 10 16

0 1 2 3

Contoh Program Dinamik (5) Tahap 2 : Alokasi ke Daerah Timur


Keadaan 2 (S2): Salesman Tersedia
0 1 2

Keputusa 2 (D2): Alokasi Salesman


0 0 1 0

Pengembali an 2 (R2): Jumlah Penjualan


0 0 9 0

Keadaan 1 (S1): Salesman Tersedia


0 1 0 2

Pengembali Total an 1(R1): Pengembali Jumlah an (R1+R2) Penjualan


2 6 2 10 2 6 11 10

1
2 3 0

9
15 0

1
0 3

6
2 16

15
17 16

1
2 3

9
15 18

2
1 0

10
6 2

19
21 20

Contoh Program Dinamik (6) Tahap 2 : Alokasi ke Daerah Timur (Opt)


Keadaan 2 (S2): Salesman Tersedia
0 1 2

Keputusa 2 (D2): Alokasi Salesman


0 0 1 0

Pengembali an 2 (R2): Jumlah Penjualan


0 0 9 0

Keadaan 1 (S1): Salesman Tersedia


0 1 0 2

Pengembali Total an 1(R1): Pengembali Jumlah an (R1+R2) Penjualan


2 6 2 10 2 6 11 10

1
2 3 0

9
15 0

1
0 3

6
2 16

15
17 16

1
2 3

9
15 18

2
1 0

10
6 2

19
21 20

Contoh Program Dinamik (7) Tahap 3 : Alokasi ke Daerah Utara


Keadaan 3 (S3): Salesman Tersedia 3 Pengemba Keputusa lian 3 3 (D3): (R3): Alokasi Jumlah Salesman Penjualan 0 1 2 3 0 7 12 20 Keadaan 2 (S2): Salesman Tersedia 3 2 1 0 Total Pengemba Pengemba lian 2(R2): lian Jumlah (R1+R2+R Penjualan 3) 21 17 11 2 21 24 23 22

Contoh Program Dinamik (8) Tahap 3 : Alokasi ke Daerah Utara (Opt)


Keadaan 3 (S3): Salesman Tersedia 3 Pengemba Keputusa lian 3 3 (D3): (R3): Alokasi Jumlah Salesman Penjualan 0 1 2 3 0 7 12 20 Keadaan 2 (S2): Salesman Tersedia 3 2 1 0 Total Pengemba Pengemba lian 2(R2): lian Jumlah (R1+R2+R Penjualan 3) 21 17 11 2 21 24 23 22

Contoh Program Dinamik (8) Urutan Keputusan Optimal


Keadaan (daerah) 1. Selatan 2. Timur 3. Utara Alokasi Pengembalian Salesman 0 2 1 2 15 7

Total

24

Problem Knapsack

Permasalahan mengenai berapa jumlah tiap jenis barang yang berbeda dapat dimasukkan ke dalam sebuah ransel guna memaksimumkan pengembalian dari barangbarang tersebut. Ransel punya kapasitas tertentu (5 ruang)

Contoh Problem Knapsack (1) Permasalahan


Alternatif Barang yang Dibawa

X Y Z

Berat Laba 2 90 3 150 1 30

Contoh Problem Knapsack (2) Model Matatematika Masalah


Maksimum R1D1+R2D2+R3D3 Ditujukan W1D1+W2D2+W3D3 5 Dimana R1, R2, R3 = pengembalian dari tiap barang D1, D2, D3 = keputusan jumlah barang yang dibawa W1, W2, W3 = berat barang yang dibawa

Contoh Problem Knapsack (3) Tahap 1 : Keputusan X


Keadaan 1 (S1): Ruang Tersedia 5 4 3 2 1 0

Keputusan 1 (D1): Jumlah Barang


2 2 1 1 0 0

Kebutuhan Ruang 4 4 2 2 0 0

Pengembalian 1(R1) 180 180 90 90 0 0

Contoh Problem Knapsack (4) Tahap 1 : Keputusan X (Opt)


Keadaan 1 (S1): Ruang Tersedia 5 4 3 2 1 0

Keputusan 1 (D1): Jumlah Barang


2 2 1 1 0 0

Kebutuhan Ruang 4 4 2 2 0 0

Pengembalian 1(R1) 180 180 90 90 0 0

Contoh Problem Knapsack (5) Tahap 2 : Keputusan Y


Keput Kebutu Penge Keada Keadaa usan han mbalia an 1 n 2 (S2) 2 Ruang n 2(R2) (S1) (D2) 5 4 3 2 1 0 1 0 1 0 1 0 0 0 0 3 0 3 0 3 0 0 0 0 150 0 150 0 150 0 0 0 0 2 5 1 4 0 3 2 0 0 Keputu san 1 (D1) 1 2 0 2 0 1 1 0 0 Penge mbalia n1 (R1) 90 180 0 180 0 90 90 0 0 Penge mbalia n Total (R) 240 180 150 180 150 90 90 0 0

Contoh Problem Knapsack (6) Tahap 2 : Keputusan Y (Opt)


Keput Kebutu Penge Keada Keadaa usan han mbalia an 1 n 2 (S2) 2 Ruang n 2(R2) (S1) (D2) 5 4 3 2 1 0 1 0 1 0 1 0 0 0 0 3 0 3 0 3 0 0 0 0 150 0 150 0 150 0 0 0 0 2 5 1 4 0 3 2 0 0 Keputu san 1 (D1) 1 2 0 2 0 1 1 0 0 Penge mbalia n1 (R1) 90 180 0 180 0 90 90 0 0 Penge mbalia n Total (R) 240 180 150 180 150 90 90 0 0

Contoh Problem Knapsack (7) Tahap 3 : Keputusan Z


Keput Kebutu Penge Keada Keadaa usan han mbalia an 2 n 3 (S3) 3 Ruang n 3(R3) (S2) (D3) 5 5 5 150 0 Keputu san 2 (D2) 0 Penge mbalia n2 (R2) 0 Penge mbalia n Total (R) 150

4
3 2 1 0

4
3 2 1 0

120
90 60 30 0

1
2 3 4 5

0
0 1 0 1

0
90 150 180 240

120
180 210 210 240

Contoh Problem Knapsack (8) Tahap 3 : Keputusan Z


Keput Kebutu Penge Keada Keadaa usan han mbalia an 2 n 3 (S3) 3 Ruang n 3(R3) (S2) (D3) 5 5 5 150 0 Keputu san 2 (D2) 0 Penge mbalia n2 (R2) 0 Penge mbalia n Total (R) 150

4
3 2 1 0

4
3 2 1 0

120
90 60 30 0

1
2 3 4 5

0
0 1 0 1

0
90 150 180 240

120
180 210 210 240

Contoh Problem Knapsack (9) Keputusan Optimal


Keadaan Jumlah Kebutuhan (Barang) Barang Ruang Pengem balian

X Y Z

1 1 0

2 3 0

90 150 0

Total

240

Problema Stagecoach

Suatu jaringan pengarahan perjalanan dimana seorang pengarah jalan (abad 19) ingin menentukan rute terpendek antara dua kota (1 dan 7) berdasarakan rute alternatif yang tersedia.

Problema Stagecoach (1) Tahap 1


Keadaan 1 (S1): Keputusan 1 Lokasi Truk (D1): Rute

Pengembalian 1 (R1): Waktu Tempuh

5 6

57 67

8 14

Problema Stagecoach (1) Tahap 1 (Opt)


Keadaan 1 (S1): Keputusan 1 Lokasi Truk (D1): Rute

Pengembalian 1 (R1): Waktu Tempuh

5 6

57 67

8 14

Problema Stagecoach (1) Tahap 2


Keputus Penge Pengem Keadaa Keadaa an 2 mbalian balian 1 n 2 (S2) n 1 (S1) (D2) 2 (R2) (R1)
2 3 4 2 5 2 6 3 5 3 6 4 5 4 6 25 17 14 17 26 22 5 6 5 6 5 6 8 14 8 14 8 14

Pengem balian Total (R)


33 31 22 31 34 36

Problema Stagecoach (1) Tahap 2 (Opt)


Keputus Penge Pengem Keadaa Keadaa an 2 mbalian balian 1 n 2 (S2) n 1 (S1) (D2) 2 (R2) (R1)
2 3 4 2 5 2 6 3 5 3 6 4 5 4 6 25 17 14 17 26 22 5 6 5 6 5 6 8 14 8 14 8 14

Pengem balian Total (R)


33 31 22 31 34 36

Problema Stagecoach (1) Tahap 3


Keputus Penge Pengem Keadaa Keadaa an 3 mbalian balian 2 n 3 (S3) n 2 (S2) (D3) 3 (R3) (R2)
1 1 2 1 3 1 4 16 35 9 2 3 5 31 22 34

Pengem balian Total (R)


47 57 43

Problema Stagecoach (1) Tahap 3 (Opt)


Keputus Penge Pengem Keadaa Keadaa an 3 mbalian balian 2 n 3 (S3) n 2 (S2) (D3) 3 (R3) (R2)
1 1 2 1 3 1 4 16 35 9 2 3 5 31 22 34

Pengem balian Total (R)


47 57 43

Problema Stagecoach (1) Keputusan Optimal

Rute yang diambil 1 4 5 7 dengan jarak tempuh 43.

Terima kasih