cmaes_gen {MaOEA}R Documentation

Generator for cmaes_gen class.

Description

Create a list with cmaes_gen class. Basically, the function transform the population into a class that is accepted by the MOCMAES and SMOCMAES function.

Usage

cmaes_gen(
  population,
  ps_target = (1/(5 + (1/2)^0.5)),
  stepSize = 0.5,
  evoPath = rep(0, nrow(population)),
  covarianceMatrix = diag(nrow(population))
)

Arguments

population

The number of objective functions. A scalar value.

ps_target

The target success rate. Used to initialize cmaes_gen$averageSuccessRate.

stepSize

The initial step size.

evoPath

A vector of numbers indicating evolution path of each variable.

covarianceMatrix

Covariance matrix of the variables.

Value

An object of cmaes_gen class. It can be used as MO-CMA-ES parent. It is a 5 tuple: x (the design point, length = number of variable),averageSuccessRate (scalar),stepSize (scalar), evoPath (evolution path, vector, length = number of variable ),covarianceMatrix (square matrix with ncol = nrow = number of variable).

Examples

nVar <- 14
nObjective <- 5
nIndividual <- 100
crossoverProbability <- 1
ps_target <- 1 / (5 + ( 1 / 2  )^0.5 )
pop <- matrix(stats::runif(nIndividual*nVar), nrow = nVar) # create the population
a_list <- cmaes_gen(pop)
control <- list(successProbTarget=ps_target,crossoverProbability=crossoverProbability)
 
# run a generation of MO-CMA-ES with standard WFG8 test function.
numpyready <- reticulate::py_module_available('numpy')
pygmoready <- reticulate::py_module_available('pygmo')
py_module_ready <- numpyready && pygmoready
if(py_module_ready) # prevent error on testing the example
newGeneration <- MOCMAES(a_list,nObjective,WFG8,control,nObjective)


[Package MaOEA version 0.6.2 Index]