powsybl / powsybl-open-rao

A toolbox based on powsybl framework dedicated to power systems coordinated capacity calculation and security analysis projects
Mozilla Public License 2.0
15 stars 6 forks source link

More robust MIP + OR-Tools bump #1086

Closed pet-mit closed 2 months ago

pet-mit commented 2 months ago

Please check if the PR fulfills these requirements

What kind of change does this PR introduce?

Bug fix

What is the current behavior?

MIP resolution can have unexpected behaviour (eg give out a suboptimal solution) when using too large numbers that do not exceed its own definition of infinity, or too small numbers that are not zero (because of scaling algorithms).

What is the new behavior (if this is a feature change)? Now "infinity" value is defined solver-wise, and used where suitable. For instance, for XPRESS we should use 1e20 instead of 1e10. Plus, maxTso & maxRa constraint is skipped for cases where the maxTso/maxRa value is too large (and useless), in order to avoid badly conditionned MIPs. Also, using infinity showed there was a bug in or-tools v9.9, so we bumped up to v9.10.

Does this PR introduce a breaking change or deprecate an API?