Class IslandModelGeneticAlgorithm<T, TInput, TOutput>
public class IslandModelGeneticAlgorithm<T, TInput, TOutput> : StandardGeneticAlgorithm<T, TInput, TOutput>, IGeneticAlgorithm<T, TInput, TOutput, ModelIndividual<T, TInput, TOutput, ModelParameterGene<T>>, ModelParameterGene<T>>
Type Parameters
TTInputTOutput
- Inheritance
-
GeneticBase<T, TInput, TOutput>StandardGeneticAlgorithm<T, TInput, TOutput>IslandModelGeneticAlgorithm<T, TInput, TOutput>
- Implements
-
IGeneticAlgorithm<T, TInput, TOutput, ModelIndividual<T, TInput, TOutput, ModelParameterGene<T>>, ModelParameterGene<T>>
- Inherited Members
Constructors
IslandModelGeneticAlgorithm(Func<IFullModel<T, TInput, TOutput>>, IFitnessCalculator<T, TInput, TOutput>, IModelEvaluator<T, TInput, TOutput>, int, int, double)
public IslandModelGeneticAlgorithm(Func<IFullModel<T, TInput, TOutput>> modelFactory, IFitnessCalculator<T, TInput, TOutput> fitnessCalculator, IModelEvaluator<T, TInput, TOutput> modelEvaluator, int islandCount = 5, int migrationInterval = 10, double migrationRate = 0.1)
Parameters
modelFactoryFunc<IFullModel<T, TInput, TOutput>>fitnessCalculatorIFitnessCalculator<T, TInput, TOutput>modelEvaluatorIModelEvaluator<T, TInput, TOutput>islandCountintmigrationIntervalintmigrationRatedouble
Methods
Evolve(int, TInput, TOutput, TInput?, TOutput?, Func<EvolutionStats<T, TInput, TOutput>, bool>?)
Evolves the population for a specified number of generations.
public override EvolutionStats<T, TInput, TOutput> Evolve(int generations, TInput trainingInput, TOutput trainingOutput, TInput? validationInput = default, TOutput? validationOutput = default, Func<EvolutionStats<T, TInput, TOutput>, bool>? stopCriteria = null)
Parameters
generationsintThe number of generations to evolve.
trainingInputTInputThe input training data used for fitness evaluation.
trainingOutputTOutputThe expected output for training used for fitness evaluation.
validationInputTInputOptional validation input data.
validationOutputTOutputOptional validation output data.
stopCriteriaFunc<EvolutionStats<T, TInput, TOutput>, bool>Optional function that determines when to stop evolution.
Returns
- EvolutionStats<T, TInput, TOutput>
Statistics about the evolutionary process.
GetMetaData()
Gets the metadata for the model.
public override ModelMetadata<T> GetMetaData()
Returns
- ModelMetadata<T>
The model metadata.