6 Ukurta tarigan. Riset Operasi Lanjutan (Handout-UT) hal 26-34.
Dalam pemecahan problema menurut metode dynamic programming tidak ada suatu formulasi penyelesaian yang standart sebagaimana halnya didalam penyelesaian linear programming ataupun interger programming. Dynamic
programming adalah problema dan model matematik tertentu harus
diformulasikan untuk setiap bentuk problema.
Metode dynamic programming didasarkan kepada pengertian matematis yang disebut “recursion”. Untuk menjelaskan pengertian ini baiklah diberikan suatu contoh prototype problema dari dynamic programming yaitu stage coach
Seorang salesman ingin mengembara dari kota asalnya ke suatu kota tujuan yang agak jauh. Untuk mencapai kota tujuan tersebut ada beberapa pilihan rute yang dilaluinya seperti terlihat dalam diagram dibawah ini.
Dalam diagram ini terlihat bahwa, salesman dapat berangkat dari kota asalnya (blok 1) melalui kota 2, atau kota 3 atau pun kota yang masing-masing digambarkan sebagai blok 2, blok 3 dan blok 4.
Dari masing-masing kota singgahan ini, dia dapat meneruskan ke kota 5, atau ke kota 6 atau kota 7 dan seterusnya, sehingga dia mencapai tujuan yaitu kota 10. karena daerah yang dilalui cukup membahayakan bagi keselamatan maka perusahaan asuransi telah menawarkan suatu kebijaksanaan tentang keselamatan orang yang melintas kepada setiap orang dibebankan premi yang sebanding dengan besarnya tingkat bahaya pada rute bersangkutan. Adapun besarnya premi tersebut adalah sebagai berikut :
2 3 4 5 6 7 8 9 10
1 2 4 3 2 7 4 6 5 1 4 8 3
3 3 2 4 6 6 3 9 4
4 4 1 5 7 3 3
Angka-angka dalam kolom adalah besarnya premi yang harus dibayarkan. Disini terlihat bahwa dari setiap kota, salesman mempunyai sejumlah pilihan sebagai kota persinggahan sebelum melangkah ke kota singgahan tersebut dia harus lebih dahulu mengambil keputusan ke kota mana sebaiknya dia pergi. Dalam dynamic programming, tahapan dimana keputusan harus diambil disebut
diatas, terlihat 10 state yaitu sama dengan banyaknya kota yang tersedia untuk dipilih dan ada 4 stage pengambilan keputusan yaitu:
Stage 1 : Memilih rute dari kota 1 ke kota 2 atau dari kota 1 ke kota 3 atau dari
kota 1 ke kota 4.
Stage 2 : Bila pada stage 1, telah dipilih salah satu dari ketiga kota tersebut,
selanjutnya dari kota pilihan ini dia harus pula memilih kota singgahan berikutnya yaitu salah satu dari kota 5, kota 6, dan kota 7.
Stage 3 : Dari kota singgahan yang terpilih pada stage 2, kota singgahan
selanjutnya adalah salah satu dari kota 8 dan kota 9.
Stage 4 : Dari kota singgahan yang terpilih pada stage 3, perjalanan dapat
diteruskan ke kota tujuan yaitu kota 10.
Seperti sudah diuraikan dimuka, bahwa dengan memilih rute pada setiap
stage yang didasarkan pada biaya yang terkecil pada rute tersebut belumlah
menjamin total biaya menjadi minimum. Sebagai bukti, dapat dilihat salah satu alternatif penyelesaian yang didasarkan kepada biaya minimum pada setiap stage.
Tabel 3.1. Alternatif Biaya Minumum
Stage Dari Ke Biaya
1 Stage 1 Stage 2 2 2 Stage 2 Stage 6 4 3 Stage 6 Stage 9 3 4 Stage 9 Stage 10 4
Menurut penyelesaian diatas, salesman berangkat dari kota asalnya melalui rute 1-2-6-9-10 dengan total biaya 13. total ini tidaklah minim karena masih ada rute yang lebih baik yaitu 1-4-6-9-10 dengan total biaya 11. Disini terlihar dengan mengorbankan sedikit lebih besar biaya pada stage 1 akan diperoleh total yang lebih kecil.
Problema diatas dapat diselesaikan dengan metode trial and error. tetapi metode ini hanya mungkin digunakan apabila banyaknya stage dan state cukup kecil. Menurut metode dynamic programming, pertama-tama dicari penyelesaian optimum dari bagian kecil dari problema ini secara sistematis diperbesar dan dicari penyelesaian optimumnya. Demikian seterusnya sehingga problema secara keseluruhan telah terselesaikan. Penyelesaian yang demikian disebut “ recursion”.
Secara umum dynamic programming system dapat digambarkan sebagai berikut.
Stage 1 Stage 2 Stage 3 Stage 4
S1 g1 x1 x2 g2 x3 g3 x4 g4 S3 S2 S4 S5
Gambar 3.2. Dynamic Programming System Dimana : Xn = Decision variable pada stage n
gn = Biaya yang harus ditanggung (return) sebagai akibat dari keputusan yang diambil pada stage n.
Untuk Memudahkan penyelesaian problema, maka dalam dynamic
system) menurut cara ini, pertama-tama dihitung besarnya biaya minimum yang
ditimbul pada stage terakhir. Karena hanya ada satu stage dalam perhitungan ini, yaitu stage terakhir yang disebut problema 2 stage. Demikian seterusnya sehingga yang terakhir adalah perhitungan biaya minimum yang ditimbulkan pada seluruh
stage yang ada yang disebut sebagai problema N- Stage. Perhitungan menurut Backward system dapat dijelaskna dengan diagram dibawah ini.
Stage 1 Stage 2 Stage 3 Stage 4
S1 g1 x1 xn gn Xn+1 Gn+1 xN gN Sn+1 Sn SN SN+1 N-n+1-Stage N-n-Stage 1-Stage N-Stage
Gambar 3.3. Backward System
Misalkan decision variable xn (n=1,2, . . . N) adalah state yang terpilih pada stage n. Misalkan pula bahwa : fn(sn,xn) adalah total biaya pada stage –
stage yang belum dilalui apabila salesman berada di state s, dimana xn adalah
merupakan state berikutnya.
Bila dimisalkan bahwa xn adalah harga dari xn yang memberikan fn(sn,xn) yang optimum yaitu f*n(sn,xn), maka f*n(sn,xn) = fn(sn,xn).
Perhitungan baiaya optimum pada stage by stage dapat diformulasikan sebagai berikut:
Problema 2-stage : f*N-1(sN-1,xN-1) = opt xN-1[f*N-1(sN-1,xN-1)] opt xN-1[g*N-1(sN- 1,xN-1) f*N(sN,xN)]
Problema n-stage : f*N(sN,xN) = opt xN[fN(sN,xN] = opt xN-1[g*N(sN,xN)
f*N+1(sN+1,xN+1)]
Problema N-stage : f*1(s1,x1) = opt x1[f1(s1,x1)]= opt x1[g1(s1,x1)+ f2(s2,x2)]
Untuk lebih jelasnya, maka pertama-tama baiklah problema stage coach tersebut diatas diselesaikan lebih dahulu dengan menggunakan metode dynamic programming.
Stage 1 Stage 2 Stage 3 Stage 4
S1 g1 x1 xn g2 x3 g3 x4 g4 S3 S2 S4 S5 3-stage 2-stage 1-Stage 4-stage
Gambar 3.4. Problema Stage Coach Problema 1-stage
Problema biaya dimulai dari stage paling akhir yaitu akhir perjalanan salesman. Stage terakhir yaitu stage 4 adalah set dari kota-kota yang paling deket ke kota tujuan. Bila salesman telah sampai dalam stage 4 ini, maka ada kemungkinan di kota (state) mana dia berada. Jika salesman berada di state 8, maka untuk pergi ke state 10, dia harus mengeluarkan biaya 3, tetapi jika dia berapa pada di state 9 maka biaya tersebut adalah 4.
Tabel 3.2. Problema 1-Stage S ��∗(S4) ��∗
8 3 10
9 4 10
Problema 2-stage :
Bila salesman berada pada stage 3 maka ada 2 stage lagi baru sampai pada kota tujuannya. Misalkan dia sekarang berada di stage 3 untuk perjalanan selanjutnya dia dapat pergi ke salah satu dari state 8 atau state 9. Bila dia memilih
state 8, maka biaya minimum yang akan dikeluarkannya adalah biaya dari state 5
ke state 8 ditambah dengan biaya dari state 8 ke state 10 yaitu sama dengan 1+3= 4. Tetapi apabila dia memilih state 9 maka total biaya minimum tersebut adalah 4+4=8.
Karena biaya pada alternatif yang kedua ini lebih besar maka dia akan memilih state 8. Dengan demikian dapat ditulis pada s3=5,f*3(s3) = 4 dan x*3 = 8.
Dengan cara yang sama dapat ditentukan biaya optimum pada s3 = 6 dan s3 = 7
seperti terlihat dibawah ini.
Tabel 3.3. Problema 2-Stage
S ��(s3,x3) = g3(s3,x3) + �� ��∗(s3) ��∗ 8 9 5 4 8 4 8 6 9 7 7 9 7 6 7 6 8
Problema 3-Stage :
Dengan cara yang sama, penyelesaian untuk problema 3 stage dapat diperoleh. Pada problema ini total biaya adalah f2(s2,x2)=g2(s2,x2)+f*3(s3). Sebagai contoh,
apabila salesman berada pada state 2, dan memilih pergi ke state 5, maka total biaya minimum adalah biaya pada rute 2-5 ditambah biaya minimum dari state 5 ke state 10.
Tabel 3.4. Problema 3-Stage
S ��(s2,x2) = g2(s2,x2) + ��∗(s3) ��∗(s2) ��∗ 5 6 7 2 11 11 12 11 5,6 3 7 9 10 7 5 4 8 8 11 8 5,6 Problema 4-Stage:
Problema 4-stage ini telah mencakup seluruh stage karena problema ini hanya terdiri dari 4 stage. Disini hanya ada satu kemungkinan asal dari salesman yaitu state 1 dengan 3 alternatif tujuan yaitu state 2, state 3 dan state 4. total biaya minimum dari ketiga alternatif ini adalah sebagai berikut:
Tabel 3.5. Problema 4-Stage
S
��(s1,x1) = g1(s1,x1) + ��∗(s2)
��∗(s1) ��∗
2 3 4
1 13 11 11 11 3,4
Hasil dari problema 4-stage memperlihatkan bahwa salesman pertama- tama harus pergi ke salah satu dari kota 3 atau kota 4. Misalkan dia memilih kota
3. Pada problema 3 state untuk s2=3, diperoleh x*2=5. Dengan demikian pada problema 2 stage 2, untuk s3=5, diperoleh x*3=8 dan pada problema 1 stage untuk s4= 8 diperoleh x*4 = 10. Jika salah satu dari rute yang optimum adalah 1- 3-5-8-10. apabila dipilih 1-4-5-8-10 dan 1-4-6-9-10. Masing-masing dari ketiga rute tersebut akan memberikan total biaya minimum yang sama yaitu 11.