Integer Programming Search with Metaheuristic Branch Pruning
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The branch and bound method for solving integer programming problems faces inefficiencies as calculation time increases with problem scale, leading to insufficient improvement in solving performance.
Innovation Solution
A data processing apparatus and method that combines a metaheuristic method with a branch and bound method, utilizing branch cutting based on evaluation function values from the metaheuristic search to prune unnecessary subproblems in the branch and bound search, while sharing solution data between the two methods.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the branch and bound method is used to solve integer programming problems, then exact solutions can be obtained, but calculation time increases significantly as problem scale increases
Solution Approach 1:
The patent combines the branch and bound method with a metaheuristic method (such as simulated annealing or tabu search) to create a hybrid approach. The metaheuristic method provides fast approximate solutions that can serve as lower bounds, which are then used to prune branches in the branch and bound tree, thereby reducing the overall calculation time while maintaining the ability to find exact solutions when necessary.
Solution Approach 2:
The patent implements a feedback mechanism where the metaheuristic method continuously provides approximate solution bounds that feed back into the branch and bound process. These feedback bounds are used to dynamically adjust the search strategy, prune unnecessary branches, and improve the efficiency of the exact solution search.
2Reliability
If the branch and bound method is used without branch cutting, then all subproblems are explored thoroughly, but solving performance is insufficient due to redundant calculations
Solution Approach 1:
The patent extracts and removes redundant branches from the search tree using branch cutting techniques. By identifying branches that cannot possibly lead to better solutions based on the metaheuristic lower bounds, the method selectively removes these unnecessary subproblems from exploration, thereby improving solving performance without compromising the completeness of the search for optimal solutions.
Solution Approach 2:
The patent changes the parameter of branch cutting by introducing dynamic lower bounds from the metaheuristic method. This allows the branch and bound process to adaptively adjust which branches to explore and which to prune, optimizing the balance between solution completeness and solving performance based on the current state of the search.
3Adaptability or versatility
If separate metaheuristic and branch and bound searches are performed, then each method can optimize independently, but solution data cannot be shared leading to redundant computations
Solution Approach 1:
The patent merges the metaheuristic and branch and bound searches into a unified framework where both methods operate simultaneously but cooperate through shared data structures. The metaheuristic method maintains a global lower bound that is shared with the branch and bound process, eliminating redundant computations while preserving the independence of each method's core algorithms.
Solution Approach 2:
The patent creates a universal search framework that serves multiple functions: the metaheuristic method provides both approximate solutions and lower bounds, while the branch and bound method provides exact solutions and branch cutting. Both methods share common data structures and communication mechanisms, allowing them to leverage each other's strengths without redundant computations.
Data Source
AI summary
A processing unit carries out a process for performing a first solution search for an integer programming problem including a plurality of state variables using a metaheuristic method, and a second solution search using a branch and bound method for the integer programming problem relaxed linearly. In the process, the processing unit identifies, based on information on first solutions calculated for each of a plurality of subproblems obtained through branching operations in the second solution search, some of the plurality of state variables whose values are fixed in any of the plurality of subproblems; performs the first solution search while keeping fixed the values of the identified some of the plurality of state variables; and performs branch cutting in the second solution search using a first evaluation function value of a second solution obtained by the first solution search.


