The ArchiveAsync
stores all evaluated points and performance scores in a rush::Rush data base.
as.data.table(archive)
ArchiveAsync -> 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.
bbotk::Archive
-> ArchiveAsync
rush
(Rush
)
Rush controller for parallel optimization.
data
(data.table::data.table)
Data table with all finished points.
queued_data
(data.table::data.table)
Data table with all queued points.
running_data
(data.table::data.table)
Data table with all running points.
finished_data
(data.table::data.table)
Data table with all finished points.
failed_data
(data.table::data.table)
Data table with all failed points.
n_queued
(integer(1)
)
Number of queued points.
n_running
(integer(1)
)
Number of running points.
n_finished
(integer(1)
)
Number of finished points.
n_failed
(integer(1)
)
Number of failed points.
n_evals
(integer(1)
)
Number of evaluations stored in the archive.
Inherited methods
new()
Creates a new instance of this R6 class.
ArchiveAsync$new(search_space, codomain, check_values = FALSE, rush)
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 points before the evaluation and the results be checked for validity?
rush
(Rush
)
If a rush instance is supplied, the tuning runs without batches.
push_points()
Push queued points to the archive.
ArchiveAsync$push_points(xss)
xss
(list of named list()
)
List of named lists of point values.
pop_point()
Pop a point from the queue.
ArchiveAsync$pop_point()
push_running_point()
Push running point to the archive.
ArchiveAsync$push_running_point(xs, extra = NULL)
xs
(named list
)
Named list of point values.
extra
(list()
)
Named list of additional information.
push_result()
Push result to the archive.
ArchiveAsync$push_result(key, ys, x_domain, extra = NULL)
key
(character()
)
Key of the point.
ys
(list()
)
Named list of results.
x_domain
(list()
)
Named list of transformed point values.
extra
(list()
)
Named list of additional information.
push_failed_point()
Push failed point to the archive.
ArchiveAsync$push_failed_point(key, message)
key
(character()
)
Key of the point.
message
(character()
)
Error message.
data_with_state()
Fetch points with a specific state.
ArchiveAsync$data_with_state(
fields = c("xs", "ys", "xs_extra", "worker_extra", "ys_extra", "condition"),
states = c("queued", "running", "finished", "failed"),
reset_cache = FALSE
)
fields
(character()
)
Fields to fetch.
Defaults to c("xs", "ys", "xs_extra", "worker_extra", "ys_extra")
.
states
(character()
)
States of the tasks to be fetched.
Defaults to c("queued", "running", "finished", "failed")
.
reset_cache
(logical(1)
)
Whether to reset the cache of the finished points.
best()
Returns the best scoring evaluation(s). For single-crit optimization, the solution that minimizes / maximizes the objective function. For multi-crit optimization, the Pareto set / front.
ArchiveAsync$best(n_select = 1, ties_method = "first")
n_select
(integer(1L)
)
Amount of points to select.
Ignored for multi-crit optimization.
ties_method
(character(1L)
)
Method to break ties when multiple points have the same score.
Either "first"
(default) or "random"
.
Ignored for multi-crit optimization.
If n_select > 1L
, the tie method is ignored and the first point is returned.
nds_selection()
Calculate best points w.r.t. non dominated sorting with hypervolume contribution.
ArchiveAsync$nds_selection(n_select = 1, ref_point = NULL)
n_select
(integer(1L)
)
Amount of points to select.
ref_point
(numeric()
)
Reference point for hypervolume.
clear()
Clear all evaluation results from archive.
ArchiveAsync$clear()