Fixed Issues in Gurobi Optimizer 13.0#

This page lists the issues fixed in Gurobi 13.0.

Fixed Issues in Gurobi 13.0.1#

Optimizer#

  • Fixed numerical issue in disconnected component code that could lead to cutting off an optimal solution

  • Fixed segmentation fault due to an interplay between scaling and OBBT

  • Fixed bug with uploading a model in batch mode to Cluster Manager

  • Fixed count of number of binary variables when they are fixed in an LP file

  • Fixed bug in attribute file writer with missing PI section for barrier solutions without crossover

  • Fixed issue with reordering the matrix (and changing the fingerprint) when barrier is invoked without presolve

  • Fixed segmentation fault for multi-objective LP using PDHG with Crossover=0

  • Fixed inconsistency with infinite constant value in MIN/MAX general constraints

  • Fixed issue with duplicate log lines in multi-objective solve

  • Fixed handling of the Threads parameter when using concurrent environments

  • Fixed rare bug with reduced cost fixing cutting off an optimal solution

  • Fixed issue with distributed concurrent not handling the Threads parameter correctly

  • Fixed a nondeterministic behavior with barrier on macOS and Linux arm64

  • Fixed issue with temporary scaling being kept after writing an ILP file

  • Fixed issue with temporary GomoryPasses=0 change persisting after solve if NumericFocus=2 was used

  • Fixed issue with using MKL OS environment variables and multiple Gurobi environments

  • Fixed issue with a suboptimal barrier solution with Crossover=0 SolutionTarget=1 being unscaled twice and thus leading to a wrong solution

  • Fixed rare floating point exception in presolve with huge values

  • Fixed possible segmentation fault in domain propagation for quadratic constraints

  • Fixed bug with nonconvex QCP incorrectly being declared infeasible

  • Fixed integer overflow in cut strengthening

  • Fixed issue with using too many threads in concurrent LP

  • Fixed segmentation fault when callback produces lazy constraints for multi-scenario models

  • Fixed performance issue in the tuner when results are collected in a remote setup

  • Added missing type hints in gurobipy for some parameters and functions

  • Fixed issue in gurobipy with addConstrs() returning a dictionary with empty keys

  • Removed throw() from some methods in C++ API to be compatible to older compilers

  • Added the missing file closing in the sudoku.py example

  • Fixed compiler warning in the genconstrnl_c++.cpp example

Fixed Issues in Gurobi 13.0.0#

Optimizer#

  • Fixed rare bug in symmetry presolve that can lead to wrong answers

  • Fixed issue with wrong objective bound when using and hitting a user cutoff bound on maximization models

  • Fixed numerical issue in Euclidean presolve reduction with tiny coefficient values

  • Fixed numerical issue in RLT cuts with tiny coefficients that can lead to a wrong answer

  • Fixed an infinite loop in the IIS code that can arise when a sub-MIP solve runs into numerical issues

  • Fixed basis status handling in the simplex crash procedure that could in very rare cases lead to wrong answers

  • Fixed segmentation fault in presolve with handling semi-continuous variables

  • Fixed performance and memory issue with very many solutions in the solution pool

  • Fixed bug with BarPi attribute having the wrong sign for larger-or-equal constraints

  • Fixed bug with an incorrect OPENSCENARIOS callback query value

  • Fixed issue with JSONSolDetail=1 parameter not writing constraint information

  • Fixed performance issue with node files, when many nodes with identical dual bound exist

  • Fixed performance issue in node presolve for constraint with many non-binary variables

  • Fixed a potential wrong answer coming from numerical issues introduced by tiny rhs values of cuts

  • Fixed numerical issue in aggregator that can lead to wrong answers

  • Fixed numerical issue in the parallel row detection that can lead to wrong answers

  • Fixed numerical issue in the barrier termination test that would lead to a wrong infeasible status

  • Fixed bug with a heuristic for MIQCPs that lead to big violations in solutions

  • Fixed numerical issue in the Euclidean presolve reduction that could lead to wrong answers

  • Fixed very rare bug in presolve that could lead to very big violations for models with general or nonlinear constraints

  • Fixed very long delay in concurrent root LP solve if one solver hits the soft memory limit but another takes a long time to solve the LP

  • Fixed numerical issue in QP simplex that could lead to wrong answers

  • Fixed numerical issue in RLT cut separator with variables that have big finite bounds

  • Fixed numerical issue for MIQPs and MIQCPs if an integral node LP solution violates the quadratic constraints

  • Fixed numerical issue in presolve with fixed semi-continuous variables that are fixed to a value slightly outside their semi bounds

  • Fixed logging issue in concurrent MIP that was always showing a time of 0 seconds

  • Fixed numerical issue in row redundancy detection based on reduced costs that could lead to wrong answers

  • Fixed non-deterministic simplex callback invocations when using a Compute Server

  • Fixed UMR when warm starts updates are mixed with other problem modifications

  • Fixed ObjBound and ObjBoundC attributes for LP solves with barrier and crossover

  • Added missing log line about using variable hints if no hint priorities are given

  • Fixed numerical issue in wide split cut separator that can lead to wrong answers

  • Fixed segmentation fault with distributed MIP runs if the XOR presolve reduction is in play

  • Fixed bug in basis handling of QP simplex that could lead to cutting off a feasible solution for an MIQP

  • Fixed small memory leak with multi-scenarios models

  • Fixed memory management in network cuts that could lead to an out-of-memory situation on Windows

  • Fixed issue with incorrect final dual bound after optimality has been proven

  • Fixed handling of numerical challenging SOCPs with automatically switching to homogeneous formulation

  • Fixed bug in parallel root cut loop that could lead to an invalid declaration of infeasibility

  • Fixed floating point overflow issue in mod-k cut separator with big right hand side values

  • Fixed floating point overflow issue in in wide split cuts with big bound values

  • Fixed segmentation fault in NoRel heuristic when given a MIP start solution

  • Fixed very rare segmentation fault in barrier solver

  • Fixed bug in IIS presolve that leads to removing a bound from the IIS that has the IISLBForce or IISUBForce attributes set

  • Fixed performance issue in NoRel heuristic if the Cutoff parameter is set

  • Fixed numerical issue in reduced cost based cut strengthening if variables with big bounds are involved

  • Fixed UMR in NoRel heuristic if incumbent solution changes in between

  • Fixed UMR in branching of MINLPs

  • Fixed UMR in the factorization of the barrier algorithm with handling dense columns

  • Fixed UMR when lazy constraints are added in cut pass 0.

  • Fixed rare UMR in simplex triggered with InfUnbdInfo=1 parameter

  • Fixed UMR in Feasibility Pump heuristic if no simplex basis is available

  • Fixed UMR in parallel cut loop for MIQCPs and MINLPs

  • Fixed issue with the time limit not being respected if the biconnected component presolve runs into a degenerate case

  • Fixed numerical issue in the piece-wise linear column presolve reduction when large negative multipliers are involved

  • Fixed issue with time limit not respected in weak symmetry cut separation

  • Fixed numerical issue in conversion of quadratic into linear constraints that can lead to a numeric error on MIQCPs

  • Fixed segmentation fault in simplex that results from contradicting bounds of a variable

  • Fixed rare segmentation fault in multi-scenario optimization if we get solutions that are not valid in the presolved problem space

  • Fixed issue with ImproveStartNodes parameter switching to the improvement phase without having an incumbent solution

  • Fixed pivot selection in the median algorithm of a presolve reduction that can run into an unlucky case and show quadratic runtime behavior

  • Fixed floating point overflow in an update of pseudo costs for the branching variable selection

  • Fixed issue with unexpected log lines when creating the presolved model

  • Modified Java Poolsearch.java example to no longer use a deprecated function

  • Fixed overflow issue with automatic port selection when connecting to Compute Server

  • Fixed performance issue when using variable or constraint tags in a Compute Server environment

  • Fixed issue with reducing NumStart attribute in a Compute Server environment

Compute Server, Cluster Manager, and Instant Cloud#

The list of fixed issues for Compute Server, Cluster Manager, and Instant Cloud can be found here.