-
Notifications
You must be signed in to change notification settings - Fork 94
Test cases with infinite bounds #1228
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
Conversation
Yes please, add a test for the test. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@blegat are you okay with this? It could break a number of the solver-wrappers tests.
@guimarqu could you run the formatter over this please? import JuliaFormatter; format("src/Test/UnitTests/constraints.jl")
. There are just a few style things like trailing commas, and ending the file with a new line.
In the doc, we don't allow infinite values, |
We do for intervals: https://jump.dev/MathOptInterface.jl/v0.9/apireference/#MathOptInterface.Interval. Although the math still says |
Indeed, then we'll need to update the interval bridge so that it does |
I don't have any idea of applications where In Coluna, we use LP/MILP solvers in direct mode to optimize subproblems. We always use an |
You mean without any bridge layer ? So you only work with solvers supporting interval constraints ?
No I think it's fine for |
Yes no bridge and I work only with solvers supporting interval constraints (by chance).
Then it's ok to use I think I should try to update the Interval bridge to be sure of how it works. So, first I'm going to remove tests of |
Yes, you can use the new test in |
This file doesn't exist on master. |
Hi, To summarize the conversation above, when we create an interval with one infinite side (or both) which is then bridged into @blegat suggested to create two new sets However, I just read the conversion but do we really need Moreover, I did a first version of the bridge from struct UnextendBridge{
T,
F<:MOI.AbstractFunction,
ES<:MOI.AbstractSet,
S<:MOI.AbstractSet
} <: AbstractBridge
non_extended::Union{Nothing, CI{F,S}}
end I guess that this |
It depends if someone think that it may be useful. I think we can simply have the |
@guimarqu thanks for the effort you put into this. There are related changes in JuMP which should make it less likely that infinite bounds reach MOI: But fixing this properly is going to require adjustments to the SplitIntervalBridge to only add the finite bounds. Perhaps we should close this for now and try again in a separate PR? |
Hi, Oh sorry, I didn't see the message of Benoit... Ok, let's close this PR. |
Hi,
I started to write tests to close #881.
I create two models. One to testMOI.LessThan(Inf)
andMOI.GreaterThan(Inf)
. Another to test intervals with infinite sides.I create a test to try intervals with infinite sides.
Do I need to check the solution with
test_model_solution
?I read that it is for when you meet a bug in a solver wrapper.