MAKALAH
DIAJUKAN UNTUK MEMENUHI SALAH SATU TUGAS MATA KULIAH MODEL STOKASTIK
OLEH IBU NOVA INDAH SARAGIH, S.T., M.T.
Oleh:
Kelompok 2
Mega 0514104002
Veronika Br Marpaung 0514104004
Satya Rochman Sukmana 0514104006
Danar Sri A 0514104010
David Pardamean 0514104012
1. Persoalan dapat dibagi menjadi beberapa tahap (stage), yang pada setiap tahap hanya
diambil satu keputusan
2. Masing-masing tahap terdiri dari sejumlah status (state) yang berhubungan dengan
tahap tersebut. Secara umum, status merupakan bermacam kemungkinan masukan yang
ada pada tahap tersebut.
3. Hasil dari keputusan yang diambil pada setiap tahap ditransformasikan dari status yang
bersangkutan ke status berikutnya pada tahap berikutnya.
4. Ongkos (cost) pada suatu tahap meningkat secara teratur (steadily) dengan
bertambahnya jumlah tahapan.
5. Ongkos pada suatu tahap bergantung pada ongkos tahap-tahap yang sudah berjalan dan
ongkos pada tahap tersebut.
6. Keputusan terbaik pada suatu tahap bersifat independen terhadap keputusan yang
dilakukan pada tahap sebelumnya.
7. Adanya hubungan rekursif yang mengidentifikasikan keputusan terbaik untuk setiap
status pada tahap k memberikan keputusan terbaik untuk setiap status pada tahap k + 1.
8. Prinsip optimalitas berlaku pada persoalan tersebut.
Terdapat dua solusi pendekatan programa dinamis, yaitu pendekatan maju (forward atau up-
down) dan pendekatan mundur (backward atau bottom-up).
- Program dinamis maju.
Program dinamis bergerak mulai dari tahap 1, terus maju ke tahap 2, 3, dan seterusnya
sampai tahap n. Runtunan peubah keputusan adalah x1, x2, …, xn.
- Program dinamis mundur.
Program dinamis bergerak mulai dari tahap n, terus mundur ke tahap n – 1, n – 2, dan
seterusnya sampai tahap 1. Runtunan peubah keputusan adalah xn, xn-1, …, x1.
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 masuk ke suatu tahap disebut status input,
sedangkan arus informasi yang keluar dari suatu tahap diseebut stats 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 dari tahap keputusan
sebelumnya, yaitu tahap keputusan n. Sedangkan status output dari tahao keputusan n akan
menjadi status input untuk tahap kepututsan berikutnya, yaitu tahap keputusan n-1.
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 dikenalkan 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 keputusan yang lain dalam Dynamic Programming
diformulasikan. Selain itu fingsi transformasi juga menyatakan tentang hubungan fungsional
nilai status pada setiaptahap keputusan. Hubngan status dalam tahap keputusan yang berurutan
bersifat berulang, artinya jika terdapat tahap keputusan n dalam hubungannya dengan thap
keputusan n-1 maka perhitungan untuk nilai status n-1 menggunakan nilai status n dari
keputusan pada tahap.
kecil membuat sumber permasalahan dalam rangkaian proses masalah tersebut menjadi
sensitivitasi terdapat pada setiap variabel status (state) maupun pada variabel yang ada
ukuran masalah yang tidak selalu tetap dengan melakukan perhitungan satu per satu
B. Kekurangan Dynamic Programming
Disamping memiliki kelebihan, Dynamic Programming juga memiliki beberapa
kekurangan, diantaranya :
Penggunaan Dynamic Programming jjika tidak dilakukan secara tepat, akan
mengakibatkan ketidakefisienan biata 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.
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 memory komputer serta menambah lama
waktu perhiutngan.
Dari study kasus tersebut didapatkan salah satu kemungkinan jalur yang
paling optimum dengan jalur urutan kota di mulai dari kota A, di lanjutkan
menuju ke kota E, dilanjutkan menuju ke kota F, dilanjutkan menuju ke kota
C, dilanjutkan menuju ke kota D, dilanjutkan kembali menuju ke kota B,
lalu yang terakhir kembali ke kota A. Tentunya hasil tersebut dengan
mempertimbangkan jarak dari masing-masing kota hingga menghasilkan
kombinasi urutan kota dengan jarak yang optimum. Perhatikan gambar
dibawah ini.
CONTOH SOAL DYNAMIC PROGRAMMING
1. Contoh kasus dengan penyelesaian menggunakan metode Dynamic Programming.
Jenis kotak yang akan dipilih untuk di masukkan ke kotak yang besar:
b. Membagi lima kotak di atas sehingga terlihat seperti pada gambar berikut:
c. Selanjutnya membagi lagi kotak yang di atas sehingga menbentuk seperti yang di
bawah:
d. Mengisi kotak diatas sesuai kotak yang sudah digabungkan dengan bentuk seperti di bawah.
Anggaplah kotak di bawah adalah kotak G .
Luas kotak G : 7m x 4m = 28
e. Selanjutnya kotak yang belum terisi di atas dibagi lagi sehingga terbentuk seperti
pada gambar berikut.
f. Kotak yang kosong di atas diisi kotak G seperti terlihat pada kotak di bawah
g. Kotak yang masih kosong di isi dengan kotak yang mungkin masuk pada kotak di
atas. Kotak yang mungkin bisa masuk pada kotak di atas adalah kotak C. sehingga
dapat dilihat seperti pada gambar berikut.
h. Kotak di atas tidak dapat lagi di isi kotak , maka kita dapat menghitung menghitung
jumlah kotak yang terisi pada kotak di atas yaitu 37. 36 diantaranya kotak B dan
sisanya kotak C. Dan sisanya dapat dihitung sebagai berikut:
Sisa Luas kotak = Luas I + Luas II
= (4 x 1) + (3 x3)
=4+9
= 13 m2
Jadi, kesimpulannya Metode Dynamic Programming lebih optimal
7
2 5
1
2 4 3 4
6 8 3
6
4
1 3 2 6 3 10
3 9 4
4
3 1
4
3
4 7
5
7
2 5
1
2 4 3 4
6 8 3
6
4
1 3 2 6 3 10
3 9 4
4
3 1
4
3
4 7
5
Tahap 2
7
2 5
1
2 4 3 4
6 8 3
6
4
1 3 2 6 3 10
3 9 4
4
3 1
4
3
4 7
5
Tahap 3
7
2 5
1
2 4 3 4
6 8 3
6
4
1 3 2 6 3 10
3 9 4
4
3 1
4
3
4 7
5
Tahap 4
7
2 5
1
2 4 3 4
6 8 3
6
4
1 3 2 6 3 10
3 9 4
4
3 1
4
3
4 7
5
SOLUSI
CONTOH SOAL – Capital Budgeting
SOAL :
Sebuah perusahaan berencana akan mengembangkan usaha (proyek) melalui ketiga buah
pabrik (plant) yang dimilikinya. Setiap pabrik diminta mengirimkan proposal (boleh lebih dari
satu) ke perusahaan untuk proyek yang akan dikembangkan. Setiap proposal memuat total
biaya yang dibutuhkan (c) dan total keuntungan (revenue) yang akan diperoleh (R) dari
pengembangan usaha itu. Perusahaan menganggarkan Rp 5 milyar untuk alokasi dana bagi
ketiga pabriknya itu.
Tabel berikut meringkaskan nilai c dan R untuk masing-masing proposal proyek. Proposal
proyek bernilai-nol sengaja dicantumkan yang berarti tidak ada alokasi dana yang diberikan
untuk setiap pabrik. Tujuan Perusahaan adalah memperoleh keuntungan yang maksimum dari
pengalokasian dana sebesar Rp 5 milyar tersebut. Selesaikan persoalan ini dengan program
dinamis.
Misalkan:
Rk(pk) = keuntungan dari alternatif pk pada tahap k
fk(xk) = keuntungan optimal dari tahap 1, 2, …, dan k yang diberikan oleh status xk
JAWAB :
Tahap (k) adalah proses mengalokasikan dana untuk setiap pabrik (ada 3 tahap, tiap
pabrik mendefinisikan sebuah tahap).
Status (xk) menyatakan jumlah modal yang dialokasikan pada pada setiap tahap (namun
terikat bersama semua tahap lainnya).
Alternatif (p) menyatakan proposal proyek yang diusulkan setiap pabrik. Pabrik 1, 2,
dan 3 masing-masing memiliki 3, 4 dan 2 alternatif proposal.
Tahap 1
Tahap 2
Tahap 3
SOLUSI
BAB III
PENUTUP
3.1 Kesimpulan
Pemrograman dinamis merupakan suatu teknik analisa kuantitatif untuk
membuat tahapan keputusan yang saling berhubungan. Teknik ini menghasilkan
prosedur yang sistematis untuk mencari keputusan dengan kombinasi yang optimal.
Pemrograman dinamis membagi permasalahan menjadi beberapa tahap keputusan,
dimana hasil keputusan dari satu tahap akan mempengaruhi keputusan dari tiap-tiap
tahapan selanjutnya.
Dynamic programming dapat didefinisikan juga sebagai suatu pendekatan
matematik yang memiliki prosedure 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.
DAFTAR PUSTAKA
- http://dokumen.tips/documents/metode-greedy-dan-dynamic-programming.html