Blog Post

FICO® Xpress Optimization Blog
4 MIN READ

Xpress Updates 9.6.3 and 9.7.2

FICO's avatar
FICO
Community Manager
2 months ago
Xpress Updates 9.6.3 and 9.7.2 are now available on SharePoint for Windows, Linux and MacOS on x86-64, and Linux and MacOS on AArch64, from

https://clientarea.xpress.fico.com/download_patch.php#963
https://clientarea.xpress.fico.com/download_patch.php#972

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

Release Notes for both 9.6.3 and 9.7.2

Xpress Optimizer 45.01.04
  • Fixed a problem in the tuner when tuning probsets and reusing the history where the wrong number of tuner runs was read from the history.
  • Fixed a threading deadlock in the context of loading violated delayed rows.
  • Calling XPRSscale after solving a MIP should now scale the incumbent MIP solution correctly.
  • Fixed a potential crash in dual KKT Simplex.
  • Fixed an issue when XPRSchgcoltype is used for changing a semi-continuous variable into a semi-integer variable, which could have left the column in an inconsistent state.
  • Fixed an issue with disconnected component solves that could result in a sub-optimal solution being returned.
  • Ensured that a minimum tolerance on GCDs is respected.
  • Fixed an issue with IIS returning the wrong status for a feasible MIP.
  • Significantly reduced initialization overhead for lpoptimize/mipoptimize, in particular when OUTPUTLOG is set to XPRS_OUTPUTLOG_NO_OUTPUT.
  • Fixed a problem where calling XPRSsetdefaults reset the problem name.
  • Fixed a potential crash during presolve when converting quadratic rows into second-order cones.
  • Fixed a problem with getCallbackPresolveSolution(), getCallbackPresolveSlacks(), getCallbackPresolveRedCosts(), getCallbackPresolveDuals() in Java, C#, C++ APIs: the overload without index arguments previously raised a "bad index" exception. This is now fixed.
  • Fixed an issue in quadratic presolve deriving invalid variable bounds.
  • Fixed an issue with the community license, that could cause the optimizer to take a different solution path with respect to the path taken when used with a full license.
  • Fixed a potential crash when branching on MIQPs with a single column and no rows (including such problems within heuristics).
  • Fixed a potential crash in strong branching with KKT simplex.
  • Fixed an issue in presolve where in some edge cases incorrect fixings could be produced from quadratic or indicator rows.
  • Fixed the problem detection for tuning with multiple instances to correctly distinguish LP and MIP problem sets.
  • Fixed an issue where primal simplex could return a slightly infeasible solution.
  • Fixed an issue in MIP presolve dual reductions that in some corner cases could lead to a wrong node cutoff during the branch-and-bound tree search.
  • Fixed an issue with the tuner that in some cases did not use its history.
  • Adjusted primal simplex to accept small shifted infeasibilities instead of rejecting the solution as unstable.
  • Fixed an issue in background tasks that in some corner cases could lead to a non-determinism in the solution process when heuristic emphasis is activated (i.e., when the control HEUREMPHASIS is set to value 1 or value 2).
  • Fixed an issue in IIS that in some rare cases could lead to a crash.

Xpress Nonlinear 45.01.04
  • Fixed an issue where indicator constraints, including ones generated through transformations, were provided to Knitro as hard constraints.
  • Fixed an issue where postsolve and validate could potentially delete an equalscolumn that was already present in the input problem.
  • Fixed an issue where linear coefficients added to a nonlinear variable after adding an SLP coefficient to it (not a regular formula) could be ignored.
  • Fixed an issue with nonlinear indicators that could lead to the basis being lost and incorrect slacks being returned for the indicator.
  • Fixed an issue in MISLP heuristics for problems with convex quadratic objective.
  • Fixed an issue with nonlinear eliminations in the presence of indicator constraints.
  • Fixed an issue where MISLP could erroneously be called after continuing a continuous SLP solve using XPRSoptimize.
  • Fixed an issue where solutions did not get postsolved correctly if the multistart-winning job ran into a work limit.
  • Fixed an issue where an initial infeasible multistart job could remain the winner.
  • Fixed an issue where XPRSgetnlpsol and XPRSgetcallbacksol would return linearization instead of nonlinear slacks when presolve was disabled.
  • Introduced XSLPsetinitstepbounds to replace missing functionality from XSLPaddvars.
  • Fixed a potential stack overflow in nonlinear presolve for deeply nested formulas.
  • Fixed computation of XPRS_SLPMIPITER attribute in SLP-MIP-SLP.
  • Fixed an issue with userfunctions returning derivatives when some of the input arguments of the user function in the formula were constant.
  • Fixed a potential crash for userfunctions providing derivatives.

Xpress Global 45.01.04
  • Fixed an issue with domain propagation of the power function that could result in feasible solutions being dropped.
  • Fixed an issue related to setting CALLBACKFROMMAINTHREAD=1 for global solves.

Xpress Interfaces 45.01.04 (Python, R, Java, C#)
  • Python
    • Fixed "Variable has no value" error when passing a dict keyed by var objects to xpress.evaluate().
  • R
    • Fixed interface compatibility with R version 4.5.0 and above.
  • Java
    • Fixed an ArrayIndexOutOfBoundsException in functions like getSolution(Stream<Variable>) in the Java API.
    • Fixed a small problem in examples that use the solution pool.
  • C#
    • Fixed a small problem in examples that use the solution pool.

Xpress BCL 45.01.04
  • Fixed an issue with calling the obsolete functions XPRBsolve, XPRBminim and XPRBmaxim after an interrupted solve.

Xpress Mosel 6.10

Mosel 6.10.1
  • Compiler Library: Native routines requiring lists/sets/arrays of unions are now properly compiled.
mmxnlp 34.5.4
  • Lower memory consumption on detection of quadratic constraints.
mmnl 2.6.4
  • Improved handling of memory errors.
  • Lower memory consumption when generating matrices of quadratic coefficients.
Updated 2 months ago
Version 3.0
No CommentsBe the first to comment