Algorithms and Methods
There are two Bayesian optimization methods using Gaussian Process, "GP Optuna" and "GP BoTorch". What are the differences between them?
As its name suggests, GP BoTorch is implemented using BoTorch, a general-purpose library for Bayesian optimization. It is highly versatile and can be used for multi-objective and constrained Bayesian optimization, but it is slow to execute.
GP Optuna is a Gaussian process method reimplemented to work with Optuna (Tunny) optimization. It cannot handle multi-objective optimization, but it can consider constraints and runs faster than GP BoTorch.
If you are not doing multi-objective Bayesian optimization, we recommend using GP Optuna.
How can I match Wallacei's optimization settings?
Wallacei uses the following algorithm:
- Optimization method: NSGA-II
- Crossover: SBX crossover
- Mutation: Polynomial mutation
Tunny uses uniform crossover by default, so the settings do not match Wallacei as they are. The NSGA-II sampler settings include a preset that matches Wallacei's default settings, which you can apply to get close to it.
Note that this preset is not an exact reproduction of Wallacei's implementation; it aims to be as close as possible. Individual values, including the crossover method, can be changed in the sampler settings.
Is it possible to sample without duplication?
Each sampler computes the search point determined by the optimization algorithm without checking for duplicates, so optimizing without duplicates is not possible. You can, however, skip the objective function computation when a duplicate occurs.
If "Ignore Duplicate Sampling" is checked in the sampler's Other Settings Group, the previous calculation result is referenced and registered when a duplicate occurs.
Note that each trial is checked for duplicates. This check becomes more expensive as the number of trials increases.
Is Latin Hypercube Sampling (LHS) not supported?
Instead of LHS, Tunny supports QMC, which is known to sample more uniformly than LHS.
See this paper for more details.