Bit Inversion Optimization for Knapsack Problem Solutions
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In optimization problems like the 0-1 knapsack problem, it is challenging to efficiently reach the optimum solution due to the difficulty in avoiding local solutions and the time required to achieve the optimal combination, especially when the criterion for accepting loads is set too high or too low, leading to either poor solution quality or prolonged computation times.
Innovation Solution
An optimization program and method that selects and inverts bits based on constraint conditions to search for the optimum solution, using bit group information to determine the acceptance of bits and revert if not accepted, thereby reducing the time to reach the optimal solution by making the energy valley shallower and avoiding local solutions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If a strict criterion is set for accepting loads in optimization problems, then the solution quality is improved, but the computation time is prolonged
Solution Approach 1:
The patent segments the bit inversion process by selecting multiple bits simultaneously based on constraint conditions rather than inverting bits one by one. This segmentation approach allows the system to evaluate multiple potential moves at once and select the best combination, improving solution quality while reducing the total number of iterations needed
Solution Approach 2:
The patent performs preliminary selection of bits to be inverted based on constraint conditions before actually executing the inversion. By pre-evaluating which bits should be inverted together to satisfy constraints, the system avoids unnecessary iterations and reaches optimal solutions faster
2Loss of time
If a loose criterion is set for accepting loads, then the computation time is reduced, but the solution quality deteriorates
Solution Approach 1:
The patent incorporates feedback mechanisms where the acceptance determination unit evaluates whether bit inversions satisfy constraint conditions before accepting them. This feedback loop ensures that only valid moves that improve or maintain solution quality are accepted, preventing deterioration while maintaining efficient computation
Solution Approach 2:
The patent changes the parameter of bit inversion from single-bit operations to multi-bit operations selected based on constraint conditions. This parameter change allows the system to make larger, more meaningful moves through the solution space, improving solution quality without proportionally increasing computation time
3Device complexity
If single bit inversion is performed repeatedly, then the search process is simple, but the time to reach optimum solution is prolonged
Solution Approach 1:
The patent merges multiple bit inversion operations into a single coordinated action. By selecting multiple bits that should be inverted together to satisfy constraint conditions, the system combines what would otherwise be multiple separate operations into one efficient step, reducing total iteration time while maintaining solution validity
4Loss of time
If multi-bit inversion is performed, then the time to reach optimum solution is reduced, but the device complexity increases
Solution Approach 1:
The patent performs preliminary selection and evaluation of bits to be inverted before executing the multi-bit inversion. By pre-determining which bits should be inverted together based on constraint conditions, the system simplifies the complexity of multi-bit operations into a manageable selection process that can be executed efficiently
Data Source
AI summary
A non-transitory computer-readable storage medium storing an optimization program that causes a computer to execute a process includes selecting a plurality of bits based on a constraint condition of an optimization problem for each of a plurality of first elements that are search targets of a solution, from bit group information indicating whether each of a plurality of second elements included in each of the plurality of first elements are selected to be used for searching for the solution; when the selected plurality of bits are accepted, inverting the plurality of bits in the bit group information; when the selected plurality of bits are not accepted, inverting the plurality of bits to return to a state before the determining in the bit group information; and searching for the solution of the optimization problem based on a selection status of each of the plurality of bits in the bit group information.


