Kasus Knapsack (Memilih Barang ke Tas) Menggunakan Brute Force

Analisis Knapsack dengan Brute Force

🎒 Kasus Knapsack: Solusi dengan Brute Force

Analisis untuk memaksimalkan nilai barang dalam tas berkapasitas terbatas dengan mencoba semua kemungkinan solusi yang ada.

Ilustrasi Knapsack

📌 Definisi dan Karakteristik Brute Force

Brute Force adalah sebuah pendekatan algoritma yang memecahkan masalah dengan cara paling mendasar: **mencoba semua kemungkinan solusi** secara sistematis, lalu memilih solusi yang terbaik. Ini seperti mencoba semua kunci di gantungan satu per satu untuk membuka pintu.

  • Mudah dipahami: Logikanya sangat lugas dan mudah diimplementasikan.
  • Pasti menemukan solusi: Karena semua kemungkinan dicoba, algoritma ini dijamin akan menemukan jawaban yang paling optimal.
  • Tidak efisien untuk data besar: Jumlah kombinasi bisa menjadi sangat besar, sehingga membutuhkan waktu komputasi yang lama.

📌 Data Kasus

Kita dihadapkan pada sebuah tas dengan kapasitas maksimal 10 kg dan 5 barang yang bisa dipilih:

Barang Berat (kg) Nilai
1630
2314
3416
429
5520

📌 Perhitungan Semua Kombinasi yang Valid

Dengan metode Brute Force, kita harus mengevaluasi semua kemungkinan kombinasi dan menyaring yang beratnya tidak melebihi 10 kg. Berikut adalah semua kombinasi yang valid beserta hasilnya:

Kombinasi Barang Total Berat (kg) Total Nilai
{4}29
{2}314
{3}416
{5}520
{1}630
{2, 4}523
{3, 4}625
{2, 3}730
{4, 5}729
{2, 5}834
{1, 4}839
{3, 5}936
{1, 2}944
{2, 3, 4}939
{2, 4, 5}1043
{1, 3} 10 46

Dari tabel di atas, terlihat jelas bahwa kombinasi {1, 3} memberikan nilai tertinggi, yaitu 46, dengan berat yang pas di kapasitas 10 kg.

📌 Contoh Pseudocode

INPUT: daftar_barang, kapasitas_tas
OUTPUT: kombinasi_terbaik, nilai_maksimal

LANGKAH:
1. Inisialisasi nilai_maksimal = 0
2. Inisialisasi kombinasi_terbaik = []

3. UNTUK SETIAP kemungkinan_kombinasi DARI daftar_barang:
4.    hitung total_berat dari kemungkinan_kombinasi
5.    hitung total_nilai dari kemungkinan_kombinasi
6.
7.    JIKA total_berat <= kapasitas_tas DAN total_nilai > nilai_maksimal:
8.       nilai_maksimal = total_nilai
9.       kombinasi_terbaik = kemungkinan_kombinasi
10.
11. KEMBALIKAN kombinasi_terbaik dan nilai_maksimal

👉 Kesimpulan

Setelah mengevaluasi semua kemungkinan yang ada, solusi optimal untuk masalah Knapsack ini adalah dengan memilih Barang 1 dan Barang 3.

  • Total Berat: 6 kg + 4 kg = 10 kg
  • Total Nilai Maksimal: 30 + 16 = 46

Metode Brute Force, meskipun tidak efisien untuk data dalam jumlah besar, terbukti sangat efektif dan dapat diandalkan untuk menemukan solusi yang paling optimal pada kasus dengan skala kecil.

Posting Komentar

Post a Comment (0)

Lebih baru Lebih lama