ec.de
Class DEBreeder
java.lang.Object
ec.Breeder
ec.de.DEBreeder
- All Implemented Interfaces:
- Setup, Singleton, java.io.Serializable
- Direct Known Subclasses:
- Rand1EitherOrDEBreeder, Rand1ExpDEBreeder
public class DEBreeder
- extends Breeder
DEBreeder provides a straightforward Differential Evolution (DE) breeder
for the ECJ system. The code relies (with permission from the original
authors) on the DE algorithms posted at
http://www.icsi.berkeley.edu/~storn/code.html . For more information on
Differential Evolution, please refer to the aforementioned webpage.
The default breeding code in DEBreeder is a simple adaptive breeder communicated personally
by Dr. Kenneth Price. The algorithm might also be explored in the recent book
"Differential Evolution: A Practical Approach to Global Optimization"
by Kenneth Price, Rainer Storn, and Jouni Lampinen.
- See Also:
- Serialized Form
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
previousPopulation
public Population previousPopulation
SCALE_F
public static final double SCALE_F
- See Also:
- Constant Field Values
DEBreeder
public DEBreeder()
setup
public void setup(EvolutionState state,
Parameter base)
- Description copied from interface:
Setup
- Sets up the object by reading it from the parameters stored
in state, built off of the parameter base base.
If an ancestor implements this method, be sure to call
super.setup(state,base); before you do anything else.
prepareDEBreeder
public void prepareDEBreeder(EvolutionState state)
breedPopulation
public Population breedPopulation(EvolutionState state)
- Description copied from class:
Breeder
- Breeds state.population, returning a new population. In general,
state.population should not be modified.
- Specified by:
breedPopulation
in class Breeder
createIndividual
public Individual createIndividual(EvolutionState state,
int subpop,
Individual[] inds,
int index,
int thread)