Penerapan Pemrograman Dinamis
dalam Perencanaan Produksi
Yugowati Praharsi
Abstrak
1.
Pendahuluan
Dalam banyak permasalahan bisnis, pihak manajemen seringkali dihadapkan
pada pembuatan sederetan keputusan yang saling terkait, dengan tujuannya adalah
mengoptimalkan keseluruhan hasil dan sederetan keputusan dalam jangka waktu
tertentu. Pendekatan penyelesaian masalah manajemen seperti ini dapat
diselesaikan dengan menguraikan model matematika permasalahan yang mungkin
sulit dipecahkan ke sejumlah permasalahan yang lebih kecil sehingga dihasilkan
sederetan keputusan dalam jangka waktu tertentu disebut pemrograman dinamis.
Masing-masing permasalahan kecil ini diidentifikasikan sebagai tahapan (stage) dari prosedur solusi pemrograman dinamis. Formulasi dalam pemrograman
dinamis tidak seperti dalam pemrograman linear. Dalam permasalahan
pemrograman dinamis tidak ada formulasi matematika baku untuk prosedur
pengoptimalan. Prosedur pengoptimalan pemrograman dinamis cenderung
mengacu pada teknik komputasi umum tergantung pada keadaan permasalahan
yang akan diselesaikan. Salah satu lingkup manajemen yang menggunakan
pemrograman dinamis antara lain berkaitan dengan permasalahan perencanaan
produksi.
Seringkali proses pengambilan keputusan dibuat berurutan atau multi tahap
yang melibatkan sederetan permasalahan yang masing-masing merupakan tahapan
tunggal. Setiap permasalahan tahapan tunggal terdiri dan satu atau lebih
peubah-peubah yang nilai-nilainya harus ditentukan untuk mengoptimalkan nilai fungsi
tujuan.
2.
Kajian Pustaka
2.1 Prinsip Optimalitas
Bila keputusan optimal dibuat dalam setiap tahap maka kombinasi
keputusan-keputusan akan optimal. Hal ini sesuai dengan prinsip optimalitas dari Bellman
yang menyatakan:
“Sifat dari suatu kebijakan optimal adalah apapun keadaan (state) dan keputusan awalnya, keputusan berikutnya harus menetapkan suatu kebijakan optimal dengan
memperhatikan keadaan yang dihasilkan setelah keputusan pertama”. Prinsip ini
juga disebut prinsip optimisasi rekursif.
2.2 Fungsi Tujuan
Pemrograman dinamis mempunyai fungsi tujuan maksimum atau minimum
untuk menyelesaikan masalah. Dalam setiap tahap dapat ditemukan fungsi
tujuannya, yaitu:
Optimalkan Zi = Xi + Z*i-1
dimana Xi menyatakan peubah-peubah keputusan pilihan dalam tahap ke-i
Z*i-1 menyatakan keputusan optimal dari tahap i-1.
2.3 Fungsi Transformasi
Fungsi transformasi merupakan persamaan matematika yang terikat pada
tahap-tahap dari permasalahan bersama dalam pemrograman dinamis.
Pi
Xi Xi-1
Si
Xi = Masukan ke tahap i dari tahap i + 1
Pi = Masukan (bebas) ke tahap i yang bebas dari tahap sebelumnya
Si = Keluaran dari tahap i
Xi-1 = Masukan ke tahap i - 1 dari tahap i
* 1 i
Z = Nilai optimal dari fungsi tujuan untuk tahap i-1
Zi = Fungsi tujuan untuk tahap i berkaitan dengan Xi, Pi, Si, dan Z*i 1
Keputusan pada tahap i berkaitan dengan Pi Si, atau keduanya.
2.4 Fungsi Rekursif
Fungsi rekursif diberikan oleh persamaan berikut:
fn(X) = max {rn(xn) + fn-1(X-xn)} n = 2,3,...
fn(X) = Total keuntungan dari tahap n
xn = Jumlah sumber daya yang dialokasikan pada tahap n
rn(Xn) = Return function dari tahap n
X = Total sumber daya yang tersedia untuk n tahap
Persamaan rekursif diatas dapat digunakan untuk dua penghitungan yaitu
backward dan forward recursions.
Secara khusus notasi yang digunakan dalam makalah ini sebagai berikut
(Anderson, et.al. 1994):
N : Jumlah tahap (tahap-tahap dalam perumusan pemrograman dinamis)
Dn : Permintaan produk khusus dalam tahap n.
xn : Status keputusan yang menyatakan banyaknya persediaan awal pada
tahap n.
dn : Peubah keputusan yang menyatakan jumlah unit barang yang diproduksi
dalam tahap n
Pn : Kapasitas produksi dalam tahap n.
Wn : Kapasitas penyimpanan pada akhir tahap n.
Cn : Biaya produksi per unit dalam tahap n
Hn : Biaya perawatan per unit yang berkaitan dengan perawatan sejumlah
barang pada persediaan akhir untuk tahap n.
3.
Hasil dan Pembahasan
Model Pemrogramannya pada setiap tahap yaitu:
Minimalkan rn(xn, dn) + fn-1(xn-1)
Adapun kendala-kendala yang harus dipenuhi (Anderson, et all. 1994):
1) Persediaan akhir harus lebih kecil atau sama dengan kapasitas
3) Persediaan awal dan jumlah unit barang yang diproduksi harus lebih besar
atau sama dengan permintaan produk khusus.
Ditulis: xn + dn ≥ Dn
Tabel 1 menunjukkan data kasus pengendalian produksi dan penyimpanan sebuah
perusahaan selama tiga bulan (Anderson,et.al. 1994)
Tabel 1: Data Kasus Pengendalian Produksi dan Penyimpanan
Bulan Permintaan Kapasitas Biaya tiap unit
Produksi Penyimpanan Produksi Perawatan
Januari
Persediaan awal untuk bulan Januari adalah 1 unit
Dari data dalam tabel di atas dapat dibuat skema perumusan pemrograman
dinamis. Ada 3 tahap dimana penomeran tahap dilakukan secara mundur. Tahap
Gambar 1: Tiga Tahap Pengendalian Produksi dan Penyimpanan
Tahap transformasi fungsi mengambil bentuk:
Persediaan akhir = persediaan awal + jumlah unit barang yang diproduksi -
permintaan
x2 = x3 + d3 - D3 = x3 + d3 - 2 (Persediaan akhir tahap 3)
x1 = x2 + d2 - D2 = x2 + d2 - 3 (Persediaan akhir tahap 2)
x0 = x1 + d1– D1 = x1 + d1- 3 (Persediaan akhir tahap 1)
Adapun return function masing-masing tahap menyatakan jumlah dan biaya produksi dan biaya perawatan.
Tahap 1 (Maret)
Minimalkan r1(x1,d1) = 200 d1 + 40 (x1 + d1– 3)
Kendala-kendala :
x1 + d1≤ 5 kendala kapasitas penyimpanan
d1 ≤ 3 kendala kapasitas produksi
Tabel 2: Hasil Penghitungan pada Tahap 1
kapasitas gudang adalah 3 dari tahap 2
Tabel 3: Hasil Penghitungan pada Tahap 2
Tabel 4: Hasil Penghitungan pada Tahap 3
persediaan awal bulan Januari adalah 1 unit
- M 1280 1315
Tabel 5: Kebijakan Optimal untuk Produksi dan Penyimpanan
Bulan Persediaan
(1). Anderson, D.R., Sweeney, D.J. & Williams, T.A. 1994. An Introduction to Management Science: Quantitative Approaches to Decision Making. 7th edition, New York: West Pub.Co.
(2). Taha, H.A. 1996. Operations Research: An Introduction. 5th edition, NewYork: MacMillan Pub.Co.