Description Usage Arguments Value Note References Examples
The AS-EMOA, short for aspiration set evolutionary multi-objective algorithm aims to incorporate expert knowledge into multi-objective optimization [1]. The algorithm expects an aspiration set, i.e., a set of reference points. It then creates an approximation of the pareto front close to the aspiration set utilizing the average Hausdorff distance.
1 2 3 4 5 6 | asemoa(task, n.population = 10L, n.archive = NULL, aspiration.set = NULL,
normalize.fun = NULL, dist.fun = ecr:::computeEuclideanDistance, p = 1,
parent.selector = setupSimpleSelector(),
mutator = setupPolynomialMutator(eta = 25, p = 0.2),
recombinator = setupSBXRecombinator(eta = 15, p = 0.7), max.iter = 100L,
max.evals = NULL, max.time = NULL, ...)
|
task |
[ |
n.population |
[ |
n.archive |
[ |
aspiration.set |
[ |
normalize.fun |
[ |
dist.fun |
[ |
p |
[ |
parent.selector |
[ |
mutator |
[ |
recombinator |
[ |
max.iter |
[ |
max.evals |
[ |
max.time |
[ |
... |
[any] |
[ecr_asemoa_result, ecr_multi_objective_result
]
This is a pure R implementation of the AS-EMOA algorithm. It hides the regular ecr interface and offers a more R like interface while still being quite adaptable.
[1] Rudolph, G., Schuetze, S., Grimme, C., Trautmann, H: An Aspiration Set EMOA Based on Averaged Hausdorff Distances. LION 2014: 153-156. [2] G. Rudolph, O. Schuetze, C. Grimme, and H. Trautmann: A Multiobjective Evolutionary Algorithm Guided by Averaged Hausdorff Distance to Aspiration Sets, pp. 261-273 in A.-A. Tantar et al. (eds.): Proceedings of EVOLVE - A bridge between Probability, Set Oriented Numerics and Evolutionary Computation V, Springer: Berlin Heidelberg 2014.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | library(smoof)
obj.fn = makeDTLZ2Function(dimensions = 2L, n.objectives = 2L)
# define the aspiration set, i.e., a set of reference points
aspiration.set = matrix(
c(0.1531, 0.1594, 0.1656, 0.1719, 0.1781, 0.1844, 0.1906, 0.1969, 0.2031, 0.2094,
0.2094, 0.2031, 0.1969, 0.1906, 0.1844, 0.1781, 0.1719, 0.1656, 0.1594, 0.1531),
byrow = TRUE,
nrow = 2L
)
## Not run:
res = asemoa(
task = obj.fn,
n.population = 10L,
aspiration.set = aspiration.set,
max.evals = 1000L
)
## End(Not run)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.