Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.encog.ml.ea.opp
Interface EvolutionaryOperator

All Known Implementing Classes:
  CompoundOperator, ConstMutation, MutatePerturb, MutateShuffle, NEATCrossover, NEATMutateAddLink, NEATMutateAddNode, NEATMutateRemoveLink, NEATMutateWeights, NEATMutation, Splice, SpliceNoRepeat, SubtreeCrossover, SubtreeMutation

    public interface EvolutionaryOperator

An evolutionary operator is used to create new offspring genomes based on parent genomes. There are a variety of means by which this can be done. The number of parents required, as well as the number of offspring produced are dependent on the operator. This interface defines key characteristics that all operators must share. Most operators do not modify the parents. However, some mutation operators do require that the children and parent array be the same. If the children and parent arrays are the same, then the parent will be mutated.

Method Summary
`void` | `init(EvolutionaryAlgorithm theOwner)` Called to setup the evolutionary operator.
`int` | `offspringProduced()`
`int` | `parentsNeeded()`
`void` | `performOperation(Random rnd, Genome[] parents, int parentIndex, Genome[] offspring, int offspringIndex)` Perform the evolutionary operation.

Method Detail

### init

    void init(EvolutionaryAlgorithm theOwner)

  Called to setup the evolutionary operator.

  Parameters:
    `theOwner` - The evolutionary algorithm used with this operator.

### offspringProduced

    int offspringProduced()

  Returns:
    The number of offspring produced by this type of crossover.

### parentsNeeded

    int parentsNeeded()

  Returns:
    The number of parents needed.

### performOperation

    void performOperation(Random rnd,
                          Genome[] parents,
                          int parentIndex,
                          Genome[] offspring,
                          int offspringIndex)

  Perform the evolutionary operation.

  Parameters:
    `rnd` - A random number generator.
    `parents` - The parents.
    `parentIndex` - The index into the parents array.
    `offspring` - The offspring.
    `offspringIndex` - An index into the offspring array.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2014. All Rights Reserved.