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

Related problem #197

Open
falematte opened this issue Mar 7, 2024 · 2 comments
Open

Related problem #197

falematte opened this issue Mar 7, 2024 · 2 comments

Comments

@falematte
Copy link

I find this package absolutely useful. Any way of using it or similar methods to find, given a function from R^n to R the isolines?

@Kolaru
Copy link
Collaborator

Kolaru commented Mar 11, 2024

We do not have it in the package currently.

You can use the same strategy of branch and prune. For a function $f: \mathbb{R}^n -> \mathbb{R}$, and a level y

  1. Take an interval box X.
  2. Compute its image f(X) with interval arithmetic.
  3. If f(X) does not contain y, discard X (it is guaranteed no part of the isoline is in X). Otherwise bisect X in two smaller boxes, and go back to 2 with both.

You continue this until you get to boxes that are small enough. The remaining boxes are guaranteed to contain all of the y-isolines.

I think that this is essentially what https://github.com/JuliaIntervals/IntervalOptimisation.jl does to find global optimums of a function.

However, as far as I know, in general it is hard to prove the existence of the isoline in a box. The reason is that by default proving existence and uniqueness is the same, and for an isoline the solution is never unique. I had a trick for something similar in my master thesis, but it was not published and I don't know if there is something similar in the literature.

@dpsanders
Copy link
Member

What @Kolaru describes is what IntervalConstraintProgramming.jl does, although that package it not in a good state right now.

For proving existence / uniqueness of isolines, I believe there are approaches using a parametric version of the interval Newton method, e.g. https://epubs.siam.org/doi/10.1137/130906544

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

No branches or pull requests

3 participants