[Bug] batch_initial_conditions
shouldn't have to satisfy nonlinear_inequality_constraints
#2624
Labels
bug
Something isn't working
🐛 Bug
When using
nonlinear_inequality_constraints
inoptimize_acqf
, you need to setbatch_initial_conditions
, and these ICs need to respect the constraints. This seems unnecessary - SLSQP is capable of starting from an infeasible IC. If the only reasonbatch_initial_conditions
needs to be set is so that the user is forced to provide a feasible IC, then this requirement can be relaxed too.I imagine the issue can also be solved by using
DeterministicModel
with an outcome constraint, but this does not work with analytic acquisition functions.botorch/botorch/optim/parameter_constraints.py
Lines 593 to 596 in 92d73e4
To reproduce
** Code snippet to reproduce **
** Stack trace/error message **
Expected Behavior
If the exception is commented out, the same candidate is found regardless of whether
initial_condition
is feasible or infeasible, demonstrating that in this case the exception is preventing use cases where it is hard to find a feasible region and you want the optimiser to find it for you.System information
Please complete the following information:
Additional context
NA
The text was updated successfully, but these errors were encountered: