Polishing Algorithm for Mixed Integer Programming Solution Pool
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current methods for solving mixed integer programming (MIP) problems face challenges such as limited resource efficiency, reduced solution diversity, and difficulty in passing desirable properties from parents to offspring, leading to suboptimal results and significant optimality gaps in complex optimization models.
Innovation Solution
A domain-independent evolutionary algorithm, referred to as the 'polishing algorithm,' is implemented to improve MIP solutions by iteratively mutating and combining seed solutions within a solution pool, maintaining a fixed-size pool of diverse solutions and ensuring desirable properties are passed to offspring, while operating within resource constraints.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional MIP solving methods are used, then solutions can be found, but resource efficiency is limited and optimality gaps remain significant
Solution Approach 1:
The patent replaces traditional mechanical MIP solving methods with a biological evolutionary algorithm. The system uses evolutionary operators (selection, crossover, mutation) to iteratively improve solutions, replacing conventional branch-and-bound or simplex methods with a bio-inspired search process that can efficiently navigate complex solution spaces while respecting resource constraints.
Solution Approach 2:
The patent dynamically adjusts key parameters including population size, mutation rate, and crossover rate during the evolutionary process. These parameters are modified based on solution quality and computational time elapsed, allowing the algorithm to adapt its search behavior to maximize both resource efficiency and solution optimality under varying computational conditions.
2Reliability
If evolutionary algorithms are used to improve MIP solutions, then solution quality improves, but solution diversity is reduced
Solution Approach 1:
The patent segments the solution space by maintaining a diverse population of candidate solutions, where each individual represents a potential solution with specific variable assignments. This segmentation allows the algorithm to explore different regions of the solution space simultaneously, preserving diversity while converging toward high-quality solutions through selective pressure.
Solution Approach 2:
The patent implements dynamic behavior in the evolutionary algorithm by allowing individuals to undergo mutation and recombination operations that adaptively modify their characteristics. The algorithm dynamically adjusts which solutions are selected for reproduction and how they are combined, enabling the population to maintain diversity while progressively improving solution quality based on real-time performance feedback.
3Reliability
If more computational resources are allocated, then better solutions can be found, but time limitations are exceeded
Solution Approach 1:
The patent performs preliminary actions by evaluating multiple candidate solutions in parallel during each generation, creating a diverse population that represents potential solutions before the main optimization process begins. This preliminary diversification allows the algorithm to identify promising solution regions early, reducing the time needed for subsequent optimization while maintaining high solution quality.
Solution Approach 2:
The patent maintains continuous useful action through iterative generations where solutions are continuously improved through selection, crossover, and mutation operations. The algorithm continuously evaluates and refines solutions without interruption, maximizing solution quality within the available time frame by maintaining productive computational activity throughout the entire optimization process.
Data Source
AI summary
Systems and methods for generating improved solutions to MIP models are described. The present invention involves the use of a polishing algorithm that uses mutation and combination of solutions within a solution pool to generate improved solutions. The polishing algorithm first randomly selects one or more seed solutions from a solution pool for mutation. The selected seed solutions are mutated by fixing a subset of integer variables in the models to the value they take in the seed solution. The remaining variables are then formulated into a sub-MIP problem that is solved by the MIP solver. The solutions generated from this mutation process may then be added to the solution pool. After the one or more iterations of the mutation processes have taken place, the polishing algorithm then selects one or more pluralities of parent solutions from the solution pool to use in generating offspring solutions. The integer variables that agree between one plurality of parent solutions are fixed in the offspring solution. The remaining variables are then formulated into a sub-MIP problem that is solved by the MIP solver. The offspring solutions generated by the combination process may then also be added to the solution pool.


