Skip to contents

Wraps a multi-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.

Super class

bbotk::OptimInstance -> OptimInstanceMultiCrit

Active bindings

result_x_domain

(list())
(transformed) x part of the result in the domain space of the objective.

result_y

(numeric(1))
Optimal outcome.

Methods

Inherited methods


Method new()

Creates a new instance of this R6 class.

Usage

OptimInstanceMultiCrit$new(
  objective,
  search_space = NULL,
  terminator,
  keep_evals = "all",
  check_values = TRUE,
  callbacks = list()
)

Arguments

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)
Multi-criteria 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.

callbacks

(list of mlr3misc::Callback)
List of callbacks.


Method assign_result()

The Optimizer object writes the best found points and estimated performance values here (probably the Pareto set / front). For internal use.

Usage

OptimInstanceMultiCrit$assign_result(xdt, ydt)

Arguments

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.

ydt

(numeric(1))
Optimal outcomes, e.g. the Pareto front.


Method clone()

The objects of this class are cloneable with this method.

Usage

OptimInstanceMultiCrit$clone(deep = FALSE)

Arguments

deep

Whether to make a deep clone.