From 56861b11f20449b56c72711e60e06a45c34c6899 Mon Sep 17 00:00:00 2001 From: mb706 Date: Tue, 12 Aug 2025 14:15:58 +0200 Subject: [PATCH 01/11] progress --- .lintr | 6 ++-- R/Optimizer.R | 97 ++++++++++++-------------------------------------- R/Terminator.R | 54 ++++++---------------------- 3 files changed, 36 insertions(+), 121 deletions(-) diff --git a/.lintr b/.lintr index 34dbd8f59..8ef6867d2 100644 --- a/.lintr +++ b/.lintr @@ -1,9 +1,9 @@ -linters: with_defaults( +linters: linters_with_defaults( # lintr defaults: https://github.com/jimhester/lintr#available-linters # the following setup changes/removes certain linters assignment_linter = NULL, # do not force using <- for assignments object_name_linter = object_name_linter(c("snake_case", "CamelCase")), # only allow snake case and camel case object names - cyclocomp_linter = NULL, # do not check function complexity commented_code_linter = NULL, # allow code in comments - line_length_linter = NULL + line_length_linter = NULL, + indentation_linter = indentation_linter(indent = 2, hanging_indent_style = "never") ) diff --git a/R/Optimizer.R b/R/Optimizer.R index c0deec8da..0838f9e4a 100644 --- a/R/Optimizer.R +++ b/R/Optimizer.R @@ -23,14 +23,17 @@ #' #' @export Optimizer = R6Class("Optimizer", + inherit = Mlr3Component, public = list( - - #' @template field_id - id = NULL, - #' @description #' Creates a new instance of this [R6][R6::R6Class] class. #' + #' @param id (`character(1)`)\cr + #' Dictionary entry of the optimizer. + #' + #' @param param_set ([paradox::ParamSet])\cr + #' Parameter set of the optimizer. + #' #' @param param_classes (`character()`)\cr #' Supported parameter classes that the optimizer can optimize, as given in the [`paradox::ParamSet`] `$class` field. #' @@ -38,35 +41,28 @@ Optimizer = R6Class("Optimizer", #' Set of properties of the optimizer. #' Must be a subset of [`bbotk_reflections$optimizer_properties`][bbotk_reflections]. #' - #' @param packages (`character()`)\cr + #' @param packages (`character()`)\cr #' Set of required packages. #' A warning is signaled by the constructor if at least one of the packages is not installed, but loaded (not attached) later on-demand via [requireNamespace()]. initialize = function( - id = "optimizer", + id, param_set, param_classes, properties, - packages = character(), - label = NA_character_, - man = NA_character_ - ) { - self$id = assert_string(id, min.chars = 1L) - private$.param_set = assert_param_set(param_set) + packages = character(0), + label, + man + ) { + if (!missing(label) || !missing(man)) { + deprecated_component("label and man are deprecated for Optimizer construction and will be removed in the future.") + } + + super$initialize(dict_entry = id, dict_shortaccess = "opt", + param_set = param_set, packages = packages, properties = properties + ) private$.param_classes = assert_subset(param_classes, c("ParamLgl", "ParamInt", "ParamDbl", "ParamFct", "ParamUty")) # has to have at least multi-crit or single-crit property - private$.properties = assert_subset(properties, bbotk_reflections$optimizer_properties, empty.ok = FALSE) - private$.packages = union("bbotk", assert_character(packages, any.missing = FALSE, min.chars = 1L)) - private$.label = assert_string(label, na.ok = TRUE) - private$.man = assert_string(man, na.ok = TRUE) - - check_packages_installed(self$packages, msg = sprintf("Package '%%s' required but not installed for Optimizer '%s'", format(self))) - }, - - #' @description - #' Helper for print outputs. - #' @param ... (ignored). - format = function(...) { - sprintf("<%s>", class(self)[1L]) + assert_subset(properties, bbotk_reflections$optimizer_properties, empty.ok = FALSE) }, #' @description @@ -86,23 +82,9 @@ Optimizer = R6Class("Optimizer", cli_li("Packages: {.pkg {self$packages}}") }) }, - - #' @description - #' Opens the corresponding help page referenced by field `$man`. - help = function() { - open_help(self$man) - } ), active = list( - - param_set = function(rhs) { - if (!missing(rhs) && !identical(rhs, private$.param_set)) { - stop("$param_set is read-only.") - } - private$.param_set - }, - #' @field param_classes (`character()`)\cr #' Supported parameter classes that the optimizer can optimize, as given in the [`paradox::ParamSet`] `$class` field. param_classes = function(rhs) { @@ -110,36 +92,6 @@ Optimizer = R6Class("Optimizer", stop("$param_classes is read-only.") } private$.param_classes - }, - - #' @field properties (`character()`)\cr - #' Set of properties of the optimizer. - #' Must be a subset of [`bbotk_reflections$optimizer_properties`][bbotk_reflections]. - properties = function(rhs) { - if (!missing(rhs) && !identical(rhs, private$.properties)) { - stop("$properties is read-only.") - } - private$.properties - }, - - #' @field packages (`character()`)\cr - #' Set of required packages. - #' A warning is signaled by the constructor if at least one of the packages is not installed, but loaded (not attached) later on-demand via [requireNamespace()]. - packages = function(rhs) { - if (!missing(rhs) && !identical(rhs, private$.packages)) { - stop("$packages is read-only.") - } - private$.packages - }, - - label = function(rhs) { - assert_ro_binding(rhs) - private$.label - }, - - man = function(rhs) { - assert_ro_binding(rhs) - private$.man } ), @@ -150,12 +102,7 @@ Optimizer = R6Class("Optimizer", assign_result_default(inst) }, - .param_set = NULL, - .param_classes = NULL, - .properties = NULL, - .packages = NULL, - .label = NULL, - .man = NULL + .param_classes = NULL ) ) diff --git a/R/Terminator.R b/R/Terminator.R index 85e5ce273..27b7092fa 100644 --- a/R/Terminator.R +++ b/R/Terminator.R @@ -35,9 +35,6 @@ #' @export Terminator = R6Class("Terminator", public = list( - #' @template field_id - id = NULL, - #' @description #' Creates a new instance of this [R6][R6::R6Class] class. #' @@ -47,13 +44,17 @@ Terminator = R6Class("Terminator", #' #' @param unit (`character()`)\cr #' Unit of steps. - initialize = function(id, param_set = ps(), properties = character(), unit = "percent", label = NA_character_, man = NA_character_) { - self$id = assert_string(id, min.chars = 1L) - private$.param_set = assert_param_set(param_set) - private$.properties = assert_subset(properties, bbotk_reflections$terminator_properties) + initialize = function(id, param_set = ps(), properties = character(), unit = "percent", label, man) { + if (!missing(label) || !missing(man)) { + deprecated_component("label and man are deprecated for Terminator construction and will be removed in the future.") + } + + super$initialize(dict_entry = id, dict_shortaccess = "trm", + param_set = param_set, properties = properties + ) + + assert_subset(properties, bbotk_reflections$terminator_properties) private$.unit = assert_string(unit) - private$.label = assert_string(label, na.ok = TRUE) - private$.man = assert_string(man, na.ok = TRUE) }, #' @description @@ -113,24 +114,6 @@ Terminator = R6Class("Terminator", ), active = list( - - param_set = function(rhs) { - if (!missing(rhs) && !identical(rhs, private$.param_set)) { - stop("$param_set is read-only.") - } - private$.param_set - }, - - #' @field properties (`character()`)\cr - #' Set of properties of the terminator. - #' Must be a subset of [`bbotk_reflections$terminator_properties`][bbotk_reflections]. - properties = function(rhs) { - if (!missing(rhs) && !identical(rhs, private$.properties)) { - stop("$properties is read-only.") - } - private$.properties - }, - #' @field unit (`character()`)\cr #' Unit of steps. unit = function(rhs) { @@ -139,16 +122,6 @@ Terminator = R6Class("Terminator", } private$.unit }, - - label = function(rhs) { - assert_ro_binding(rhs) - private$.label - }, - - man = function(rhs) { -assert_ro_binding(rhs) - private$.man - } ), private = list( @@ -157,11 +130,6 @@ assert_ro_binding(rhs) current_steps = if (self$is_terminated(archive)) 100 else 0 c("max_steps" = max_steps, "current_steps" = current_steps) }, - - .param_set = NULL, - .properties = NULL, - .unit = NULL, - .label = NULL, - .man = NULL + .unit = NULL ) ) From fc55e31050acf1dea643b1cb3f0f0182030ff532 Mon Sep 17 00:00:00 2001 From: mb706 Date: Wed, 13 Aug 2025 22:05:25 +0200 Subject: [PATCH 02/11] don't use man and label --- R/ArchiveAsync.R | 4 +--- R/ArchiveBatch.R | 5 ++--- R/Objective.R | 9 ++++----- R/ObjectiveRFun.R | 4 +--- R/ObjectiveRFunDt.R | 4 +--- R/ObjectiveRFunMany.R | 3 +-- R/OptimInstanceAsync.R | 4 +--- R/OptimInstanceAsyncMultiCrit.R | 4 +--- R/OptimInstanceAsyncSingleCrit.R | 4 +--- R/OptimInstanceBatch.R | 4 +--- R/OptimInstanceBatchMultiCrit.R | 4 +--- R/OptimInstanceBatchSingleCrit.R | 4 +--- R/OptimizerBatchCmaes.R | 4 +--- R/OptimizerBatchGenSA.R | 4 +--- R/OptimizerBatchNLoptr.R | 4 +--- R/Terminator.R | 1 + R/TerminatorCombo.R | 4 +--- R/TerminatorPerfReached.R | 4 +--- R/TerminatorStagnation.R | 4 +--- R/TerminatorStagnationBatch.R | 4 +--- R/TerminatorStagnationHypervolume.R | 4 +--- 21 files changed, 25 insertions(+), 61 deletions(-) diff --git a/R/ArchiveAsync.R b/R/ArchiveAsync.R index 7f7644951..d51b0bab0 100644 --- a/R/ArchiveAsync.R +++ b/R/ArchiveAsync.R @@ -32,9 +32,7 @@ ArchiveAsync = R6Class("ArchiveAsync", super$initialize( search_space = search_space, codomain = codomain, - check_values = check_values, - label = "Rush Data Storage", - man = "bbotk::ArchiveAsync") + check_values = check_values) }, #' @description diff --git a/R/ArchiveBatch.R b/R/ArchiveBatch.R index a2462cce9..b87ee25ed 100644 --- a/R/ArchiveBatch.R +++ b/R/ArchiveBatch.R @@ -40,9 +40,8 @@ ArchiveBatch = R6Class("ArchiveBatch", super$initialize( search_space = search_space, codomain = codomain, - check_values = check_values, # FIXME: not implemented yet - label = "Data Table Storage", - man = "bbotk::ArchiveBatch") + check_values = check_values # FIXME: not implemented yet + ) self$data = data.table() }, diff --git a/R/Objective.R b/R/Objective.R index ed7279fea..c871793ff 100644 --- a/R/Objective.R +++ b/R/Objective.R @@ -210,12 +210,11 @@ Objective = R6Class("Objective", deep_clone = function(name, value) { if (name == "context") return(NULL) - if (!is.environment(value)) return(value) switch(name, - domain = value$clone(deep = TRUE), - codomain = value$clone(deep = TRUE), - constants = value$clone(deep = TRUE), - value + "domain" = value$clone(deep = TRUE), + "codomain" = value$clone(deep = TRUE), + "constants" = value$clone(deep = TRUE), + super$deep_clone(name, value) ) }, diff --git a/R/ObjectiveRFun.R b/R/ObjectiveRFun.R index 9afbe1786..86bdf42de 100644 --- a/R/ObjectiveRFun.R +++ b/R/ObjectiveRFun.R @@ -65,9 +65,7 @@ ObjectiveRFun = R6Class("ObjectiveRFun", codomain = codomain, properties = properties, constants = constants, - check_values = check_values, - label = "Objective Custom R Function", - man = "bbotk::ObjectiveRFun") + check_values = check_values) }, #' @description diff --git a/R/ObjectiveRFunDt.R b/R/ObjectiveRFunDt.R index 9eff8292c..a0769b837 100644 --- a/R/ObjectiveRFunDt.R +++ b/R/ObjectiveRFunDt.R @@ -41,9 +41,7 @@ ObjectiveRFunDt = R6Class("ObjectiveRFunDt", codomain = codomain, properties = properties, constants = constants, - check_values = check_values, - label = "Objective Custom R Function Eval Data Table", - man = "bbotk::ObjectiveRFunDt") + check_values = check_values) }, #' @description diff --git a/R/ObjectiveRFunMany.R b/R/ObjectiveRFunMany.R index 6605c2c5b..3a89980a0 100644 --- a/R/ObjectiveRFunMany.R +++ b/R/ObjectiveRFunMany.R @@ -64,8 +64,7 @@ ObjectiveRFunMany = R6Class("ObjectiveRFunMany", codomain = codomain, properties = properties, constants = constants, - check_values = check_values, - label = "Objective Custom R Function Eval List") + check_values = check_values) }, #' @description diff --git a/R/OptimInstanceAsync.R b/R/OptimInstanceAsync.R index 99607e0cf..75bebdb5f 100644 --- a/R/OptimInstanceAsync.R +++ b/R/OptimInstanceAsync.R @@ -62,9 +62,7 @@ OptimInstanceAsync = R6Class("OptimInstanceAsync", search_space = search_space, terminator = terminator, callbacks = callbacks, - archive = archive, - label = label, - man = man) + archive = archive) }, #' @description diff --git a/R/OptimInstanceAsyncMultiCrit.R b/R/OptimInstanceAsyncMultiCrit.R index 244e32a44..d05df5e55 100644 --- a/R/OptimInstanceAsyncMultiCrit.R +++ b/R/OptimInstanceAsyncMultiCrit.R @@ -40,9 +40,7 @@ OptimInstanceAsyncMultiCrit = R6Class("OptimInstanceAsyncMultiCrit", check_values = check_values, rush = rush, callbacks = callbacks, - archive = archive, - label = "Async Multi Criteria Instance", - man = "bbotk::OptimInstanceAsyncMultiCrit") + archive = archive) }, #' @description diff --git a/R/OptimInstanceAsyncSingleCrit.R b/R/OptimInstanceAsyncSingleCrit.R index df833b61c..41ec44495 100644 --- a/R/OptimInstanceAsyncSingleCrit.R +++ b/R/OptimInstanceAsyncSingleCrit.R @@ -41,9 +41,7 @@ OptimInstanceAsyncSingleCrit = R6Class("OptimInstanceAsyncSingleCrit", check_values = check_values, callbacks = callbacks, archive = archive, - rush = rush, - label = "Async Single Criteria Instance", - man = "bbotk::OptimInstanceAsyncSingleCrit") + rush = rush) }, #' @description diff --git a/R/OptimInstanceBatch.R b/R/OptimInstanceBatch.R index 603f0213d..74e643d99 100644 --- a/R/OptimInstanceBatch.R +++ b/R/OptimInstanceBatch.R @@ -51,9 +51,7 @@ OptimInstanceBatch = R6Class("OptimInstanceBatch", search_space = search_space, terminator = terminator, callbacks = callbacks, - archive = archive, - label = label, - man = man + archive = archive ) # disable objective function if search space is not all numeric diff --git a/R/OptimInstanceBatchMultiCrit.R b/R/OptimInstanceBatchMultiCrit.R index 7c4bde46b..56f5e12bf 100644 --- a/R/OptimInstanceBatchMultiCrit.R +++ b/R/OptimInstanceBatchMultiCrit.R @@ -35,9 +35,7 @@ OptimInstanceBatchMultiCrit = R6Class("OptimInstanceBatchMultiCrit", terminator = terminator, check_values = check_values, callbacks = callbacks, - archive = archive, - label = "Batch Multi Criteria Instance", - man = "bbotk::OptimInstanceBatchMultiCrit") + archive = archive) }, #' @description diff --git a/R/OptimInstanceBatchSingleCrit.R b/R/OptimInstanceBatchSingleCrit.R index 0331fbaaf..99bdcb899 100644 --- a/R/OptimInstanceBatchSingleCrit.R +++ b/R/OptimInstanceBatchSingleCrit.R @@ -39,9 +39,7 @@ OptimInstanceBatchSingleCrit = R6Class("OptimInstanceBatchSingleCrit", terminator = terminator, check_values = check_values, callbacks = callbacks, - archive = archive, - label = "Batch Single Criterion", - man = "bbotk::OptimInstanceBatchSingleCrit") + archive = archive) }, #' @description diff --git a/R/OptimizerBatchCmaes.R b/R/OptimizerBatchCmaes.R index 7a83129e6..4941c8559 100644 --- a/R/OptimizerBatchCmaes.R +++ b/R/OptimizerBatchCmaes.R @@ -84,9 +84,7 @@ OptimizerBatchCmaes = R6Class("OptimizerBatchCmaes", param_set = param_set, param_classes = "ParamDbl", properties = "single-crit", - packages = "adagio", - label = "Covariance Matrix Adaptation Evolution Strategy", - man = "bbotk::mlr_optimizers_cmaes" + packages = "adagio" ) } ), diff --git a/R/OptimizerBatchGenSA.R b/R/OptimizerBatchGenSA.R index 732ed58fa..c82ccdf96 100644 --- a/R/OptimizerBatchGenSA.R +++ b/R/OptimizerBatchGenSA.R @@ -86,9 +86,7 @@ OptimizerBatchGenSA = R6Class("OptimizerBatchGenSA", inherit = OptimizerBatch, param_set = param_set, param_classes = "ParamDbl", properties = "single-crit", - packages = "GenSA", - label = "Generalized Simulated Annealing", - man = "bbotk::mlr_optimizers_gensa" + packages = "GenSA" ) } ), diff --git a/R/OptimizerBatchNLoptr.R b/R/OptimizerBatchNLoptr.R index 5fa90b38e..139dc8a5d 100644 --- a/R/OptimizerBatchNLoptr.R +++ b/R/OptimizerBatchNLoptr.R @@ -119,9 +119,7 @@ OptimizerBatchNLoptr = R6Class("OptimizerBatchNLoptr", inherit = OptimizerBatch, param_set = param_set, param_classes = "ParamDbl", properties = "single-crit", - packages = "nloptr", - label = "Non-linear Optimization", - man = "bbotk::mlr_optimizers_nloptr" + packages = "nloptr" ) } ), diff --git a/R/Terminator.R b/R/Terminator.R index 27b7092fa..692fd1f54 100644 --- a/R/Terminator.R +++ b/R/Terminator.R @@ -34,6 +34,7 @@ #' #' @export Terminator = R6Class("Terminator", + inherit = Mlr3Component, public = list( #' @description #' Creates a new instance of this [R6][R6::R6Class] class. diff --git a/R/TerminatorCombo.R b/R/TerminatorCombo.R index f4cb4f5d2..7ff8f9820 100644 --- a/R/TerminatorCombo.R +++ b/R/TerminatorCombo.R @@ -54,9 +54,7 @@ TerminatorCombo = R6Class("TerminatorCombo", id = "combo", param_set = param_set, properties = properties, - unit = "percent", - label = "Combination", - man = "bbotk::mlr_terminators_combo") + unit = "percent") }, #' @description diff --git a/R/TerminatorPerfReached.R b/R/TerminatorPerfReached.R index fa1be7154..a50d2b294 100644 --- a/R/TerminatorPerfReached.R +++ b/R/TerminatorPerfReached.R @@ -39,9 +39,7 @@ TerminatorPerfReached = R6Class("TerminatorPerfReached", super$initialize( id = "perf_reached", param_set = param_set, - properties = "single-crit", - label = "Performance Level", - man = "bbotk::mlr_terminators_perf_reached" + properties = "single-crit" ) }, diff --git a/R/TerminatorStagnation.R b/R/TerminatorStagnation.R index 67c8b2d12..ed021b340 100644 --- a/R/TerminatorStagnation.R +++ b/R/TerminatorStagnation.R @@ -44,9 +44,7 @@ TerminatorStagnation = R6Class("TerminatorStagnation", super$initialize( id = "stagnation", param_set = param_set, - properties = "single-crit", - label = "Stagnation", - man = "bbotk::mlr_terminators_stagnation" + properties = "single-crit" ) }, diff --git a/R/TerminatorStagnationBatch.R b/R/TerminatorStagnationBatch.R index d688d6043..953033114 100644 --- a/R/TerminatorStagnationBatch.R +++ b/R/TerminatorStagnationBatch.R @@ -44,9 +44,7 @@ TerminatorStagnationBatch = R6Class("TerminatorStagnationBatch", super$initialize( id = "stagnation_batch", param_set = param_set, - properties = "single-crit", - label = "Stagnation Batch", - man = "bbotk::mlr_terminators_stagnation_batch" + properties = "single-crit" ) }, diff --git a/R/TerminatorStagnationHypervolume.R b/R/TerminatorStagnationHypervolume.R index cf9c463c7..1c4df62ef 100644 --- a/R/TerminatorStagnationHypervolume.R +++ b/R/TerminatorStagnationHypervolume.R @@ -41,9 +41,7 @@ TerminatorStagnationHypervolume = R6Class("TerminatorStagnationHypervolume", super$initialize( id = "stagnation_hypervolume", param_set = param_set, - properties = "multi-crit", - label = "Stagnation Hypervolume", - man = "bbotk::mlr_terminators_stagnation_hypervolume" + properties = "multi-crit" ) }, From 353c5c74f764284e12556ab95bc31e9a94f1a47b Mon Sep 17 00:00:00 2001 From: mb706 Date: Wed, 13 Aug 2025 22:18:43 +0200 Subject: [PATCH 03/11] remotes --- DESCRIPTION | 3 +++ NAMESPACE | 3 --- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/DESCRIPTION b/DESCRIPTION index dd58f8f86..c1c438b80 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -47,6 +47,9 @@ Suggests: RhpcBLASctl, rush (>= 0.2.0), testthat (>= 3.0.0) +Remotes: + mlr-org/mlr3misc@common_baseclass + mlr-org/mlr3@common_baseclass Config/testthat/edition: 3 Config/testthat/parallel: false Encoding: UTF-8 diff --git a/NAMESPACE b/NAMESPACE index e1ef775d4..08fb7b386 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -106,9 +106,6 @@ import(mlr3misc) import(paradox) importFrom(R6,R6Class) importFrom(methods,formalArgs) -importFrom(mlr3misc,clbk) -importFrom(mlr3misc,clbks) -importFrom(mlr3misc,mlr_callbacks) importFrom(stats,setNames) importFrom(utils,bibentry) importFrom(utils,capture.output) From 81e2ff724125b6f3e18d233d25346344ca74fd2a Mon Sep 17 00:00:00 2001 From: mb706 Date: Wed, 13 Aug 2025 22:36:40 +0200 Subject: [PATCH 04/11] DESCRIPTION fix --- DESCRIPTION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DESCRIPTION b/DESCRIPTION index c1c438b80..8ac28f210 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -48,7 +48,7 @@ Suggests: rush (>= 0.2.0), testthat (>= 3.0.0) Remotes: - mlr-org/mlr3misc@common_baseclass + mlr-org/mlr3misc@common_baseclass, mlr-org/mlr3@common_baseclass Config/testthat/edition: 3 Config/testthat/parallel: false From 8d16937d74f96035d2b940757a45f2827385b1e2 Mon Sep 17 00:00:00 2001 From: mb706 Date: Fri, 15 Aug 2025 00:22:17 +0200 Subject: [PATCH 05/11] man and label only where it is not automatic --- R/ArchiveAsync.R | 4 +++- R/ArchiveBatch.R | 5 +++-- R/ObjectiveRFun.R | 4 +++- R/ObjectiveRFunDt.R | 4 +++- R/ObjectiveRFunMany.R | 4 +++- R/OptimInstanceAsync.R | 4 +++- R/OptimInstanceAsyncMultiCrit.R | 4 +++- R/OptimInstanceAsyncSingleCrit.R | 4 +++- R/OptimInstanceBatch.R | 4 +++- R/OptimInstanceBatchMultiCrit.R | 4 +++- R/OptimInstanceBatchSingleCrit.R | 4 +++- R/Optimizer.R | 2 +- R/OptimizerAsyncDesignPoints.R | 4 +--- R/OptimizerAsyncGridSearch.R | 4 +--- R/OptimizerAsyncRandomSearch.R | 4 +--- R/OptimizerBatchChain.R | 4 +--- R/OptimizerBatchDesignPoints.R | 4 +--- R/OptimizerBatchFocusSearch.R | 4 +--- R/OptimizerBatchGridSearch.R | 4 +--- R/OptimizerBatchIrace.R | 4 +--- R/OptimizerBatchLocalSearch.R | 4 +--- R/OptimizerBatchRandomSearch.R | 4 +--- R/Terminator.R | 2 +- tests/testthat/setup.R | 5 +++-- 24 files changed, 48 insertions(+), 46 deletions(-) diff --git a/R/ArchiveAsync.R b/R/ArchiveAsync.R index d51b0bab0..7f7644951 100644 --- a/R/ArchiveAsync.R +++ b/R/ArchiveAsync.R @@ -32,7 +32,9 @@ ArchiveAsync = R6Class("ArchiveAsync", super$initialize( search_space = search_space, codomain = codomain, - check_values = check_values) + check_values = check_values, + label = "Rush Data Storage", + man = "bbotk::ArchiveAsync") }, #' @description diff --git a/R/ArchiveBatch.R b/R/ArchiveBatch.R index b87ee25ed..a2462cce9 100644 --- a/R/ArchiveBatch.R +++ b/R/ArchiveBatch.R @@ -40,8 +40,9 @@ ArchiveBatch = R6Class("ArchiveBatch", super$initialize( search_space = search_space, codomain = codomain, - check_values = check_values # FIXME: not implemented yet - ) + check_values = check_values, # FIXME: not implemented yet + label = "Data Table Storage", + man = "bbotk::ArchiveBatch") self$data = data.table() }, diff --git a/R/ObjectiveRFun.R b/R/ObjectiveRFun.R index 86bdf42de..9afbe1786 100644 --- a/R/ObjectiveRFun.R +++ b/R/ObjectiveRFun.R @@ -65,7 +65,9 @@ ObjectiveRFun = R6Class("ObjectiveRFun", codomain = codomain, properties = properties, constants = constants, - check_values = check_values) + check_values = check_values, + label = "Objective Custom R Function", + man = "bbotk::ObjectiveRFun") }, #' @description diff --git a/R/ObjectiveRFunDt.R b/R/ObjectiveRFunDt.R index a0769b837..9eff8292c 100644 --- a/R/ObjectiveRFunDt.R +++ b/R/ObjectiveRFunDt.R @@ -41,7 +41,9 @@ ObjectiveRFunDt = R6Class("ObjectiveRFunDt", codomain = codomain, properties = properties, constants = constants, - check_values = check_values) + check_values = check_values, + label = "Objective Custom R Function Eval Data Table", + man = "bbotk::ObjectiveRFunDt") }, #' @description diff --git a/R/ObjectiveRFunMany.R b/R/ObjectiveRFunMany.R index 3a89980a0..aa17bfd49 100644 --- a/R/ObjectiveRFunMany.R +++ b/R/ObjectiveRFunMany.R @@ -64,7 +64,9 @@ ObjectiveRFunMany = R6Class("ObjectiveRFunMany", codomain = codomain, properties = properties, constants = constants, - check_values = check_values) + check_values = check_values, + label = "Objective Custom R Function Eval List", + man = "bbotk::ObjectiveRFunMany") }, #' @description diff --git a/R/OptimInstanceAsync.R b/R/OptimInstanceAsync.R index 75bebdb5f..99607e0cf 100644 --- a/R/OptimInstanceAsync.R +++ b/R/OptimInstanceAsync.R @@ -62,7 +62,9 @@ OptimInstanceAsync = R6Class("OptimInstanceAsync", search_space = search_space, terminator = terminator, callbacks = callbacks, - archive = archive) + archive = archive, + label = label, + man = man) }, #' @description diff --git a/R/OptimInstanceAsyncMultiCrit.R b/R/OptimInstanceAsyncMultiCrit.R index d05df5e55..244e32a44 100644 --- a/R/OptimInstanceAsyncMultiCrit.R +++ b/R/OptimInstanceAsyncMultiCrit.R @@ -40,7 +40,9 @@ OptimInstanceAsyncMultiCrit = R6Class("OptimInstanceAsyncMultiCrit", check_values = check_values, rush = rush, callbacks = callbacks, - archive = archive) + archive = archive, + label = "Async Multi Criteria Instance", + man = "bbotk::OptimInstanceAsyncMultiCrit") }, #' @description diff --git a/R/OptimInstanceAsyncSingleCrit.R b/R/OptimInstanceAsyncSingleCrit.R index 41ec44495..df833b61c 100644 --- a/R/OptimInstanceAsyncSingleCrit.R +++ b/R/OptimInstanceAsyncSingleCrit.R @@ -41,7 +41,9 @@ OptimInstanceAsyncSingleCrit = R6Class("OptimInstanceAsyncSingleCrit", check_values = check_values, callbacks = callbacks, archive = archive, - rush = rush) + rush = rush, + label = "Async Single Criteria Instance", + man = "bbotk::OptimInstanceAsyncSingleCrit") }, #' @description diff --git a/R/OptimInstanceBatch.R b/R/OptimInstanceBatch.R index 74e643d99..603f0213d 100644 --- a/R/OptimInstanceBatch.R +++ b/R/OptimInstanceBatch.R @@ -51,7 +51,9 @@ OptimInstanceBatch = R6Class("OptimInstanceBatch", search_space = search_space, terminator = terminator, callbacks = callbacks, - archive = archive + archive = archive, + label = label, + man = man ) # disable objective function if search space is not all numeric diff --git a/R/OptimInstanceBatchMultiCrit.R b/R/OptimInstanceBatchMultiCrit.R index 56f5e12bf..7c4bde46b 100644 --- a/R/OptimInstanceBatchMultiCrit.R +++ b/R/OptimInstanceBatchMultiCrit.R @@ -35,7 +35,9 @@ OptimInstanceBatchMultiCrit = R6Class("OptimInstanceBatchMultiCrit", terminator = terminator, check_values = check_values, callbacks = callbacks, - archive = archive) + archive = archive, + label = "Batch Multi Criteria Instance", + man = "bbotk::OptimInstanceBatchMultiCrit") }, #' @description diff --git a/R/OptimInstanceBatchSingleCrit.R b/R/OptimInstanceBatchSingleCrit.R index 99bdcb899..0653f8f0f 100644 --- a/R/OptimInstanceBatchSingleCrit.R +++ b/R/OptimInstanceBatchSingleCrit.R @@ -39,7 +39,9 @@ OptimInstanceBatchSingleCrit = R6Class("OptimInstanceBatchSingleCrit", terminator = terminator, check_values = check_values, callbacks = callbacks, - archive = archive) + archive = archive, + label = "Batch Single Criterion Instance", + man = "bbotk::OptimInstanceBatchSingleCrit") }, #' @description diff --git a/R/Optimizer.R b/R/Optimizer.R index 0838f9e4a..3b97be837 100644 --- a/R/Optimizer.R +++ b/R/Optimizer.R @@ -81,7 +81,7 @@ Optimizer = R6Class("Optimizer", cli_li("Properties: {self$properties}") cli_li("Packages: {.pkg {self$packages}}") }) - }, + } ), active = list( diff --git a/R/OptimizerAsyncDesignPoints.R b/R/OptimizerAsyncDesignPoints.R index 36d35d861..484929349 100644 --- a/R/OptimizerAsyncDesignPoints.R +++ b/R/OptimizerAsyncDesignPoints.R @@ -33,9 +33,7 @@ OptimizerAsyncDesignPoints = R6Class("OptimizerAsyncDesignPoints", param_set = param_set, param_classes = c("ParamLgl", "ParamInt", "ParamDbl", "ParamFct", "ParamUty"), properties = c("dependencies", "single-crit", "multi-crit", "async"), - packages = "rush", - label = "Asynchronous Design Points", - man = "bbotk::mlr_optimizers_async_design_points" + packages = "rush" ) }, diff --git a/R/OptimizerAsyncGridSearch.R b/R/OptimizerAsyncGridSearch.R index d443e78dc..327f59742 100644 --- a/R/OptimizerAsyncGridSearch.R +++ b/R/OptimizerAsyncGridSearch.R @@ -41,9 +41,7 @@ OptimizerAsyncGridSearch = R6Class("OptimizerAsyncGridSearch", param_set = param_set, param_classes = c("ParamLgl", "ParamInt", "ParamDbl", "ParamFct"), properties = c("dependencies", "single-crit", "multi-crit", "async"), - packages = "rush", - label = "Asynchronous Grid Search", - man = "bbotk::mlr_optimizers_async_grid_search" + packages = "rush" ) }, diff --git a/R/OptimizerAsyncRandomSearch.R b/R/OptimizerAsyncRandomSearch.R index 27d6e409d..862ef588b 100644 --- a/R/OptimizerAsyncRandomSearch.R +++ b/R/OptimizerAsyncRandomSearch.R @@ -26,9 +26,7 @@ OptimizerAsyncRandomSearch = R6Class("OptimizerAsyncRandomSearch", param_set = ps(), param_classes = c("ParamLgl", "ParamInt", "ParamDbl", "ParamFct"), properties = c("dependencies", "single-crit", "multi-crit", "async"), - packages = "rush", - label = "Asynchronous Random Search", - man = "bbotk::mlr_optimizers_random_search" + packages = "rush" ) } ), diff --git a/R/OptimizerBatchChain.R b/R/OptimizerBatchChain.R index 5e1ab02a2..63fcc23d8 100644 --- a/R/OptimizerBatchChain.R +++ b/R/OptimizerBatchChain.R @@ -120,9 +120,7 @@ OptimizerBatchChain = R6Class("OptimizerBatchChain", inherit = OptimizerBatch, param_set = ParamSetCollection$new(param_sets), param_classes = Reduce(intersect, mlr3misc::map(optimizers, "param_classes")), properties = Reduce(intersect, mlr3misc::map(optimizers, "properties")), - packages = unique(unlist(mlr3misc::map(optimizers, "packages"))), - label = "Chain Multiple Optimizers Sequentially", - man = "bbotk::mlr_optimizers_chain" + packages = unique(unlist(mlr3misc::map(optimizers, "packages"))) ) private$.optimizers = optimizers private$.terminators = terminators diff --git a/R/OptimizerBatchDesignPoints.R b/R/OptimizerBatchDesignPoints.R index 6837a3ffb..216c32ffa 100644 --- a/R/OptimizerBatchDesignPoints.R +++ b/R/OptimizerBatchDesignPoints.R @@ -76,9 +76,7 @@ OptimizerBatchDesignPoints = R6Class("OptimizerBatchDesignPoints", inherit = Opt id = "design_points", param_set = param_set, param_classes = c("ParamLgl", "ParamInt", "ParamDbl", "ParamFct", "ParamUty"), - properties = c("dependencies", "single-crit", "multi-crit"), - label = "Design Points", - man = "bbotk::mlr_optimizers_design_points" + properties = c("dependencies", "single-crit", "multi-crit") ) } ), diff --git a/R/OptimizerBatchFocusSearch.R b/R/OptimizerBatchFocusSearch.R index 170e9419d..389d7dd1e 100644 --- a/R/OptimizerBatchFocusSearch.R +++ b/R/OptimizerBatchFocusSearch.R @@ -50,9 +50,7 @@ OptimizerBatchFocusSearch = R6Class("OptimizerBatchFocusSearch", id = "focus_search", param_set = param_set, param_classes = c("ParamLgl", "ParamInt", "ParamDbl", "ParamFct"), - properties = c("dependencies", "single-crit"), # NOTE: think about multi-crit variant - label = "Focus Search", - man = "bbotk::mlr_optimizers_focus_search" + properties = c("dependencies", "single-crit") # NOTE: think about multi-crit variant ) } ), diff --git a/R/OptimizerBatchGridSearch.R b/R/OptimizerBatchGridSearch.R index 291b56361..23f255621 100644 --- a/R/OptimizerBatchGridSearch.R +++ b/R/OptimizerBatchGridSearch.R @@ -48,9 +48,7 @@ OptimizerBatchGridSearch = R6Class("OptimizerBatchGridSearch", inherit = Optimiz id = "grid_search", param_set = param_set, param_classes = c("ParamLgl", "ParamInt", "ParamDbl", "ParamFct"), - properties = c("dependencies", "single-crit", "multi-crit"), - label = "Grid Search", - man = "bbotk::mlr_optimizers_grid_search" + properties = c("dependencies", "single-crit", "multi-crit") ) } ), diff --git a/R/OptimizerBatchIrace.R b/R/OptimizerBatchIrace.R index dcfaf7771..759d95d54 100644 --- a/R/OptimizerBatchIrace.R +++ b/R/OptimizerBatchIrace.R @@ -160,9 +160,7 @@ OptimizerBatchIrace = R6Class("OptimizerBatchIrace", param_set = param_set, param_classes = c("ParamDbl", "ParamInt", "ParamFct", "ParamLgl"), properties = c("dependencies", "single-crit"), - packages = "irace", - label = "Iterated Racing", - man = "bbotk::mlr_optimizers_irace" + packages = "irace" ) } ), diff --git a/R/OptimizerBatchLocalSearch.R b/R/OptimizerBatchLocalSearch.R index 7a9242321..0f71a0674 100644 --- a/R/OptimizerBatchLocalSearch.R +++ b/R/OptimizerBatchLocalSearch.R @@ -96,9 +96,7 @@ OptimizerBatchLocalSearch = R6Class("OptimizerBatchLocalSearch", id = "local_search", param_set = param_set, param_classes = c("ParamLgl", "ParamInt", "ParamDbl", "ParamFct"), - properties = c("dependencies", "single-crit"), # NOTE: think about multi-crit version - label = "Local Search", - man = "bbotk::mlr_optimizers_local_search" + properties = c("dependencies", "single-crit") # NOTE: think about multi-crit version ) } ), diff --git a/R/OptimizerBatchRandomSearch.R b/R/OptimizerBatchRandomSearch.R index 23cd1d968..ab7fe1905 100644 --- a/R/OptimizerBatchRandomSearch.R +++ b/R/OptimizerBatchRandomSearch.R @@ -43,9 +43,7 @@ OptimizerBatchRandomSearch = R6Class("OptimizerBatchRandomSearch", id = "random_search", param_set = param_set, param_classes = c("ParamLgl", "ParamInt", "ParamDbl", "ParamFct"), - properties = c("dependencies", "single-crit", "multi-crit"), - label = "Random Search", - man = "bbotk::mlr_optimizers_random_search" + properties = c("dependencies", "single-crit", "multi-crit") ) } ), diff --git a/R/Terminator.R b/R/Terminator.R index 692fd1f54..e7e840005 100644 --- a/R/Terminator.R +++ b/R/Terminator.R @@ -122,7 +122,7 @@ Terminator = R6Class("Terminator", stop("$unit is read-only.") } private$.unit - }, + } ), private = list( diff --git a/tests/testthat/setup.R b/tests/testthat/setup.R index 55c41208b..324b88a25 100644 --- a/tests/testthat/setup.R +++ b/tests/testthat/setup.R @@ -1,11 +1,12 @@ old_opts = options( warnPartialMatchArgs = TRUE, warnPartialMatchAttr = TRUE, - warnPartialMatchDollar = TRUE + warnPartialMatchDollar = TRUE, + mlr3.on_deprecated = "error" ) # https://github.com/HenrikBengtsson/Wishlist-for-R/issues/88 -old_opts = lapply(old_opts, function(x) if (is.null(x)) FALSE else x) +old_opts[1:3] = lapply(old_opts[1:3], function(x) if (is.null(x)) FALSE else x) lg_bbotk = lgr::get_logger("mlr3/bbotk") lg_rush = lgr::get_logger("rush") From c40799e087deef7b4d40595fdd12027e410be2d8 Mon Sep 17 00:00:00 2001 From: mb706 Date: Fri, 15 Aug 2025 00:23:55 +0200 Subject: [PATCH 06/11] man and label only where it is not automatic II --- R/TerminatorClockTime.R | 4 +--- R/TerminatorEvals.R | 5 ++--- R/TerminatorNone.R | 6 ++---- R/TerminatorRunTime.R | 5 ++--- 4 files changed, 7 insertions(+), 13 deletions(-) diff --git a/R/TerminatorClockTime.R b/R/TerminatorClockTime.R index 814617b9d..314e07e9b 100644 --- a/R/TerminatorClockTime.R +++ b/R/TerminatorClockTime.R @@ -37,9 +37,7 @@ TerminatorClockTime = R6Class("TerminatorClockTime", id = "clock_time", param_set = param_set, properties = c("single-crit", "multi-crit"), - unit = "seconds", - label = "Clock Time", - man = "bbotk::mlr_terminators_clock_time" + unit = "seconds" ) }, diff --git a/R/TerminatorEvals.R b/R/TerminatorEvals.R index c09cde20d..ec9732dc2 100644 --- a/R/TerminatorEvals.R +++ b/R/TerminatorEvals.R @@ -58,9 +58,8 @@ TerminatorEvals = R6Class("TerminatorEvals", id = "evals", param_set = param_set, properties = c("single-crit", "multi-crit"), - unit = "evaluations", - label = "Number of Evaluation", - man = "bbotk::mlr_terminators_evals") + unit = "evaluations" + ) }, #' @description diff --git a/R/TerminatorNone.R b/R/TerminatorNone.R index 935428ecd..b671227a4 100644 --- a/R/TerminatorNone.R +++ b/R/TerminatorNone.R @@ -23,10 +23,8 @@ TerminatorNone = R6Class("TerminatorNone", initialize = function() { super$initialize( id = "none", - properties = c("single-crit", "multi-crit"), - label = "None", - man = "bbotk::mlr_terminators_none" - ) + properties = c("single-crit", "multi-crit") + ) }, #' @description diff --git a/R/TerminatorRunTime.R b/R/TerminatorRunTime.R index 2cad3aa00..2389bfbc3 100644 --- a/R/TerminatorRunTime.R +++ b/R/TerminatorRunTime.R @@ -41,9 +41,8 @@ TerminatorRunTime = R6Class("TerminatorRunTime", id = "run_time", param_set = param_set, properties = c("single-crit", "multi-crit"), - unit = "seconds", - label = "Run Time", - man = "bbotk::mlr_terminators_run_time") + unit = "seconds" + ) }, #' @description From 2e12d00ed7f5effb6d64d5a1d08f1b4fee61a8fa Mon Sep 17 00:00:00 2001 From: mb706 Date: Fri, 15 Aug 2025 00:32:32 +0200 Subject: [PATCH 07/11] undo regression --- R/Objective.R | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/R/Objective.R b/R/Objective.R index c871793ff..ed7279fea 100644 --- a/R/Objective.R +++ b/R/Objective.R @@ -210,11 +210,12 @@ Objective = R6Class("Objective", deep_clone = function(name, value) { if (name == "context") return(NULL) + if (!is.environment(value)) return(value) switch(name, - "domain" = value$clone(deep = TRUE), - "codomain" = value$clone(deep = TRUE), - "constants" = value$clone(deep = TRUE), - super$deep_clone(name, value) + domain = value$clone(deep = TRUE), + codomain = value$clone(deep = TRUE), + constants = value$clone(deep = TRUE), + value ) }, From 7874b453028f14ddaff950a88e8381fcd368ea1b Mon Sep 17 00:00:00 2001 From: mb706 Date: Fri, 15 Aug 2025 11:44:01 +0200 Subject: [PATCH 08/11] new snapshots --- tests/testthat/_snaps/OptimizerCmaes.md | 4 ++-- tests/testthat/_snaps/OptimizerDesignPoints.md | 4 ++-- tests/testthat/_snaps/OptimizerFocusSearch.md | 4 ++-- tests/testthat/_snaps/OptimizerGenSA.md | 4 ++-- tests/testthat/_snaps/OptimizerGridSearch.md | 4 ++-- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/tests/testthat/_snaps/OptimizerCmaes.md b/tests/testthat/_snaps/OptimizerCmaes.md index 2102466c6..c2814f32d 100644 --- a/tests/testthat/_snaps/OptimizerCmaes.md +++ b/tests/testthat/_snaps/OptimizerCmaes.md @@ -4,9 +4,9 @@ z$optimizer Output - -- - Covariance Matrix Adaptation Evolution Strategy ----- + -- - Optimization via Covariance Matrix Adaptation Evoluti * Parameters: start_values=random * Parameter classes: * Properties: single-crit - * Packages: bbotk and adagio + * Packages: adagio and bbotk diff --git a/tests/testthat/_snaps/OptimizerDesignPoints.md b/tests/testthat/_snaps/OptimizerDesignPoints.md index 4182a1d0d..7b709696a 100644 --- a/tests/testthat/_snaps/OptimizerDesignPoints.md +++ b/tests/testthat/_snaps/OptimizerDesignPoints.md @@ -4,7 +4,7 @@ z$optimizer Output - -- - Design Points -------------------------------- + -- - Optimization via Design Points --------------- * Parameters: batch_size=1, design= * Parameter classes: , , , , and @@ -17,7 +17,7 @@ z$optimizer Output - -- - Design Points -------------------------------- + -- - Optimization via Design Points --------------- * Parameters: batch_size=1, design= * Parameter classes: , , , , and diff --git a/tests/testthat/_snaps/OptimizerFocusSearch.md b/tests/testthat/_snaps/OptimizerFocusSearch.md index 8455762a2..a833466c4 100644 --- a/tests/testthat/_snaps/OptimizerFocusSearch.md +++ b/tests/testthat/_snaps/OptimizerFocusSearch.md @@ -4,7 +4,7 @@ z$optimizer Output - -- - Focus Search ---------------------------------- + -- - Optimization via Focus Search ----------------- * Parameters: n_points=1, maxit=10 * Parameter classes: , , , and * Properties: dependencies and single-crit @@ -16,7 +16,7 @@ z$optimizer Output - -- - Focus Search ---------------------------------- + -- - Optimization via Focus Search ----------------- * Parameters: n_points=10, maxit=10 * Parameter classes: , , , and * Properties: dependencies and single-crit diff --git a/tests/testthat/_snaps/OptimizerGenSA.md b/tests/testthat/_snaps/OptimizerGenSA.md index 23d4da565..0a3499fc3 100644 --- a/tests/testthat/_snaps/OptimizerGenSA.md +++ b/tests/testthat/_snaps/OptimizerGenSA.md @@ -4,9 +4,9 @@ z$optimizer Output - -- - Generalized Simulated Annealing --------------------- + -- - Optimization via Generalized Simulated Annealing ---- * Parameters: list() * Parameter classes: * Properties: single-crit - * Packages: bbotk and GenSA + * Packages: GenSA and bbotk diff --git a/tests/testthat/_snaps/OptimizerGridSearch.md b/tests/testthat/_snaps/OptimizerGridSearch.md index c01d29217..480c77d42 100644 --- a/tests/testthat/_snaps/OptimizerGridSearch.md +++ b/tests/testthat/_snaps/OptimizerGridSearch.md @@ -4,7 +4,7 @@ z$optimizer Output - -- - Grid Search ------------------------------------ + -- - Optimization via Grid Search ------------------- * Parameters: batch_size=1, resolution=10 * Parameter classes: , , , and * Properties: dependencies, single-crit, and multi-crit @@ -16,7 +16,7 @@ z$optimizer Output - -- - Grid Search ------------------------------------ + -- - Optimization via Grid Search ------------------- * Parameters: batch_size=1, resolution=10 * Parameter classes: , , , and * Properties: dependencies, single-crit, and multi-crit From 5d8b72d2efd4b98c1f506af6440e39600bc869ca Mon Sep 17 00:00:00 2001 From: mb706 Date: Fri, 15 Aug 2025 12:10:02 +0200 Subject: [PATCH 09/11] new snapshots x2 combo --- tests/testthat/_snaps/OptimizerLocalSearch.md | 6 +++--- tests/testthat/_snaps/OptimizerNLoptr.md | 8 ++++---- tests/testthat/_snaps/OptimizerRandomSearch.md | 6 +++--- tests/testthat/_snaps/TerminatorClockTime.md | 2 +- tests/testthat/_snaps/TerminatorCombo.md | 2 +- 5 files changed, 12 insertions(+), 12 deletions(-) diff --git a/tests/testthat/_snaps/OptimizerLocalSearch.md b/tests/testthat/_snaps/OptimizerLocalSearch.md index c9bc271ea..f7d6f21ce 100644 --- a/tests/testthat/_snaps/OptimizerLocalSearch.md +++ b/tests/testthat/_snaps/OptimizerLocalSearch.md @@ -4,7 +4,7 @@ z$optimizer Output - -- - Local Search ---------------------------------- + -- - Optimization via Local Search ----------------- * Parameters: n_initial_points=3, initial_random_sample_size=100, neighbors_per_point=10, mutation_sd=0.1 * Parameter classes: , , , and @@ -17,7 +17,7 @@ optimizer Output - -- - Local Search ---------------------------------- + -- - Optimization via Local Search ----------------- * Parameters: n_initial_points=3, initial_random_sample_size=100, neighbors_per_point=10, mutation_sd=0.1 * Parameter classes: , , , and @@ -30,7 +30,7 @@ optimizer Output - -- - Local Search ---------------------------------- + -- - Optimization via Local Search ----------------- * Parameters: n_initial_points=3, initial_random_sample_size=100, neighbors_per_point=10, mutation_sd=0.1 * Parameter classes: , , , and diff --git a/tests/testthat/_snaps/OptimizerNLoptr.md b/tests/testthat/_snaps/OptimizerNLoptr.md index f7c5e073e..f398edfeb 100644 --- a/tests/testthat/_snaps/OptimizerNLoptr.md +++ b/tests/testthat/_snaps/OptimizerNLoptr.md @@ -4,12 +4,12 @@ z$optimizer Output - -- - Non-linear Optimization ---------------------------- + -- - Optimization via Non-linear Optimization ----------- * Parameters: algorithm=NLOPT_LN_BOBYQA, xtol_rel=-1, xtol_abs=-1, ftol_rel=-1, ftol_abs=-1, start_values=random, approximate_eval_grad_f=FALSE * Parameter classes: * Properties: single-crit - * Packages: bbotk and nloptr + * Packages: nloptr and bbotk --- @@ -17,10 +17,10 @@ z$optimizer Output - -- - Non-linear Optimization ---------------------------- + -- - Optimization via Non-linear Optimization ----------- * Parameters: algorithm=NLOPT_LD_LBFGS, xtol_rel=-1, xtol_abs=-1, ftol_rel=-1, ftol_abs=-1, start_values=random, approximate_eval_grad_f=TRUE * Parameter classes: * Properties: single-crit - * Packages: bbotk and nloptr + * Packages: nloptr and bbotk diff --git a/tests/testthat/_snaps/OptimizerRandomSearch.md b/tests/testthat/_snaps/OptimizerRandomSearch.md index 839f3e71e..7ba18aa71 100644 --- a/tests/testthat/_snaps/OptimizerRandomSearch.md +++ b/tests/testthat/_snaps/OptimizerRandomSearch.md @@ -4,7 +4,7 @@ z$optimizer Output - -- - Random Search -------------------------------- + -- - Optimization via Random Search --------------- * Parameters: batch_size=1 * Parameter classes: , , , and * Properties: dependencies, single-crit, and multi-crit @@ -16,7 +16,7 @@ z$optimizer Output - -- - Random Search -------------------------------- + -- - Optimization via Random Search --------------- * Parameters: batch_size=1 * Parameter classes: , , , and * Properties: dependencies, single-crit, and multi-crit @@ -28,7 +28,7 @@ z$optimizer Output - -- - Random Search -------------------------------- + -- - Optimization via Random Search --------------- * Parameters: batch_size=10 * Parameter classes: , , , and * Properties: dependencies, single-crit, and multi-crit diff --git a/tests/testthat/_snaps/TerminatorClockTime.md b/tests/testthat/_snaps/TerminatorClockTime.md index 6647436e5..64ed58a81 100644 --- a/tests/testthat/_snaps/TerminatorClockTime.md +++ b/tests/testthat/_snaps/TerminatorClockTime.md @@ -4,7 +4,7 @@ terminator Output - -- - Clock Time ------------------------------------------ + -- - Clock Time Terminator ------------------------------- * Parameters: stop_time= * Terminators: diff --git a/tests/testthat/_snaps/TerminatorCombo.md b/tests/testthat/_snaps/TerminatorCombo.md index ab86c41fe..f6510142c 100644 --- a/tests/testthat/_snaps/TerminatorCombo.md +++ b/tests/testthat/_snaps/TerminatorCombo.md @@ -4,7 +4,7 @@ terminator Output - -- - Combination --------------------------------------------- + -- - Combine Terminators ------------------------------------- * Parameters: any=TRUE * Terminators: and * Terminators: and From 217526de3112a8fa3ce3191af43c85410c55a13b Mon Sep 17 00:00:00 2001 From: mb706 Date: Fri, 15 Aug 2025 12:24:10 +0200 Subject: [PATCH 10/11] new snapshots III --- tests/testthat/_snaps/TerminatorEvals.md | 6 +++--- tests/testthat/_snaps/TerminatorNone.md | 4 ++-- tests/testthat/_snaps/TerminatorPerfReached.md | 2 +- tests/testthat/_snaps/TerminatorRunTime.md | 2 +- tests/testthat/_snaps/TerminatorStagnation.md | 2 +- tests/testthat/_snaps/TerminatorStagnationBatch.md | 4 ++-- 6 files changed, 10 insertions(+), 10 deletions(-) diff --git a/tests/testthat/_snaps/TerminatorEvals.md b/tests/testthat/_snaps/TerminatorEvals.md index 89722774c..b23562966 100644 --- a/tests/testthat/_snaps/TerminatorEvals.md +++ b/tests/testthat/_snaps/TerminatorEvals.md @@ -4,7 +4,7 @@ inst$terminator Output - -- - Number of Evaluation ------------------------------------ + -- - Terminator that stops after a number of evaluations ----- * Parameters: n_evals=7, k=0 * Terminators: @@ -14,7 +14,7 @@ inst$terminator Output - -- - Number of Evaluation ------------------------------------ + -- - Terminator that stops after a number of evaluations ----- * Parameters: n_evals=7, k=2 * Terminators: @@ -24,7 +24,7 @@ inst$terminator Output - -- - Number of Evaluation ------------------------------------ + -- - Terminator that stops after a number of evaluations ----- * Parameters: n_evals=0, k=2 * Terminators: diff --git a/tests/testthat/_snaps/TerminatorNone.md b/tests/testthat/_snaps/TerminatorNone.md index b8d7a5bc4..3ffa892b7 100644 --- a/tests/testthat/_snaps/TerminatorNone.md +++ b/tests/testthat/_snaps/TerminatorNone.md @@ -5,13 +5,13 @@ Output $evals - -- - Number of Evaluation ------------------------------------ + -- - Terminator that stops after a number of evaluations ----- * Parameters: n_evals=10, k=0 * Terminators: $none - -- - None ----------------------------------------------------- + -- - None Terminator ------------------------------------------ * Parameters: list() * Terminators: diff --git a/tests/testthat/_snaps/TerminatorPerfReached.md b/tests/testthat/_snaps/TerminatorPerfReached.md index efb3de6cf..f7734b831 100644 --- a/tests/testthat/_snaps/TerminatorPerfReached.md +++ b/tests/testthat/_snaps/TerminatorPerfReached.md @@ -4,7 +4,7 @@ terminator Output - -- - Performance Level --------------------------------- + -- - Performance Level Terminator ---------------------- * Parameters: level=0.2 * Terminators: diff --git a/tests/testthat/_snaps/TerminatorRunTime.md b/tests/testthat/_snaps/TerminatorRunTime.md index 4f617aa52..d7aacf01d 100644 --- a/tests/testthat/_snaps/TerminatorRunTime.md +++ b/tests/testthat/_snaps/TerminatorRunTime.md @@ -4,7 +4,7 @@ terminator Output - -- - Run Time ---------------------------------------------- + -- - Run Time Terminator ----------------------------------- * Parameters: secs=1 * Terminators: diff --git a/tests/testthat/_snaps/TerminatorStagnation.md b/tests/testthat/_snaps/TerminatorStagnation.md index e90196f6d..f663c16ee 100644 --- a/tests/testthat/_snaps/TerminatorStagnation.md +++ b/tests/testthat/_snaps/TerminatorStagnation.md @@ -4,7 +4,7 @@ terminator Output - -- - Stagnation ----------------------------------------- + -- - Terminator that stops when optimization does not imp * Parameters: iters=10, threshold=100 * Terminators: diff --git a/tests/testthat/_snaps/TerminatorStagnationBatch.md b/tests/testthat/_snaps/TerminatorStagnationBatch.md index 802ce943d..6e0fdedf0 100644 --- a/tests/testthat/_snaps/TerminatorStagnationBatch.md +++ b/tests/testthat/_snaps/TerminatorStagnationBatch.md @@ -4,7 +4,7 @@ terminator Output - -- - Stagnation Batch ------------------------------ + -- - Terminator that stops when optimization does no * Parameters: n=1, threshold=0 * Terminators: @@ -14,7 +14,7 @@ terminator Output - -- - Stagnation Batch ------------------------------ + -- - Terminator that stops when optimization does no * Parameters: n=2, threshold=0 * Terminators: From 0e45d986c41b01bc52f68e05c45304b3481e81c9 Mon Sep 17 00:00:00 2001 From: mb706 Date: Fri, 15 Aug 2025 15:36:55 +0200 Subject: [PATCH 11/11] deprecation message rename --- R/Optimizer.R | 2 +- R/Terminator.R | 2 +- tests/testthat/setup.R | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/R/Optimizer.R b/R/Optimizer.R index 3b97be837..a91bd5d65 100644 --- a/R/Optimizer.R +++ b/R/Optimizer.R @@ -54,7 +54,7 @@ Optimizer = R6Class("Optimizer", man ) { if (!missing(label) || !missing(man)) { - deprecated_component("label and man are deprecated for Optimizer construction and will be removed in the future.") + mlr3component_deprecation_msg("label and man are deprecated for Optimizer construction and will be removed in the future.") } super$initialize(dict_entry = id, dict_shortaccess = "opt", diff --git a/R/Terminator.R b/R/Terminator.R index e7e840005..2e5c1eab3 100644 --- a/R/Terminator.R +++ b/R/Terminator.R @@ -47,7 +47,7 @@ Terminator = R6Class("Terminator", #' Unit of steps. initialize = function(id, param_set = ps(), properties = character(), unit = "percent", label, man) { if (!missing(label) || !missing(man)) { - deprecated_component("label and man are deprecated for Terminator construction and will be removed in the future.") + mlr3component_deprecation_msg("label and man are deprecated for Terminator construction and will be removed in the future.") } super$initialize(dict_entry = id, dict_shortaccess = "trm", diff --git a/tests/testthat/setup.R b/tests/testthat/setup.R index 324b88a25..d6d08ed11 100644 --- a/tests/testthat/setup.R +++ b/tests/testthat/setup.R @@ -2,7 +2,7 @@ old_opts = options( warnPartialMatchArgs = TRUE, warnPartialMatchAttr = TRUE, warnPartialMatchDollar = TRUE, - mlr3.on_deprecated = "error" + mlr3.on_deprecated_mlr3component = "error" ) # https://github.com/HenrikBengtsson/Wishlist-for-R/issues/88