Class Algorithm

java.lang.Object
dealib.algorithms.Algorithm
Direct Known Subclasses:
DE, JADE, jDE, LSGOjDE, SaDE

public abstract class Algorithm extends Object
Algorithm is an abstract class representing the basic scheme of an algorithm of differential evolution.
Since:
1.0
Version:
1.0
Author:
Alicia Vazquez Ramos
  • Field Details

    • name

      protected String name
      Name of the algorithm.
    • reference

      protected String reference
      Publication reference of the algorithm.
    • exe

      protected Execution exe
      Configuration of the current execution.
    • X

      protected Individual X
      Current/target individual.
    • V

      protected Individual V
      Mutant/donor individual.
    • U

      protected Individual U
      Trial individual.
    • S

      protected Individual S
      Selected individual.
    • p

      protected Population p
      Population of individuals.
    • stopCriterion

      protected StoppingCriterion stopCriterion
      Configured stopping criterion.
    • initializer

      protected Initializer initializer
      Configured initializer.
    • mutator

      protected Mutator mutator
      Configured mutator if the algorithm does not use a pool of strategies/mutators.
    • crossover

      protected Crossover crossover
      Configured crossover.
    • selector

      protected Selector selector
      Configured selector.
    • checker

      protected BoundsChecker checker
      Bounds checker operator.
  • Constructor Details

    • Algorithm

      public Algorithm(String name, String reference, Execution exe)
      Constructor of an Algorithm given the name, the publication reference and the current configuration of the execution.
      Parameters:
      name - name of the Algorithm.
      reference - reference of the publication of the Algorithm.
      exe - configuration of the current execution.
  • Method Details

    • run

      Runs an execution of the algorithm after an initialization process of its components.
      Returns:
      Individual representing the solution of the optimization process.
      Throws:
      IncompatibleConfigurationException - if an incompatibility is detected.
    • runAlgorithm

      protected abstract Individual runAlgorithm() throws IncompatibleConfigurationException
      Runs the algorithm over the defined configuration.
      Returns:
      Individual representing the solution of the optimization process.
      Throws:
      IncompatibleConfigurationException - if an incompatibility is detected.
    • initAlgorithmParams

      protected abstract void initAlgorithmParams()
      Executed before running an execution of the Algorithm, it is the place were the initialization process of the components which are going to be used by the Algorithm takes place.
    • getName

      public String getName()
      Gets the name of the Algorithm.
      Returns:
      the name of the Algorithm.
    • getReference

      public String getReference()
      Gets the publication reference of the Algorithm.
      Returns:
      the publication reference of the Algorothm.
    • toString

      public String toString()
      Gets a string representing the visualization by console of the Algorithm.
      Overrides:
      toString in class Object
      Returns:
      the name of the Algorithm.