Package ec.gp
Class GPNodeConstraints
java.lang.Object
ec.gp.GPNodeConstraints
- All Implemented Interfaces:
Clique,Setup,Serializable
A GPNodeConstraints is a Clique which defines constraint information
common to many different GPNode functions, namely return types,
child types, and number of children.
GPNodeConstraints have unique names by which
they are identified.
In adding new things to GPNodeConstraints, you should ask yourself the following questions: first, is this something that takes up too much memory to store in GPNodes themselves? second, is this something that needs to be accessed very rapidly, so cannot be implemented as a method call in a GPNode? third, can this be shared among different GPNodes, even ones representing different functions?
Parameters
| base.size int >= 1 |
(number of node constraints) |
| base.n.name String |
(name of node constraint n) |
| base.n.returns String |
(return type for node constraint n) |
| base.n.size int >= 1 |
(number of child arguments for node constraint n) |
| base.n.child.m String |
(name of type for child argument m of node constraint n) |
| base.prob double >= 0.0 |
(auxillary probability of selection -- used by ec.gp.build.PTC1 and ec.gp.build.PTC2) |
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionGPType[]The children types for a GPNodebyteThe byte value of the constraints -- we can only have 256 of themstatic final doubleThe name of the GPNodeConstraints object -- this is NOT the name of the GPNodestatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final StringdoubleProbability of selection -- an auxillary measure mostly used by PTC1/PTC2 right nowThe return type for a GPNodestatic final intGPNode[]A little memory optimization: if GPNodes have no children, they are welcome to use share this zero-sized array as their children array. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic GPNodeConstraintsconstraintsFor(String constraintsName, EvolutionState state) You must guarantee that after calling constraintsFor(...) one or several times, you call state.output.exitIfErrors() once.voidsetup(EvolutionState state, Parameter base) This must be called after the GPTypes have been set up.toString()
-
Field Details
-
SIZE_OF_BYTE
public static final int SIZE_OF_BYTE- See Also:
-
P_NAME
- See Also:
-
P_RETURNS
- See Also:
-
P_CHILD
- See Also:
-
P_SIZE
- See Also:
-
P_PROBABILITY
- See Also:
-
DEFAULT_PROBABILITY
public static final double DEFAULT_PROBABILITY- See Also:
-
probabilityOfSelection
public double probabilityOfSelectionProbability of selection -- an auxillary measure mostly used by PTC1/PTC2 right now -
constraintNumber
public byte constraintNumberThe byte value of the constraints -- we can only have 256 of them -
returntype
The return type for a GPNode -
childtypes
The children types for a GPNode -
name
The name of the GPNodeConstraints object -- this is NOT the name of the GPNode -
zeroChildren
A little memory optimization: if GPNodes have no children, they are welcome to use share this zero-sized array as their children array.
-
-
Constructor Details
-
GPNodeConstraints
public GPNodeConstraints()
-
-
Method Details