Wraps a single-criteria Objective function with extra services for convenient evaluation. Inherits from OptimInstance.
Automatic storing of results in an Archive after evaluation.
Automatic checking for termination. Evaluations of design points are performed in batches. Before a batch is evaluated, the Terminator is queried for the remaining budget. If the available budget is exhausted, an exception is raised, and no further evaluations can be performed from this point on.
bbotk::OptimInstance
-> OptimInstanceSingleCrit
new()
Creates a new instance of this R6 class.
OptimInstanceSingleCrit$new(
objective,
search_space = NULL,
terminator,
keep_evals = "all",
check_values = TRUE
)
objective
(Objective).
search_space
(paradox::ParamSet)
Specifies the search space for the Optimizer. The paradox::ParamSet
describes either a subset of the domain
of the Objective or it describes
a set of parameters together with a trafo
function that transforms values
from the search space to values of the domain. Depending on the context, this
value defaults to the domain of the objective.
terminator
(Terminator).
keep_evals
(character(1)
)
Keep all
or only best
evaluations in archive?
check_values
(logical(1)
)
Should x-values that are added to the archive be checked for validity?
Search space that is logged into archive.
assign_result()
The Optimizer object writes the best found point and estimated performance value here. For internal use.
OptimInstanceSingleCrit$assign_result(xdt, y)
xdt
(data.table::data.table()
)
Set of untransformed points / points from the search space.
One point per row, e.g. data.table(x1 = c(1, 3), x2 = c(2, 4))
.
Column names have to match ids of the search_space
.
However, xdt
can contain additional columns.
y
(numeric(1)
)
Optimal outcome.
clone()
The objects of this class are cloneable with this method.
OptimInstanceSingleCrit$clone(deep = FALSE)
deep
Whether to make a deep clone.