Fixed Issues in Gurobi Optimizer 12.0
This page lists the issues fixed in Gurobi 12.0.0.
Fixed Issues in Gurobi 12.0.2
Optimizer
Fixed floating point exception with
POW
constraints
Fixed an integer overflow when reading an
attr file
Fixed an issue with an infinite violation on nonlinear models that have poles in
POW
constraints
Fixed an issue with returning a solution value of x=0 for a
LOG
constraint
Fixed wrong declaration of infeasibility on models with
piecewise-linear objective
Fixed numerical issues with handling
TAN
functions
Fixed wrong answer bug in
PreQLinearize
handling of maximization problems with quadratic objective
Fixed performance issue in presolve for MINLPs if too many redundant constraints are detected
Fixed a UMR in MINLP presolve
Fixed possible segmentation fault in presolve for models with quadratic objective
Fixed bug that solving a model with
multiple scenarios
and
multiple starts
returns an error
Fixed issue with
variable hints
not being used in the model fingerprint calculation if
hint priorities
are not set
Fixed issue with
variable hints
not being written to the attribute file if
hint priorities
are not set
Fixed rare segmentation fault in heuristic for models with
variable hints
and numerically problematic LP relaxations
Fixed integer overflow in simplex memory allocation that results in a false out-of-memory error
Reduced performance and memory overhead in some situations for MIP models with disconnected components
Fixed possible segmentation fault for MIP models with disconnected components
Fixed numerical issue in the parallel row presolve reduction that could lead to a solution with large violation
Fixed issue for MIP models with disconnected components that could lead to wrong answers
Fixed potential segmentation fault in simplex algorithm
Fixed bug with dual simplex incorrectly returning an error
10025
for models with more than 2 billion nonzeros
Fixed wrong declaration of unboundedness on small nonconvex QP
Fixed issue that providing a
warm start
but setting
LPWarmStart=0
takes a different simplex solving path than omitting the warm start
Fixed bug with implied bound computation for quadratic constraints that could lead to wrong answers
Fixed numerical issue in
IIS algorithm
that could lead to a wrong IIS result
Fixed bug in presolve reduction that detects an XOR structure, which could lead to wrong answers
Fixed numerical issue with an unbounded nonconvex MIQCP that was declared optimal
Fixed heap-buffer-overflow in mps reader when reading
multi-scenario
names
Fixed numerical issue in simplex that could lead to a seemingly infinite loop
Fixed error code returned from
GRBstartenv
when trying to use a Compute Server with a light Gurobi client library
Fixed potential segmentation fault on nonconvex models caused by nonlinear barrier algorithm
Fixed very rare performance bug in presolve aggregator
Fixed inconsistency in C++ API for the default value of abstol in
setObjectiveN
method
Fixed
ConvertToFixed
method in .NET API
Fixed
convertToFixed
method in Java API
Fixed issue in Maven pom file that leads to a warning or error about an invalid Gurobi pom file
Added
DYLD_LIBRARY_PATH
to MacOS examples Makefile
Tuning Tool
Fixed issue in tuning tool where Gurobi would not switch to the
RUNTIME criterion
after it found a parameter setting that could solve all models to optimality
Fixed Issues in Gurobi 12.0.1
Missing
GRBloadenv
and
GRBemptyenv
symbols in the C library have been restored
Fixed bug and numerical issue in domain propagation of LOGISTIC and TAN functions
Fixed bug in presolve that can lead to wrong objective value calculation
Fixed bug with incorrect
SolCount
attribute value when using the
PoolGap
parameter
Fixed bug in object oriented APIs with duplicate variable indices in the objective functions of multi-objective models
Fixed numerical issue with reporting a feasible solution to the user while the problem was already declared infeasible
Fixed rare uninitialized memory read when accessing the simplex basis, which may lead to non-deterministic behavior
Fixed performance bug in multi-objective solves when crushing an objective function into the presolved model space
Fixed issue in multi-objective solves that can lead to unexpected error code
20000
Fixed very rare segmentation fault when using node files
Fixed bug with nonlinear presolve reductions invalidating lazy constraints produced in the callback
Fixed bug in the tuning tool used with a WLS license
Fixed unexpected error
10005
after multi-objective solve
Fixed bug in simplex-internal reduced cost strengthening that can lead to wrong answers for MIP models
Use safer numerics in domain propagation of quadratic constraints to avoid numerical issues
Fixed issue where the
MIPGap
setting could lead to a path change in the MIP tree search
Fixed infinite loop in IIS algorithm resulting from numerical issues in a sub-system solve
Fixed behavior of
GRBpresolvemodel
and
Model.presolve
methods when a restart is triggered during presolve
Fixed numerical issue in domain propagation of linear constraints with very small coefficients that can lead to wrong answers
Fixed bug with missing error messages when model size exceeds license limits
Fixed issues in presolve with handling the DIVIDE operator in general nonlinear functions
Fixed numerical issue in mixing path cut separator that could lead to wrong answers
Fixed bug in implicitly handling lower bounds in cone constraints that can lead to sub-optimal termination for infeasible SOCPs
Fixed segmentation fault with using MIP starts on MINLP models
Fixed bug that leads to invocation of
Model.cbStopOneMultiObj
terminating multi-objective solves completely
Fixed bug in presolve for quadratic constraints that could lead to wrong answers for MIQCPs
Model.addConstr
now raises an explicit exception for invalid syntax involving NL constraints
Fixed error message in gurobipy when trying to optimize again an asynchronously optimized model that has already been closed
Fixed bug in presolve for QUBO models and
PoolSearchMode=2
that leads to not anymore finding all feasible solutions
Fixed bug in presolve with non-convex quadratic constraints being modeled as general nonlinear constraints always leading to non-PSD error even if non-convex constraints should be allowed
Fixed bug with ignoring resource parameter limits like
Threads
or
MemLimit
with multi-objective or concurrent environments
Fixed bug with ignoring lazy constraints from the callback if the callback calls
Model.message
.
Removed warning about big bounds that had been introduced by Gurobi during presolve
Fixed memory leak in barrier when presolve decided to explicitly dualize the model
Fixed potential segmentation fault with general nonlinear constraints containing plus and mult operators
Fixed numerical issue in Euclidean presolve reduction that could lead to wrong answers
Fixed constraint sense in
gc_funcnonlinear
example for MATLAB and R
Fixed numerical issue in the envelope calculation for SIN and COS nonlinear function constraints
Fixed numerical issue for POLY nonlinear function constraints with tiny coefficients
Fixed numerical issue in a presolve reduction that detects piece-wise linear objectives, which can lead to wrong answers
Fixed potential segmentation fault in presolve for general nonlinear constraints
Fixed numerical issue in presolve for cliques with continuous variables
Fixed potential segmentation fault in a very rarely called heuristic
Fixed issue that fingerprint attribute for a model with piece-wise linear objective function on macOS ARM can be different than on other platforms.
Fixed Issues in Gurobi 12.0.0
Optimizer
Properly sign Windows dll and executables and .NET library
Fixed issue with empty error messages for function calls from callback
Fixed issue with infinite recursion if
GRBmsg
is called from
within a message callback
Reduced number of malloc calls to avoid issues with memory fragmentation
that may lead to out-of-memory errors
Removed runtime overhead from querying OS information for logging that
could be noticed when solving thousands of tiny models
Fixed a potential segmentation fault when setting an integer attribute of
a
general constraint
Fixed read error for
OPB
files at the end of the file
Fixed issue in
OPB
file reader when the resulting
quadratic problem has more than 2 billion quadratic terms
Fixed very rare numerical issue in presolve that could lead to wrong
answers
Fixed numerical issues in presolve that could lead to a wrong declaration
of infeasibility
Fixed numerical issues in parallel column presolve reduction that could
lead to wrong answers
Fixed issue with inconsistent objective values if uncrushing improves
(for numerical reasons) the objective value
Fixed rare issue with presolve reduction that combines an inequality with
an equation that is parallel to it, leading to a wrong answer
Fixed issue in presolve with general
piecewise-linear constraint
that can lead to large constraint
violations
Fixed potential segmentation fault in presolve for models with both
quadratic equalities
and a
quadratic objective
Fixed rare issues in MIQCP presolve that could lead to wrong answers
Fixed some numerical issues in the simplex algorithm
Fixed numerical issue in dependent row presolve for LPs that could lead
to wrong declaration of infeasibility
Fixed issue with infinite cycling in QP simplex
Fixed very rare issue with super basic variables handling in LP
relaxations of MIPs that could lead to wrong answers
Fixed memory leak in simplex when switching from primal to dual and
solving again with primal
Fixed issue with dual violations if a continuous model with a
piecewise-linear objective
is solved
by barrier without crossover
Fixed bugs in barrier that could arise for models with more than 2
billion non-zeros
Fixed potential segmentation fault in SOCP when there are more cones than
linear constraints
in the model
Fixed issue with wrong objective sense for maximization models that are
solved with barrier, use the explicit dual model and exploit symmetry
Fixed issue with
IntegralityFocus=1
that could lead to a wrong answer
Fixed issue in MIP cleanup with accepting a solution that has too large
constraint violations
Fixed numerical issue in cut lifting that could lead to wrong answers
Fixed very rare segmentation fault in a special case of clique and
implied bound cuts
Fixed performance issue with the interior point heuristic for nonconvex
MIQCPs not benefitting from the user-specified
PStart
values
because they are incorrectly discarded
Fixed issue with an infinite loop in MIQCP solving if outer approximation
is unbounded
Fixed numerical issue with small values in presolve for
quadratic
constraints
that could lead to wrong
answers
Fixed bug with spatial branching for nonconvex models that could result
in excessively large node files or memory consumption
Raise error earlier if there are more than 2 billion quadratic terms in
the
quadratic constraints
Removed wrong warning log message about
piecewise-linear objective
for an IIS solve on a model with
general function constraints
Fixed issue with incorrect handling of the
WorkLimit
parameter in individual
multi-objective environments
Fixed issues with getting a wrong primary objective function in a
multi-objective model
without an update
call before setting the secondary objective
Fixed inconsistencies in the interplay of the global
Threads
parameter and the
Threads
parameters of
concurrent environments
Tuning Tool
Fixed handling of fixed parameter settings in remote tuning sessions
gurobipy
Fixed usage of
np.array()
for numpy 2.0 compatibility
Compute Server, Cluster Manager, and Instant Cloud
The list of fixed issues for Compute Server, Cluster Manager, and Instant
Cloud can be found
here
.