R: Codomain of Function

Codomain {bbotk} | R Documentation

## Codomain of Function

### Description

A set of Param objects defining the codomain of a function. The parameter set must contain at least one target parameter tagged with `"minimize"` or `"maximize"`. The codomain may contain extra parameters which are ignored when calling the Archive methods `$best()`, `$nds_selection()` and `$cols_y`. This class is usually constructed internally from a paradox::ParamSet when Objective is initialized.

### Super class

`paradox::ParamSet` -> `Codomain`

### Active bindings

`is_target`

  (named `logical()`)
  Position is `TRUE` for target Params.

`target_length`

  (`integer()`)
  Returns number of target Params.

`target_ids`

  (`character()`)
  Number of contained target Params.

`target_tags`

  (named `list()` of `character()`)
  Tags of target Params.

`maximization_to_minimization`

  (`integer()`)
  Returns a numeric vector with values -1 and 1. Multiply with the outcome of a maximization problem to turn it into a minimization problem.

### Methods

#### Public methods

- `Codomain$new()`

- `Codomain$clone()`

Inherited methods

- `paradox::ParamSet$add()`

- `paradox::ParamSet$add_dep()`

- `paradox::ParamSet$assert()`

- `paradox::ParamSet$assert_dt()`

- `paradox::ParamSet$check()`

- `paradox::ParamSet$check_dt()`

- `paradox::ParamSet$format()`

- `paradox::ParamSet$get_values()`

- `paradox::ParamSet$ids()`

- `paradox::ParamSet$print()`

- `paradox::ParamSet$search_space()`

- `paradox::ParamSet$subset()`

- `paradox::ParamSet$test()`

- `paradox::ParamSet$test_dt()`

#### Method `new()`

Creates a new instance of this R6 class.

##### Usage

    Codomain$new(params = named_list())

##### Arguments

`params`

  (`list()`)
  List of Param, named with their respective ID. Parameters are cloned.

#### Method `clone()`

The objects of this class are cloneable with this method.

##### Usage

    Codomain$clone(deep = FALSE)

##### Arguments

`deep`

  Whether to make a deep clone.

### Examples

    # define objective function
    fun = function(xs) {
      c(y = -(xs[[1]] - 2)^2 - (xs[[2]] + 3)^2 + 10)
    }

    # set domain
    domain = ps(
      x1 = p_dbl(-10, 10),
      x2 = p_dbl(-5, 5)
    )

    # set codomain
    codomain = ps(
      y = p_dbl(tags = "maximize"),
      time = p_dbl()
    )

    # create Objective object
    objective = ObjectiveRFun$new(
      fun = fun,
      domain = domain,
      codomain = codomain,
      properties = "deterministic"
    )

[Package bbotk version 0.5.3 Index]