Learn R Programming

⚠️There's a newer version (2.1.1) of this package.Take me there.

ecr (version 1.0)

Evolutionary Computing in R

Description

Provides a powerful framework for evolutionary computing in R. The user can easily construct powerful evolutionary algorithms for tackling both single- and multi-objective problems by plugging in different predefined evolutionary building blocks, e. g., operators for mutation, recombination and selection with just a few lines of code. Your problem cannot be easily solved with a standard EA which works on real-valued vectors, permutations or binary strings? No problem, 'ecr' has been developed with that in mind. Extending the framework with own operators is also possible. Additionally there are various comfort functions, like monitoring, logging and more.

Copy Link

Version

Install

install.packages('ecr')

Monthly Downloads

390

Version

1.0

License

BSD_2_clause + file LICENSE

Issues

Pull Requests

Stars

Forks

Maintainer

Jakob Bossek

Last Published

August 23rd, 2016

Functions in ecr (1.0)

computeDistanceFromPointToSetOfPoints

Computes distance between a single point and set of points.
buildInitialPopulation

Helper function to build initial population.
computeDominatedHypervolume

Functions for the calculation of the dominated hypervolume (contribution).
computeInvertedGenerationalDistance

Computes Inverted Generational Distance.
autoplot.ecr_single_objective_result

Plot optimization trace.
asemoa

Implementation of the NSGA-II EMOA algorithm by Deb.
computeAverageHausdorffDistance

Average Hausdorff Distance computation.
ecr_result

Result object.
evaluateFitness

Computes the fitness values for each member of a given population.
ecr_parallelization

Parallelization in ecr
dominates

Dominance relation check.
ecr

ecrpackage

ecr: Evolutionary Computing in R
doTheEvolution

Working horse of the ecr package.
doNondominatedSorting

Fast non-dominated sorting algorithm.
computeEpsilonIndicator

Computation of the unary epsilon-indicator.
setupParentSelector

Collection of functions to set specific evolutionay operators.
getSupportedRepresentations

Get supported representations.
getOperatorParameters

Get the operator's parameters.
getNextGeneration

Performs survival selection.
isEcrOperator

Check if given function is an ecr operator.
getGenerations

Get number of generations.
getEvaluations

Get number of function evaluations.
generateOffspring

Creates offspring from a given mating pool of parents.
is.supported

Check if ecr operator supports given representation.
getOperatorName

Get name of a operator.
getAvailableEventNames

Receive a character vector of all valid event names.
makeRecombinator

Construct a recombination operator.
makeMutator

Construct a mutation operator.
makeOperator

Construct evolutionary operator.
makeTerminator

Generate stopping condition.
mergePopulations

Merge populations.
makeGenerator

Construct a generator.
makeSelector

Construct a selection operator.
makeMonitor

Factory method for monitor objects.
makePopulation

Generate a population.
makeOptimizationTask

Creates an optimization task.
onePlusOneGA

Simple (1 + 1) Genetic Algorithm.
nsga2

Implementation of the NSGA-II EMOA algorithm by Deb.
OptState

Optimization state.
OptStateGetter

Optimization state getter functions.
selectForMating

Generate mating pool.
registerAction

Register an action.
selectForSurvival

Generate mating pool.
print.ecr_control

Print ecr control object.
rescalePoints

Rescaling of points.
approximateNadirPoint

Reference point approximations.
setupECRControl

Generates control object.
setupOptPathLoggingMonitor

Logging monitor.
setupEvolutionaryOperators

Enhance control object with evolutionary operators.
setupOXRecombinator

Generator of the Ordered-Crossover (OX) recombination operator.
setupOptState

Generate an optimization state object.
setupDominatedHypervolumeSelector

Dominated hypervolume selector.
setupCrossoverRecombinator

Generator of the one-point crossover recombination operator.
setupNondomSelector

Non-dominated sorting selector.
setupPermutationGenerator

Generates a generator object for the initial population.
setupNullRecombinator

Generator of the “null” recombination operator.
setupRouletteWheelSelector

Generator for Roulette-Wheel-Selection (fitness-proportional selection).
setupSBXRecombinator

Generator of the Simulated Binary Crossover (SBX) recombinator.
wrapChildren

Wrap the individuals constructed by a recombination operator.
setupMaximumIterationsTerminator

Stopping condition: maximum number of iterations.
setupPMXRecombinator

Generator of the Partially-Mapped-Crossover (PMX) recombination operator.
setupMaximumTimeTerminator

Stopping condition: time limit.
setupPolynomialMutator

Generator of the polynomial mutation operator.
computeCrowdingDistance

Compute the crowding distance of a set of points.
setupCloseToOptimumTerminator

Stopping condition: close to optimum.
computeGenerationalDistance

Computes Generational Distance.
setupConsoleMonitor

Simple stdout monitoring function.
setupScrambleMutator

Generator for the Scramble mutation operator.
setupSimpleSelector

Simple (naive) mating pool generator.
smsemoa

Implementation of the SMS-EMOA by Emmerich et al.
summary.ecr_multi_objective_result

Summary function for multi objective ecr result.
dominated

Check for pareto dominance.
updateOptState

Update optimization state.
which.dominated

Determine which points of a set are (non)dominated.
setupGreedySelector

Simple “greedy” selector.
setupGaussMutator

Generator of the Gaussian mutation operator.
setupInversionMutator

Generator for the Inversion mutation operator.
setupMaximumEvaluationsTerminator

Stopping condition: maximum number of function evaluations.
setupSwapMutator

Generator for the Swap mutation operator.
setupTerminators

Generator for some frequently used stopping conditions.
setupUniformGenerator

Generates the uniform generator object for the initial population.
setupTournamentSelector

Generator for k-Tournament selection.
setupBitFlipMutator

Generator of the Bitplip mutation operator.
setupBinaryGenerator

Generates a generator object for the initial population.
setupUniformMutator

Generator of the Uniform mutation operator.
setupIntermediateRecombinator

Generator of the indermediate recombination operator.
setupInsertionMutator

Generator for the Insertion mutation operator.
simpleEA

Simple (mu + lambda) EA implementation.