Pemecahan Masalah Knapsack dengan Menggunakan Algoritma Branch and Bound

dokumen-dokumen yang mirip
Algoritma Branch and Bound dalam Kegunaannya Memecahkan Assignment Problem

METODE BRANCH AND BOUND UNTUK MENEMUKAN SHORTEST PATH

PENGGUNAAN ALGORITMA BRANCH AND BOUND UNTUK MENYELESAIKAN PERSOALAN PENCARIAN JALAN (PATH-FINDING)

BAB 2 LANDASAN TEORI

Analisis Beberapa Algoritma dalam Menyelesaikan Pencarian Jalan Terpendek

Penyusunan Jarkom HMIF ITB dengan Menggunakan Algoritma Branch and Bound

Aplikasi Algoritma Branch and Bound dalam Pencarian Solusi Optimum Job Assignment Problem

Penerapan Pohon dengan Algoritma Branch and Bound dalam Menyelesaikan N-Queen Problem

Penghematan BBM pada Bisnis Antar-Jemput dengan Algoritma Branch and Bound

Branch & Bound. Bahan Kuliah IF2211 Strategi Algoritma Rinaldi Munir & Masayu Leylia Khodra

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

Branch and Bound untuk Rute Terpendek Tur Pengenalan Labtek V Gedung Benny Subianto Chita Najmi Nabila /

Penerapan Algoritma Branch and Bound untuk Penentuan Jalur Wisata

PENERAPAN ALGORITMA BRANCH AND BOUND DALAM MENENTUKAN RUTE TERPENDEK UNTUK PERJALANAN ANTARKOTA DI JAWA BARAT

Algoritma Branch & Bound

Algoritma Branch and Bound. (Bagian 1)

Penerapan Algoritma Branch and Bound untuk Optimasi Rute Penempelan Poster di Papan Mading ITB

ALGORITMA RUNUT BALIK DALAM PENYELESAIAN PERMAINAN WORD DIAGRAM

Algoritma Branch & Bound untuk Optimasi Pengiriman Surat antar Himpunan di ITB

Menentukan Susunan Terbaik Tim Proyek dengan Algoritma Branch and Bound

Pemodelan AI dalam Permainan Snake dengan Algoritma Branch and Bound

dengan Algoritma Branch and Bound

Penggunaan Algoritma Backtracking pada Permainan Mummy Maze

Penggabungan Algoritma Brute Force dan Backtracking dalam Travelling Thief Problem

Menentukan Susunan Pengambil Tendangan Penalti dalam Skema Adu Penalti pada Pertandingan Sepak Bola dengan Algoritma Branch and Bound

SOLUSI PERMAINAN CHEMICALS DENGAN ALGORITMA RUNUT BALIK

BAB 2 LANDASAN TEORI

Menentukan Titik Evakuasi Selanjutnya bagi Sekelompok Regu Tim SAR dengan Algoritma Branch and Bound

PENGUNAAN DUA VERSI ALGORITMA BACKTRACK DALAM MENCARI SOLUSI PERMAINAN SUDOKU

Penerapan Algoritma Branch and Bound pada Penentuan Staffing Organisasi dan Kepanitiaan

Penyelesaian Berbagai Permasalahan Algoritma dengan Kombinasi Algoritma Brute Force dan Greedy

Penerapan Algoritma Runut-balik pada Permainan Math Maze

Penggunaan Algoritma Branch and Bound dan Program Dinamis Dalam Pemecahan Masalah Rubik s Cube

Penyelesaian Permainan 3 missionaries and 3 cannibals Dengan Algoritma Runut-Balik

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

APLIKASI GREEDY PADA ALGORITMA HUFFMAN UNTUK KOMPRESI TEKS

Penerapan Algoritma Backtracking pada Game The Lonely Knight

PENERAPAN ALGORITMA GREEDY DALAM PENCARIAN SOLUSI TERBAIK PADA PERMAINAN TETRIS

SOLUSI ALGORITMA BACKTRACKING DALAM PERMAINAN KSATRIA MENYEBRANG KASTIL

Penerapan Algoritma DFS pada Permainan Sudoku dengan Backtracking

Journal of Informatics and Technology, Vol 1, No 1, Tahun 2012, p

PENYELESAIAN MASALAH MISSIONARIES DAN CANNIBAL MENGGUNAKAN ALGORITMA DFS DENGAN VARIASI PENGHINDARAN REPEATED STATE

Analisis Pengimplementasian Algoritma Greedy untuk Memilih Rute Angkutan Umum

Pemanfaatan Algoritma BFS pada Graf Tak Berbobot untuk Mencari Jalur Terpendek

Pelacakan dan Penentuan Jarak Terpendek terhadap Objek dengan BFS (Breadth First Search) dan Branch and Bound

ANALISIS PENERAPAN ALGORITMA RUNUT-BALIK DALAM PENCARIAN SOLUSI PERSOALAN LOMPATAN KUDA

Implementasi Algoritma Greedy untuk Pembelian Saham

Penerapan Algoritma BFS, DFS, DLS dan IDS dalam Pencarian Solusi Water Jug Problem

Penerapan Algoritma Branch And Bound Dalam Optimasi Assigment Problem

Penerapan Algoritma Backtrack pada Knight s Tour

Aplikasi Algoritma B&B untuk Memperoleh Poin Maksimum pada Permainan Diner Dash

Aplikasi Algoritma Traversal Dalam Binary Space Partitioning

Aplikasi Branch and Bound Pada Pencarian Jalan Pada Software Navigasi

Penggunaan Algoritma Runut-balik Pada Pencarian Solusi dalam Persoalan Magic Square

PENERAPAN ALGORITMA BACKTRACKING PADA PERMAINAN WORD SEARCH PUZZLE

PENGGUNAAN ALGORITMA GREEDY DALAM PERMAINAN KARTU BLACK JACK

ALGORITMA RUNUT-BALIK UNTUK MENGGANTIKAN ALGORITMA BRUTE FORCE DALAM PERSOALAN N-RATU

Penggunaan Algoritma Pathfinding pada Game

Menentukan Starting Lineup Futsal Terbaik dengan Algoritma Branch and Bound

Perbandingan Algoritma Brute Force dan Breadth First Search dalam Permainan Onet

Memecahkan Puzzle Hidato dengan Algoritma Branch and Bound

Pembentukan Pohon Pencarian Solusi dalam Persoalan N-Ratu (The N-Queens Problem)

UNNES Journal of Mathematics

Penerapan Search Tree pada Penyelesaian Masalah Penentuan Jalur Kota Terpendek.

Eksplorasi Algoritma Brute Force, Greedy, dan Dynamic Programming untuk Persoalan Integer Knapsack

Pemanfaatan Algoritma Runut-balik dalam Penentuan Golongan Suara pada Dunia Paduan Suara

Perbandingan Algoritma Depth-First Search dan Algoritma Hunt-and-Kill dalam Pembuatan Labirin

Pencarian Lintasan Terpendek Pada Aplikasi Navigasi Menggunakan Algoritma A*

Menyelesaikan Permainan Wordament Menggunakan Algoritma Backtracking

Pertemuan-07 INFORMATIKA FASILKOM UNIVERSITAS IGM

BAB I PENDAHULUAN. Kemajuan Ilmu dan Teknologi (IPTEK) di berbagai bidang terasa sangat

Penerapan Algoritma Backtracking pada Knight s Tour Problem

APLIKASI ALGORITMA BRANCH AND BOUND UNTUK MENYELESAIKAN INTEGER PROGRAMMING. Enty Nur Hayati Dosen Fakultas Teknik Universitas Stikubank Semarang

Penggunaan Metode Branch And Bound With Search Tree

PERBANDINGAN APLIKASI ALGORITMA BRUTE-FORCE DAN KOMBINASI ALGORITMA BREADTH FIRST SEARCH DAN GREEDY DALAM PENCARIAN SOLUSI PERMAINAN TREASURE HUNT

PENCARIAN SOLUSI DENGAN ALGORITMA BACKTRACKING UNTUK MENYELESAIKAN PUZZLE KAKURO

Pencarian Solusi Permainan Fig-Jig Menggunakan Algoritma Runut-Balik

PENERAPAN ALGORITMA RUNUT-BALIK (BACKTRACKING) DALAM PENYELESAIAN PERMAINAN SUDOKU

Pemanfaatan Algoritma Runut-Balik dalam Menyelesaikan Puzzle NeurOn dalam Permainan Logical Cell

Penerapan Algoritma Greedy dalam Pencarian Rantai Penjumlahan Terpendek

Pembentukan pohon pencarian solusi dan perbandingan masingmasing algoritma pembentuknya dalam simulasi N-Puzzle

Penerapan Algoritma BFS dan DFS dalam Mencari Solusi Permainan Rolling Block

PERMAINAN KNIGHT S TOUR DENGAN ALGORITMA BACKTRACKING DAN ATURAN WARNSDORFF

Kecerdasan Buatan. Penyelesaian Masalah dengan Pencarian... Pertemuan 02. Husni

Penyelesaian Sum of Subset Problem dengan Dynamic Programming

Implementasi Algoritma Greedy, BFS, Branch and Bound, dan Metode Heuristik dalam Permainan Reversi

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

Pemanfaatan Pohon dalam Realisasi Algoritma Backtracking untuk Memecahkan N-Queens Problem

Penerapan Algoritma Brute-Force serta Backtracking dalam Penyelesaian Cryptarithmetic

Pencarian Pohon Solusi Permainan Alchemy Menggunakan Algoritma BFS dan DFS

Penerapan DFS dan BFS dalam Pencarian Solusi Game Japanese River IQ Test

UJM 3 (1) (2014) UNNES Journal of Mathematics.

PERBANDINGAN ALGORITMA BFS DAN DFS DALAM PEMBUATAN RUTE PERJALANAN OBJEK PERMAINAN 2 DIMENSI

Penerapan Algoritma Branch and Bound dalam Pemacahan Travelling Salesman Problem (TSP) dalam Graf Lengkap

Analisis Penerapan Algoritma Backtracking Pada Pencarian Jalan Keluar di Dalam Labirin

Penentuan Keputusan dalam Permainan Gomoku dengan Program Dinamis dan Algoritma Greedy

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

KNAPSACK PROBLEM DENGAN ALGORITMA GENETIKA

Penerapan Algoritma Backtracking pada Pewarnaan Graf

BAB I Pendahuluan 1.1. Latar Belakang

Transkripsi:

Pemecahan Masalah Knapsack dengan Menggunakan Algoritma Branch and Bound Anggi Shena Permata / 13505117 Program Studi Teknik Informatika, Sekolah Teknik Elektro dan Informatika Insitut Teknologi Bandung Jl. Ganesha 10, Bandung Email : if15117@students.if.itb.ac.id ABSTRAK Permasalahan knapsack atau yang biasa kita kenal dengan sebutan 0/1 knapsack merupakan salah satu dari persoalan klasik yang banyak ditemukan pada literatur-literatur lama dan hingga kini permasalahan ini masih banyak ditemukan dalam kehidupan sehari-hari. Contoh kongkret permasalahan ini dalam dunia nyata adalah penjualan beberapa jenis keperluan rumah tangga oleh pedagang keliling dengan menggunakan gerobak ataupun alat pengangkut lainnya yang hanya memiliki kapasitas angkut maksimum sebesar w kg. keperluan rumah tangga yang akan dijual hanya berjumlah satu untuk tiap jenisnya dan tiap jenis barang memiliki berat w1,w2,w3,w4,..wn dengan keuntungan yang diperoleh untuk tiap jenisnya adalah p1,p2,p3,p4,.pn. tidak semua jenis keperluan rumah tangga yang akan dijual oleh pedagang keliling tersebut dapat dimasukan kedalam alat pengangkut. Maka akan dipilih jenis-jenis keperluan rumah tangga yang akan dijual untuk setiap harinya oleh pedagang keliling tersebut agar diperoleh keuntungan yang maksimal dari penjualan barang-barang keperluan rumah tangga tersebut. Telah banyak strategi yang diterapkan untuk menyelesaikan permasalah tersebut diantaranya adalah dengan menggunakan algoritma exhaustive search, greedy dan juga branch and bound. Kata kunci: knapsack,keuntungan maksimum, fungsi objektif, branch and bound, pohon 1. PENDAHULUAN 1.1 Knapsack problem Knapsack problem adalah suatu masalah bagaimana cara menentukan pemilihan barang dari sekumpulan barang di mana setiap barang tersebut mempunyai berat dan profit masing masing, sehingga dari pemilihan barang tersebut didapatkan profit yang maksimum. Penyelesaian masalah dengan menggunakan algoritma exhaustive search adalah mengenumerasikan semua kemungkinan barang-barang yang layak atau memenuhi syarat yaitu tidak melebihi batas daya angkut gerobak untuk dijual setiap harinya, kemudian menghitung tiap-tiap keuntungan yang diperoleh dan memilih solusi yang menghasilkan keuntungan terbesar. Berbeda dengan algoritma exhaustive search yang cukup memakan waktu dan dapat menghasilkan solusi yang optimum, penyelesaian masalah dengan menggunakan algoritma greedy dilakukan dengan memasukan objek satu persatu kedalam gerobak dan tiap kali objek tersebut telah dimasukan kedalam gerobak maka objek tersebut tidak dapat lagi dikeluarkan dari gerobak. Pencarian solusi akan dilakukan dengan memilih salah satu jenis greedy (greedy by weight, greedy by profiit or greedy by density) yang diperkirakan dapat menghasilkan solusi yang optimum. Algoritma Branch and Bound juga merupakan salah satu strategi yang dapat digunakan dalam pencarian solusi optimum dari permasalahan knapsack ini. Dengan penentuan keuntungan maksimal pada tiap simpulnya, proses pencarian akan membawa kita pada solusi yang optimum. karena tidak semua objek pada permasalahan ini dapat dimasukan kedalam knapsack, maka kemungkinan bahwa kita akan sampai pada keadaan dimana tidak ada lagi simpul yang dapat dibangkitkan kerena telah melewati batas kapasitas daya angkut membuat kita harus menentukan solusi omtimum dengan membandingkan lintasan-lintasan mana yang berakhir didaun pada pohon yang akan manghasilkan keuntungan paling besar maka objek-objek tersebutlah yang akan dipilih untuk dimasukan kedalam knapsack/gerobak. 1.2 Algoritma Branch and Bound Sebagaimana pada algortima runut-balik, algoritma Branch & Bound juga merupakan metode pencarian di dalam ruang solusi secara sistematis. Ruang Solusi diorganisasikan ke dalam pohon ruang status. Pembentukan pohon ruang status. Pembentukan pohon ruang status pada algoritma B&B berbeda dengan pembentukan pohon pada algoritma runutbalik. Bila pada algoritma runut-balik ruang solusi dibangun secara Depth-First Search(DFS), maka pada algoritma B&B

ruang solusi dibangun dengan skema Breadth-First Search (BFS). Pada algoritma B&B, pencarian ke simpul solusi dapat dipercepat dengan memilih simpul hidup berdasarkan nilai ongkos (cost). Setiap simpul hidup diasosiasikan dengan sebuah ongkos yang menyatakan nilai batas (bound). Pada prakteknya, nilai batas untuk setiap simpul umumnya berupa taksiran atau perkiraan. Fungsi heuristik untuk menghitung taksiran nilai tersebut dinyatakan secara umum sebagai : yang dalam hal ini, (i) = ongkos untuk simpul i (i) = ongkos mencapai simpul i dari akar (i) = ongkos mencapai simpul tujuan dari simpul akar i (perkiraan) Nilai digunakan untuk mengurutkan pencarian. Simpul berikutnya yang dipilih untuk diekspansi adalah simpul yang memiliki minimum (Simpul-E). Strategi memilih simpul-e seperti ini dinamakan strategi pencarian berdasarkan biaya terkecil (least cost search). Prinsip dari algoritma branch and bound ini adalah : 1. Masukkan simpul akar ke dalam antrian Q. Jika simpul akar adalah simpul solusi (goal node), maka solusi telah ditemukan. Stop. 2. Jika Q kosong, tidak ada solusi. Stop. 3. Jika Q tidak kosong, pilih dari antrian Q simpul i yang mempunyai (i) paling kecil. Jika terdapat beberapa simpul i yang memenuhi, pilih satu secara sembarang. 4. Jika simpul i adalah simpul solusi, berarti solusi sudah ditemukan, stop. Jika simpul i bukan simpul solusi, maka bangkitkan semua anak-anaknya. Jika i tidak mempunyai anak, kembali ke langkah 2. 5. Untuk setiap anak j dari simpul i, hitung (j), dan masukkan semua anak-anak tersebut ke dalam antrian Q. 6. Kembali ke langkah 2. 1.3 Pohon Pohon adalah graf tak-berarah terhubung yang tidak mengandung sirkuit. Dengan setiap kemungkinan solusi dianggap sebagai sebuah simpul dan akar dari pohon, banyak algoritma yang menggunakan ruang solusi berupa pohon ini karena akan lebih memudahkan dalam penelusuran solusi yang ada berupa simpul-simpul pohon. 2. METODE Untuk lebih memahami tahap-tahap penyelesaian permasalahan knapsack ini, kita ambil contoh persoalan seperti yang dituliskan pada bagian Abstrak yaitu dimana seorang pedagang keperluan rumah tangga keliling harus memilih barang-barang yang akan dijual setiap harinya dengan batas daya angkut gerobak yang dimilikinya. Untuk mempermudah, kita misalkan pedagang keliling tersebut hanya memiliki 4 jenis barang untuk dijual dengan berat dan keuntungan penjualan yang berbeda-beda untuk tiap jenisnya. Gerobak yang akan dipakai untuk mengangkut barang-barang tersebut hanya mampu menampuk beban seberat 16 kg. Berikut merupakan tebel penggambaran berat dan keeuntungan yang akan diperoleh untuk tiap penjualan barang tersebut. Barang ke- Berat (W) Keuntungan (P) P/W 1 2 12 6 2 5 15 3 3 10 50 5 4 5 10 2 Gambar 1. tabel keterangan berat,keuntungan dan P/W tiap jenis barang Dalam algoritma ini, kita akan menentukan cost dari tiap tiap simpul anak untuk dapat menentukan simpul mana yang kelak akan dibangkitkan yaitu simpul dengan cost tertinggi dalam penelusuran pohon unutk mencapai solusi dari permasalahan ini. Dalam permasalahan ini, kita akan mencari simpul-simpul yang akan membawa kita pada keuntungan terbesar oleh karena itu urutan pembangkitan simpul akan ditentukan oleh simpul mana yang memiliki cost tertinggi. Cost dari tiap simpul akan ditentukan dengan perhitungan : yang dalam hal ini, (i) = cost untuk simpul i (i) = cost untuk sampai ke simpul I, dalam hal ini merupakan keuntungan dari simpul akar ke simpul i (i) = cost dari simpul i untuk sampai ke simpul tujuan, dalam hal ini dapat diperoleh dengan menggunakan rumus : (P/W)max * daya angkut yang tersisa pada tahap awal kita akan melakukan perhitungan dengan menggunakan rumus diatas untuk memperoleh batas awal atau akar dari pohon yang juga merupakan

simpul pertama. Pada keadaan ini, batas dihitung dengan pemikiran bahwa belum ada satupun barang yang dimasukan kedalam alat pengangkut maka kita dapat memilih 6 sebagai (P/W) terbesar karena belum ada satu barangpun yang dimasukan kedalam alat pengangkut dan kapasitas daya angkutpun masih utuh yaitu seberat 16 kg. (1) = keuntungan yang diperoleh sampai disimpul awal + (P/W)max * daya angkut yang tersisa = 0 + 6 * = 96 Maka kita memperoleh 96 batas awal atau cost dari simpul awal. 1 96 Gambar 2. Akar Pohon Knapsack problem dengan n=4 Dari simpul-simpul yang telah dibangkitkan dan dihitung cost nya, maka diperoleh bahwa simpul 4 lah yang memiliki cost tertinggi oleh karena itu maka simpul 4 akan di perluas lagi. Simpul 6,7,8 akan dibangkitkan sebagai perluasan dari simpul 4 dengan barang yang mungkin dimasukan kedalam alat pengangkut adalah barang ke 1,2 dan 4. kemudian kita akan mengkitung cost dari simpul 6,7dan 8. (6) = (50+12) + 3*(16-10-2) = 74 (7) = (50+15) + 6*(16-10-5) = 71 (8) = (50+10) + 6*(16-10-5) = 66 Setelah melakukan perhitungan, kita dapat melihat bahwa ketiga simpul yaitu simpul 6,7 dan 8 tidak bisa lagi diperluas oleh karena itu ketiga simpul ini akan dibunuh dengan menambahkan keterangan huruf B pada bagian bawah simpulnya. Simpul Selanjutnya kita akan membangkitkan simpul-simpul anak dari akar pohon yaitu dengan membangkitkan simpul 1, simpul 2, simpul 3 dan simpul 4 sebagai gambaran dari 4 pilihan barang yang akan dimasukan pertama kali pada alat pengangkut dengan x1 merupakan keuntungan yang akan diperoleh pada penjualan tiap barang tersebut. Kemudian kita akan menghitung cost dari tiap simpul anak yang hidup dan juga kelayakannya untuk tetap hidup atau harus dibunuh. Dalam hal ini, simpul yang jumlah dari lintasannya tidak bisa lagi dibangkitkan (jika ditambah barang lagi kedalam alat pengangkut maka beratnya akan melebihi daya angkut) akan dibunuh. (2) = 12 + 5*(16-2) = 82 (3) = 15 + 6*(16-5) = 81 (3) = 50 + 6*(16-10)=86 (4) = 10 + 6*(16-5)=76 Gambar 4. pohon status knapsack problem tahap kedua Sekarang kita hanya memiliki simpul 2,3 dan 5 sebagai simpul hidup. Diantara simpul-simpul tersebut, simpul 2 lah yang memiliki cost terbesar sehingga selanjutnya akan dilakukan perluasan pada simpul 2 dengan metode yang serupa dan diperoleh simpul 9,10, dan 11 dengan cost 72,74, dan 67. pada simpul 2, dapat dilihat bahwa simpul tersebut tidak dapat lagi diperluas oleh karena itu makan simpul ini akan dibunuh. Gambar 3. pohon status knapsack problem tahap awal

keuntungan 50 sebagai solusi permasalahan dan akan menghasilkan keuntungan yang maksimal pada penjualan yaitu sebesar 65. IV. KESIMPULAN Gambar 5. pohon status knapsack problem tahap ketiga Sekarang kita memiliki simpul 3,5,9 dan 11 sebagai simpul hidup dan diantar simpul-simpul tersebut, simpul 3 lah yang memiliki cost terbesar sehingga simpul tersebut akan diperluas dengan metode yang diterapkan pada perluasan simpul-simpul sebelumnya. Perluasan simpul-simpul hidup terus dilakukan sampai tidak ada lagi simpul hidup yang ditemukan dan dapat diperluas atau semua simpul telah dibunuh. Hal ini dilakukan karena pencarian solusi pada permasalahan ini tidak dapat diketahui kapan kita harus berhenti karena telah sampai kepada solusi tetapi penyelesaian masalah akan dilakukan dengan membandingkan solusi pada tiap daun. Dalam persoalan ini, akan dibandingkan jumlah keuntungan yang diperoleh pada tiap daun dan solusi permasalah merupakan lintasan yang menuju daun yang memiliki keuntungan terbesar. Algoritma Branch and Bound merupakan salah satu algoritma yang dapat diterapkan dalam mencari penyelesaian pada permasalahan knapsack. Dengan batas-batas yang ditentukan, algoritma ini mampu mencapai solusi yang optimum seperti yang berhasil dilakukan oleh algoritma exhautive search, namun dengan membunuh semua simpul yang tidak mungkin diperluas, algoritma branch and bound ini tidak memperhitungkan semua kemungkinan yang ada sehingga akan lebih mengefisienkan waktu yang digunakan untuk pemecahan masalah ini. Menurut saya, algoritma ini masih kurang mangkus untuk diterapkan sebagai strategi pencarian solusi pada permasalahan knapsack karena tidak diketahuinya batasan kapan kita sampai pada tahap solusi. Dibandingkan penerapan algoritma branch and bound pada permasalahan n ratu atau tsp yang dapat dengan jelas diketahui keadaan dimana sudah tercapai solusi tanpa harus terus memperluas semua simpul hidup sampai tidak ada lagi simpul hidup yang tersisa, algoritma ini terasa kurang efisien untuk digunakan dalam mencari solusi pada permasalahan ini karena cukup rumit dan memakan banyak waktu meskipun tidak selama waktu yang dibutuhkan algoritma brute force untuk menyelesaikan permasalahan ini. REFERENSI [1] Munir, Rinaldi, Strategi Algoritmik,Bandung, 2007. Gambar 6. pohon status knapsack problem Dari gambar diatas dapat disimpulkan bahwa solusi permasalahan dibentuk oleh lintasan yang menuju simpul daun 13 dan 7 dimana keduanya merupakan solusi yang serupa yaitu memilih barang 2 dengan berat 5 kg, keuntungan 15 dan barang 3 dengan berat 10 kg,

This document was created with Win2PDF available at http://www.daneprairie.com. The unregistered version of Win2PDF is for evaluation or non-commercial use only.