Ax: Algorithm for constrained BO in Service API

Created on 17 Mar 2021  Â·  2Comments  Â·  Source: facebook/Ax

Dear Authors,

I have been using the framework for the last few months in an academic project and it has been a great experience so far. Thank you for that.

I would like to know what kind of algorithm is used within the Service API to deal with the outcome constraints. I have seen some clues about it in issue #324 but would like to know for sure. Thanks in advance!

question

Most helpful comment

Hi @IgorKuszczak, if you are using Sobol + GPEI, the algorithm being used is Noisy Expected Improvement. This paper provides details on how outcome constraints are accounted for during candidate generation: https://projecteuclid.org/journals/bayesian-analysis/volume-14/issue-2/Constrained-Bayesian-Optimization-with-Noisy-Experiments/10.1214/18-BA1110.full. If only Sobol is used (e.g. because there are lots of categorical parameters), then outcome constraints are not addressed in any way. The Sobol generator does not fit a surrogate model, so it has no way of knowing/predicting which quasi-random points will satisfy the outcome constraints.

All 2 comments

Thank you for the question, @IgorKuszczak, it's great to hear that Ax has been serving you well so far!

I'll ask @sdaulton, our current modeling and optimization oncall, to get back to you re: algorithm used to deal with the outcome constraints in Ax Service API (which uses Sobol + GPEI for mostly continuous search spaces and simple Sobol for mostly categorical search spaces –– in the latter case, I believe we simply use rejection sampling, but I imagine you are asking about the GPEI case).

Hi @IgorKuszczak, if you are using Sobol + GPEI, the algorithm being used is Noisy Expected Improvement. This paper provides details on how outcome constraints are accounted for during candidate generation: https://projecteuclid.org/journals/bayesian-analysis/volume-14/issue-2/Constrained-Bayesian-Optimization-with-Noisy-Experiments/10.1214/18-BA1110.full. If only Sobol is used (e.g. because there are lots of categorical parameters), then outcome constraints are not addressed in any way. The Sobol generator does not fit a surrogate model, so it has no way of knowing/predicting which quasi-random points will satisfy the outcome constraints.

Was this page helpful?
0 / 5 - 0 ratings