Uno icon indicating copy to clipboard operation
Uno copied to clipboard

[WIP] Reoptimization capabilities

Open cvanaret opened this issue 10 months ago • 1 comments

Added reoptimization capabilities to Uno, using the existing WarmstartInformation object:

  • [x] pass the WarmstartInformation object as a parameter to Uno::solve(), instead of creating it within the function;
  • [x] modify the WarmstartInformation object at the end of each major iteration, not at the beginning;
  • [x] generate reformulation on the fly in ConstraintRelaxationStrategy, instead of storing it once and for all;
  • [ ] determine whether the initial point of the reoptimization (= the solution to the previous problem, at which the functions were not evaluated!) is close enough to the previous iterate. If so, use the evaluations as is. If not, reevaluate them.

Guidelines for a good reoptimization:

  • the WarmstartInformation object must be updated properly between consecutive calls to ``Uno::solve() (e.g. the field variable_bounds_changed must be set to true if the variable bounds change);
  • the initial iterate should be the previous solution Result.solution.

Addresses https://github.com/cvanaret/Uno/issues/107 @ashu

cvanaret avatar Feb 26 '25 12:02 cvanaret

Conditional on https://github.com/cvanaret/Uno/pull/155

cvanaret avatar Apr 22 '25 15:04 cvanaret