Description Usage Arguments Value References Examples
Do an iteration of S-Metric Selection (SMS)-EMOA. The variation used is simulated binary crossover (SBX) and polynomial mutation.
1 |
population |
The parent generation. One individual per column. |
fun |
Objective function being solved. Currently available in the package DTLZ1-DTLZ4, WFG4-WFG9. |
nObjective |
Number of objective. Ignored as of version 0.6.1; number of row from fun is used instead. |
control |
(list) Options to control the SMS-EMOA:
|
... |
Further arguments to be passed to |
Returns a list for the next generation
population
The new generation. Column major, each row contain 1 set of objectives.
successfulOffspring
Binary, 1 if the offspring is kept in the new generation. Used in some adaptive schemes.
populationObjective
The new generation's objective values.
Beume, N., Naujoks, B., Emmerich, M.: SMS-EMOA: Multiobjective selection based on dominated hypervolume. Eur. J. Oper. Res. 181 (3), 1653 – 1669 (2007)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
nVar <- 14
nObjective <- 5
nIndividual <- 100
crossoverProbability <- 1
mutationProbability <- 1/nVar
population <- matrix(runif(nIndividual*nVar), nrow = nVar)
# run a generation of SMS-EMOA with standard WFG6 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
SMSEMOA(population,WFG6,nObjective,list(crossoverProbability = crossoverProbability,
mutationProbability = mutationProbability),nObjective)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.