Public Member Functions |
Tree * | copy () |
| Create an identical copy of the genotype object.
|
void | growBuild (PrimitiveSetP primitiveSet) |
| Build tree with grow method.
|
void | fullBuild (PrimitiveSetP primitiveSet) |
| Build tree with full method.
|
void | update () |
| Calculate depth and subtree sizes of each node in the tree.
|
void | execute (void *) |
| Execute current tree.
|
void | addNode (Node *node) |
void | addNode (NodeP node) |
void | setTerminalValue (std::string, void *) |
| Set a terminal's value.
|
void | getTerminalValue (std::string, void *) |
| Retrieve a terminal's value.
|
void | write (XMLNode &) |
| Write genotype data to XMLNode.
|
void | read (XMLNode &) |
| Read genotype data from XMLNode.
|
void | registerParameters (StateP) |
| Register genotype's parameters (called before Genotype::initialize).
|
bool | initialize (StateP state) |
| Initialize a genotype object (read parameters, perform sanity check, build data).
|
std::vector< MutationOpP > | getMutationOp () |
| Create and return a vector of mutation operators.
|
std::vector< CrossoverOpP > | getCrossoverOp () |
| Create and return a vector of crossover operators.
|
bool | addFunction (PrimitiveP) |
| Add user defined function primitive. Must be called prior to initialization (no impact otherwise).
|
bool | addTerminal (PrimitiveP) |
| Add user defined terminal primitive. Must be called prior to initialization (no impact otherwise).
|
uint | getMaxDepth () |
uint | getMinDepth () |
uint | getStartDepth () |
Public Attributes |
PrimitiveSetP | primitiveSet_ |
uint | iNode_ |
uint | startDepth_ |
| start depth of the first node (0 by default)
|
uint | maxDepth_ |
| max allowed Tree depth
|
uint | minDepth_ |
| min allowed Tree depth
|
uint | initMaxDepth_ |
| max allowed Tree depth at initialization (maxDepth_ used if not defined)
|
uint | initMinDepth_ |
| min allowed Tree depth at initialization (minDepth_ used if not defined)
|
Protected Member Functions |
uint | growBuild (PrimitiveSetP primitiveSet, int myDepth) |
| Build Tree using 'grow' method.
|
uint | fullBuild (PrimitiveSetP primitiveSet, int myDepth) |
| Build Tree using 'full' method.
|
uint | setSize (int) |
| Calculate subtree sizes of each node in the tree.
|
void | setDepth (int myDepth) |
| Calculate depth of each node in the tree.
|
void | initializeFirst (Tree *hometree) |
| Performs the first Tree initialization (performed only once for each active Tree Genotype). Constructs the primitive set and performs parameter checks.
|
Protected Attributes |
std::vector< PrimitiveP > | userFunctions_ |
std::vector< PrimitiveP > | userTerminals_ |
StateP | state_ |