EvolvingBehavior  0.2.0
 
Loading...
Searching...
No Matches
UCrossoverMutator Class Reference

When applied to a chromosome, this chooses a second random chromosome to 'crossover' with. A random node in each is chosen, and the node in this chromosome is replaced by the node from the selected chromosome, along with everything under it. More...

#include <CrossoverMutator.h>

Inheritance diagram for UCrossoverMutator:
UMutator

Public Member Functions

virtual UBTChromosomeMutate (UBTChromosome *chromosome, TArray< UBTChromosome * > parents, int primaryParent)
 
- Public Member Functions inherited from UMutator
virtual void Init (UServiceInjector *injector)
 

Additional Inherited Members

- Public Attributes inherited from UMutator
virtual UBTChromosomeMutate (UBTChromosome *chromosome, TArray< UBTChromosome * > parents, int primaryParent) PURE_VIRTUAL(UMutator
 
- Protected Attributes inherited from UMutator
UServiceInjectorserviceInjector
 

Detailed Description

When applied to a chromosome, this chooses a second random chromosome to 'crossover' with. A random node in each is chosen, and the node in this chromosome is replaced by the node from the selected chromosome, along with everything under it.

Author
npc
Date
12/12/17

The parent with which to swap a branch is selected uniformly at random, and the branch is also selected uniformly at random from each tree. Therefore, this may grow or shrink a chromosome.


The documentation for this class was generated from the following files:
  • Source/EvolvingBehavior/Public/GeneticProgramming/CrossoverMutator.h
  • Source/EvolvingBehavior/Private/GeneticProgramming/CrossoverMutator.cpp