Blog Post

FICO® Xpress Optimization Blog
3 MIN READ

Xpress Updates 9.2.10 and 9.3.4

FICO's avatar
FICO
Community Manager
2 years ago
Xpress Updates 9.3.4 and 9.2.10 are now available on the client area for Windows, Linux and MacOS on x86-64, and Linux and MacOS on AArch64, from

https://clientarea.xpress.fico.com/download_patch.php#934
https://clientarea.xpress.fico.com/download_patch.php#9210

These are the latest updates for the Xpress 9.3 and 9.2 release branches, respectively, and require matching licenses. Please note that these archives must be extracted over a prior installation of FICO Xpress 9.3 and 9.2, respectively.

Release Notes for both 9.3.4 and 9.2.10

Xpress Optimizer 42.01.09
  • Fixed some multi-threading issues with the 'B' heuristic for MIPs.
  • Fixed an issue that could result in MIP callbacks being fired from a different thread than the main thread when setting CALLBACKFROMMASTERTHREAD=1 and THREADS=1.
  • Fixed an issue with presolving of MIPs with indicator constraints that could result in invalid tightenings.
  • Fixed an issue when setting OBJSCALEFACTOR for MIQPs that could result in a sub-optimal solution being returned.
  • Fixed an issue in the crossover which could cause a crash.
  • Fixed an issue where a wrong solution could be returned by XPRSgetlpsol in a preintsol callback fired before the initial LP relaxation has been solved.
  • Improved the numerical handling when presolving MIPs with very poorly scaled coefficients.
  • Fixed a deadlock that could occur when querying attribute values from callbacks.
  • Fixed an issue in the barrier algorithm which could cause a crash.
  • Fixed an issue where the LP relaxation solution was not available after a MIP solve that was completely presolved away.
  • Fixed an issue in the mod2 presolver.
  • Fixed a numerical issue in presolving that can lead to a wrong solution.
  • Improved numerical handling of large bound values.
  • Fixed an issue with restarts in component presolver.
  • Improved error message when a duplicate name error occurs.
  • In multi-objective problems, the beforeobjective and afterobjective callbacks are now fired for empty objectives with non-zero weight. Objectives with zero weight are considered disabled and will continue to be skipped.
  • Fixed an issue where the solution was sometimes unavailable when a multi- objective solve was interrupted after the first objective.
  • Fixed an issue with tolerances that could lead to incorrect cancellation of coefficients during presolve.

Xpress Nonlinear 42.01.09
  • Fixed an issue on problems with non-convex quadratic objective and pre-existing objective transfer row that could lead to wrong results.
  • Fixed a potential crash on nonlinear problems with binary rows with only a few repeating coefficients (where the configuration presolver would have been applied).
  • Fixed an issue with reading in .lp files with nonlinear coefficients like y * { x ^ 2 } <= 1 .
  • Fixed an issue that could lead to a wrong value for the objective transfer column when the objective coefficient was not +1.

Xpress Global 42.01.09
  • Fixed a potential crash on problems with complementarity constraints.

Xpress Interfaces 42.01.09 (Python, R, Matlab, .NET, Java)
  • Fixed an issue that caused API calls that change nonlinear formulas, to be recorded incorrectly when API recording is enabled.
  • Fixed a crash when calling XPRS.license(int) from Java and .NET.
  • [Python] Fixed some issues with problem.getcutlist. It will now correctly return the list of loaded cuts and return the number of cuts.
  • In Python, problem.getSolution now raises an error after interrupting a MIP solve before a solution is found.
  • On Intel platforms, the Python interface requires OpenMP 2024.1 or earlier, due to an incompatibility in 2024.2.

Xpress Mosel 6.4.7

mmxprs 4.2.3
  • 'estimatemarginals' now raises an error if the problem is presolved, since the functionality is not available in that case
  • The constant part of objective sometimes had the wrong sign when formulated with mmquad
  • Fixed an error that occurred when a multi-objective problem has nlctr objectives but they are all linear
Updated 2 years ago
Version 3.0
No CommentsBe the first to comment