Skip to content

Commit

Permalink
add n.archive param to AS-EMOA
Browse files Browse the repository at this point in the history
  • Loading branch information
jakobbossek committed Apr 18, 2017
1 parent 0ac5e98 commit c8eba4a
Show file tree
Hide file tree
Showing 93 changed files with 30 additions and 110 deletions.
2 changes: 1 addition & 1 deletion DESCRIPTION
Expand Up @@ -33,4 +33,4 @@ Suggests:
testthat (>= 0.9.1)
ByteCompile: yes
LazyData: yes
RoxygenNote: 5.0.1
RoxygenNote: 6.0.1
16 changes: 11 additions & 5 deletions R/emoa.as-emoa.R
Expand Up @@ -27,6 +27,9 @@
#' @template arg_optimization_task
#' @param n.population [\code{integer(1)}]\cr
#' Population size. Default is \code{10}.
#' @param n.archive [\code{integer(1)}]\cr
#' Archive size.
#' Default is the number of points in the \code{aspiration.set}.
#' @param aspiration.set [\code{matrix}]\cr
#' The aspiration set. Each column contains one point of the set.
#' @param normalize.fun [\code{function}]\cr
Expand Down Expand Up @@ -55,6 +58,7 @@
asemoa = function(
task,
n.population = 10L,
n.archive = NULL,
aspiration.set = NULL,
normalize.fun = NULL,
dist.fun = ecr:::computeEuclideanDistance,
Expand All @@ -75,10 +79,11 @@ asemoa = function(
stopf("AS-EMAO: Dimension of the aspiration set needs to be equal to the number of objectives,
but %i <> %i.", nrow(aspiration.set), task$n.objectives)
}
n.archive = ncol(aspiration.set)
if (is.null(n.archive))
n.archive = ncol(aspiration.set)

assertInt(n.population, lower = 5L)
assertInt(n.archive, lower = 3L)
n.population = asInt(n.population, lower = 5L)
n.archive = asInt(n.archive, lower = 3L)
if (!is.null(normalize.fun)) {
assertFunction(normalize.fun, args = c("set", "aspiration.set"), ordered = TRUE)
}
Expand All @@ -97,7 +102,7 @@ asemoa = function(
fastASEMOASelector = makeSelector(
selector = function(fitness, n.select, task, control, opt.state) {
aspiration.set = control$aspiration.set
n.archive = ncol(aspiration.set)
n.archive = control$n.archive

# get nondominated points
nondom.idx = which.nondominated(fitness)
Expand Down Expand Up @@ -165,7 +170,7 @@ asemoa = function(
asemoaSelector = makeSelector(
selector = function(fitness, n.select, task, control, opt.state) {
aspiration.set = control$aspiration.set
n.archive = ncol(aspiration.set)
n.archive = control$n.archive

# get offspring
all.idx = 1:ncol(fitness)
Expand Down Expand Up @@ -251,6 +256,7 @@ asemoa = function(

#FIXME: this is rather ugly. We simply add some more args to the control object
# without sanity checks and stuff like that.
ctrl$n.archive = n.archive
ctrl$aspiration.set = aspiration.set

res = doTheEvolution(task, ctrl)
Expand Down
2 changes: 1 addition & 1 deletion R/operator.terminator.max.evaluations.R
Expand Up @@ -6,7 +6,7 @@
#'
#' @param max.evals [\code{integer(1)}]\cr
#' Maximal number of function evaluations. Default ist \code{Inf}.
#' @return [\code{function}]
#' @return [\code{ecr2_terminator}]
#' @family stopping conditions
#' @export
setupMaximumEvaluationsTerminator = function(max.evals = NULL) {
Expand Down
1 change: 0 additions & 1 deletion man/OptState.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

13 changes: 6 additions & 7 deletions man/OptStateGetter.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 5 additions & 2 deletions man/asemoa.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/autoplot.ecr_single_objective_result.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/buildInitialPopulation.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/computeAverageHausdorffDistance.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/computeCrowdingDistance.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/computeDistanceFromPointToSetOfPoints.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/computeGenerationalDistance.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/computeInvertedGenerationalDistance.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/doNondominatedSorting.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/doTheEvolution.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/dominated.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/dominated_hypervolume.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

5 changes: 2 additions & 3 deletions man/dominates.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/ecr.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/ecr_parallelization.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/ecr_result.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/ecrpackage.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/emoa_indicators.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/evaluateFitness.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

5 changes: 2 additions & 3 deletions man/evolutionary_setters.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/generateOffspring.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/getAvailableEventNames.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/getEvaluations.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/getGenerations.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/getNextGeneration.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/getOperatorName.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/getOperatorParameters.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/getSupportedRepresentations.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/is.supported.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/isEcrOperator.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/makeGenerator.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/makeMonitor.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/makeMutator.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/makeOperator.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/makeOptimizationTask.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/makePopulation.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/makeRecombinator.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/makeSelector.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/makeTerminator.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/mergePopulations.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/normalizeFront.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/nsga2.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/onePlusOneGA.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/print.ecr_control.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 1 addition & 2 deletions man/reference_point_approximation.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/registerAction.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion man/rescalePoints.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

0 comments on commit c8eba4a

Please sign in to comment.