R: Combine Terminators

mlr_terminators_combo {bbotk} | R Documentation

## Combine Terminators

### Description

This class takes multiple Terminators and terminates as soon as one or all of the included terminators are positive.

### Dictionary

This Terminator can be instantiated via the dictionary mlr_terminators or with the associated sugar function `trm()`:

    mlr_terminators$get("combo")
    trm("combo")

### Parameters

`any`

  `logical(1)`
  Terminate iff any included terminator is positive? (not all). Default is `TRUE`.

### Super class

`bbotk::Terminator` -> `TerminatorCombo`

### Public fields

`terminators`

  (`list()`)
  List of objects of class Terminator.

### Methods

#### Public methods

- `TerminatorCombo$new()`

- `TerminatorCombo$is_terminated()`

- `TerminatorCombo$print()`

- `TerminatorCombo$remaining_time()`

- `TerminatorCombo$status_long()`

- `TerminatorCombo$clone()`

Inherited methods

- `bbotk::Terminator$format()`

- `bbotk::Terminator$status()`

#### Method `new()`

Creates a new instance of this R6 class.

##### Usage

    TerminatorCombo$new(terminators = list(TerminatorNone$new()))

##### Arguments

`terminators`

  (`list()`)
  List of objects of class Terminator.

#### Method `is_terminated()`

Is `TRUE` iff the termination criterion is positive, and `FALSE` otherwise.

##### Usage

    TerminatorCombo$is_terminated(archive)

##### Arguments

`archive`

  (Archive).

##### Returns

`logical(1)`.

#### Method `print()`

Printer.

##### Usage

    TerminatorCombo$print(...)

##### Arguments

`...`

  (ignored).

#### Method `remaining_time()`

Returns the remaining runtime in seconds. If `any = TRUE`, the remaining runtime is determined by the time-based terminator with the shortest time remaining. If non-time-based terminators are used and `any = FALSE`, the the remaining runtime is always `Inf`.

##### Usage

    TerminatorCombo$remaining_time(archive)

##### Arguments

`archive`

  (Archive).

##### Returns

`integer(1)`.

#### Method `status_long()`

Returns `max_steps` and `current_steps` for each terminator.

##### Usage

    TerminatorCombo$status_long(archive)

##### Arguments

`archive`

  (Archive).

##### Returns

data.table::data.table.

#### Method `clone()`

The objects of this class are cloneable with this method.

##### Usage

    TerminatorCombo$clone(deep = FALSE)

##### Arguments

`deep`

  Whether to make a deep clone.

### See Also

Other Terminator: `Terminator`, `mlr_terminators_clock_time`, `mlr_terminators_evals`, `mlr_terminators_none`, `mlr_terminators_perf_reached`, `mlr_terminators_run_time`, `mlr_terminators_stagnation_batch`, `mlr_terminators_stagnation`, `mlr_terminators`

### Examples

    trm("combo",
      list(trm("clock_time", stop_time = Sys.time() + 60),
        trm("evals", n_evals = 10)), any = FALSE
    )

[Package bbotk version 0.5.3 Index]