|
Name
|
Description
|
|
TRSGPBinaryNode<T>
|
Defines the generics node for tree-based genetic programming which can contain at most 2 children. Each node represents one function or terminal (constant, variable) in a genetic program. It has one Parent (or nil if root node) and 0 or more Child nodes (terminals have no children).
Note
|
If your instructions have arity greater than 2, use the TRSGPTreeNode<T> class instead.
|
|
|
TRSGPContext<T>
|
Defines the context (state of the program, i.e., variables and world) for executing or evaluating a genetic program. Every function node OnExecute in a genetic program can read and write to this context. Every variable terminal node will read from this context OnExecute.
Notes to Inheritors
|
By default, a genetic programming context contains a list of variables and their values in the base type specified. Extend the TRSGPContext class to add other context such as world properties (e.g., the map for the ant trail problem)
|
Note
|
The TRSGPContext<T> is a generic class. Its type will change with the genetic programming type.
|
|
|
TRSGPInstruction<T>
|
Defines one instruction (function, variable, or constant) in the genetic program.
Note
|
When the instruction executes, it needs no information beyond the nodes and the values passed in, so it may be multi-threaded as long as the values are copied and unless the OnExecute event does something unsafe.
|
|
|
TRSGPInstructions<T>
|
Defines the set of instructions allowed in a genetic program, including all functions, variables and constants. When the genetic programming component is evolving the population of genetic programs, it uses this collection to select a function, variable or constant.
|
|
TRSGPNode<T>
|
Defines the generics node for tree-based genetic programming. Each node represents one function or terminal (constant, variable) in a genetic program. It has one Parent (or nil if root node) and 0 or more Child nodes (terminals have no children).
|
|
TRSGPTreeNode<T>
|
Defines the generics node for tree-based genetic programming which can contain an arbitrary number of children. Each node represents one function or terminal (constant, variable) in a genetic program. It has one Parent (or nil if root node) and 0 or more Child nodes (terminals have no children).
Note
|
For the TRSGPTreeNode<T> class, the children are stored in a list. If you restrict your instructions to 2 or less children, it is recommended to use the TRSGPBinaryNode<T> as it uses slightly less memory and is slightly faster.
|
|
|
TRSGPValues<T>
|
Represents type TRSGPValues<T>.
|