PENYELESAIAN BOUNDED KNAPSACK PROBLEM MENGGUNAKAN DYNAMIC PROGRAMMING (Studi Kasus: CV. Mulia Abadi)
|
|
|
- Widyawati Sugiarto
- 9 tahun lalu
- Tontonan:
Transkripsi
1 Jurnal Informatika Mulawarman Vol. 8 No. 2 Edisi Juli PENYELESAIAN BOUNDED KNAPSACK PROBLEM MENGGUNAKAN DYNAMIC PROGRAMMING (Studi Kasus: CV. Mulia Abadi) Sandi Kosasi Program Studi Teknik Informatika Sekolah Tinggi Manajemen Informatika dan Komputer Pontianak Jln. Merdeka No. 372 Pontianak, Kalimantan Barat [email protected] ABSTRACT Knapsack problem merupakan masalah optimasi kombinasi dengan tujuan memaksimalkan total nilai dari barang-barang yang dimasukkan ke dalam knapsack atau suatu wadah tanpa melewati kapasitasnya. Penelitian menekankan kepada bounded knapsack problem yang merupakan pengembangan dari 0-1 knapsack problem menggunakan algoritma dynamic programming. Penelitian berbentuk studi kasus dengan metode quasi eksperimental. Pengumpulan data menggunakan wawancara dan observasi. Untuk analisis dan perancangannya menggunakan metode OOAD (Object-Oriented Analysis and Design) dan pengujiannya menggunakan model V. Aplikasi ini dikembangkan dengan bahasa pemrograman Java dengan kemampuan menentukan nilai prioritas tertinggi berdasarkan daftar barang dan harga yang optimal sesuai dengan anggaran belanja. Aplikasi ini mudah digunakan oleh pembeli, mulai dari memasukan kombinasi dari sejumlah daftar barang belanjaan yang dibutuhkan dengan batasan dari jumlah anggaran yang tersedia. Kata Kunci: knapsack problem, 0-1 knapsack probelm, dynamic programming, object-oriented analysis and design, V Model PENDAHULUAN CV. Mulia Abadi merupakan sebuah perusahaan yang menjual berbagai macam makanan dan barang kelontong untuk kawasan masyarakat di kota Pontianak dan sekitarnya. Dari setiap kali transaksi jual beli, kecenderungan yang terjadi adalah para pembeli mengalami kesulitan menentukan kombinasi yang optimal mengenai banyaknya barang yang akan dibeli namun dengan anggaran belanja yang terbatas. Selama ini proses penentuan kombinasi optimal tersebut dilakukan tanpa menggunakan komputasi dan dengan terbatasnya waktu dan tenaga sehingga hanya menghasilkan keputusan yang mendekati nilai optimal. Kenyataan ini jelas dapat merugikan kedua belah pihak, dari sisi pembeli dan penjual. Persoalan dalam menentukan kombinasi barang yang akan dipilih yang dapat memberikan hasil yang maksimal dengan tidak melebihi anggaran belanja adalah merupakan inti dari knapsack problem. Dimana tiap barang memiliki nilai harga, nilai prioritas, dan jumlah satuan untuk tiap barang yang tersedia. Penyelesaian knapsack problem menggunakan dynamic programming dimana memiliki tahapan keputusan yang saling berhubungan untuk mencari solusi dengan kombinasi yang optimal [4]. Dynamic programming merupakan metode pemecahan masalah dengan cara menguraikan solusi menjadi sekumpulan langkah (step) atau tahapan (stage) sedemikian sehingga solusi dari persoalan dapat dipandang dari serangkaian keputusan yang saling berkaitan [6]. Dynamic programming akan bekerja dengan memecahkan suatu masalah menjadi beberapa tahapan atau sub masalah dan menyelesaikannya satu persatu, mulai dari yang paling sederhana dan menggunakan jawaban dari tahapan tersebut untuk menyelesaikan tahapan berikutnya yang lebih rumit. Jenis dari knapsack problem yang digunakan adalah Bounded Knapsack Problem. Bounded knapsack problem ini merupakan pengembangan dari 0-1 knapsack problem, dimana jumlah barang untuk tiap jenis item barang yang akan dipilih terbatas jumlahnya, bukan merupakan bilangan negatif, dan tiap barang yang akan dipilih haruslah tetap dalam keadaan utuh, bukan merupakan fraksi atau sebagian dari kesatuan barang tersebut [6]. Aplikasi ini dapat membantu pembeli, dimana mereka dapat lebih mudah dan efektif dalam menemukan solusi untuk menentukan setiap jenis dan item barang yang dapat dibeli. Melalui kombinasi yang optimal dari setiap jenis dan item barang dengan jumlah satuannya yang memiliki jumlah nilai prioritas tertinggi, dan dengan jumlah harga barang tidak melewati jumlah anggaran belanja yang tersedia. Semakin besar data yang digunakan, maka waktu yang dibutuhkan algoritma untuk menyelesaikan
2 Jurnal Informatika Mulawarman Vol. 8 No. 2 Edisi Juli juga semakin lama. Pengujiannya menggunakan cek solusi knapsack problem, lama waktu proses, analisis kompleksitas ruang dan waktu dan analisis efisiensi dengan algoritma rekursif. TINJAUAN PUSTAKA Knapsack Problem Knapsack problem merupakan masalah optimasi kombinasi dengan tujuan untuk memaksimalkan total nilai dari barang-barang yang dimasukkan ke dalam knapsack atau suatu wadah tanpa melewati kapasitas wadah tersebut. Knapsack problem atau rucksack problem adalah masalah optimasi kombinatorial. Namanya berasal dari masalah maksimasi untuk pilihan paling tepat dari barang-barang yang akan dibawa dalam sebuah tas pada sebuah perjalanan [4]. Sejumlah barang yang tersedia ini, masing-masing memiliki berat dan nilai, yang menentukan jumlah barang yang dapat dibawa sehingga total berat tidak melebihi kapasitas tas dan dengan total nilai yang sebesar mungkin. Knapsack problem dapat didefinisikan sebagai sebagai sebuah perumpamaan dari knapsack problem dengan set item N, terdiri dari n item j dengan keuntungan pj dan berat wj, dan nilai kapasitas c. Kemudian tujuannya adalah untuk memilih sebuah bagian dari N dimana total keuntungan dari item yang dipilih dimaksimalkan dan total berat tidak melebihi c. Selanjutnya 0-1 knapsack problem adalah masalah dalam memilih sebuah bagian dari n buah barang i yang memiliki jumlah keuntungan maksimal dengan jumlah berat barang tidak melebihi kapasitas c. Permasalahan ini dapat dirumuskan sebagai berikut [4]: Maksimalkan (2.1) Batasan (2.2) xj {0,1} j = 1,..., n pj, wj, xj, dan c merupakan bilangan bulat positif Keterangan : n = jumlah barang j = nama barang pj = profit atau keuntungan barang j xj = jumlah barang j yang dimasukkan ke dalam knapsack wj = berat barang j c = kapasitas maksimal knapsack Penggunaan bounded knapsack problem dimana jumlah barang untuk tiap barang yang tersedia terbatas jumlahnya. Barang-barang yang dimasukkan adalah barang yang berbentuk satuan dan tidak bisa dipecah menjadi beberapa bagian sehingga jika ingin memasukkan barang tersebut, maka satu kesatuan barang harus masuk ke dalam wadah. Dalam masalah ini, anggaran belanja yang dibawa oleh sang pembeli sejumlah U, dimana terdapat n buah barang i berbeda yang dapat dibeli dengan anggaran tersebut. Barang i memiliki harga hi dan nilai prioritas pi. Jika xi adalah jumlah barang i yang akan dibeli dengan anggaran yang tersedia. Tiap i memiliki batas atas bi dan batas bawah 0 (nol). Barang i dapat berulang kali dimasukkan dalam daftar beli hanya jika kedua kondisi berikut dipenuhi, yaitu: Jumlah barang tersebut tidak melebihi jumlah barang yang tersedia dan Barang yang dimasukkan dalam daftar beli tidak melanggar batasan kapasitas. Secara formal, bounded knapsack problem terdiri dari sekelompok barang {1,...,i} dengan jumlah harga barang yang tidak boleh melebihi jumlah uang U, dapat dirumuskan menjadi berikut [4]: Maksimalkan Batasan (2.3) (2.4) dengan i = 1,..., n p i, h i, b i, U, dan adalah bilangan bulat positif Keterangan : U = jumlah uang i = nama barang n = jumlah barang h i = harga barang i p i = nilai prioritas barang i x i = jumlah barang i yang akan dibeli = nilai batas atas barang i b i Dynamic Programming Dynamic programming ialah suatu metode membuat tahapan keputusan yang saling berhubungan untuk mencari solusi dengan kombinasi yang optimal [2]. Kata programming pada istilah dynamic programming tidak memiliki hubungan dengan menulis kode apa pun atau program komputer, melainkan sebuah sinonim untuk optimasi dan memiliki arti sebagai perencanaan atau sebuah metode tabulasi. Dynamic programming adalah strategi untuk membangun masalah optimasi bertingkat, yaitu masalah yang dapat digambarkan dalam bentuk serangkaian tahapan (stage) yang saling mempengaruhi [6]. Dynamic programming merupakan metode untuk menyelesaikan secara efisien masalah pencarian dalam jangkauan luas dan optimasi yang memiliki karakteristik overlapping subproblem dan optimal substructure [2].
3 Jurnal Informatika Mulawarman Vol. 8 No. 2 Edisi Juli Penyelesaian masalah dalam dynamic prorgramming dilakukan secara rekursif yang berarti setiap kali mengambil keputusan harus memperhatikan keadaan yang dihasilkan oleh keputusan optimal dari tahap sebelumnya dan merupakan landasan bagi keputusan optimal pada tahap berikutnya [2]. Prosedur mencari nilai dari penyelesaian optimal dalam bentuk penyelesaian optimal dari submasalah secara rekursif. Pada rekursif akan dilakukan pemanggilan prosedur atau fungsi yang sama. Dalam tiap rekursif, sebuah barang akan dimasukkan atau dikeluarkan dari daftar barang yang akan dibeli. Bounded knapsack problem akan diubah ke bentuk 0-1 knapsack problem yang setara berdasarkan nilai batas atas untuk setiap barang i. Rumus rekursif untuk 0-1 knapsack problem [5]: Keterangan : z = nilai optimal dari fungsi tujuan h = jumlah harga barang maksimal yang diperbolehkan k = barang ke-k hk = harga barang k pk = nilai prioritas barang k Rumus 2.5 dapat dijelaskan sebagai berikut, z(k,h) menunjukan nilai prioritas tertinggi yang didapatkan jika anggaran yang tersedia adalah U dan terdapat sejumlah barang dari 1,..., n. Tujuan dari perhitungan tersebut ialah menemukan sebuah bagian dari n barang yang memiliki jumlah prioritas maksimal atau tertinggi tanpa melebihi nilai U. Pada tiap tahap (misal: k) akan dilakukan proses memasukkan barang ke dalam solusi daftar beli yang disesuaikan dengan status (misal: h) jumlah harga barang yang diperbolehkan atau tersisa setelah memasukkan barang pada tahap sebelumnya, sampai batas anggaran uang maksimumnya. Aturan pertama k = 0, maka hasil perhitungan akan menghasilkan nilai 0, karena berarti tidak ada barang yang dapat dimasukkan ke dalam solusi daftar beli. Pada h = 0, hasil perhitungan juga akan menghasilkan nilai 0, karena berarti jumlah harga barang yang diperbolehkan adalah 0. Pada aturan kedua, Jika harga barang k melebihi jumlah harga barang yang diperbolehkan, maka barang k tidak akan dimasukkan ke dalam solusi daftar beli. Sedangkan pada aturan ketiga jika harga barang k kurang dari atau sama dengan jumlah harga barang yang diperbolehkan, maka barang k memiliki dua kemungkinan, dimasukkan atau tidak dimasukkan ke dalam solusi daftar beli. Ketika memasukkan suatu barang pada tahap k, maka jumlah harga barang yang dapat dibeli sekarang adalah h-hk [5]. Prinsip optimalitas akan diterapkan dalam memakai jumlah harga barang yang tersisa, dengan mengacu pada nilai optimum prioritas dari tahap sebelumnya. Jika dengan memasukkan barang tersebut, jumlah nilai prioritas lebih besar daripada jumlah nilai prioritas tanpa memasukkan barang k, maka keputusan optimalnya adalah memasukkan barang tersebut ke dalam solusi daftar beli. Jika yang terjadi adalah kebalikannya, maka barang k tidak akan dimasukkan ke dalam solusi daftar beli. Dari beberapa kemungkinan solusi yang ada, hanya akan dipilih solusi yang memiliki prioritas yang lebih tinggi. Jika jumlah nilai prioritas pada suatu tahap sama dengan jumlah nilai prioritas tahap sebelumnya, maka akan diprioritaskan untuk menggunakan keputusan optimal pada tahap sebelumnya. Algoritma Dynamic programming yang dibangun menggunakan solusi rekursif berikut [6]: def A(w, v, i,j): if i == 0 or j == 0: return 0 if w[i-1] > j: return A(w, v, i-1, j) if w[i-1] <= j: return max(a(w,v, i-1, j), v[i-1] + A(w,v, i-1, j - w[i-1])) METODE PENELITIAN Penelitian ini berbentuk studi kasus dengan metode quasi eksperimental. Metode pengumpulan data menggunakan wawancara dan observasi. Wawancara dengan sejumlah responden terpilih dengan menggunakan teknik purposive sampling [3]. Respondenya berasal dari pimpinan, manajemen dan staf/karyawan. Metode analisis dan perancangan menggunakan metode OOAD (Object- Oriented Analysis and Design). Untuk tahap analisis, metode ini memeriksa requirement yang harus dipenuhi sebuah sistem dari sudut pandang kelas-kelas dan objek-objek yang ditemui dalam ruang lingkup perusahaan. Sementara tahap desain, metode ini untuk mengarahkan arsitektur software yang didasarkan pada manipulasi objek-objek sistem atau subsistem [1]. Menggunakan pengujian model V dalam menjelaskan hubungan antara setiap langkah dengan tingkat pemenuhan kebutuhan [7]. Semakin menuju ke akhir proses, kebutuhan semakin dipenuhi. Kebutuhan diwakili dengan proses pengujian yang dilakukan setelah pengkodean dilakukan.
4 Jurnal Informatika Mulawarman Vol. 8 No. 2 Edisi Juli HASIL DAN PEMBAHASAN Hasil penelitian ini memperlihatkan sebuah aplikasi yang dibangun dengan menerapkan dynamic programming untuk menyelesaikan knapsack problem pada CV. Mulia Abadi. Model penyelesaian terdiri dari tiga frame yaitu: a. Frame utama merupakan form yang pertama kali dimunculkan saat menjalankan problem solving ini. Pada form utama berisi pilihan menu untuk membuka form barang dan form knapsack problem. b. Frame barang merupakan form dimana pengguna dapat menambahkan data barang baru, mengubah dan menghapus data barang yang telah ada. c. Frame Knapsack Problem merupakan form dimana pengguna dapat memasukkan data untuk masalah knapsack baru. Data masukan yang diperlukan adalah jumlah anggaran belanja yang tersedia dan daftar belanja sementara yang ingin dibeli oleh pembeli. Data daftar belanja sementara yang telah dimasukkan akan ditampilkan oleh tabel data temp. Setelah proses input data temp selesai, pengguna dapat mencari solusi penyelesaian masalah. Karena jenis masalah knapsack problem pada adalah bounded knapsack problem, maka data temp tersebut harus diubah terlebih dahulu menjadi 0-1 knapsack problem oleh Bounded Knapsack kemudian diselesaikan menggunakan dynamic programming pada ZeroOneKnapsack dengan menggunakan dynamic programming. Penyelesaian dynamic programming ini akan ditampilkan pada daftar barang yang disarankan (Gambar 1). Gambar 1. Arsitektur Penyelesaian Knapsack Problem Fungsi utama dari problem solving ini adalah sebagai alat untuk menyelesaikan knapsack problem. Problem solving ini dirancang agar pengguna dapat lebih mudah memasukkan barangbarang yang diinginkan pembeli karena data barang yang dapat dibeli telah dimasukkan ke dalam basis data yang terhubung ke problem solving dan tersedia fungsi untuk mengubah maupun menghapus barang dari daftar barang. Problem solving ini juga menggunakan dynamic programming untuk membantu menyelesaikan masalah bounded knapsack. Metode dynamic programming yang digunakan memiliki beberapa tahap, antara lain: a. Menentukan struktur dari masalah Suatu masalah akan dibagi menjadi beberapa tahap (stage). Tiap tahap terdiri dari sejumlah status (state) yang berhubungan dengan tahap tersebut. Secara umum, status merupakan bermacam kemungkinan solusi pada tahap tersebut. Misalnya terdapat suatu knapsack problem dimana jumlah uang maksimal (U) adalah 800 dan terdapat 5 jenis barang (n), dimana batas atas (bi) atau jumlah untuk tiap jenis barang adalah 1. Tiap barang memiliki nilai prioritas (pi) 2,1,2,3,6 dan harga (hi) 3,2,1,2,8 (dalam ratusan). Inti knapsack problem tersebut ialah menentukan optimasi kombinasi barang dan jumlah satuannya yang memiliki jumlah nilai prioritas tertinggi untuk dibeli dengan jumlah harga barang tidak melewati jumlah uang yang dimiliki pembeli. Total prioritas optimal (z) akan dicari menggunakan dynamic programming. Banyaknya tahap pencarian berdasarkan jumlah harga maksimal dan jumlah satuan barang. Jumlah harga maksimal (h) pada knapsack problem adalah jumlah uang maksimal dibagi 100, karena satuan harga terkecil barang dalam ratusan. Jumlah satuan barang (k) adalah jumlah dari barang (i) dikali batas atas barang (bi). Jadi, nilai h adalah 8 dan jumlah satuan barang (k) adalah 5. Perhitungan dimulai dengan mencari nilai prioritas satuan barang ke-1 lalu dilanjutkan mencari nilai prioritas satuan barang ke-2 dan
5 Jurnal Informatika Mulawarman Vol. 8 No. 2 Edisi Juli seterusnya sampai satuan barang ke-k. Hasil perhitungan total prioritas pada tiap tahap akan dimasukkan ke tabel pengingat dengan ukuran (k,h) (tabel1). Tabel 1. Pengingat Dynamic Programming Sebelum Pencarian Solusi b. Menentukan persamaan rekursif Persamaan rekursif yang digunakan adalah persamaan rekursif 2.5 untuk 0/1 knapsack problem. c. Menghitung nilai dari solusi optimal Pada setiap tahap akan dilakukan perhitungan sesuai fungsi rekursif untuk mencari solusi optimal yang memiliki nilai prioritas tertinggi dari satu atau lebih kemungkinan solusi yang ada. Pencarian solusi optimal tersebut dilakukan dengan memperhatikan keadaan pada tiap tahap dan menggabungkan solusisolusi optimal dari tahap-tahap sebelumnya yang lebih kecil untuk mendapatkan solusisolusi optimal untuk tahap-tahap berikutnya. Jika solusi optimal untuk suatu tahap telah ditemukan maka dilakukan perhitungan untuk tahap berikutnya. Hal ini akan terus dilakukan hingga ditemukan solusi optimal secara keseluruhan untuk masalah sebenarnya. Jika tidak ada barang apapun yang dimasukkan ke dalam daftar solusi atau k = 0, maka nilai optimal pada tahap z(0,h) = 0 (tabel 2). Tabel 2. Pengingat Dynamic Programming Pencarian Solusi pada Baris Pertama Jika jumlah harga barang maksimal atau h = 0, maka nilai optimal pada tahap z (k,0) = 0. Contohnya pada tahap z (1,0) dapat dilihat pada gambar berikut (tabel 3). Tabel 3. Pengingat Dynamic Programming Tahap z(1,0) Jika harga barang melebihi jumlah harga maksimal, maka barang tersebut tidak dapat dibeli dan nilai optimal pada tahap tersebut bernilai z (k-1,h) yang berarti mengambil nilai optimal dari tahap sebelumnya yang tidak memasukkan barang tersebut. Contohnya pada tahap z (1,1), dimana harga barang ke-1 adalah 3 dan jumlah harga maksimal adalah 1. Nilai optimal pada tahap z (1, 1) adalah nilai optimal dari tahap sebelumnya yaitu nilai optimal tahap z (0,1) (tabel 4). Tabel 4. Pengingat Dynamic Programming Tahap z(1,1)
6 Jurnal Informatika Mulawarman Vol. 8 No. 2 Edisi Juli Jika jumlah harga barang maksimal lebih dari atau sama dengan harga barang k, maka akan dilakukan perhitungan untuk mencari solusi optimal z (k,h) = max {z (k-1, h), z (k-1, h hk) + pk}. Contohnya pada tahap z (1,3), perhitungannya sebagai berikut (tabel 5): z (k,h) = max {z (k-1, h), z (k-1, h hk) + pk} z (1,3) = max { z (0, 3), z (0, 3-3 ) + 2} = max { z(0, 3), z (0, 0) + 2} = max {0, 0 + 2} = max {0, 2} = 2 Tabel 5. Pengingat Dynamic Programming Tahap z(1,3) Contoh lainnya pada tahap z(3,4), dynamic programming akan membandingkan nilai optimal antara tidak memasukkan barang tersebut (nilai optimal pada tahap z(2,4)) dengan memasukkan barang tersebut (nilai optimal pada tahap z(2,3) + 2) dan mengambil keputusan berdasarkan nilai optimal tertinggi. Jadi, keputusan terbaik pada tahap z(3,4) adalah memasukkan barang tersebut. Perhitungannya sebagai berikut (tabel 6): z (3,4) = max {z (k-1, h), z (k-1, h hk) + pk} = max {z (3-1, 4), z (3-1, 4-1) + 2} = max {z (2, 4), z (2, 3) + 2} = max {2, 4} = 4 Tabel 6. Pengingat Dynamic Programming Tahap z(3,4) Pencarian nilai solusi optimal akan terus dilakukan hingga tahap z(5,8). Berikut ilustrasi tabel pengingat dynamic programming tahap z(5,8). Tabel 7. Pengingat Dynamic Programming Tahap z(5,8) d. Menentukan keputusan optimal Ilustrasi tabel pengingat berisi kemungkinankemungkinan yang diperoleh untuk tiap jumlah harga maksimal. Pada ilustrasi tabel 7 tersebut, total prioritas optimal yang didapat adalah z(5,8) = 8. Nilai prioritas tertinggi tersebut diambil dari nilai prioritas pada tahap terakhir. Penentuan tahap terakhir berdasarkan pada barang satuan terakhir dengan jumlah harga maksimal. Selanjutnya dilakukan perhitungan untuk menentukan barang-barang yang masuk solusi optimal. Untuk barang ke-k hingga k = 0, jika z(k,h) tidak sama dengan z(k-1,h) maka masukkan barang ke dftbrg(k) = 1. Menggunakan tabel 7, penentuan barangbarang yang masuk solusi dimulai dari barang satuan terakhir yaitu barang ke-5 dengan jumlah harga maksimal 8. Nilai prioritas optimal sebesar 8 pada z(5,8) dibandingkan dengan nilai 8 pada z(4,8). Karena nilainya sama, maka barang ke-5 tidak dimasukkan ke daftar barang solusi dan jumlah harga maksimal tidak berubah. Kemudian
7 Jurnal Informatika Mulawarman Vol. 8 No. 2 Edisi Juli nilai prioritas optimal barang ke-4 sebesar 8 pada z(4,8) dibandingkan dengan nilai 5 pada z(3,8). Karena nilainya berbeda, maka barang ke-4 dimasukkan ke daftar barang solusi. Setelah itu jumlah harga maksimal 8 dikurangkan dengan harga barang ke-4. Untuk perhitungan barang ke-3 bandingkan nilai 5 pada z(3,6) dengan nilai yang berada pada sebaris diatasnya yaitu 3 pada z(2,6). Karena nilainya berbeda, maka barang ke-3 dimasukkan ke daftar barang solusi. Setelah itu jumlah harga maksimal 6 dikurangkan dengan harga barang ke-3. Untuk perhitungan barang ke-2 bandingkan nilai 3 pada z(2,5) dengan nilai 2 pada z(1,5). Karena nilainya berbeda, maka barang ke-2 dimasukkan dan jumlah harga maksimal 5 dikurangkan dengan harga barang ke-2. Selanjutnya bandingkan nilai 2 pada z(1,3) dengan nilai 0 pada z(0,3). Karena nilainya berbeda, maka barang ke 1 dimasukkan ke daftar barang solusi. Dari langkahlangkah perhitungan tersebut diperoleh daftar barang solusi yang terdiri dari 1 barang ke-4, 1 barang ke-3, 1 barang ke-2 dan 1 barang ke-1. Aplikasi ini dikembangkan dengan bahasa Java dan memiliki kemampuan dalam menentukan nilai prioritas tertinggi berdasarkan daftar barang dan harga yang optimal sesuai dengan anggaran belanja. Aplikasi ini memiliki sejumlah form antarmuka yang mudah untuk dapat digunakan oleh pembeli, mulai dari memasukan kombinasi dari sejumlah daftar barang belanjaan yang dibutuhkan dengan batasan dari jumlah anggaran yang tersedia. Aplikasi ini dibangun dengan 2 form utama yaitu form barang dan form knapsack problem CV. Mulia Abadi (gambar 2). Sebagian dari proses aplikasi bounded knapsack problem ini akan ditampilkan dalam beberapa gambar berikut ini (gambar 3-13). Gambar 2. Form Utama Gambar 3. Form Barang
8 Gambar 4. Form Masalah Baru Gambar 8. Form Pilih Satuan Barang Gambar 5. Form Input Barang Gambar 9. Form Nilai Prioritas Barang Gambar 6. Form Edit Atribut Barang Gambar 10. Penambahan Data Barang Gambar 7. Form Kuantitas Barang Gambar 11. Update Data Barang
9 Jurnal Informatika Mulawarman Vol. 8 No. 2 Edisi Juli Gambar 12. Update pesanan Barang [3] Hasibuan, Zainal A. Metodologi Penelitian Pada Bidang Ilmu Komputer Dan Teknologi Informasi, Konsep: Metode Teknik dan Aplikasi, Depok, [4] Kellerer, Hans, Ulrich Pferschy, dan David Pisinger. Knapsack Problems. Springer, Verlag Berlin Heidelberg New York, [5] Richard Bellman, Dynamic Programming, Princeton University Press. [6] Rush D Robinett III, Applied Dynamic Programming for Optimization of Dynamical Systems, Siam [7] Sommerville, Ian. Software Engineering - Ninth Edition, Pearson Education Inc., Massachusetts., Gambar 13. Hasil Cek Solusi KESIMPULAN Hasil penelitian memperlihatkan bahwa penerapan dynamic programming untuk menyelesaikan masalah knapsack problem khususnya jenis bounded knapsack problem dapat memberikan nilai yang positif. Melalui dynamic programming, aplikasi yang dihasilkan dapat memberikan nilai optimasi dari daftar barang yang dapat dibeli dengan ketersediaan anggaran belanja yang ada. Aplikasi ini menyediakan fasilitas untuk menyimpan data barang dan data daftar belanja sementara dari pembeli. Pengguna dapat memasukkan knapsack problem baru dan mengecek keputusan optimal berupa daftar barang yang disarankan sesuai solusi kombinasi barang yang memiliki jumlah nilai prioritas tertinggi dengan sejumlah batasan dari barang yang dijual.. DAFTAR PUSTAKA [1] Bennett, McRobb, dan Farmer. Object Oriented System Analysis And Design Using UML, Edisi Kedua, McGraw Hill, Berkshire, [2] Bhowmik, Biswajit. Dynamic Programming Its Principles, Applications, Strengths, and Limitations, International Journal of Engineering Science and Technology, Volume 2 (9), , India, 2010.
SISTEM PAKAR TES PSIKOMETRI KEPRIBADIAN MANUSIA MENGGUNAKAN METODE FORWARD CHAINING
SISTEM PAKAR TES PSIKOMETRI KEPRIBADIAN MANUSIA MENGGUNAKAN METODE FORWARD CHAINING SANDY KOSASI Jurusan Sistem Informasi, STMIK Pontianak Jalan Merdeka No. 372 Pontianak, Kalimantan Barat [email protected]
PERMASALAHAN OPTIMASI 0-1 KNAPSACK DAN PERBANDINGAN BEBERAPA ALGORITMA PEMECAHANNYA
PERMASALAHAN OPTIMASI 0-1 KNAPSACK DAN PERBANDINGAN BEBERAPA ALGORITMA PEMECAHANNYA Fitriana Passa (13508036) Program Studi Teknik Informatika Institut Teknologi Bandungg Jl. Ganesha 10 Bandung Email:
Pendekatan Maju (Forward) Dynamic Programming Untuk Permasalahan MinMax Knapsack 0/1
Pendekatan Maju (Forward) Dynamic Programming Untuk Permasalahan MinMax Knapsack 0/1 Ani D Rahajoe 1, Arif Arizal 2 1 Jurusan Teknik Informatika, Universitas Bhayangkara, Surabaya. E-mail:[email protected]
BAB III ALGORITMA GREEDY DAN PROGRAM DINAMIS
BAB III ALGORITMA GREEDY DAN PROGRAM DINAMIS 3.1 Algoritma Greedy Algoritma Greedy merupakan metode yang paling populer dalam memecahkan persoalan optimasi. Hanya ada dua macam persoalan optimasi, yaitu
Eksplorasi Algoritma Brute Force, Greedy, dan Dynamic Programming untuk Persoalan Integer Knapsack
Eksplorasi Algoritma Brute Force, Greedy, dan Dynamic Programming untuk Persoalan Integer Knapsack Muhamad Pramana Baharsyah, Sulistyo Unggul Wicaksono 2, Teguh Pamuji 3, Rinaldi Munir 4 Abstrak Laboratorium
BAB I PENDAHULUAN. pada sektor masyarakat meluas dengan cepat[4]. menentukan tingkat kegiatan-kegiatan yang akan dilakukan, dimana masingmasing
BAB I PENDAHULUAN 1.1 Latar Belakang Permasalahan program linier telah ada dan berkembang sejak lama.perumusan masalah program linier beserta penyelesaiannya secara sistematis ditemukan pada tahun 1947
BAB 1 PENDAHULUAN. 1.1 Latar Belakang
BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah dalam menentukan lintasan terpendek di antara titik tertentu dalam suatu graph telah banyak menarik perhatian. Persoalan dirumuskan sebagai kasus khusus dan
Design and Analysis Algorithm. Ahmad Afif Supianto, S.Si., M.Kom. Pertemuan 09
Design and Analysis Algorithm Ahmad Afif Supianto, S.Si., M.Kom Pertemuan 09 Contents 1 2 5 Algoritma Program Dinamis Lintasan Terpendek (Shortest Path) Penganggaran Modal (Capital Budgeting) 1/0 Knapsack
Penentuan Menu Makan dengan Pemrograman Dinamis
Penentuan Menu Makan dengan Pemrograman Dinamis Jordhy Fernando 13515004 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10 Bandung 40132,
Program Dinamis (Dynamic Programming)
Program Dinamis (Dynamic Programming) Bahan Kuliah IF2211 Strategi Algoritma Oleh: Rinaldi Munir Program Studi Teknik Informatika STEI-ITB 1 2 Program Dinamis Program Dinamis (dynamic programming): - metode
PROGRAM STUDI S1 SISTEM KOMPUTER UNIVERSITAS DIPONEGORO. Oky Dwi Nurhayati, ST, MT
PROGRAM STUDI S1 SISTEM KOMPUTER UNIVERSITAS DIPONEGORO Oky Dwi Nurhayati, ST, MT email: [email protected] 1 Program Dinamis (dynamic programming): - metode pemecahan masalah dengan cara menguraikan solusi
Penyelesaian Persoalan Penukaran Uang dengan Program Dinamis
Penyelesaian Persoalan Penukaran Uang dengan Program Dinamis Albert Logianto - 13514046 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10
BAB 2 LANDASAN TEORI. 2.1 Program Dinamik
5 BAB 2 LANDASAN TEORI 2.1 Program Dinamik Pemrograman dinamik adalah suatu teknik matematis yang biasanya digunakan untuk membuat suatu keputusan dari serangkaian keputusan yang saling berkaitan. Pemrograman
Penyelesaian Sum of Subset Problem dengan Dynamic Programming
Penyelesaian Sum of Subset Problem dengan Dynamic Programming Devina Ekawati 13513088 1 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10
BAB 2 LANDASAN TEORI
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
BAB 2 LANDASAN TEORI
BAB 2 LANDASAN TEORI 2.1 Optimasi Menurut Nash dan Sofer (1996), optimasi adalah sarana untuk mengekspresikan model matematika yang bertujuan memecahkan masalah dengan cara terbaik. Untuk tujuan bisnis,
BAB II LANDASAN TEORI
BAB II LANDASAN TEORI Bab ini berisi landasan dan dasar teori yang akan digunakan dalam melakukan analisis, perancangan, dan implementasi tugas akhir yang dilakukan pada bab-bab selanjutnya. 2.1 Bar Steel
EKSPLORASI ALGORITMA BRUTE FORCE, GREEDY DAN PEMROGRAMAN DINAMIS PADA PENYELESAIAN MASALAH 0/1 KNAPSACK
EKSPLORASI ALGORITMA BRUTE FORCE, GREEDY DAN PEMROGRAMAN DINAMIS PADA PENYELESAIAN MASALAH / KNAPSACK Prasetyo Andy Wicaksono - 55 Program Studi T. Inormatika, STEI, Institut Teknologi Bandung Jl. Ganesha
PENYELESAIAN ROBUST KNAPSACK PROBLEM (RKP) MENGGUNAKAN PEMROGRAMAN DINAMIK
PENYELESAIAN ROBUST KNAPSACK PROBLEM (RKP) MENGGUNAKAN PEMROGRAMAN DINAMIK Kinanti Wening Ati, Dhian Widya, Rahmi Rusin Departemen Matematika, Fakultas Matematika dan Ilmu Pengetahuan Alam, Universitas
Berbagai Variasi Teknik Program Dinamis dalam Penyelesaian Masalah
Berbagai Variasi Teknik Program Dinamis dalam Penyelesaian Masalah Afrizal Fikri / 13513004 1 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha
Program Dinamis (Dynamic Programming)
Program Dinamis (Dynamic Programming) Program Dinamis Program Dinamis (dynamic programming): metode pemecahan masalah dengan cara menguraikan solusi menjadi sekumpulan langkah (step) atau tahapan (stage)
BAB I PENDAHULUAN. Masalah knapsack adalah permasalahan optimasi yang mendasar. Masalah
BAB I PENDAHULUAN 1.1 Latar Belakang Masalah knapsack adalah permasalahan optimasi yang mendasar. Masalah ini merupakan permasalahan algoritma yang sudah dikenal dengan luas. Dalam kehidupan sehari-hari
Implementasi Pencocokan String Tidak Eksak dengan Algoritma Program Dinamis
Implementasi Pencocokan String Tidak Eksak dengan Algoritma Program Dinamis Samudra Harapan Bekti 13508075 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung,
PENYELESAIAN KNAPSACK PROBLEM MENGGUNAKAN ALGORITMA GENETIKA
PENYELESAIAN KNAPSACK PROBLEM MENGGUNAKAN ALGORITMA GENETIKA Kartina Diah KW1), Mardhiah Fadhli2), Charly Sutanto3) 1,2) Jurusan Teknik Komputer Politeknik Caltex Riau Pekanbaru Jl. Umban Sari No.1 Rumbai-Pekanbaru-Riau
MODUL I PROGRAM DINAMIS
MODUL I PROGRAM DINAMIS 1.1 Tujuan Praktikum Program dinamis merupakan modul pertama yang dipelajari dalam Praktikum Stokastik. Adapun yang menjadi tujuan praktikum dalam modul program dinamis adalah sebagai
Perancangan Sistem Penjadwalan Asisten Dosen Menggunakan Algoritma Genetika (Studi Kasus: STIKOM Bali)
Konferensi Nasional Sistem & Informatika 2017 STMIK STIKOM Bali, 10 Agustus 2017 Perancangan Sistem Penjadwalan Asisten Dosen Menggunakan Algoritma Genetika (Studi Kasus: STIKOM Bali) I Made Budi Adnyana
PERANCANGAN APLIKASI SISTEM INFORMASI PENGENDALI PERANGKAT ELEKTRONIK MENGGUNAKAN ARDUINO UNO
PERANCANGAN APLIKASI SISTEM INFORMASI PENGENDALI PERANGKAT ELEKTRONIK MENGGUNAKAN ARDUINO UNO Sandy Kosasi Program Studi Sistem Informasi Sekolah Tinggi Manajemen Informatika dan Komputer Pontianak Jln.
Implementasi Algoritma Dynamic Programming untuk Multiple Constraints Knapsack Problem
Implementasi Algoritma Dynamic Programming untuk Multiple Constraints Knapsack Problem (Studi Kasus : Pemilihan Media Promosi di UM) Maria Irmina Prasetiyowati Teknik Informatika Universitas Multimedia
BAB I PENDAHULUAN I.1 Latar Belakang Masalah
BAB I PENDAHULUAN I.1 Latar Belakang Masalah Masalah optimasi merupakan hal yang sering kita jumpai dalam pekerjaan sehari-hari, seperti optimasi pemilihan proyek, penjadwalan dan lain-lain. Menyelesaikan
Penggabungan Algoritma Brute Force dan Backtracking dalam Travelling Thief Problem
Penggabungan Algoritma Brute Force dan Backtracking dalam Travelling Thief Problem Jessica Handayani (13513069) Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi
BAB 2 LANDASAN TEORI
BAB 2 LANDASAN TEORI 2.1 Proses Alokasi Andaikan terdapat sejumlah sumber daya modal tertentu, yaitu dapat berupa uang untuk investasi, mesin cetak, bahan bakar untuk kendaraan dan lain sebagainya. Suatu
12/15/2014. Apa yang dimaksud dengan Pemrograman Bulat? Solusi yang didapat optimal, tetapi mungkin tidak integer.
1 PEMROGRAMAN LINEAR BULAT (INTEGER LINEAR PROGRAMMING - ILP) Apa yang dimaksud dengan Pemrograman Bulat? METODE SIMPLEKS Solusi yang didapat optimal, tetapi mungkin tidak integer. 2 1 INTEGER LINEAR PROGRAMMING
PENGATURAN KOMPOSISI MENU MAKAN BAGI PENDERITA DIABETES MELITUS DENGAN METODE DYNAMIC PROGRAMMING PADA 0/1 KNAPSACK
PENGATURAN KOMPOSISI MENU MAKAN BAGI PENDERITA DIABETES MELITUS DENGAN METODE DYNAMIC PROGRAMMING PADA 0/1 KNAPSACK Fx.hari Cahyo Susilo¹, Dhinta Darmantoro², Kemas Rahmat Saleh Wiharja³ ¹Teknik Informatika,,
Penyelesaian Berbagai Permasalahan Algoritma dengan Kombinasi Algoritma Brute Force dan Greedy
Penyelesaian Berbagai Permasalahan Algoritma dengan Kombinasi Algoritma Brute Force dan Greedy Anggriawan Sugianto 1, David Susanto 2, Zakka Fauzan Muhammad 3 Laboratorium Ilmu dan Rekayasa Komputasi Program
Pemanfaatan Algoritma Program Dinamis dalam Pendistribusian Barang
Pemanfaatan Algoritma Program Dinamis dalam Pendistribusian Barang Amelia Natalie / 13509004 1 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha
APLIKASI PERENCANA BELANJA DENGAN PENGURUTAN SKALA PRIORITAS BERBASIS ANDROID
44 Vol. 11 No. 1 Februari 2016 Jurnal Informatika Mulawarman APLIKASI PERENCANA BELANJA DENGAN PENGURUTAN SKALA PRIORITAS BERBASIS ANDROID Barry Nuqoba 1), Faried Effendy 2), 1,2) Departemen Matematika,
SISTEM PREDIKSI HARGA MOBIL AVANZA (BEKAS) MENGGUNAKAN FUZZY INFERENCE SYSTEM DENGAN METODE MAMDANI
SISTEM PREDIKSI HARGA MOBIL AVANZA (BEKAS) MENGGUNAKAN FUZZY INFERENCE SYSTEM DENGAN METODE MAMDANI Normalisa, 2013, Jurnal Teknik Informatika Universitas Pamulang ABSTRAKSI Menentukan harga beli untuk
ANALISA DAN PERANCANGAN BERORIENTASI OBJEK PADA WEBSITE RENCANA PENGEMBANGAN PENDIDIKAN DASAR KOTA
UPI YPTK Jurnal KomTekInfo, Vol. x, No. x, 2017, pp. xx yy Copyright 2017 by LPPM UPI YPTK ANALISA DAN PERANCANGAN BERORIENTASI OBJEK PADA WEBSITE RENCANA PENGEMBANGAN PENDIDIKAN DASAR KOTA Revi Gusriva
TIN102 - Pengantar Teknik Industri Materi #10 Ganjil 2015/2016 TIN102 PENGANTAR TEKNIK INDUSTRI
Materi #10 TIN102 PENGANTAR TEKNIK INDUSTRI Pendahuluan 2 Permasalahan pemrograman dinamis secara umum memiliki proses keputusan yang bersifat multi tahapan (multi-stage). I1 D1 I2 D2 In Dn R1 R2 Rn 6623
EVALUASI KINERJA ALGORITMA PERKALIAN MATRIKS BERANTAI DENGAN TEKNIK DYNAMIC PROGRAMMING
EVALUASI KINERJA ALGORITMA PERKALIAN MATRIKS BERANTAI DENGAN TEKNIK DYNAMIC PROGRAMMING Farah Virnawati 1, Juwita Utami Putri 2, Ernastuti 3 1,2,3 Program Studi Teknik Informatika, Universitas Gunadarma
ANALISIS DAN PERANCANGAN APLIKASI SISTEM BASIS DATA REPUBLIK BIKER BERBASIS WEB
ANALISIS DAN PERANCANGAN APLIKASI SISTEM BASIS DATA REPUBLIK BIKER BERBASIS WEB Mochammad Doohan; Budhi Dharmawan S; Nicholas; Harini Kuntjahjani,M.Eng Jurusan Teknik Informatika, Fakultas Ilmu Komputer,
BAB 2 LANDASAN TEORI
8 BAB 2 LANDASAN TEORI 2.1 Model Cutting Stock Problem 2.1.1 Integer Knapsack Cutting-stock problem merupakan salah satu satu contoh persoalan dalam Integer Knapsack. Dalam persoalan integer knapsack,
Penerapan Pemrograman Dinamis dalam Perencanaan Produksi
Penerapan Pemrograman Dinamis dalam Perencanaan Produksi Yugowati Praharsi Abstrak Pemrograman dinamis merupakan salah satu alat bantu untuk mengambil keputusan yang tidak mempunyai formulasi baku untuk
PERBANDINGAN PENYELESAIAN KNAPSACK PROBLEM SECARA MATEMATIKA, KRITERIA GREEDY DAN ALGORITMA GREEDY
Jurnal Technoper Vol. 1 ISSN 79-56X PERBANDINGAN PENYELESAIAN KNAPSACK PROBLEM SECARA MATEMATIKA, KRITERIA GREEDY DAN ALGORITMA GREEDY THE COMPARISON OF KNAPSACK COMPLETION PROBLEM MATHEMATICALLY, GREEDY
BAB 2 LANDASAN TEORI
BAB 2 LANDASAN TEORI 2.1 Revenue Management Belakangan ini revenue management telah mendapat perhatian dunia sebagai salah satu aplikasi dari operations research (OR) yang paling sukses. Revenue management
Perbandingan Performa Algoritma Greedy dan Dynamic Programming
Perbandingan Performa Algoritma dan Pratamamia Agung Prihatmaja (NIM 13515142) Program Studi Teknik Informatikan Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha No. 10 Bandung
IMPLEMENTASI ALGORITMA GREEDY UNTUK MENYELESAIKAN MASALAH KNAPSACK PROBLEM
ISSN : 1978-6603 IMPLEMENTASI ALGORITMA GREEDY UNTUK MENYELESAIKAN MASALAH KNAPSACK PROBLEM Dian Rachmawati #1, Ade Candra #2 #1,2 Program Studi Ilmu Komputer, Universitas Sumatera Utara Jl. Alumni no.9
TUGAS RESUME MATERI KULIAH ALGORITMA DAN STRUKTUR DATA STRATEGI ALGORITMA : H
TUGAS RESUME MATERI KULIAH ALGORITMA DAN STRUKTUR DATA STRATEGI ALGORITMA NAMA NIM : HERIANTI : H12111003 FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM JURUSAN MATEMATIKA PROGRAM STUDI STATISTIKA UNIVERSITAS
Mega Orina Fitri Dosen Jurusan Ilmu Perpustakaan UIN Imam Bonjol Padang ABSTRAK
OPTIMASI PENGANGKUTAN PETI KEMAS DALAM PENYELESAIAN KNAPSACK BERDASARKAN PERBANDINGAN ALGORITMA GENETIKA DAN ALGORITMA GREEDY Mega Orina Fitri Dosen Jurusan Ilmu Perpustakaan UIN Imam Bonjol Padang Email
Pencarian Jalan untuk Menghasilkan Skor Tertinggi pada Permainan Voracity
Pencarian Jalan untuk Menghasilkan Skor Tertinggi pada Permainan Voracity Okaswara Perkasa (13510051) Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung,
DAFTAR ISI. ABSTRAK... i. KATA PENGANTAR... ii. DAFTAR ISI... iv. DAFTAR GAMBAR... xv. DAFTAR TABEL...xxi. DAFTAR SIMBOL... xxii
DAFTAR ISI ABSTRAK... i KATA PENGANTAR... ii DAFTAR ISI... iv DAFTAR GAMBAR... xv DAFTAR TABEL...xxi DAFTAR SIMBOL... xxii BAB I PENDAHULUAN 1.1 Latar Belakang...1 1.2 Rumusan Masalah... 2 1.3 Batasan
PERBANDINGAN PENYELESAIAN KNAPSACK PROBLEM SECARA MATEMATIKA, KRITERIA GREEDY DAN ALGORITMAGREEDY
PERBANDINGAN PENYELESAIAN KNAPSACK PROBLEM SECARA MATEMATIKA, KRITERIA GREEDY DAN ALGORITMAGREEDY Deddy Supriadi Manajemen Informatika, AMIK BSI Tasikmalaya [email protected] Abstract- Knapsack problem
BAB II LANDASAN TEORI
BAB II LANDASAN TEORI Perancangan program aplikasi yang akan dibuat menggabungkan algoritma Brute Force dan algoritma Greedy yang digunakan secara bergantian pada tahap-tahap tertentu. Karena itu, pada
Seminar Nasional Aplikasi Teknologi Informasi 2004 Yogyakarta, 19 Juni 2004
Seminar Nasional Aplikasi Teknologi Informasi 2004 Yogyakarta, 19 Juni 2004 Penyelesaian Masalah Penugasan dengan Algoritma Genetika Zainudin Zukhri Jurusan Teknik Informatika, Fakultas Teknologi Industri,
Implementasi Algoritma Greedy pada Permainan Ludo
Implementasi Algoritma Greedy pada Permainan Ludo Sylvia Juliana, 13515070 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl, Ganesha 10 Bandung 40132,
UNIFIED MODELLING LANGUAGE (UML) APLIKASI PENJUALAN PADA TOKO BUKU (STUDI KASUS)
UNIFIED MODELLING LANGUAGE (UML) APLIKASI PENJUALAN PADA TOKO BUKU (STUDI KASUS) Windi Irmayani A M I K B S I Po nt i a n a k [email protected] ABSTRAK Unified Modelling Language (UML) merupakan suatu
RANCANG BANGUN APLIKASI ALOKASI RESOURCE MANAGEMENT DI FAKULTAS TEKNIK UNIVERSITAS TANJUNGPURA
RANCANG BANGUN APLIKASI ALOKASI RESOURCE MANAGEMENT DI FAKULTAS TEKNIK UNIVERSITAS TANJUNGPURA Hendri Supryadi 1, Tursina 2, Novi Safriadi 3 Program Studi Teknik Informatika Universitas Tanjungpura 1,2,3
Penerapan Algoritma Program Dinamis dalam Penjadwalan Pengerjaan Sekumpulan Tugas Pelajar
Penerapan Algoritma Program Dinamis dalam Penjadwalan Pengerjaan Sekumpulan Tugas Pelajar Harry Alvin Waidan Kefas - 13514036 Program Sarjana Teknik Informatika Sekolah Teknik Elektro dan Informatika Bandung,
BAB 2 LANDASAN TEORI. Teori-teori yang menjadi dasar penulisan adalah sebagai berikut :
BAB 2 LANDASAN TEORI 2.1 Teori-teori Dasar/Umum Teori-teori yang menjadi dasar penulisan adalah sebagai berikut : 2.1.1 Sistem Pengertian sistem menurut Williams dan Sawyer (2005, p457) adalah sekumpulan
SISTEM PENUNJANG KEPUTUSAN MEMILIH PAKET WISATA DENGAN METODE CASE-BASED REASONING
Sistem Penunjang Keputusan Memilih Paket Wisata 81 SISEM PENUNJANG KEPUUSAN MEMILIH PAKE WISAA DENGAN MEODE CASE-BASED REASONING SANDY KOSASI SMIK Pontianak Jln. Merdeka No. 372 Pontianak, Kalimantan Barat
UJM 3 (2) (2014) UNNES Journal of Mathematics.
UJM 3 (2) (2014) UNNES Journal of Mathematics http://journal.unnes.ac.id/sju/index.php/ujm IMPLEMENTASI ALGORITMA BRANCH AND BOUND PADA 0-1 KNAPSACK PROBLEM UNTUK MENGOPTIMALKAN MUATAN BARANG Arum Pratiwi,
PERANCANGAN PROGRAM. struktur/hirarki menu, State Transition Diagram (STD), modul dan pseudocode, serta
BAB 4 PERANCANGAN PROGRAM 4. Perancangan Program Dalam perancangan program aplikasi ini, terlebih dahulu dibuat rancangan struktur/hirarki menu, State Transition Diagram (STD), modul dan pseudocode, serta
IMPLEMENTASI ALGORITMA GENETIKA PADA KNAPSACK PROBLEM UNTUK OPTIMASI PEMILIHAN BUAH KEMASAN KOTAK
IMPLEMENTASI ALGORITMA GENETIKA PADA KNAPSACK PROBLEM UNTUK OPTIMASI PEMILIHAN BUAH KEMASAN KOTAK Komang Setemen Jurusan Manajemen Informatika, Fakultas Teknik Kejuruan, Universitas Pendidikan Ganesha
Optimasi Perhitungan Bilangan Fibonacci Menggunakan Program Dinamis
Optimasi Perhitungan Bilangan Fibonacci Menggunakan Program Dinamis Yudi Retanto 13508085 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha
OPERASI LOGIKA PADA GENERAL TREE MENGGUNAKAN FUNGSI REKURSIF
OPERASI LOGIKA PADA GENERAL TREE MENGGUNAKAN FUNGSI REKURSIF Lutfi Hakim (1), Eko Mulyanto Yuniarno (2) Mahasiswa Jurusan Teknik Elektro (1), Dosen Pembimbing (2) Institut Teknologi Sepuluh Nopember (ITS)
Desain dan Analisis Algoritma Pencarian Prediksi Hasil Penjumlahan Beberapa Urutan Berkala dengan Metode Eliminasi Gauss
JURNAL TEKNIK ITS Vol. 6, No. (7), 7-5 (-98X Print) A665 Desain dan Analisis Algoritma Pencarian Prediksi Hasil Penjumlahan Beberapa dengan Metode Eliminasi Gauss Daniel Henry, Victor Hariadi, dan Rully
ABSTRAK. : augmented reality, magic book, CBSE, MVC, frame rate
ABSTRAK Adam Hendra Brata. 2012. : Pengembangan Perangkat Lunak Magic Profile Book Teknik Informatika Universitas Brawijaya Dengan Menggunakan Teknologi Augmented Reality. Skripsi Program Studi Teknik
PENCARIAN SOLUSI TTS ANGKA DENGAN ALGORITMA RUNUT BALIK BESERTA PENGEMBANGANNYA
PENCARIAN SOLUSI TTS ANGKA DENGAN ALGORITMA RUNUT BALIK BESERTA PENGEMBANGANNYA Wahyu Fahmy Wisudawan Program Studi Teknik Informatika Institut Teknologi Bandung, NIM: 506 Jl. Dago Asri 4 No. 4, Bandung
MENENTUKAN LINTASAN TERPENDEK (SHORTEST PATH) DENGAN 0/1 KNAPSACK PROBLEM DAN PENDEKATAN ALGORITMA DYNAMIC PROGRAMMING
MENENTUKAN LINTASAN TERPENDEK (SHORTEST PATH) DENGAN 0/1 KNAPSACK PROBLEM DAN PENDEKATAN ALGORITMA DYNAMIC PROGRAMMING Iwan Fitrianto R 1 Djoko Soetarno 2 e-mail : [email protected], [email protected].
Algoritma dan Pemrograman Lanjut. Pertemuan Ke-5 Rekursif
Algoritma dan Pemrograman Lanjut Pertemuan Ke-5 Rekursif Disusun Oleh : Wilis Kaswidjanti, S.Si.,M.Kom. Jurusan Teknik Informatika Fakultas Teknologi Industri Universitas Pembangunan Nasional Veteran Yogyakarta
Implementasi Pemrograman Dinamis dalam Pencarian Solusi Permainan Menara Hanoi
Implementasi Pemrograman Dinamis dalam Pencarian Solusi Permainan Menara Hanoi Jonathan Ery Pradana / 13508007 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi
Implementasi Algoritma Greedy untuk Pembelian Saham
Implementasi Algoritma Greedy untuk Pembelian Saham Vanya Deasy Safrina 13513035 1 Program Studi Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10 Bandung 40132,
PENGEMBANGAN APLIKASI PENGELOLAAN BARANG UNTUK MEMENUHI KEBUTUHAN SATUAN KERJA PERANGKAT DAERAH DI LINGKUNGAN PEMERINTAH DAERAH GARUT
PENGEMBANGAN APLIKASI PENGELOLAAN BARANG UNTUK MEMENUHI KEBUTUHAN SATUAN KERJA PERANGKAT DAERAH DI LINGKUNGAN PEMERINTAH DAERAH GARUT Safarudin Wiguna Sasmita 1, Rinda Cahyana 2 Jurnal Algoritma Sekolah
Program Dinamis (dynamic programming):
Materi #0 Ganjil 0/05 (Materi Tambahan) Program Dinamis (Dynamic Programming) Program Dinamis Program Dinamis (dynamic programming): metode pemecahan masalah dengan cara menguraikan solusi menjadi sekumpulan
ANALISIS DAN IMPLEMENTASI SISTEM TRANSAKSI PENJUALAN BARANG DENGAN SMS GATEWAY SEBAGAI PENDUKUNG PROGRAM PELAYANAN PRIMA
99 ANALISIS DAN IMPLEMENTASI SISTEM TRANSAKSI PENJUALAN BARANG DENGAN SMS GATEWAY SEBAGAI PENDUKUNG PROGRAM PELAYANAN PRIMA Auliya Rahman 1) 1 Fakultas Teknologi informasi, Universitas Islam Kalimantan
Penerapan Dynamic Programming dalam Penentuan Pengambilan Job dalam Euro Truck Simulator 2
Penerapan Dynamic Programming dalam Penentuan Pengambilan Job dalam Euro Truck Simulator 2 Putu Arya Pradipta - 13515017 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut
OPTIMASI (Pemrograman Non Linear)
OPTIMASI (Pemrograman Non Linear) 3 SKS PILIHAN Arrival Rince Putri, 013 1 Silabus I. Pendahuluan 1. Perkuliahan: Silabus, Referensi, Penilaian. Pengantar Optimasi 3. Riview Differential Calculus II. Dasar-Dasar
PENERAPAN TEORI GRAF UNTUK MENYELESAIKAN MASALAH MINIMUM SPANNING TREE (MST) MENGGUNAKAN ALGORITMA KRUSKAL
PENERAPAN TEORI GRAF UNTUK MENYELESAIKAN MASALAH MINIMUM SPANNING TREE (MST) MENGGUNAKAN ALGORITMA KRUSKAL Swaditya Rizki Program Studi Pendidikan Matematika, Fakultas Keguruan dan Ilmu Pendidikan, Universitas
BAB I PENDAHULUAN. Umumnya, optimasi didefinisikan sebagai proses menentukan nilai minumum
BAB I PENDAHULUAN 1.1. Latar Belakang Umumnya, optimasi didefinisikan sebagai proses menentukan nilai minumum dan maksimum bergantung pada fungsi tujuannya. Dalam kehidupan sehari-hari, banyak ditemukan
Analisa Keputusan Manajemen dengan Pemrograman Dinamis
Analisa Keputusan Manajemen dengan Pemrograman Dinamis A. Anshorimuslim S. - 13509064 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10
Satuan Acara Perkuliahan (SAP)
Satuan Acara Perkuliahan (SAP) Nama Mata Kuliah : Program Aplikasi Bisnis Kode Mata Kuliah : SI 031 Bobot Kredit : 3 SKS Semester Penempatan : 5 Kedudukan Mata Kuliah : - Mata Kuliah Prasyarat :- Penanggung
PENDEKATAN ALGORITMA PEMROGRAMAN DINAMIK DALAM MENYELESAIKAN PERSOALAN KNAPSACK 0/1 SKRIPSI SRI RAHAYU
PENDEKATAN ALGORITMA PEMROGRAMAN DINAMIK DALAM MENYELESAIKAN PERSOALAN KNAPSACK 0/1 SKRIPSI SRI RAHAYU 060823001 PROGRAM STUDI SARJANA MATEMATIKA DEPARTEMEN MATEMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN
Pengantar Strategi Algoritmik. Oleh: Rinaldi Munir
Pengantar Strategi Algoritmik Oleh: Rinaldi Munir 1 Masalah (Problem) Masalah atau persoalan: pertanyaan atau tugas yang kita cari jawabannya. Contoh-contoh masalah: 1. [Masalah pengurutan] Diberikan senarai
Prototype Function Flow Diagram (FFD) - Combined Unified Modelling Language with Data Flow Diagram
The 6 th University Research Colloquium 2017 Prototype Function Flow Diagram (FFD) - Combined Unified Modelling Language with Data Flow Diagram Rochim Widaryanto 1*, Andi Widianto 2. 1,2 Teknik Informatika,
PERANCANGAN SISTEM INFORMASI PENYEWAAN MOBIL PADA RENTAL BERBASIS WEB
Konferensi Nasional Ilmu Sosial & Teknologi (KNiST) Maret 2016, pp. 308~312 308 PERANCANGAN SISTEM INFORMASI PENYEWAAN MOBIL PADA RENTAL BERBASIS WEB Mari Rahmawati AMIK BSI Karawang e-mail: [email protected]
ANALISA DAN RANCANGAN SISTEM INFORMASI INVENTARISASI LOGISTIK PADA KOPERASI PEGAWAI TELKOM BARATA
ANALISA DAN RANCANGAN SISTEM INFORMASI INVENTARISASI LOGISTIK PADA KOPERASI PEGAWAI TELKOM BARATA Windarto Jurusan Teknik Informatika, Fakultas Teknologi Informasi, Universitas Budi Luhur Universitas Budi
PENEMPATAN KANTOR POS DENGAN ALGORITMA PROGRAM DINAMIS
PENEMPATAN KANTOR POS DENGAN ALGORITMA PROGRAM DINAMIS Hanson Prihantoro Putro (13505045) Sekolah Teknik Elektro dan Informatika ITB Jl. Ganesha 10 Bandung 40135 [email protected] ABSTRAK Makalah
BAB I PENDAHULUAN. 1.1 Latar Belakang Penelitian. Perekonomian Indonesia menghadapi perdagangan bebas dituntut untuk lebih giat dan
BAB I PENDAHULUAN 1.1 Latar Belakang Penelitian Perekonomian Indonesia menghadapi perdagangan bebas dituntut untuk lebih giat dan berusaha semaksimal mungkin dalam melaksanakan program-program pembangunan.
Perbandingan Algoritma Brute Force, Divide and conquer, dan Dynamic Programming untuk Solusi Maximum Subarray Problem
Perbandingan Algoritma Brute Force, Divide and conquer, dan Dynamic Programming untuk Solusi Maximum Subarray Problem Reinhard Denis Najogie - 13509097 Program Studi Teknik Informatika Sekolah Teknik Elektro
Desain dan Analisis Algoritma Pencarian Prediksi Hasil Penjumlahan Beberapa Urutan Berkala dengan Metode Eliminasi Gauss
JURNAL TEKNIK ITS Vol. 6, No., (7) ISSN: 7-59 (-97 Print) A-75 Desain dan Analisis Algoritma Pencarian Prediksi Hasil Penjumlahan Beberapa dengan Metode Eliminasi Gauss Daniel Henry, Victor Hariadi, dan
BAB I PENDAHULUAN. Knapsack adalah suatu permasalahan dalam menentukan pemilihan objek
BAB I PENDAHULUAN 1.1 Latar Belakang Knapsack adalah suatu permasalahan dalam menentukan pemilihan objek dari sekumpulan objek yang masing-masing mempunyai bobot/berat (weight) dan nilai/profit (value)
Design and Analysis of Algorithms CNH2G3- Week 8 Greedy Algorithm
Design and Analysis of Algorithms CNH2G3- Week 8 Greedy Algorithm Dr. Putu Harry Gunawan (PHN) Daftar Isi 1 Greedy Algorithm.................................. 1 2 Contoh-contoh Algoritma Greedy........................
OPTIMASI MINIMUM LUAS KAIN PADA POLA UKURAN BAJU KOKO MENGGUNAKAN ALGORITMA GREEDY
Konferensi Nasional Ilmu Sosial & Teknologi (KNiST) Maret 2016, pp. 29~33 OPTIMASI MINIMUM LUAS KAIN PADA POLA UKURAN BAJU KOKO MENGGUNAKAN ALGORITMA GREEDY Imam Amirulloh 1, Yani Sri Mulyani 2, Herlan
BAB 2 LANDASAN TEORI. waktu yang diperlukan. Pengukuran waktu yang diperlukan dalam mengeksekusi suatu
BAB 2 LANDASAN TEORI 2.1 Permasalahan NP-Hard dan NP-Complete Salah satu ukuran biaya dalam pengeksekusian sebuah algoritma adalah lamanya waktu yang diperlukan. Pengukuran waktu yang diperlukan dalam
Perencanaan Kebijakan Penggantian Alat Masak Paling Optimal pada Usaha Restoran dengan Menggunakan Program Dinamis
Perencanaan Kebijakan Penggantian Alat Masak Paling Optimal pada Usaha Restoran dengan Menggunakan Program Dinamis Achmad Dimas Noorcahyo NIM 13508076 Program Studi Teknik Informatika Sekolah Teknik Elektro
