Breakthrough New Capability

With the release of Gurobi 9.0’s addition of a new bilinear solver, the Gurobi Optimizer now supports non-convex quadratic optimization. This groundbreaking new capability allows users to solve problems with non-convex quadratic constraints and objectives – enabling them to find globally optimal solutions to classic bilinear pooling and blending problems and continuous manufacturing problems.

 

Business Applications

Companies utilizing mathematical optimization are able to apply non-convex quadratic optimization to a number of industries and problems including:

  • Pooling problem (blending problem is LP, pooling introduces intermediate pools, which lead to bilinear constraints)
  • Petrochemical industry (oil refinery: constraints on ratio of components in tanks)
  • Wastewater treatment
  • Emissions regulation
  • Agricultural / food industry (blending based on pre-mix products)
  • Mining
  • Energy
  • Production planning (constraints on ratio between internal and external workforce)
  • Logistics (restrictions from free trade agreements)
  • Water distribution (Darcy-Weisbach equation for volumetric flow)
  • Engineering design
  • Finance

 

General MINLP:

  • For general MINLP, another important building block is the support to get automatic
    piece-wise linearization of certain standard non-linear univariate functions like y =
    exp(x), y = sin(x), or y = log(x).
  • Gurobi 9.0 allows to use certain standard non-linear univariate functions like y =
    exp(x) or y = sin(x) in a model. These are automatically approximated using piece-wise
    linear functions.
  • Many classes of general MINLPs can be solved by using these non-linear univariate
    functions and approximating multi-variate functions as polynomials. But note that with
    higher degrees of polynomials, the numerics of the problem become more challenging.

 

Standard Pooling Problem:

Pooling problems are common in the petrochemical refining, wastewater treatment, and mining industries. This problem can be regarded as a generalization of the minimum-cost flow problem and the blending problem. We construct a non-convex mixed-integer quadratically-constrained programming (MIQCP) model of this problem, implement this model in the Gurobi Python API, and compute an optimal solution.

 

Meet the Experts

What's
New at Gurobi