Polynomial mutation implementation for the MOEA/D
variation_polymut(X, etam, pm, eps = 1e-06, ...)
Population matrix
mutation constant
variable-wise probability of mutation (numeric value 0 <= pm <= 1, or use "n" for setting it as (1 / problem dimension).)
small constant used to prevent divisions by zero
other parameters (included for compatibility with generic call)
Matrix X
' containing the mutated population
This R implementation of the Polynomial Mutation reproduces the C code implementation available in the R package emoa 0.5-0, by Olaf Mersmann. The differences between the present version and the original one are:
The operator is performed on the variables scaled to the [0, 1]
interval, which simplifies the calculations.
Calculations are vectorized over variables, which also simplifies the implementation.
K. Deb and S. Agrawal (1999). A Niched-Penalty Approach for Constraint
Handling in Genetic Algorithms. In: Artificial Neural Nets and Genetic
Algorithms, pp. 235-243, Springer.
F. Campelo, L.S. Batista, C. Aranha (2020): The MOEADr Package: A
Component-Based Framework for Multiobjective Evolutionary Algorithms Based on
Decomposition. Journal of Statistical Software doi:10.18637/jss.v092.i06
Olaf Mersmann (2012). emoa: Evolutionary Multiobjective
Optimization Algorithms. R package version 0.5-0.
http://CRAN.R-project.org/package=emoa