Table of Contents

Class NSGAII<T, TInput, TOutput>

Namespace
AiDotNet.Genetics
Assembly
AiDotNet.dll
public class NSGAII<T, TInput, TOutput> : StandardGeneticAlgorithm<T, TInput, TOutput>, IGeneticAlgorithm<T, TInput, TOutput, ModelIndividual<T, TInput, TOutput, ModelParameterGene<T>>, ModelParameterGene<T>>

Type Parameters

T
TInput
TOutput
Inheritance
GeneticBase<T, TInput, TOutput>
StandardGeneticAlgorithm<T, TInput, TOutput>
NSGAII<T, TInput, TOutput>
Implements
IGeneticAlgorithm<T, TInput, TOutput, ModelIndividual<T, TInput, TOutput, ModelParameterGene<T>>, ModelParameterGene<T>>
Inherited Members

Constructors

NSGAII(Func<IFullModel<T, TInput, TOutput>>, List<IFitnessCalculator<T, TInput, TOutput>>, IModelEvaluator<T, TInput, TOutput>)

public NSGAII(Func<IFullModel<T, TInput, TOutput>> modelFactory, List<IFitnessCalculator<T, TInput, TOutput>> objectives, IModelEvaluator<T, TInput, TOutput> modelEvaluator)

Parameters

modelFactory Func<IFullModel<T, TInput, TOutput>>
objectives List<IFitnessCalculator<T, TInput, TOutput>>
modelEvaluator IModelEvaluator<T, TInput, TOutput>

Methods

CreateNextGeneration(TInput, TOutput, TInput?, TOutput?)

Creates the next generation of individuals through selection, crossover, and mutation.

protected override ICollection<ModelIndividual<T, TInput, TOutput, ModelParameterGene<T>>> CreateNextGeneration(TInput trainingInput, TOutput trainingOutput, TInput? validationInput = default, TOutput? validationOutput = default)

Parameters

trainingInput TInput

The input training data.

trainingOutput TOutput

The expected output for training.

validationInput TInput

Optional validation input data.

validationOutput TOutput

Optional validation output data.

Returns

ICollection<ModelIndividual<T, TInput, TOutput, ModelParameterGene<T>>>

The new population.

GetMetaData()

Gets the metadata for the model.

public override ModelMetadata<T> GetMetaData()

Returns

ModelMetadata<T>

The model metadata.