Represents algorithm for differential evolution.
Represents an evolutionary algorithm.
Represents an evolutionary algorithm.
number of generations
number of individuals per generation
number of parents per generation
number of offspring per generation
rate of the crossover operation
EvolutionaryAlgorithmModule
Listens to the end of an iteration within the optimizer and calls the corresponding event handling
methods from Opt4JSetup.
Listens to the end of an iteration within the optimizer and calls the corresponding event handling
methods from Opt4JSetup.
Opt4JSetup
Common interface of all optimization algorithms in Opt4J.
Common interface of all optimization algorithms in Opt4J. Their parameters and default values as taken from the original source code.
Support for Opt4J.
Represents an optimizer using random search.
Represents an optimizer using random search.
the number of iterations
the batch size (number of replications for the randomly sampled individual of the given iteration)
RandomSearchModule
Represents genotype by simply creating random parameter combinations.
Represents genotype by simply creating random parameter combinations. It is important that Opt4J's built-in genotypes are used, since this allows to re-use the built-in operators for mutation and recombination.
See http://opt4j.sourceforge.net/documentation/3.0/tutorial.xhtml for details.
org.opt4j.core.problem.Genotype
Decodes genotype into phenotype.
Decodes genotype into phenotype.
Here, this is simply a matter of reading out the parameter values and putting them into a map representing a parameter assignment.
org.opt4j.core.problem.Decoder
Evaluates phenotypes.
Evaluates phenotypes.
org.opt4j.core.problem.Evaluator
Represents an optimizer based on simulated annealing.
Represents an optimizer based on simulated annealing.
the number of iterations
The type of the Cooling Schedule (Linear, Hyperbolic, Exponential)
SimulatedAnnealingModule
Companion object for the setup.
Companion object for the setup. Since Opt4J uses the GUICE framework for dependency injection, which does not seen to support the binding of anonymous inner classes, this object contains all problem-specific information that is required by the creator/decoder/evaluator classes.
To avoid bugs (race conditions etc.), the setup has a dedicated owner, i.e. in the current implementation Opt4J cannot be used to optimize multiple problems in parallel, only sequentially (this should not be too big a deal, as each objective function evaluation may be parallelized, and also the evaluation of different individuals).
AbstractOptimizerSetup
SimpleParameterEvaluator
SimpleParameterDecoder
SimpleParameterCreator
Represents algorithm for differential evolution. Caution: seems to only support real-valued parameters so far.
the number of generations
number of individuals per generation
the scaling factor
DifferentialEvolutionModule