Primitive set class: collects all Tree Primitives. More...
#include <PrimitiveSet.h>
Public Member Functions | |
bool | initialize (StateP state) |
bool | addFunction (std::string name) |
Add a function primitive to the set of active primitives - if found by name in collection of all primitives. If a function takes 0 arguments, it is added to the terminal set. | |
void | addTerminal (PrimitiveP terminalPrimitive) |
Add a terminal primitive to the set of active primitives. | |
PrimitiveP | getRandomTerminal () |
Get random terminal from a set of active terminals. | |
PrimitiveP | getRandomFunction () |
Get random function from a set of active functions. | |
PrimitiveP | getRandomPrimitive () |
Get random primitive (function or terminal) from a set of active primitives. | |
PrimitiveP | getTerminalByName (std::string name) |
Access terminal by name (active terminals only). | |
PrimitiveP | getFunctionByName (std::string name) |
Access function by name (active functions only). | |
PrimitiveP | getPrimitiveByName (std::string name) |
Access primitive by name (active functions or terminals only). | |
uint | getFunctionSetSize () |
Get the number of active functions. | |
uint | getTerminalSetSize () |
Get the number of active terminals. | |
uint | getPrimitivesSize () |
Get the number of active primitives (functions and terminals). | |
Protected Attributes | |
StateP | state_ |
std::map< std::string, PrimitiveP > | mAllPrimitives_ |
map of all registered primitive functions | |
std::map< std::string, Primitives::terminal_type > | mTypeNames_ |
std::vector< PrimitiveP > | terminalSet_ |
vector of active (actual used) terminals | |
std::map< std::string, PrimitiveP > | mTerminalSet_ |
map of active (actual used) terminals | |
std::vector< PrimitiveP > | functionSet_ |
vector of active (actual used) functions | |
std::map< std::string, PrimitiveP > | mFunctionSet_ |
map of active (actual used) functions | |
std::vector< PrimitiveP > | primitives_ |
vector of active (actual used) primitives | |
std::map< std::string, PrimitiveP > | mPrimitiveSet_ |
map of active (actual used) primitives | |
Friends | |
class | Tree |
Primitive set class: collects all Tree Primitives.
Each Tree genotype (if there are more Trees in the Individual) has a unique PrimitiveSet. Each unique instance is linked to the appropriate Tree object in State (the 'hometree' variable name).
Definition at line 17 of file PrimitiveSet.h.