Skip to contents

Convenience function that constructs an active learning OptimizerAL via optimizer_active_learning(), runs it on a bbotk instance, and (optionally) logs metrics via CallbackMetricsTracker.

Usage

optimize_active(
  objective,
  search_space = NULL,
  n_evals = NULL,
  terminator = NULL,
  metrics_tracker = NULL,
  forecast_tracker = NULL,
  forecast_terminator = NULL,
  callbacks = NULL,
  optimizer = NULL,
  ...
)

Arguments

objective

(bbotk::Objective)
Objective to evaluate. Typically has a single codomain target tagged "learn".

search_space

(NULL | paradox::ParamSet)
Optional restricted search space. If NULL, the search space is derived from objective$domain (same logic as bbotk's OptimInstanceBatch).

n_evals

(NULL | integer(1))
Convenience evaluation budget used only if terminator is NULL.

terminator

(NULL | bbotk::Terminator)
Terminator for the outer active learning loop. If NULL, a trm("evals", n_evals = n_evals) is constructed.

metrics_tracker

(NULL | MetricsTracker)
Optional metrics tracker. If provided, a CallbackMetricsTracker is attached to the instance.

forecast_tracker

(NULL | ForecastTracker)
Optional forecast tracker. If provided, CallbackForecastTracker is attached after CallbackMetricsTracker. Requires metrics_tracker.

forecast_terminator

(NULL | bbotk::Terminator)
Optional forecast-based terminator. If supplied, it is combined with the base terminator via trm("combo", ..., any = TRUE).

callbacks

(NULL | list() of bbotk::CallbackBatch)
Additional user callbacks. These are appended after internal callbacks.

optimizer

(NULL | bbotk::OptimizerBatch)
Explicit optimizer to use. If NULL, constructs one via optimizer_active_learning(). Supply an optimizer from optimizer_pool_al() to use paper-style active learning methods.

...

Passed to optimizer_active_learning() when optimizer is NULL.

Value

list() with:

  • instance: SearchInstance

  • optimizer: configured optimizer

  • metrics_tracker: the passed tracker (or NULL)