Xpress Updates 9.5.1 is 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#951
This is the latest update for the Xpress 9.5 release branch, respectively, and require matching licenses. Please note that these archives must be extracted over a prior installation of FICO Xpress 9.5, respectively.
Release Notes for 9.5.1
Xpress Optimizer 44.01.02
Runtime Library
https://clientarea.xpress.fico.com/download_patch.php#951
This is the latest update for the Xpress 9.5 release branch, respectively, and require matching licenses. Please note that these archives must be extracted over a prior installation of FICO Xpress 9.5, respectively.
Release Notes for 9.5.1
Xpress Optimizer 44.01.02
- Improved the numerical handling in presolve of very large rows.
- Fixed an issue with a local search heuristic running on a background thread for MIQPs.
- Fixed an issue with semi-continuous columns in presolve
- Fixed: Loading a semi-continuous variable with negative upper bound now returns an immediate error at load time, because the model is trivially infeasible.
- Linux binaries now include a "Build ID"
- Fixed an issue in IIS resulting in data loss if a subproblem solve fails.
- Fixed an issue in the hybrid gradient algorithm when used with LP folding and crossover.
- Fixed issues with integer deltas in MISLP.
- If several licenses are available, a license authorizing the global solver will now only be consumed when the global solver is invoked. Note that to guarantee this behaviour, the NLPSOLVER control must not be set to AUTOMATIC.
- Python
- Added support for more iterable index set types to problem.addVariables, including Pandas Series with sparse integer indices.
- Improved performance of problem.addrows, problem.addcols and problem.loadproblem, when names are provided.
- Collections of indicator tuples can now be provided to problem.addIndicator.
- Passing an array of expressions in the body argument of xpress.constraint() now raises an error, instead of silently using the first element as the constraint body.
- Fixed a crash when passing names=None to problem.addnames.
- Fixed a crash when passing a generator for an array argument, when the generator does not produce enough values.
- Fixed a crash when the problem.getCallbackPresolveXxx functions were called with index arguments.
- Fixed a problem where a semi-continuous, semi-integer or partial integer threshold of zero was ignored when creating linked variables.
- The default threshold for semi-continuous, semi-integer and partial integer variables is now 1.
- Using variable/constraint objects from a callback or when the problem is presolved is no longer deprecated.
- C++
- Fixed some compilation problems in C++ header files that occured when using clang-15 and -std=c++20
- The makefile shipped in the examples directory on Windows now adds /EHsc to the compiler flags to avoid warnings.
- Fixed a problem in the example makefiles.
- Fixed a problem in which an application might crash if a callback was installed and the global solver was used.
- C
- Fixed a problem in the example makefiles.
Runtime Library
- The matrix generator now detects and reports invalid bounds for semi continuous and semi integer decision variables.
Updated 1 year ago
Version 3.0FICO
Community Manager
Joined July 21, 2025
FICO® Xpress Optimization Blog
Follow this blog board to get notified when there's new activity