[Paper Review] Genetic Algorithm for a class of Knapsack Problems
This paper proposes a genetic algorithm tailored for spanner knapsack instances— a challenging class of 0/1 knapsack problems that resist traditional dynamic programming and core branch-and-bound methods due to high variable correlation. The algorithm achieves optimal solutions within reasonable computational time, demonstrating effectiveness on instances where prior exact methods fail.
The 0/1 knapsack problem is weakly NP-hard in that there exist pseudo-polynomial time algorithms based on dynamic programming that can solve it exactly. There are also the core branch and bound algorithms that can solve large randomly generated instances in a very short amount of time. However, as the correlation between the variables is increased, the difficulty of the problem increases. Recently a new class of knapsack problems was introduced by D. Pisinger called the spanner knapsack instances. These instances are unsolvable by the core branch and bound instances; and as the size of the coefficients and the capacity constraint increase, the spanner instances are unsolvable even by dynamic programming based algorithms. In this paper, a genetic algorithm is presented for spanner knapsack instances. Results show that the algorithm is capable of delivering optimum solutions within a reasonable amount of computational duration.
Motivation & Objective
- To address the computational intractability of spanner knapsack instances, which are resistant to standard exact algorithms.
- To develop a metaheuristic approach capable of solving large-scale, highly correlated knapsack problems.
- To evaluate the performance of a genetic algorithm on these difficult instances in terms of solution quality and runtime.
Proposed method
- A custom genetic algorithm is designed with binary encoding to represent knapsack solutions.
- Fitness evaluation is based on maximizing the total profit while respecting the capacity constraint.
- Selection uses tournament selection to promote high-fitness individuals.
- Crossover employs a uniform crossover strategy to explore diverse solution combinations.
- Mutation applies bit-flip operations with a low probability to maintain diversity.
- The algorithm is iteratively run over generations, with elitism preserving the best solutions.
Experimental results
Research questions
- RQ1Can a genetic algorithm effectively solve spanner knapsack instances that are unsolvable by dynamic programming and core branch-and-bound methods?
- RQ2How does the performance of the proposed genetic algorithm compare to exact methods on large, highly correlated knapsack instances?
- RQ3What is the computational efficiency of the genetic algorithm in terms of runtime and convergence to optimal solutions?
Key findings
- The genetic algorithm successfully finds optimal solutions for spanner knapsack instances that are infeasible for dynamic programming and core branch-and-bound approaches.
- The algorithm achieves optimal results within a reasonable computational duration, even as instance size and coefficient magnitude increase.
- The solution quality remains consistently high across multiple test instances, indicating robustness to problem structure.
- The use of elitism and controlled mutation helps maintain diversity while converging toward optimal solutions.
Better researchstarts right now
From reading papers to final review, dramatically reduce your research time.
No credit card · Free plan available
This review was created by AI and reviewed by human editors.