Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adapt Uno for MINLP reoptimization #107

Open
cvanaret opened this issue Nov 20, 2024 · 1 comment
Open

Adapt Uno for MINLP reoptimization #107

cvanaret opened this issue Nov 20, 2024 · 1 comment
Assignees
Labels

Comments

@cvanaret
Copy link
Owner

cvanaret commented Nov 20, 2024

A Minotaur/Uno interface is being developed and the root node was successfully solved. We now need a way to support reoptimization e.g. when the variable bounds change. I think it can be done via the WarmstartInformation object.
We need to identify how the successive NLPs look like (only branching? Cutting planes?)

@cvanaret cvanaret self-assigned this Nov 20, 2024
@ashutoshmahajan
Copy link

One can assume that only bounds on variables will change during the tree search for general MINLPs. This will cover almost all use cases, at least for Minotaur. A few points may be worth considering: (a) Bounds on several variables (not just one) may change between two consecutive NLP calls. (b) bounds may get tightened or relaxed or changed in some other way (c) some of the variables may get fixed in some calls because of bound changes (d) the optimal solution obtained from an NLP will always be outside the feasible region after bound changes in the next call (so one has to restart from a point that is not primal feasible).

If one has an MIQP (quadratic objective, linear constraints), then it is possible that additional cutting planes may be introduced, but we do not currently do it in Minotaur.

Hope this helps.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants