Improve the Xpress interface and add dynamic loading of the Xpress library#3966
Improve the Xpress interface and add dynamic loading of the Xpress library#3966lperron merged 204 commits intogoogle:mainfrom
Conversation
…axim (#114) * use XPRSmipoptimize and XPRSlpoptimize instead of XPRSminim and XPRSmaxim * clean xpress/environment files * accept changes: empty char* parameter for XPRS*optimize
* remove python script * remove RTE actions * fix test_xpress_interface.cc * remove callback_xpress.py * revert writing colnames and rownames * accept suggestion from Mizux * clean * change cmake/README.md * try fix build bazel * try fix build bazel add MPSWriteError.h * xpress tests gracefully exit if Xpress not found * add integer and linear programming test for dotnet python and java * remove MPSWriteError * try fix Window build * remove useless line from CMakeLists.txt * try fix test under windows * reformat * use XPRESS_LP instead of XPRESS for linear programming examples * tools: add --platform arg when possible make script more resilient/cross-platform * [CP-SAT] convert to PEP8 convention * use XPRSmipoptimize and XPRSlpoptimize instead of XPRSminim and XPRSmaxim (#114) * use XPRSmipoptimize and XPRSlpoptimize instead of XPRSminim and XPRSmaxim * clean xpress/environment files * accept changes: empty char* parameter for XPRS*optimize * Add test on number iterations with LP basis * fix gtests flags * refactor * suggestions by @flomnes * remove unwanted files --------- Co-authored-by: Andrea Sgattoni <[email protected]> Co-authored-by: Laurent Perron <[email protected]> Co-authored-by: Corentin Le Molgat <[email protected]> Co-authored-by: Andrea Sgattoni <[email protected]>
…-squash Co-authored-by: Peter MITRI <[email protected]>
e663e05 to
2f543db
Compare
|
I know the basis status is not optimal. |
Thanks @lperron , |
|
perfect.
Laurent Perron | Operations Research | ***@***.*** | (33) 1 42 68 53
00
Le mar. 21 nov. 2023 à 13:29, Andrea Sgattoni ***@***.***> a
écrit :
… I know the basis status is not optimal. I would still push for merging now.
Thanks @lperron <https://github.com/lperron> ,
After checking the differences we realized that we changed the
dynamic_library.h file in order to have a graceful exit if some Xpress
functions are not found. This change would not be compatible with your
implementation of the Gurobi interface and we are unable to propose a
different solution for Gurobi (we have no way to test it).
We are checking internally (at RTE) for a different solution or in case
mimic what you have done for Gurobi (having a fatal_error if any function
is not_found).
We will correct this issue and push a final commit to remove the draft
tag this week.
Would it be ok for you ?
—
Reply to this email directly, view it on GitHub
<#3966 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ACUPL3N7MARHIULO2REI3DLYFSNDVAVCNFSM6AAAAAA6SNT5GOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMRQHAZTINRRGM>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
|
@lperron I consider this work finalized. We are ready for a merge/further review. |
|
Should I merge ? |
It's good for me |
We have been working on several improvements of the Xpress interface at RTE.
These include
OrtoolsC++SetHintmethod into the XPRESS interface to suggest a feasible solution to XpressWritemethod, a specific exception is raised in case of failurestandardenvironment variables that are set during the Xpress installation-
MPSolver::GetFinalLpBasisInt,-
MPSolver::SetStartingLpBasisIntBUILD_XPRESS_TEST_AND_EXAMPLES- these tests can be run using the community licence of Xpress (bundled with the python installation)