Skip to content

Commit 0eb9f48

Browse files
authored
fix: tuner irace failed with logical parameters and dependencies. (#409)
1 parent 5e272d4 commit 0eb9f48

File tree

2 files changed

+6
-2
lines changed

2 files changed

+6
-2
lines changed

NEWS.md

+2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
# mlr3tuning (development version)
22

3+
* fix: `TunerIrace` failed with logical parameters and dependencies.
4+
35
# mlr3tuning 0.19.2
46

57
* refactor: Change thread limits.

R/TunerIrace.R

+4-2
Original file line numberDiff line numberDiff line change
@@ -135,9 +135,11 @@ target_runner_tuning = function(experiment, exec.target.runner, scenario, target
135135
# add configuration and instance id to archive
136136
set(configuration, j = "configuration", value = e$id.configuration)
137137
set(configuration, j = "instance", value = e$id.instance)
138-
# fix logicals
139-
configuration[, map(.SD, function(x) ifelse(x %in% c("TRUE", "FALSE"), as.logical(x), x))]
138+
configuration
140139
})
140+
# fix logicals
141+
lgl_params = as.data.table(tuning_instance$search_space)[class == "ParamLgl", id]
142+
if (length(lgl_params)) xdt[, (lgl_params) := lapply(.SD, as.logical), .SDcols = lgl_params]
141143

142144
# provide experiment instances to objective
143145
tuning_instance$objective$constants$values$resampling = map(experiment, function(e) e$instance)

0 commit comments

Comments
 (0)