Pure R implementation of the SMS-EMOA. This algorithm belongs to the group of indicator based multi-objective evolutionary algorithms. In each generation, the SMS-EMOA selects two parents uniformly at, applies recombination and mutation and finally selects the best subset of individuals among all subsets by maximizing the Hypervolume indicator.
smsemoa(
fitness.fun,
n.objectives = NULL,
n.dim = NULL,
minimize = NULL,
lower = NULL,
upper = NULL,
mu = 100L,
ref.point = NULL,
mutator = setup(mutPolynomial, eta = 25, p = 0.2, lower = lower, upper = upper),
recombinator = setup(recSBX, eta = 15, p = 0.7, lower = lower, upper = upper),
terminators = list(stopOnIters(100L)),
...
)
[ecr_multi_objective_result
]
[function
]
The fitness function.
[integer(1)
]
Number of objectives of obj.fun
.
Optional if obj.fun
is a benchmark function from package smoof.
[integer(1)
]
Dimension of the decision space.
[logical(n.objectives)
]
Logical vector with ith entry TRUE
if the ith objective of fitness.fun
shall be minimized. If a single logical is passed, it is assumed to be valid
for each objective.
[numeric
]
Vector of minimal values for each parameter of the decision space in case
of float or permutation encoding.
Optional if obj.fun
is a benchmark function from package smoof.
[numeric
]
Vector of maximal values for each parameter of the decision space in case
of float or permutation encoding.
Optional if obj.fun
is a benchmark function from package smoof.
[integer(1)
]
Number of individuals in the population.
Default is 100.
[numeric
]
Reference point for the hypervolume computation. Default is (11, ..., 11)'
with the corresponding dimension.
[ecr_mutator
]
Mutation operator of type ecr_mutator
.
[ecr_recombinator
]
Recombination operator of type ecr_recombinator
.
[list
]
List of stopping conditions of type “ecr_terminator”.
Default is to stop after 100 iterations.
[any]
Further arguments passed down to fitness function.
Beume, N., Naujoks, B., Emmerich, M., SMS-EMOA: Multiobjective selection based on dominated hypervolume, European Journal of Operational Research, Volume 181, Issue 3, 16 September 2007, Pages 1653-1669.