Skip to contents

Active-learning optimizer whose outer loop is fixed and whose proposal logic is delegated to an ALProposer.

The optimizer owns canonical run-local surrogates and unwired acquisition function prototypes. Proposers refer to those objects by registry id; the ephemeral ALContext wires and updates them lazily.

Creates a new active-learning optimizer.

Returns a run-local surrogate by id.

Arguments

proposer

(ALProposer)
Proposer used after initialization.

surrogates

(named list() of mlr3mbo::Surrogate)
Canonical surrogate registry. Defaults to an archive-only surrogate under id "archive" for model-free acquisition functions.

acq_functions

(named list() of mlr3mbo::AcqFunction)
Acquisition-function prototype registry. Registered acquisition functions are treated as unwired prototypes; any pre-set surrogate is removed with a warning.

init_sampler

(NULL | SpaceSampler)
Sampler for the initial evaluations. NULL is only valid when n_init = 0.

result_assigner

(NULL | mlr3mbo::ResultAssigner)
Result assigner used for bbotk::OptimInstance objects. Defaults to ResultAssignerNull.

grid_expansion_limit

(integer(1))
Upper limit for fully-discrete grid expansion inherited from OptimizerPoolAbstract.

surrogate_id

(character(1))
Surrogate registry id.

update

(logical(1))
Whether to update the surrogate before returning it. Repeated calls with an unchanged archive do not retrain the surrogate.

Fields

proposer

(ALProposer) Proposer used after initialization.

init_sampler

(NULL | SpaceSampler) Sampler for initial evaluations.

surrogates

(named list() of mlr3mbo::Surrogate) Canonical surrogate registry.

acq_functions

(named list() of mlr3mbo::AcqFunction) Unwired acquisition-function prototype registry.

result_assigner

(NULL | mlr3mbo::ResultAssigner) Result assigner.

param_set

(paradox::ParamSet) Combined parameter set of the optimizer and directly owned components.

Parameters

batch_size

integer(1)
Number of configurations evaluated per active-learning proposal round.

replace_samples

character(1)
Whether finite-pool points can be proposed again after a batch. "never" exhausts the pool without replacement; "between_batches" allows repeat evaluations in later batches, while still preventing repeats within the current proposal batch.

n_init

integer(1)
Number of initial evaluations requested before the proposer is used. If unset, fresh runs use 4 * d initial evaluations, where d is the search-space dimension, while runs with an already populated archive do not request additional initial evaluations.

The optimizer parameter set also exposes the parameter sets of directly owned components: init_sampler, proposer, surrogates, and acquisition-function constants.