Grail (C#)  1.1.1
A multi-platform, modular, universal engine for embedding advanced AI in games.
Grail.Evolution.Mutation Class Reference

Public Member Functions

void Perform (List< EvoScript > constInputPopulation)
 
virtual void MutateIndividual (EvoScript individual)
 
virtual void MutateChromosome (EvoScript individual, EvoParam chromosome)
 

Static Public Member Functions

static Mutation CreateIdentityMutation ()
 

Public Attributes

double MutationPhaseRate = 1.0
 Probability that a mutation happens (globally). If a mutation is included in the algorithm, this value should most likely be equal to 1.0. More...
 
double MutationIndividualRate = 0.07
 Probability that an individual will be considered for mutation (randomResolutionTypeForIndividual == ITERATE_AND_TEST_P); or the portion of individuals chosen for mutation (randomResolutionTypeForIndividual == SELECT_P_OF_N). More...
 
double MutationChromosomeRate = 0.5
 Probability that a chromosome of an individual will be considered for mutation (randomResolutionTypeForChromosome == ITERATE_AND_TEST_P); or the portion of chromosomes within an individual chosen for mutation (randomResolutionTypeForChromosome == SELECT_P_OF_N). More...
 
bool MutateBothParentsAndChildren = true
 If true: both the previous population and children can be mutated; if false: only the individuals after crossover can be mutated. More...
 

Properties

List< EvoScriptPopulationAfter = new List<EvoScript>() [get, set]
 

Member Data Documentation

◆ MutateBothParentsAndChildren

bool Grail.Evolution.Mutation.MutateBothParentsAndChildren = true

If true: both the previous population and children can be mutated; if false: only the individuals after crossover can be mutated.

◆ MutationChromosomeRate

double Grail.Evolution.Mutation.MutationChromosomeRate = 0.5

Probability that a chromosome of an individual will be considered for mutation (randomResolutionTypeForChromosome == ITERATE_AND_TEST_P); or the portion of chromosomes within an individual chosen for mutation (randomResolutionTypeForChromosome == SELECT_P_OF_N).

◆ MutationIndividualRate

double Grail.Evolution.Mutation.MutationIndividualRate = 0.07

Probability that an individual will be considered for mutation (randomResolutionTypeForIndividual == ITERATE_AND_TEST_P); or the portion of individuals chosen for mutation (randomResolutionTypeForIndividual == SELECT_P_OF_N).

◆ MutationPhaseRate

double Grail.Evolution.Mutation.MutationPhaseRate = 1.0

Probability that a mutation happens (globally). If a mutation is included in the algorithm, this value should most likely be equal to 1.0.


The documentation for this class was generated from the following file: