AcqFunction | R Documentation |
Abstract acquisition function class.
Based on the predictions of a Surrogate, the acquisition function encodes the preference to evaluate a new point.
bbotk::Objective
-> AcqFunction
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"
.
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.
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
.
AcqFunction$new( id, constants = ParamSet$new(), surrogate, requires_predict_type_se, direction, packages = NULL, label = NA_character_, man = NA_character_ )
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 via requireNamespace()
.
label
(character(1)
)
Label for this object.
man
(character(1)
)
String in the format [pkg]::[topic]
pointing to a manual page for this object.
update()
Update the acquisition function.
Can be implemented by subclasses.
AcqFunction$update()
eval_many()
Evaluates multiple input values on the objective function.
AcqFunction$eval_many(xss)
xss
(list()
)
A list of lists that contains multiple x values, e.g.
list(list(x1 = 1, x2 = 2), list(x1 = 3, x2 = 4))
.
data.table::data.table() that contains one y-column for
single-objective functions and multiple y-columns for multi-objective functions,
e.g. data.table(y = 1:2)
or data.table(y1 = 1:2, y2 = 3:4)
.
eval_dt()
Evaluates multiple input values on the objective function
AcqFunction$eval_dt(xdt)
xdt
(data.table::data.table()
)
One point per row, e.g. data.table(x1 = c(1, 3), x2 = c(2, 4))
.
data.table::data.table() that contains one y-column for
single-objective functions and multiple y-columns for multi-objective
functions, e.g. data.table(y = 1:2)
or data.table(y1 = 1:2, y2 = 3:4)
.
clone()
The objects of this class are cloneable with this method.
AcqFunction$clone(deep = FALSE)
deep
Whether to make a deep clone.
Other Acquisition Function:
mlr_acqfunctions
,
mlr_acqfunctions_aei
,
mlr_acqfunctions_cb
,
mlr_acqfunctions_ehvi
,
mlr_acqfunctions_ehvigh
,
mlr_acqfunctions_ei
,
mlr_acqfunctions_eips
,
mlr_acqfunctions_mean
,
mlr_acqfunctions_multi
,
mlr_acqfunctions_pi
,
mlr_acqfunctions_sd
,
mlr_acqfunctions_smsego
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.