Replies: 4 comments 4 replies
-
Are you planning to "cut out" some region around one maximum? Note that this would be a non-convex constraint and so couldn't be expressed by a set of linear inequality constraints. In that case you'd have to pass in a nonlinear inequality constraint: https://github.com/pytorch/botorch/blob/main/botorch/optim/optimize.py#L89-L96. You'll also have to pass in your own initial conditions though (related discussion in #1572). |
Beta Was this translation helpful? Give feedback.
-
It is surprising that the algorithm wouldn’t explore the other minima after
discovering one of the others. Have you tried running for more iterations
or using a better acquisition function like EI? It would be surprising if
you had to code in additional constraints here.
…On Fri, Dec 23, 2022 at 6:38 PM Max Balandat ***@***.***> wrote:
optimize_acqf takes linear inequality (and also equality) constraints,
the docstring explains how to pass these in:
https://github.com/pytorch/botorch/blob/main/botorch/optim/optimize.py#L83-L88
I would like to add a restriction on x and y near this maximum
Are you planning to "cut out" some region around one maximum? Note that
this would be a non-convex constraint and so couldn't be expressed by a set
of linear inequality constraints. In that case you'd have to pass in a
nonlinear inequality constraint:
https://github.com/pytorch/botorch/blob/main/botorch/optim/optimize.py#L89-L96.
You'll also have to pass in your own initial conditions though (related
discussion in #1572 <#1572>).
—
Reply to this email directly, view it on GitHub
<#1589 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAAW34LOVWEWACEBTK2UXSDWOYZXBANCNFSM6AAAAAATHVSA6A>
.
You are receiving this because you are subscribed to this thread.Message
ID: ***@***.***>
|
Beta Was this translation helpful? Give feedback.
-
Are you just using botorch for black box optimization or are you
specifically looking to develop your own algorithms for BO? If it’s the
former you may want to check out ax http://ax.dev . It uses botorch
underneath the hood and does a lot of transformations underneath the hood
to make sure everything is setup well.
…On Sun, Dec 25, 2022 at 8:44 AM BSNunes ***@***.***> wrote:
I do not know if there are any other maximum in my problem, but I do
suppose they exist. It is a truly black-box function. The algorithm run
over 300 iterations and after converging to one point it stayed there,
without looking for others.
I haven't tried any other acquisition function. After starting with one
would be strange to change it.
With this constraint, I would like to confirm this is the only maximum (or
the higher one) in my parameters domain.
—
Reply to this email directly, view it on GitHub
<#1589 (reply in thread)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAAW34KGGOE24ZVVQIRWKTLWPBFUXANCNFSM6AAAAAATHVSA6A>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
I am working on optimizing a function with multiple input parameters, f(x1, x2, ..., xn) and, in order to verify if the optimal parameters found are not a local maximum, I would like to impose some input constraints, in order to force the algorithm to look for another set of optimal parameters.
To illustrate the situation, I wrote a simple code (copied below), aiming to optimize the function f(x,y) = cos(x) * sin(y), where -6 < x, y < 6. This function has ten local maxima within this range, and the algorithm converges to one of them very quickly. Hence, I would like to add a restriction on x and y near this maximum, in order to make botorch search for another maximum. Could you please point me some example (I find a outcome constraints example https://botorch.org/tutorials/closed_loop_botorch_only, but I did not find any simple parameter constraints example on botorch documentation page), or help me with this matter? Any help will be greatly appreciated. Thank you for your attention.
Beta Was this translation helpful? Give feedback.
All reactions