if (requireNamespace("mlr3learners") &
requireNamespace("DiceKriging") &
requireNamespace("rgenoud")) {
library(bbotk)
library(paradox)
library(mlr3learners)
fun = function(xs) {
list(y = xs$x ^ 2)
}
domain = ps(x = p_dbl(lower = -10, upper = 10))
codomain = ps(y = p_dbl(tags = "minimize"))
objective = ObjectiveRFun$new(fun = fun, domain = domain, codomain = codomain)
instance = OptimInstanceBatchSingleCrit$new(
objective = objective,
terminator = trm("evals", n_evals = 5))
xdt = generate_design_random(instance$search_space, n = 4)$data
instance$eval_batch(xdt)
learner = default_gp()
output_trafo = ot("standardize", invert_posterior = TRUE)
surrogate = srlrn(learner, output_trafo = output_trafo, archive = instance$archive)
surrogate$update()
surrogate$output_trafo$state
surrogate$predict(data.table(x = c(-1, 0, 1)))
surrogate$output_trafo$invert_posterior = FALSE
surrogate$predict(data.table(x = c(-1, 0, 1)))
}
Run the code above in your browser using DataLab