Become an expert in R — Interactive courses, Cheat Sheets, certificates and more!
Get Started for Free

Archive

Logging object for objective function evaluations


Description

Container around a data.table::data.table which stores all performed function calls of the Objective.

S3 Methods

  • as.data.table(archive)
    Archive -> data.table::data.table()
    Returns a tabular view of all performed function calls of the Objective. The x_domain column is unnested to separate columns.

Public fields

search_space

(paradox::ParamSet)
Search space of objective.

codomain

(paradox::ParamSet)
Codomain of objective function.

start_time

(POSIXct)
Time stamp of when the optimization started. The time is set by the Optimizer.

check_values

(logical(1))
Determines if points and results are checked for validity.

data

(data.table::data.table)
Contains all performed Objective function calls.

store_x_domain

(logical(1))
Determines if x values, should be stored in $data$x_domain as list items. The trafo will be applied if defined in search_space.

Active bindings

n_evals

(integer(1))
Number of evaluations stored in the archive.

n_batch

(integer(1))
Number of batches stored in the archive.

cols_x

(character())
Column names of search space parameters.

cols_y

(character())
Column names of codomain parameters.

Methods

Public methods


Method new()

Creates a new instance of this R6 class.

Usage
Archive$new(search_space, codomain, check_values = TRUE, store_x_domain = TRUE)
Arguments
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.

codomain

(paradox::ParamSet)
Specifies codomain of function. Most importantly the tags of each output "Parameter" define whether it should be minimized or maximized. The default is to minimize each component.

check_values

(logical(1))
Should x-values that are added to the archive be checked for validity? Search space that is logged into archive.

store_x_domain

(logical(1))
Determines if x values, should be stored in $data$x_domain as list items. The trafo will be applied if defined in search_space.


Method add_evals()

Adds function evaluations to the archive table.

Usage
Archive$add_evals(xdt, xss_trafoed = NULL, 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.

xss_trafoed

(list())
Transformed point(s) in the domain space. Not stored and needed if store_x_domain = FALSE.

ydt

(data.table::data.table())
Optimal outcome.


Method best()

Returns the best scoring evaluation. For single-crit optimization, the solution that minimizes / maximizes the objective function. For multi-crit optimization, the Pareto set / front.

Usage
Archive$best(batch = NULL)
Arguments
batch

(integer())
The batch number(s) to limit the best results to. Default is all batches.

Returns

Method format()

Helper for print outputs.

Usage
Archive$format()

Method print()

Printer.

Usage
Archive$print()
Arguments
...

(ignored).


Method clear()

Clear all evaluation results from archive.

Usage
Archive$clear()

Method clone()

The objects of this class are cloneable with this method.

Usage
Archive$clone(deep = FALSE)
Arguments
deep

Whether to make a deep clone.


bbotk

Black-Box Optimization Toolkit

v0.3.2
LGPL-3
Authors
Marc Becker [cre, aut] (<https://orcid.org/0000-0002-8115-0400>), Jakob Richter [aut] (<https://orcid.org/0000-0003-4481-5554>), Michel Lang [aut] (<https://orcid.org/0000-0001-9754-0393>), Bernd Bischl [aut] (<https://orcid.org/0000-0001-6002-6980>), Martin Binder [aut], Olaf Mersmann [ctb]
Initial release

We don't support your browser anymore

Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.