jbrea / BayesianOptimization.jl

Bayesian optimization for Julia
Other
91 stars 17 forks source link

Feature Request: Ask-tell interface #37

Open samuelbelko opened 1 year ago

samuelbelko commented 1 year ago

Hi! I would like to collect some opinions on whether it is reasonable to additionally adopt ask-tell interface like in Dragonfly (docs here) in the future.

I think that this is the natural interface for Baysian optimization solvers, since the costly function evaluation might need to be scheduled / externally computed or it can even be some real world experiment.

Ask-tell interface provides the necessary flexibilty for other libraries to build on top of BO solvers. For instance like the platform AX that is some sort of "decision support system for running sequential experiments optimally" build on top of BOTorch (e.g., see its Service API example). Maybe something similar could also emerge in the Julia ecosystem and use this package. The closest .jl projects I found sofar are ExperimentalDesign.jl and Hyperopt.jl, the latter being more of an ad-hoc utility.

Thanks!

mohamed82008 commented 1 year ago

You may find this discussion useful https://discourse.julialang.org/t/optimizing-a-physics-experiment/93434/3.

samuelbelko commented 1 year ago

Thanks, that describes a nice example use-case. Also a use-case I can imagine is to build a small utilty based on this package to tune parameters of solvers written in Julia. Possibly adapt them to some applied domain where they should work well on some particular distribution of instances they often encounter. Ecole.ai is a related project to this case.