Documentation of 'org.jgap.gp.INodeValidator' Java class
INodeValidator
org.jgap.gp

Interface INodeValidator

  • All Superinterfaces:
    java.io.Serializable


    public interface INodeValidator
    extends java.io.Serializable
    A node validator checks whether a certain node is valid for a given evolution. See ProgramChromosome.growOrFullNode(..).

    Purpose of this validator: If you have an idea of how the shape of your evolved program must look like regarding some spots (like the first node in the first chromosome to be evolved) then you can constrain your imaginations with this validator. But take care that constraining too much ( e.g., while not considering your available functions) may lead to an endless loop. The endless loop can be avoided by stopping after a number of tries (see method validate, parameter a_tries).

    Since:
    3.0
    • Field Summary

      Fields 
      Modifier and Type Field and Description
      static java.lang.String CVS_REVISION
      String containing the CVS revision.
    • Field Detail

      • CVS_REVISION

        static final java.lang.String CVS_REVISION
        String containing the CVS revision. Read out via reflection!
        See Also:
        Constant Field Values
    • Method Detail

      • validate

        boolean validate(ProgramChromosome a_chrom,
                         CommandGene a_node,
                         CommandGene a_rootNode,
                         int a_tries,
                         int a_num,
                         int a_recurseLevel,
                         java.lang.Class a_type,
                         CommandGene[] a_functionSet,
                         int a_depth,
                         boolean a_grow,
                         int a_childIndex,
                         boolean a_fullProgram)
        Validates a_node in the context of a_chrom. Considers the recursion level (a_recursLevel), the type needed (a_type) for the node, the functions available (a_functionSet) and the depth of the whole chromosome needed (a_depth), and whether grow mode is used (a_grow is true) or not.
        Parameters:
        a_chrom - the chromosome that will contain the node, if valid
        a_node - the selected node to be validated
        a_rootNode - the root node of a_node, may be null for top nodes
        a_tries - number of times the validator has been called, useful for stopping by returning true if the number exceeds a limit
        a_num - the chromosome's index in the individual of this chromosome
        a_recurseLevel - level of recursion
        a_type - the return type of the node needed
        a_functionSet - the array of available functions
        a_depth - the needed depth of the program chromosome
        a_grow - true: use grow mode, false: use full mode
        a_childIndex - index of the child in the parent node to which it belongs (-1 if node is root node)
        a_fullProgram - true: whole program is available in a_chrom
        Returns:
        true: node is valid; false: node is invalid
        Since:
        3.0

DMelt 3.0 © DataMelt by jWork.ORG

You see the box below because you did not login.