Evaluate a population matrix on the objective functions for the MOEADr package

evaluate_population(X, problem, nfe)

Arguments

X

Population matrix of the MOEA/D (each row is a candidate solution).

problem

list of named problem parameters. See Section Problem Description of the moead() documentation for details.

nfe

counter of function evaluations from the moead() routine.

Value

List object containing the matrix of objective function values, a list object containing information about the constraint violations (a matrix of constraint values Cmatrix, a matrix of constraint violations Vmatrix, and a vector of total violations v), and the updated counter nfe.

Details

This routine evaluates a population matrix for the MOEA/D. Each row of the matrix is considered as a candidate solution. This routine expects the candidate solutions to be standardized, i.e., that the variable limits given in problem$xmin and problem$xmax are mapped to 0 and 1, respectively.

References

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

Examples

ex.problem <- list(name = "example_problem",
                   xmin = rep(-1, 5),
                   xmax = rep(1, 5),
                   m    = 2)
X <- create_population(20, ex.problem)
Y <- evaluate_population(X, ex.problem, nfe = 0)