Dynamic Programming. Pemrograman Dinamis

dokumen-dokumen yang mirip
BAB 1 PENDAHULUAN. 1.1 Latar Belakang

MENENTUKAN LINTASAN TERPENDEK SUATU GRAF BERBOBOT DENGAN PENDEKATAN PEMROGRAMAN DINAMIS. Oleh Novia Suhraeni 1, Asrul Sani 2, Mukhsar 3 ABSTRACT

BAB 1 PENDAHULUAN. barang, jaringan jalan raya, atau dalam masalah komputasi yaitu jaringan penjadwalan.

MODUL I PROGRAM DINAMIS

Lecture 5 : Dynamic Programming (Programa Dinamis) Hanna Lestari, ST, M.Eng

TIN102 - Pengantar Teknik Industri Materi #10 Ganjil 2015/2016 TIN102 PENGANTAR TEKNIK INDUSTRI

Integer Programming (Pemrograman Bulat)

BAB 2 LANDASAN TEORI

II TINJAUAN PUSTAKA 2.1 Graf Definisi 1 (Graf, Graf Berarah dan Graf Takberarah) 2.2 Linear Programming

Lecture 5 : Dynamic Programming (Programa Dinamis) Hanna Lestari, ST, M.Eng

Program Dinamis (dynamic programming):

Program Dinamis (Dynamic Programming)

Program Dinamis. Oleh: Fitri Yulianti

Program Dinamik (Dynamic Programming) Riset Operasi TIP FTP UB

BAB III ALGORITMA GREEDY DAN PROGRAM DINAMIS

BAB I PENDAHULUAN 1.1 Latar Belakang

Penerapan Dynamic Programming pada sistem GPS (Global Positioning System)

BAB 1 PENDAHULUAN. tempat tujuan berikutnya dari sebuah kendaraan pengangkut baik pengiriman melalui

OPERATION RESEARCH-1

BAB 2 LANDASAN TEORI

BAB 1 PENDAHULUAN. transportasi yang harus dikeluarkan dalam proses pendistribusian.

Penentuan Lintasan Terbaik Dengan Algoritma Dynamic Programming Pada Fitur Get Driving Directions Google Maps

BAB I PENDAHULUAN UKDW. dalam kehidupan kita sehari-hari, terutama bagi para pengguna sarana

BAB 1 PENDAHULUAN. 1.1 Pendahuluan

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 2 LANDASAN TEORI

Oleh : CAHYA GUNAWAN JURUSAN SISTEM INFORMASI FAKULTAS TEKNIK DAN ILMU KOMPUTER UNIVERSITAS KOMPUTER INDONESIA BANDUNG 2012

OPTIMASI RUTE PERJALANAN AMBULANCE MENGGUNAKAN ALGORITMA A-STAR. Marhaendro Bayu Setyawan

Optimasi Jaringan. Masalah Optimasi Jaringan Model Optimasi Jaringan Penyelesaian Optimasi Jaringan dengan Simpleks

Design and Analysis Algorithm. Ahmad Afif Supianto, S.Si., M.Kom. Pertemuan 09

PROGRAM DINAMIS UNTUK PENENTUAN LINTASAN TERPENDEK DENGAN PENDEKATAN ALGORITMA FLOYD-WARSHALL

UKDW BAB 1 PENDAHULUAN Latar Belakang Masalah

I PENDAHULUAN II LANDASAN TEORI

Program Dinamis (Dynamic Programming)

BAB II TINJAUAN PUSTAKA

BAB 1 PENDAHULUAN. dapat menyelesaikan masalah maka perlu dirumuskan terlebih dahulu langkahlangkah

LAPORAN RESMI MODUL II DYNAMIC PROGRAMMING

SATUAN ACARA PERKULIAHAN UNIVERSITAS GUNADARMA

APLIKASI PROGRAM INTEGER PADA PERUMAHAN BUMI SERGAI DI SEI RAMPAH

Pengantar Riset Operasi. Riset Operasi Minggu 1 (pertemuan 1) ARDANESWARI D.P.C., STP, MP

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 2 LANDASAN TEORI. 2.1 Program Dinamik

PENENTUAN RUTE DISTRIBUSI LPG DENGAN PENDEKATAN MODEL MATEMATIS

Model Jaringan. Ahmad Sabri, MSi, Riset Operasional 2, Universitas Gunadarma

PENERAPAN PROGRAM DINAMIS UNTUK MENENTUKAN JALUR PERJALANAN YANG OPTIMUM DENGAN BANTUAN SOFTWARE WINQSB

NETWORK (Analisa Jaringan)

BAB 3 METODOLOGI PENELITIAN

1. PENDAHULUAN 1.1 Latar Belakang

TENTUKAN MODEL MATEMATISNYA!

Penentuan Rute Terbaik pada Permainan Taxi Rider

SISTEM PENJADWALAN BAGI TEKNISI PEMELIHARAAN JARINGAN LISTRIK DISTRIBUSI UNTUK MEMINIMALISASI BIAYA

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI

PENENTUAN RUTE TERPENDEK MENUJU KAMPUS MENGGUNAKAN ALGORITMA DYNAMIC PROGRAMMING

Bab II Tinjauan Pustaka

Penerapan Pemrograman Dinamis dalam Perencanaan Produksi

BAB 2 LANDASAN TEORI

BAB I PENDAHULUAN. kebutuhan akan informasi. Secara umum gudang membutuhkan produk handling

Model Arus Jaringan. Riset Operasi TIP FTP UB Mas ud Effendi

BAB III ALGORITMA BRANCH AND BOUND. Algoritma Branch and Bound merupakan metode pencarian di dalam ruang

BAB 1 PENDAHULUAN. 1.1 Pendahuluan

BAB I PENDAHULUAN 1.1 LATAR BELAKANG

BAB 1 PENDAHULUAN. dari ekonomi global yang melanda hampir negara-negara di Amerika dan Asia. Hal ini

BAB I PENDAHULUAN. menarik untuk dikunjungi. Daerah Kabupaten Kulon Progo yang letaknya sangat

BAB I PENDAHULUAN 1.1. Latar Belakang

BAB 1 PENDAHULUAN 1.1 LATAR BELAKANG

BAB III METODOLOGI PENELITIAN

BAB I PENDAHULUAN 1.1. Latar Belakang dan Permasalahan

Implementasi Pemrograman Dinamis dalam Pencarian Solusi Permainan Menara Hanoi

BAB I PENDAHULUAN. Di tengah masyarakat dengan aktivitas yang tinggi, mobilitas menjadi hal yang penting.

BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah

BAB I PENDAHULUAN 1.1 LATAR BELAKANG

DAFTAR ISI... HALAMAN JUDUL... HALAMAN PERSETUJUAN... LEMBAR PERNYATAAN... HALAMAN PERSEMBAHAN... HALAMAN MOTTO... KATA PENGANTAR... DAFTAR TABEL...

BAB I PENDAHULUAN. 1.1 Latar Belakang Masalah

BAB I PENDAHULUAN Latar Belakang Masalah

12/15/2014. Apa yang dimaksud dengan Pemrograman Bulat? Solusi yang didapat optimal, tetapi mungkin tidak integer.

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB 1 PENDAHULUAN. Universitas Sumatera Utara

ANALISA PEMILIHAN RUTE JALAN DARI JALAN SEI PADANG SAMPAI PUSAT KOTA DENGAN ALGORITMA FLOYD WARSHALL DAN PROGRAM MAP INFO SEBAGAI TAMPILAN

A N A L I S I S K E B I J A K A N P E N A N G G U L A N G A N K E M I S K I N A N K A B U P A T E N K U T A I K A R T A N E G A R A

Program Dinamis Sebagai Algoritma Dalam Link State Routing Protocol

PENYELESAIAN MASALAH PENGIRIMAN PAKET KILAT UNTUK JENIS NEXT-DAY SERVICE DENGAN MENGGUNAKAN TEKNIK PEMBANGKITAN KOLOM. Oleh: WULAN ANGGRAENI G

BAB I. MASALAH TRANSPORTASI KHUSUS

Pencarian Lintasan Terpendek Jalur Pendakian Gunung dengan Program Dinamis

BAB I PENDAHULUAN. yang dikemukakan oleh George Dantzig pada tahun Linear Programming (LP) adalah perencanaan aktivitas-aktivitas untuk

BAB 1 PENDAHULUAN. 1.1 Latar Belakang Masalah

Penelitian Operasional II Programa Dinamik 1 1. PROGRAM DINAMIK

Pemanfaatan Algoritma Program Dinamis dalam Pendistribusian Barang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB I PENDAHULUAN Latar Belakang Masalah

ALGORITMA PENCARIAN. 1. Iterative-Deepening Depth-First Search (IDS) Nama : Gede Noverdi Indra Wirawan Nim : Kelas : VI A

BAB I PENDAHULUAN. pada sektor masyarakat meluas dengan cepat[4]. menentukan tingkat kegiatan-kegiatan yang akan dilakukan, dimana masingmasing

PENDEKATAN ALGORITMA PEMROGRAMAN DINAMIK DALAM MENYELESAIKAN PERSOALAN KNAPSACK 0/1 SKRIPSI SRI RAHAYU

Matematika Bisnis (Linear Programming-Metode Grafik Minimisasi) Dosen Febriyanto, SE, MM.

Pengantar Integer Programming

BAB 2 LANDASAN TEORI

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 2 LANDASAN TEORI

Transkripsi:

Pemrograman Dinamis 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 tahapan keputusan, dimana hasil keputusan dari satu tahap akan mempengaruhi keputusan dari tiap tiap tahapan selanjutnya. Berbeda dengan linear programming, dalam pemrograman dinamis tidak ada formulasi matematis standar. Tetapi, pemrograman dinamis adalah sebuah pendekatan umum untuk pemecahan masalah, dan perhitungan yang digunakan harus dikembangkan agar sesuai dengan tiaptiap situasi tertentu. Oleh karenanya, diperlukan suatu kepandaian dan pemahaman pada struktur umum permasalahan untuk mengetahui kapan dan bagaimana suatu permasalahan harus dipecahkan dengan pemrograman dinamis. Ada 2 perbedaan mendasar antara pemrograman dinamis dan linear programming. Pertama, tidak ada algoritma (seperti metode simplex) yang bisa diprogramkan untuk memecahkan semua permasalahan. Sebaliknya, pemrograman dinamis adalah teknik yang mengarahkan kita untuk memecah masalah yang sulit menjadi tahapan dari beberapa masalah yang lebih mudah, yang kemudian dievaluasi berdasarkan tahapan. Kedua, linear programming adalah suatu metode yang menghasilkan solusi satu tahap (single stage solution) atau satu periode waktu. Pemrograman dinamis mempunyai kemampuan untuk mencari solusi optimal dari suatu permasalahan menjadi beberapa permasalahan dalam satuan waktu yang lebih kecil dan memecahkan tiap permasalahan tersebut dengan optimal (misal permasalahan dengan jangka waktu satu tahun dapat dibagi menjadi 12 permasalahan dengan jangka waktu 1 bulan). Jadi pemrograman dinamis menggunakan pendekatan banyak tahap (multistage). Pemecahan masalah dengan menggunakan pemrograman dinamis mempunyai 4 tahapan: 1. Memecah permasalahan asli (Original Problem) menjadi bagian permasalahan (Subproblem) yang juga disebut sebagai tahapan (Stage), dengan aturan keputusan di tiap2 tahapan 2. Memecahkan tahapan terakhir dari permasalahan dengan semua kondisi dan keadaan yang memungkinkan 3. Bekerja mundur dari tahap terakhir, dan memecahkan tiap tahap. Hal ini dikerjakan dengan mencari keputusan optimal dari tahap tersebut sampai dengan tahap terakhir

4. Solusi optimal dari permasalahan didapatkan jika semua tahap sudah terpecahkan Suatu contoh umum dari penggunaan pemrograman dinamis adalah pencarian rute terpendek, berikut adalah contoh pemecahan masalah rute terpendek. Permasalahan Rute Terpendek Agus akan melakukan perjalanan dari Jakarta menuju Bandung, dengan melewati kota/tempat seperti terlihat di peta perjalanan Gambar 1. Tanda bulatan (node) mewakili kota, tanda panah (arc ) mewakili jalan raya antar kota/tempat, jarak antar kota tertulis di tanda panah. Gambar 1. Peta Perjalanan Langkah 1: Tahap pertama adalah membagi permasalahan menjadi subproblem. Gambar 2 menunjukkan tahapan dalam problem ini. Dalam pemrograman dinamis, biasanya dimulai dari bagian terakhir problem, sebagai tahap 1, dan bekerja mundur sampai dengan permulaan problem atau jaringan. Tabel 1 menunjukkan jarak arc antar tahapan. 2

Stage 3 Stage 2 Stage 1 Gambar 2. Tahapan Pencarian Rute Terpendek Tabel 1. Jarak Tiap Arc Stage Arc Jarak 1 5 7 14 6 7 2 4 5 10 3 5 12 2 3 6 6 2 5 4 2 6 10 1 4 4 3 1 3 5 1 2 2 Langkah 2: Pada langkah berikut, kita memecahkan stage 1, bagian terakhir dari jaringan. Biasanya bagian ini mudah dilakukan. Kita cari jalur terpendek ke akhir jaringan, dalam problem ini node 7. Pada tahap 1, jalur terpendek hanya terdiri dari node 5 dan node 6 ke node 7. Kita gambarkan jarak minimum tersebut dalam kotak di node awal di tahap 1, yaitu node 5 dan node 6. 3

Gambar 3. Solusi Stage 1, One Stage Problem Stage 1 Node Awal Jarak Terpendek ke Node 7 Arc dalam Jalur 5 14 5 7 6 2 6 7 Langkah 3: Solusi stage 2 dapat dilihat di gambar 4. Pada node 4, jarak terpendek ke node 7 adalah arc 4 5 dan 5 7 dengan jarak total 14. Pada node 3, jalur terpendek adalah arc 3 6 dan 6 7 dengan jarak minimum 8. Pada node 2, jalur terpendek adalah 2 6 dan 6 7 dengan jarak minimum 12. Gambar 4. Solusi Stage 2, Two Stage Problem 4

Stage 2 Node Awal Jarak Terpendek ke Node 7 Arc dalam Jalur 4 24 4 5 5 7 3 8 3 6 6 7 2 12 2 6 6 7 Untuk mendapatkan solusi optimal pada tiap tiap tahap, yang harus kita perhitungkan adalah arc ke tahap berikutnya dan solusi optimal dari tahap berikutnya. Pada stage 3, kita hanya perlu memperhitungkan 3 arc yan mengarah ke stage 2 (1 2, 1 3, dan 1 4) dan hasil optimal di stage 2, yang telah dicatat dalam tabel sebelumnya. Solusi stage 3 terlihat pada gambar 5 Gambar 5. Solusi Stage 3, Three Stage Problem Stage 3 Node Awal Jarak Terpendek ke Node 7 Arc dalam Jalur 1 13 1 3 3 6 6 7 Solusi akhir dari Problem tersebut adalah seperti terlihat di tabel diatas, jalur yang ditempuh adalah 1 3, 3 6, dan 6 7 seperti terlihat di gambar 6, dengan panah dicetak tebal. 5

Gambar 6. Solusi Akhir Jadi rute terpendek yang dapat ditempuh oleh Agus adalah Jakarta Ciawi Puncak Bandung 6