Package ec.neat
Class NEATSpecies
java.lang.Object
ec.Species
ec.vector.VectorSpecies
ec.vector.GeneVectorSpecies
ec.neat.NEATSpecies
- All Implemented Interfaces:
Prototype,Setup,Serializable,Cloneable
NEATSpecies is a GeneVectorSpecies which implements NEAT algorithm. The class
has several important methods. The breedNewPopulation(...) will first use the
methods in this class to determined the expected offsprings for each of the
subspecies, then call the reproduce of each subspecies to reproduce new
individuals. After one individual is created, we call speciate(...) in this
class to assign it to a subspecies, this could lead to creation of new
subspecies.
NEATSpecies must be used in combination with NEATBreeder, which will call it at appropriate times to reproduce new individuals for next generations. It must also be used in combination with NEATInitializer, which will use it to generate the initial population.
Parameters
| base.weight-mut-power Floating-point value (default is 2.5) |
Mutation power of the link weights |
| base.disjoint-coeff Floating-point value (default is 1.0) |
Coefficient for disjoint gene in compatibility computation |
| base.excess-coeff Floating-point value (default is 1.0) |
Coefficient for excess genes in compatibility computation |
| base.mutdiff-coeff Floating-point value (default is 0.4) |
Coefficient for mutational difference genes in compatibility computation |
| base.compat-thresh Floating-point value (default is 3.0) |
Compatible threshold to determine if two individual are compatible |
| base.age-significance Floating-point value (default is 1.0) |
How much does age matter? |
| base.survival-thresh Floating-point value (default is 0.2) |
Percent of ave fitness for survival |
| base.mutate-only-prob Floating-point value (default is 0.25) |
Probability of a non-mating reproduction |
| base.mutate-link-weight-prob Floating-point value (default is 0.9) |
Probability of doing link weight mutate |
| base.mutate-toggle-enable-prob Floating-point value (default is 0.0) |
Probability of changing the enable status of gene |
| base.mutate-gene-reenable-prob Floating-point value (default is 0.0) |
Probability of reenable a disabled gene |
| base.mutate-add-node-prob Floating-point value (default is 0.03) |
Probability of doing add-node mutation |
| base.mutate-add-link-prob Floating-point value (default is 0.05) |
Probability of doing add-link mutation |
| base.interspecies-mate-prob Floating-point value (default is 0.001) |
r Probability of doing interspecies crossover |
| base.mate-multipoint-prob Floating-point value (default is 0.6) |
Probability of doing multipoint crossover |
| base.mate-multipoint-avg-prob Floating-point value (default is 0.4) |
Probability of doing multipoint crossover with averaging two genes |
| base.mate-singlepoint-prob Floating-point value (default is 0.0) |
Probability of doing single point crossover (not in used in this implementation, always set to 0) |
| base.mate-only-prob Floating-point value (default is 0.2) |
Probability of mating without mutation |
| base.recur-only-prob Floating-point value (default is 0.2) |
Probability of forcing selection of ONLY links that are naturally recurrent |
| base.dropoff-age Integer (default is 15) |
Age where Species starts to be penalized |
| base.new-link-tries Integer (default is 20) |
Number of tries mutateAddLink will attempt to find an open link | base.new-node-tries Integer (default is 20) |
Number of tries mutateAddNode will attempt to build a valid node. | base.add-node-max-genome-length Integer (default is 15) |
For genomes this size or larger, mutateAddNode will do a pure random split when adding the node. |
| base.babies-stolen Integer (default is 0) |
The number of babies to siphen off to the champions |
| base.node Classname, = ec.neat.NEATNode |
Class of node in a network |
| base.subspecies Classname, = ec.neat.NEATSubspecies |
Class of subspecies in the species |
| base.innovation Classname, = ec.neat.NEATInnovation |
Class of innovation in the species |
Default Base
neat.species
Parameter bases
| base.species | species (the subpopulations' species) |