Abstract acquisition function class.
Based on the predictions of a Surrogate, the acquisition function encodes the preference to evaluate a new point.
See also
Other Acquisition Function:
mlr_acqfunctions,
mlr_acqfunctions_aei,
mlr_acqfunctions_cb,
mlr_acqfunctions_ehvi,
mlr_acqfunctions_ehvigh,
mlr_acqfunctions_ei,
mlr_acqfunctions_ei_log,
mlr_acqfunctions_eips,
mlr_acqfunctions_mean,
mlr_acqfunctions_multi,
mlr_acqfunctions_pi,
mlr_acqfunctions_sd,
mlr_acqfunctions_smsego,
mlr_acqfunctions_stochastic_cb,
mlr_acqfunctions_stochastic_ei
Super class
bbotk::Objective -> AcqFunction
Active bindings
direction(
"same"|"minimize"|"maximize")
Optimization direction of the acquisition function relative to the direction of the objective function of the bbotk::OptimInstance related to the passed bbotk::Archive. Must be"same","minimize", or"maximize".surrogate_max_to_min(
-1|1)
Multiplicative factor to correct for minimization or maximization of the acquisition function.label(
character(1))
Label for this object.man(
character(1))
String in the format[pkg]::[topic]pointing to a manual page for this object.archive(bbotk::Archive)
Points to the bbotk::Archive of the surrogate.fun(
function)
Points to the private acquisition function to be implemented by subclasses.surrogate(Surrogate)
Surrogate.requires_predict_type_se(
logical(1))
Whether the acquisition function requires the surrogate to have"se"as$predict_type.packages(
character())
Set of required packages.
Methods
Method new()
Creates a new instance of this R6 class.
Note that the surrogate can be initialized lazy and can later be set via the active binding $surrogate.
Usage
AcqFunction$new(
id,
constants = ParamSet$new(),
surrogate,
requires_predict_type_se,
direction,
packages = NULL,
label = NA_character_,
man = NA_character_
)Arguments
id(
character(1)).constants(paradox::ParamSet). Changeable constants or parameters.
surrogate(
NULL| Surrogate). Surrogate whose predictions are used in the acquisition function.requires_predict_type_se(
logical(1))
Whether the acquisition function requires the surrogate to have"se"as$predict_type.direction(
"same"|"minimize"|"maximize"). Optimization direction of the acquisition function relative to the direction of the objective function of the bbotk::OptimInstance. Must be"same","minimize", or"maximize".packages(
character())
Set of required packages. A warning is signaled prior to construction if at least one of the packages is not installed, but loaded (not attached) later on-demand viarequireNamespace().label(
character(1))
Label for this object.man(
character(1))
String in the format[pkg]::[topic]pointing to a manual page for this object.
Method eval_many()
Evaluates multiple input values on the acquisition function.
Arguments
xss(
list())
A list of lists that contains multiple x values, e.g.list(list(x1 = 1, x2 = 2), list(x1 = 3, x2 = 4)).
Method eval_dt()
Evaluates multiple input values on the objective function
Arguments
xdt(
data.table::data.table())
One point per row, e.g.data.table(x1 = c(1, 3), x2 = c(2, 4)).