org.encog.neural.neat
public class NEATPopulation extends BasicPopulation implements Serializable, MLError, MLRegression
Modifier and Type | Field and Description |
---|---|
static int |
DEFAULT_CYCLES
Default number of activation cycles.
|
static double |
DEFAULT_SURVIVAL_RATE
The default survival rate.
|
static String |
PROPERTY_CYCLES
Property to hold the number of cycles.
|
static String |
PROPERTY_NEAT_ACTIVATION
The activation function to use.
|
static String |
PROPERTY_POPULATION_SIZE
Property tag for the population size.
|
static String |
PROPERTY_SURVIVAL_RATE
Property tag for the survival rate.
|
Constructor and Description |
---|
NEATPopulation()
An empty constructor for serialization.
|
NEATPopulation(int inputCount,
int outputCount,
int populationSize)
Construct a starting NEAT population.
|
NEATPopulation(Substrate theSubstrate,
int populationSize)
Construct a starting HyperNEAT population.
|
Modifier and Type | Method and Description |
---|---|
long |
assignGeneID() |
long |
assignInnovationID() |
double |
calculateError(MLDataSet data)
Calculate the error of the ML method, given a dataset.
|
static double |
clampWeight(double w,
double weightRange)
Change the weight, do not allow the weight to go out of the weight range.
|
MLData |
compute(MLData input)
Compute regression.
|
int |
getActivationCycles() |
ChooseObject<ActivationFunction> |
getActivationFunctions() |
GeneticCODEC |
getCODEC() |
GenerateID |
getGeneIDGenerate() |
NEATGenomeFactory |
getGenomeFactory() |
double |
getInitialConnectionDensity() |
GenerateID |
getInnovationIDGenerate() |
NEATInnovationList |
getInnovations() |
int |
getInputCount() |
int |
getOutputCount() |
RandomFactory |
getRandomNumberFactory() |
Substrate |
getSubstrate() |
double |
getSurvivalRate() |
double |
getWeightRange() |
boolean |
isHyperNEAT() |
void |
reset()
Create an initial random population.
|
void |
setActivationCycles(int activationCycles)
Set the number of activation cycles to use.
|
void |
setCODEC(GeneticCODEC codec) |
void |
setInitialConnectionDensity(double initialConnectionDensity) |
void |
setInnovations(NEATInnovationList theInnovations)
Set the innovation list to use.
|
void |
setInputCount(int inputCount) |
void |
setNEATActivationFunction(ActivationFunction af)
Specify to use a single activation function.
|
void |
setOutputCount(int outputCount) |
void |
setRandomNumberFactory(RandomFactory randomNumberFactory) |
void |
setSubstrate(Substrate substrate) |
void |
setSurvivalRate(double theSurvivalRate)
Set the survival rate, this is the percent of the population allowed to mate.
|
clear, createSpecies, determineBestSpecies, flatten, getBestGenome, getMaxIndividualSize, getName, getPopulationSize, getSpecies, purgeInvalidGenomes, setBestGenome, setGenomeFactory, setName, setPopulationSize, size, updateProperties
getProperties, getPropertyDouble, getPropertyLong, getPropertyString, setProperty, setProperty, setProperty
public static final double DEFAULT_SURVIVAL_RATE
public static final String PROPERTY_NEAT_ACTIVATION
public static final String PROPERTY_POPULATION_SIZE
public static final String PROPERTY_SURVIVAL_RATE
public static final int DEFAULT_CYCLES
public static final String PROPERTY_CYCLES
public NEATPopulation()
public NEATPopulation(int inputCount, int outputCount, int populationSize)
inputCount
- The input neuron count.outputCount
- The output neuron count.populationSize
- The population size.public NEATPopulation(Substrate theSubstrate, int populationSize)
theSubstrate
- The substrate ID.populationSize
- public static double clampWeight(double w, double weightRange)
w
- The amount to change the weight by.weightRange
- Specify the weight range. The range is from -weightRange to
+weightRange.public long assignGeneID()
public long assignInnovationID()
public double calculateError(MLDataSet data)
calculateError
in interface MLError
data
- The dataset.public MLData compute(MLData input)
compute
in interface MLRegression
input
- The input data.public int getActivationCycles()
public ChooseObject<ActivationFunction> getActivationFunctions()
public GeneticCODEC getCODEC()
public GenerateID getGeneIDGenerate()
public NEATGenomeFactory getGenomeFactory()
getGenomeFactory
in interface Population
getGenomeFactory
in class BasicPopulation
public double getInitialConnectionDensity()
public GenerateID getInnovationIDGenerate()
public NEATInnovationList getInnovations()
public int getInputCount()
getInputCount
in interface MLInput
public int getOutputCount()
getOutputCount
in interface MLOutput
public RandomFactory getRandomNumberFactory()
public Substrate getSubstrate()
public double getSurvivalRate()
public double getWeightRange()
public boolean isHyperNEAT()
public void reset()
public void setActivationCycles(int activationCycles)
activationCycles
- The number of activatino cycles to use.public void setCODEC(GeneticCODEC codec)
codec
- the codec to setpublic void setInitialConnectionDensity(double initialConnectionDensity)
initialConnectionDensity
- the initialConnectionDensity to setpublic void setInnovations(NEATInnovationList theInnovations)
theInnovations
- The innovation list to use.public void setInputCount(int inputCount)
inputCount
- the inputCount to setpublic void setNEATActivationFunction(ActivationFunction af)
af
- The activation function to use.public void setOutputCount(int outputCount)
outputCount
- the outputCount to setpublic void setRandomNumberFactory(RandomFactory randomNumberFactory)
randomNumberFactory
- the randomNumberFactory to setpublic void setSubstrate(Substrate substrate)
substrate
- the substrate to setpublic void setSurvivalRate(double theSurvivalRate)
theSurvivalRate
- The survival rate.Copyright © 2014. All Rights Reserved.