A mixed-integer programming (MIP) solver is a type of optimization software that can solve mathematical models in which some of the decision variables are integers. MIP solvers typically use a branch-and-cut algorithm to identify the best possible solution given an objective function.
A MIP solver generally works by applying a branch-and-bound algorithm, which divides the problem into smaller subproblems. These subproblems are then solved recursively to find the best solution.
At each node of the branching tree, the solver relaxes the integrality constraints and solves a linear programming (LP) problem, which provides either a lower bound or an upper bound (for maximization and minimization problems, respectively).
The solver will then compare the LP solution with the incumbent solution and decide whether to remove unnecessary branches (if it cannot improve the current best solution) or to branch further (if it can potentially improve the current best solution).
The main difference between MIP and LP is that MIP includes both integer and continuous variables, while LP includes only continuous variables.
The addition of integer variables makes MIP problems more complex and computationally challenging to solve compared to LP problems.
MIP is widely used across a variety of fields, including:
The key components of a MIP problem :
Common algorithms used in MIP solvers include:
To model a problem for a MIP solver, you need to:
GUROBI NEWSLETTER
Latest news and releases
Choose the evaluation license that fits you best, and start working with our Expert Team for technical guidance and support.
Request free trial hours, so you can see how quickly and easily a model can be solved on the cloud.