• Tidak ada hasil yang ditemukan

BAB 2 LANDASAN TEORI

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB 2 LANDASAN TEORI"

Copied!
19
0
0

Teks penuh

(1)

BAB 2

LANDASAN TEORI

2.1 Tinjauan Pustaka

2.1.1 Pengertian, Struktur, Kelebihan dan Kekurangan, serta Potensi Dynamic Programming

Dynamic Programming adalah suatu teknik kuantitatif yang digunakan

untuk membuat suatu rangkaian keputusan yang saling berkaitan. (Hillier & Lieberman, Introduction To Operations Research, sixth edition)

Dynamic Programming adalah prosedur matematis yang terutama

dirancang untuk memperbaiki efisiensi perhitungan masalah pemrograman matematis tertentu dengan menguraikannya menjadi bagian-bagian masalah yang lebih kecil. (Hamdy.A Taha, Operations Research : An Introduction, seventh edition)

Jadi dynamic programming berdasarkan kedua definisi di atas dapat juga didefinisikan sebagai suatu pendekatan matematik yang memiliki prosedur sistematis yang dirancang sedemikian rupa dengan tujuan untuk mengoptimalkan penyelesaian suatu masalah tertentu yang diuraikan menjadi sub-sub masalah yang lebih kecil yang terkait satu sama lain dengan tetap memperhatikan kondisi dan batasan permasalahan tersebut.

(2)

Struktur dynamic programming untuk dapat dimengerti secara lebih jelas dan lebih spesifik, umumnya dideskripsikan dengan suatu sistem notasi. Struktur dynamic programming disebut juga dengan model dynamic

programming. Notasi dan simbol yang digunakan dalam model dynamic programming adalah beragam, namun secara umum dapat dinyatakan sebagai

berikut :

i = Tahap keputusan ke- i .

n = Banyak tahap keputusan.

Xi = Variabel keputusan pada tahap keputusan ke- i .

(

Si Xi

)

Si −1, = Status pada tahap keputusan ke- i .

(

Si Xi

)

ri , = Return pada tahap keputusan ke- i .

(

Si Xi

)

fi , = Nilai keputusan pada tahap keputusan ke- i , untuk status Sidan variabel keputusan Xi.

( )

Si

fi= Nilai keputusan optimal pada tahap keputusan ke- i , untuk

status Si.

(3)

Dynamic programming sebagai suatu teknik optimasi memiliki

beberapa kelebihan, diantaranya :

• Proses pemecahan suatu masalah yang kompleks menjadi sub-sub masalah yang lebih kecil membuat sumber permasalahan dalam rangkaian proses masalah tersebut menjadi lebih jelas untuk diketahui.

Pendekatan dynamic programming dapat diaplikasikan untuk berbagai macam masalah pemrograman matematik, karena dynamic programming cenderung lebih fleksibel daripada teknik optimasi lain.

Prosedur perhitungan dynamic programming juga memperkenankan bentuk analisis sensitivitas terdapat pada setiap variabel status (state) maupun pada variabel yang ada di masing-masing tahap keputusan (stage). Dynamic programming dapat menyesuaikan sistematika perhitungannya

menurut ukuran masalah yang tidak selalu tetap dengan tetap melakukan perhitungan satu per satu secara lengkap dan menyeluruh.

Disamping memiliki kelebihan, dynamic programming juga memiliki beberapa kekurangan, diantaranya :

Penggunaan dynamic programming jika tidak dilakukan secara tepat, akan mengakibatkan ketidakefisienan biaya maupun waktu. Karena dalam menggunakan dynamic programming diperlukan keahlian, pengetahuan, dan seni untuk merumuskan suatu masalah yang kompleks, terutama yang berkaitan dengan penetapan fungsi transformasi dari permasalahan tersebut.

(4)

Dynamic programming tidak memiliki suatu bentuk formulasi matematik

yang baku untuk digunakan secara konsekuen, sehingga perhitungan untuk menghasilkan keputusan optimal yang dilakukan terbatas pada kondisi tertentu.

Hambatan terbesar pada dynamic programming adalah masalah dimensionalitas, yaitu masalah dimana peningkatan variabel keadaan yang digunakan dalam perhitungan pemrograman dinamis akan menambah beban memori komputer serta menambah lama waktu perhitungan.

Seiring dengan perkembangan zaman, potensi dynamic programming menjadi semakin penting karena ruang lingkup dynamic programming sangat luas dan penerapannya mampu dikembangkan untuk memecahkan permasalahan yang selalu berubah dan semakin kompleks. Konsep dan prosedur dynamic programming memiliki dampak yang sangat berarti, bukan saja untuk perkembangan dunia akademik tetapi juga untuk perkembangan dunia industri –baik industri manufaktur maupun industri jasa-. Bahkan tidak tertutup kemungkinan, jika dynamic programming mampu memperbaiki kekurangannya terhadap hal-hal yang berkaitan dengan tuntutan adanya standar formulasi matematik yang baku maupun kemampuan untuk mengatasi hambatan dimensionalitas, maka dynamic programming akan memiliki potensi untuk menjadi suatu teknik super yang mampu memecahkan berbagai macam masalah optimasi.

(5)

2.1.2 Prinsip-prinsip Dynamic Programming

Dynamic programming sebagai suatu pendekatan matematik memiliki

beberapa prinsip dasar yang terkait erat satu sama lain. Prinsip-prinsip dasar tersebut, yaitu :

Prinsip pertama dalam model dynamic programming adalah bahwa masalah dapat dibagi menjadi bagian-bagian masalah yang lebih kecil. Masalah yang lebih kecil atau sub masalah ini disebut sebagai tahap keputusan (stage). Setiap masalah yang akan diselesaikan, terlebih dahulu dibagi-bagi menjadi beberapa masalah kecil dengan maksud memudahkan evaluasi masalah untuk mendapatkan keputusan optimal dari tiap-tiap tahap yang pada akhirnya akan menghasilkan satu set keputusan yang optimal. Oleh karena itu model dynamic programming disebut juga model multi stage

programming (model multi tahap).

Proses urutan pembagian masalah dalam model dynamic programming ditunjukkan pada gambar berikut :

Gambar 2.2 Proses Urutan Pembagian Masalah Secara Mundur

Prinsip kedua dalam model dynamic programming adalah tentang status (state). Pengertian status (state) dalam dynamic programming adalah arus informasi dari suatu tahap ke tahap berikutnya. Arus informasi yang

(6)

masuk ke suatu tahap disebut status input, sedangkan arus informasi yang keluar dari suatu tahap disebut status output. Status input penting, karena keputusan pada tahap berikutnya tergantung dari status input sebelumnya. Jadi, status input untuk tahap keputusan n-1 merupakan status output untuk tahap keputusan sebelumnya, yaitu tahap keputusan n. Sedangkan status output dari tahap keputusan n akan menjadi status input untuk tahap keputusan berikutnya, yaitu tahap keputusan n-1. (Lihat Gambar 2.3)

Gambar 2.3 Hubungan Status Input dengan Tahap Keputusan

Prinsip ketiga dalam model dynamic programming adalah tentang variabel keputusan. Variabel keputusan dalam dynamic programming dinyatakan dalam berbagai bentuk keputusan alternatif yang dapat dipilih pada saat pengambilan keputusan pada tahap tertentu. Berbagai alternatif keputusan yang dapat diambil dalam setiap tahap keputusan dapat dibatasi dengan sejumlah persyaratan yang dikenakan dalam struktur masalah.

Prinsip keempat dalam model dynamic programming adalah tentang fungsi transformasi. Fungsi transformasi memberikan penjelasan tentang bagaimana hubungan antara tahap keputusan yang satu dengan tahap

(7)

keputusan yang lain dalam dynamic programming diformulasikan. Selain itu, fungsi transformasi juga menyatakan tentang hubungan fungsional nilai status pada setiap tahap keputusan. Hubungan status dalam tahap keputusan yang berurutan bersifat berulang, artinya jika terdapat tahap keputusan n dalam hubungannya dengan tahap keputusan n-1 maka perhitungan untuk nilai status

n-1 menggunakan nilai status n dari keputusan pada tahap n.

2.1.3 Unsur-unsur Model Dynamic Programming

2.1.3.1 Tahap, Keadaan Sistem, dan Alternatif Keputusan

Tahap keputusan (stage) sebagai salah satu unsur penting dalam model dynamic programming merupakan bagian-bagian masalah yang lebih sederhana. Serangkaian tahap keputusan yang berurutan dan terkait satu sama lain akan membentuk keseluruhan masalah. Karena itu model dynamic programming disebut juga model

multi stage programming (model multi tahap).

Keadaan sistem merupakan salah satu konsep yang paling penting dalam suatu model dynamic programming, karena keadaan sistem mewakili hubungan antara tahap-tahap keputusan yang berurutan. Dimana ketika setiap tahap dioptimumkan secara terpisah, maka keputusan yang dihasilkan tersebut layak dan optimum untuk keseluruhan masalah. Lebih lanjut, hal tersebut memungkinkan pengambilan keputusan adalah optimum untuk tahap-tahap selanjutnya

(8)

tanpa harus melakukan pemeriksaan terhadap pengaruh keputusan yang telah diambil sebelumnya.

Definisi keadaan biasanya adalah konsep yang paling tidak jelas dalam perumusan dynamic programming. Tidak ada jalan yang mudah untuk mendefinisikan keadaan, tetapi petunjuk untuk itu dapat ditemukan dengan mengajukan dua pertanyaan berikut :

Hubungan apa yang mempersatukan tahap-tahap itu?

• Informasi apa yang diperlukan untuk mengambil keputusan yang layak pada tahap sekarang tanpa memeriksa kelayakan dari keputusan yang diambil pada tahap-tahap sebelumnya?

Alternatif keputusan merupakan pilihan keputusan yang harus ditentukan agar keputusan pada tiap-tiap tahap optimum, sehingga keputusan akhir untuk keseluruhan masalah juga optimum. Alternatif keputusan dalam model dynamic programming dinyatakan dalam bentuk variabel keputusan yang memiliki batasan-batasan tertentu.

2.1.3.2 Persamaan Rekursif Maju dan Mundur

Penyelesaian masalah dalam pendekatan dynamic

programming dapat dilakukan secara maju (forward recursive equation) ataupun secara mundur (backward recursive equation).

(9)

recursive equation terletak dalam cara mendefinisikan status (state)

atau yang sering disebut dengan definisi keadaan.

Forward recursive equation (perhitungan dari depan ke belakang)

( ) 0X0 0 = f ( )Xj opt

{

R j( )kj @ * 1

(

Xj @kj

)

}

* = jj f f

Backward recursive equation (perhitungan dari belakang ke

depan) ( ) 0Yn = n f ( )

{

( ) f

(

)

}

n fj*Yj =opt R jkj @ j*+1Yj @kj , j=1,2,... Keterangan : ( )X *

f atau f *( )Y = optimum return function

X atau Y = status (state) k

@

X atau Y@k = fungsi transisi

j = tahap ke-

k = variabel keputusan

@ = simbol atau lambang operasi matematik Pada umumnya, penyelesaian masalah dengan forward

recursive equation dan backward recursive equation akan mengarah

kepada efisiensi perhitungan yang berbeda jika tahap-tahap keputusan dalam model dynamic programming-nya dikondisikan dalam urut-urutan yang spesifik.

(10)

Secara umum, masalah optimasi dapat diselesaikan dengan prosedur forward recursive equation maupun backward recursive

equation. Tetapi untuk masalah tertentu, khususnya masalah yang

tahap-tahap keputusannya berhubungan dengan periode waktu, penyelesaian masalah tidak dapat menggunakan prosedur forward

recursive equation namun harus menggunakan prosedur backward recursive equation.

2.1.4 Karakteristik Masalah Dynamic Programming

Konsep dasar dynamic programming yang diungkapkan oleh Richard Bellman dalam bukunya yang berjudul Principle of Optimality memiliki beberapa karakteristik. Karakteristik atau ciri-ciri pokok masalah dynamic

programming tersebut adalah sebagai berikut, yaitu :

Dalam masalah dynamic programming, keputusan tentang suatu masalah ditandai dengan optimasi pada tahap berikutnya. Artinya, jika suatu masalah diselesaikan dengan dynamic programming, maka masalah tersebut harus dipilah menjadi n sub masalah.

Dynamic programming berkaitan dengan masalah-masalah dimana

keputusan dari berbagai alternatif pilihan ditentukan pada masing-masing tahap. Semua alternatif pilihan yang mungkin tersebut harus ditransformasikan ke dalam bentuk formulasi matematik tertentu sesuai

(11)

Terdapat return function yang berhubungan dengan setiap keputusan pada setiap tahap. Return function berfungsi untuk melakukan evaluasi terhadap keputusan yang ditentukan dalam arti apa yang diberikan untuk tujuan keseluruhan dari masalah tersebut.

• Hubungan antara tiap tahap proses keputusan dengan tahap lain yang berdekatan disatukan melalui fungsi transisi. Fungsi transisi ini dapat berupa kuantitas yang diskrit atau kontinu, tergantung pada sifat-sifat masalah.

• Menggunakan suatu hubungan rekursif untuk menghubungkan keputusan optimum pada tahap n dengan tahap n-1. Ada dua macam prosedur rekursif yaitu forward dan backward. (Lihat sub bab 2.1.3.2)

• Penggunaan hubungan rekursif membuat prosedur penyelesaian terhadap masalah terus bergerak dari tahap awal ke tahap selanjutnya sampai keputusan optimum tahap terakhir didapatkan. Sekali keputusan optimum tahap n telah didapatkan, maka n komponen keputusan dapat ditemukan kembali dengan melacak balik melalui fungsi transisi tahap n.

2.1.5 Aplikasi Dynamic Programming

Pada sub bab ini akan disajikan dua contoh tentang model dynamic

programming. Setiap contoh tersebut menggambarkan suatu aplikasi dynamic programming yang berbeda, hal ini dikarenakan karakteristik masalah dynamic programming yang tidak memiliki suatu formulasi matematik yang

(12)

baku. Perlu diketahui pula bahwa setiap contoh hanya merupakan suatu tipe penyelesaian masalah dengan dynamic programming, sedangkan aplikasi yang sesungguhnya sangat banyak untuk ditemukan.

2.1.5.1 Masalah Alokasi

Dalam model dynamic programming untuk masalah alokasi berikut, keputusan optimum pada setiap tahap dapat diperoleh dengan menggunakan metode optimasi klasik sederhana.

Tabel 2.1 Masalah Alokasi Kegiatan Jam Kerja 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

Keuntungan pada empat macam kegiatan merupakan fungsi jam kerja yang dialokasikan pada masing-masing kegiatan. (Lihat tabel 2.1). Jika setiap hari tersedia 4 jam kerja, bagaimana alokasi waktu agar keuntungan per hari maksimum.

Solusi : Misalkan Pj(Xj) adalah keuntungan dari alokasi X jam

kerja kepada kegiatan j yang berbentuk fungsi linier. Masalah tersebut dapat diformulasikan sebagai suatu model linear programming

(13)

Maksimasi Z = P1(X1) + P2(X2) + P3(X3) + P4(X4)

Batasan : X1 + X2 + X3 + X4 = 4

X1, X2, X3, X4 ≥ 0

Karena permasalahan ini hanya memiliki satu kendala dan pendekatan linear programming hanya akan memberikan satu variabel dalam solusinya, maka pendekatan linear programming kurang tepat untuk diterapkan pada permasalahan ini. Oleh karena itu, permasalahan ini akan diselesaikan dengan pendekatan dynamic

programming.

Misalkan setiap kegiatan merupakan tahap (stage) dalam perumusan dynamic programming, sehingga disini ada 4 tahap. Variabel keputusan Xj (j = 1, 2, 3, 4) adalah banyaknya jam kerja yang

dialokasikan pada tahap ke-j.

Karena semua nilai variabel keputusan merupakan variabel diskrit, maka akan digunakan metode tabulasi dengan persamaan rekursif mundur (backward recursive equation).

Misalkan status (state)-nya diberi simbol Yj, dimana :

Y4 = jumlah jam kerja yang disediakan pada tahap 4

Y3 = jumlah jam kerja yang disediakan pada tahap 3, 4

Y2 = jumlah jam kerja yang disediakan pada tahap 2, 3, 4

(14)

( )4 4*Y

f = optimum profit pada tahap 4 dengan Y4 tertentu

( )3 3*Y

f = optimum profit pada tahap 3 dan 4 dengan Y3 tertentu

( )2 2*Y

f = optimum profit pada tahap 2, 3, & 4 dengan Y2 tertentu

( )1 1*Y

f = optimum profit pada tahap 1, 2, 3, & 4 dengan Y1 tertentu

Tabel 2.2 Perhitungan Dynamic Programming (Tahap 4)

Y4 P4(X4) f4*(Y4) X4* X4 = 0 1 2 3 4 0 0 - - - - 0 0 1 - 2 - - - 2 1 2 - - 5 - - 5 2 3 - - - 8 - 8 3 4 - - - - 10 10 4

Tabel 2.3 Perhitungan Dynamic Programming (Tahap 3) Y3 P3(X3) + f4*(Y4) f3*(Y3) X3* X3 = 0 1 2 3 4 0 0 - - - - 0 0 1 2 3 - - - 3 1 2 5 5 7 - - 7 2 3 8 8 9 10 - 10 3 4 10 11 12 12 12 12 2,3,4

(15)

Tabel 2.4 Perhitungan Dynamic Programming (Tahap 2) Y2 P2(X2) + f3*(Y3) f2*(Y2) X2* X2 = 0 1 2 3 4 0 0 - - - - 0 0 1 3 2 - - - 3 0 2 7 5 5 - - 7 0 3 10 9 8 8 - 10 0 4 12 12 12 11 11 12 0,1,2

Tabel 2.5 Perhitungan Dynamic Programming (Tahap 1) Y1 P1(X1) + f2*(Y2) f1*(Y1) X1* X1 = 0 1 2 3 4 0 0 - - - - 0 0 1 3 1 - - - 3 0 2 7 4 3 - - 7 0 3 10 8 6 6 - 10 0 4 12 11 10 9 9 12 0

Tabel 2.6 Alternatif Alokasi untuk Keuntungan Maksimum Tahap 1 Tahap 2 Tahap 3 Tahap 4 Kegiatan 1 Kegiatan 2 Kegiatan 3 Kegiatan 4

0 0 4 0 0 0 3 1 0 0 2 2 0 2 2 0 0 1 3 0

(16)

2.1.5.2 Masalah Stagecoach

Masalah stagecoach adalah masalah penentuan rute perjalanan dari suatu titik awal hingga ke titik akhir perjalanan. Oleh karena rute perjalanan dari titik awal hingga titik akhir dapat ditempuh melalui banyak rute, maka yang menjadi masalah adalah rute perjalanan mana yang harus dipilih agar biaya, jarak, atau waktu perjalanan paling efisien. Masalah stagecoach disebut juga masalah shortest route atau masalah network. Aplikasi model dynamic programming dalam memecahkan masalah stagecoach ditunjukkan pada contoh berikut : Misalkan seseorang ingin menentukan waktu tercepat dari Jakarta menuju Malang. Jalur dan waktu perjalanan (menit) ditunjukkan pada gambar 2.4 berikut :

(17)

Gambar 2.4 di atas menunjukkan bahwa paling banyak ada 3 rantai untuk setiap kemungkinan alternatif jalur dari Jakarta ke Malang. Karena itu, masalah stagecoach ini dipecah dalam 3 tahap yang mewakili masing-masing rantai. Variabel keputusannya adalah jalur atau rute yang dipilih sedangkan statusnya adalah kota asal pada setiap tahap.

Tahap 3 : f3* (Status 3) = min { W3 (Jalur 3)}

Tabel 2.7 Perhitungan Dynamic Programming (Tahap 3)

Tahap 2 : f2* (Status 2) = min { W2 (Jalur 2) + f3* (Status 3)}

(18)

Tahap 1 : f1* (Status 1) = min { W1 (Jalur 1) + f2* (Status 2)}

Tabel 2.9 Perhitungan Dynamic Programming (Tahap 1)

Perhitungan rekursif mundur dari tabel di atas menunjukkan bahwa waktu perjalanan minimum adalah 840 menit yang ditempuh melalui jalur atau rute Jakarta-Cirebon-Yogya-Malang.

2.2 Kerangka Pemikiran

Penyusunan skripsi dengan ruang lingkup penyelesaian masalah ini didasarkan atas pola pikir sebagai berikut : (Sumber : Konsep Six Sigma)

(19)

Kerangka pemikiran ini menekankan pada integrasi kelima langkah pemecahan masalah, yaitu Define, Measure, Analyse, Improve, dan Control secara bertahap dan menyeluruh. Integrasi kelima langkah penyelesaian masalah tersebut harus mengikutsertakan aspek umpan balik (feed back) didalamnya.

Tahap Define dapat dikategorikan sebagai tahap identifikasi terhadap objek yang akan dikaji. Identifikasi terhadap objek kajian mencakup identifikasi input, identifikasi proses, dan identifikasi output. Identifikasi terhadap objek kajian dilakukan dalam rangka menemukan fokus permasalahan yang dinilai penting untuk diselesaikan.

Tahap Measure dan Analyse dikategorikan sebagai tahap karakterisasi. Karakterisasi dilakukan terhadap situasi dan kondisi permasalahan yang aktual. Tahap karakterisasi tersebut mengacu pada hal-hal berikut, yaitu :

• Kemampuan variabel-variabel terkait untuk dikuantifikasi.

• Hubungan atau korelasi antara variabel input dan variabel proses terhadap variabel output.

• Batasan-batasan tertentu yang harus dipenuhi dalam permasalahan.

Tahap Improve dan Control dikategorikan sebagai tahap optimisasi. Optimisasi diawali dengan melakukan pemilihan terhadap suatu pendekatan yang tepat untuk digunakan agar penyelesaian masalah yang dihadapi dapat optimal atau bahkan maksimal. Penekanan tahap optimisasi terletak pada pengembangan proses dan pengendalian terhadap input-input yang masuk supaya dapat menghasilkan suatu output yang baik.

Gambar

Gambar 2.1  Struktur dan Sistem Notasi Dynamic Programming
Gambar 2.3  Hubungan Status Input dengan Tahap Keputusan
Tabel 2.2 Perhitungan Dynamic Programming (Tahap 4)
Tabel 2.4 Perhitungan Dynamic Programming (Tahap 2)  Y 2 P 2 (X 2 ) + f 3 *(Y 3 ) f 2 *(Y 2 ) X 2 *     X 2  = 0  1  2  3  4        0 0 - - - - 0 0  1 3 2 - - - 3 0  2 7 5 5 - - 7 0  3 10 9 8 8  - 10 0  4 12 12 12 11 11 12  0,1,2
+4

Referensi

Dokumen terkait

bahwa dalam rangka meningkatkan kualitas sumber daya Pegawai Aparatur Sipil Negara sesuai dengan kompetensi keilmuan dan keahlian yang diperlukan Pemerintah Kota Batu,

Kepada Bapak Maryono yang membantu proses penerimaan kerja praktek penulis, Bapak Rizza Ghozali dari Candal produksi IIB yang telah membimbing kami dan meberikan

Dalam sistem akuntansi pembelian bahan baku, fungsi gudang bertanggung jawab untuk mengajukan permintaan pembelian bahan baku kepada fungsi pembelian sesuai dengan

Klausula eksonerasi menurut Undang-Undang Perlindungan Konsumen dilarang (pasal 18 Undang-Undang Nomor 8 Tahun 1999 tentang Perlindungan Konsumen). Pencantuman

Setiap individu dalam populasi akan mengalami perubahan genetik melalui mutasi dan kawin silang untuk membentuk individu baru dengan nilai ketahanan yang baru

Ilmu Pengetahuan Alam (IPA) dapat dipandang sebagai produk dan sebagai proses. Secara definisi, IPA sebagai produk adalah hasil temuan-temuan para ahli saintis,

Tabel 9 Distribusi frekuensi Responden Berdasarkan Perbedaan Perubahan Berat Badan Pada Ibu yang Menyusui dan Tidak Menyusui ASI Eksklusif di Desa Ngudirejo Kecamatan

Pengujian kekerasan dilakukan dengan metode Vickers skala mikro untuk sampel hasil sintesis, hasil penempaan dan pengerolan paduan ZrNbMoGe pada posisi di dalam