Neural Network Heuristics for Mixed Integer Program Solving
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional Mixed Integer Programming (MIP) solvers are computationally intensive and not adapted to parallel processing hardware, failing to exploit shared structures among different MIP instances effectively.
Innovation Solution
A deep neural network is employed to generate multiple partial assignments for MIP instances, leveraging parallel processing hardware by distributing the workload among multiple devices to solve large-scale MIPs efficiently, using a trained model that learns heuristics from a set of training MIP instances.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If conventional MIP solvers are used, then high-quality solutions can be obtained, but the computational time and resource consumption increase significantly
Solution Approach 1:
The patent divides the MIP solving process into two distinct stages: (1) a neural network generates multiple partial assignments for integer variables, and (2) a MIP solver processes each partial assignment to generate candidate final assignments. This segmentation allows the computationally intensive MIP solver to be applied only to smaller subproblems rather than the full MIP at once, significantly reducing overall computational time while maintaining solution quality.
Solution Approach 2:
The neural network performs preliminary action by generating partial assignments before the MIP solver processes the data. By pre-computing these partial assignments using the trained neural network model, the system prepares the MIP solver with useful constraints and variable assignments in advance, reducing the solving time required for each candidate final assignment.
2Productivity
If conventional MIP solvers are used, then solutions can be obtained, but parallel processing capabilities are not utilized
Solution Approach 1:
The patent segments the solving process into independent tasks that can be executed in parallel: the neural network generates multiple partial assignments independently, and the MIP solver can process each partial assignment simultaneously on different parallel processing devices. This segmentation enables effective parallelization, improving productivity without requiring complex hardware architecture changes.
Solution Approach 2:
The system generates more partial assignments than would be processed individually by the MIP solver alone. By creating multiple candidate final assignments from the partial assignments and then selecting the best ones, the system achieves better solution quality faster than conventional solvers would need to search through all possibilities sequentially.
3Adaptability or versatility
If conventional MIP solvers are used, then solutions can be obtained, but shared structure among different MIP instances cannot be exploited
Solution Approach 1:
The neural network is trained on a set of training MIP instances and learns to generate partial assignments that can be applied to new, unseen MIP instances. This universal model captures shared structures and patterns across different MIP problems, allowing it to provide useful partial assignments for diverse MIP instances without requiring problem-specific solving strategies, thereby reducing solving time while maintaining adaptability.
Data Source
AI summary
Methods, systems, and apparatus, including computer programs encoded on computer storage media, for solving mixed integer programs (MIPs) using neural networks. One of the methods includes obtaining data specifying parameters of a MIP; generating, from the parameters of the MIP, an input representation; processing the input representation using an encoder neural network to generate a respective embedding for each of the integer variables; generating a plurality of partial assignments by selecting a respective second, proper subset of the integer variables; and for each of the variables in the respective second subset, generating, using at least the respective embedding for the variable, a respective additional constraint on the value of the variable; generating, for each of the partial assignments, a corresponding candidate final assignment that assigns a respective value to each of the plurality of variables; and selecting, as a final assignment for the MIP, one of the candidate final assignments.


