| MutatorDiscrete {miesmuschel} | R Documentation |
Discrete Mutator Base Class
Description
Base class for mutation operations on discrete individuals, inheriting from Mutator.
MutatorDiscrete operators perform mutation on discrete (logical and factor valued) individuals. Inheriting
operators implement the private $.mutate_discrete() function that is called once for each individual
and is given a character vector.
Inheriting
MutatorDiscrete is an abstract base class and should be inherited from. Inheriting classes should implement the private $.mutate_discrete()
function. During $operate(), the $.mutate_discrete() function is called once for each individual, with the parameters values (the
individual as a single character vector), and levels (a list of character containing the possible values for each element of values). Typically,
$initialize() should also be overloaded.
Super classes
miesmuschel::MiesOperator -> miesmuschel::Mutator -> MutatorDiscrete
Methods
Public methods
Inherited methods
Method new()
Initialize base class components of the MutatorNumeric.
Usage
MutatorDiscrete$new(
param_classes = c("ParamLgl", "ParamFct"),
param_set = ps(),
packages = character(0),
dict_entry = NULL,
own_param_set = quote(self$param_set)
)Arguments
param_classes(
character)
Classes of parameters that the operator can handle. May contain any of"ParamLgl","ParamFct". Default is both of them.
The$param_classesfield will reflect this value.param_set(
ParamSet|listofexpression)
Strategy parameters of the operator. This should be created by the subclass and given tosuper$initialize(). If this is aParamSet, it is used as theMiesOperator'sParamSetdirectly. Otherwise it must be alistof expressions e.g. created byalist()that evaluate toParamSets, possibly referencingselfandprivate. TheseParamSetare then combined using aParamSetCollection. Default is the emptyParamSet.
The$param_setfield will reflect this value.packages(
character) Packages that need to be loaded for the operator to function. This should be declared so these packages can be loaded when operators run on parallel instances. Default ischaracter(0).
The$packagesfield will reflect this values.dict_entry(
character(1)|NULL)
Key of the class inside theDictionary(usually one ofdict_mutators,dict_recombinators,dict_selectors), where it can be retrieved using a short access function. May beNULLif the operator is not entered in a dictionary.
The$dict_entryfield will reflect this value.own_param_set(
language)
An expression that evaluates to aParamSetindicating the configuration parameters that are entirely owned by this operator class (and not proxied from a construction argument object). This should bequote(self$param_set)(the default) when theparam_setargument is not a list of expressions.
Method clone()
The objects of this class are cloneable with this method.
Usage
MutatorDiscrete$clone(deep = FALSE)
Arguments
deepWhether to make a deep clone.
See Also
Other base classes:
Filtor,
FiltorSurrogate,
MiesOperator,
Mutator,
MutatorNumeric,
OperatorCombination,
Recombinator,
RecombinatorPair,
Scalor,
Selector,
SelectorScalar
Other mutators:
Mutator,
MutatorNumeric,
OperatorCombination,
dict_mutators_cmpmaybe,
dict_mutators_erase,
dict_mutators_gauss,
dict_mutators_maybe,
dict_mutators_null,
dict_mutators_proxy,
dict_mutators_sequential,
dict_mutators_unif