org.encog.ml.prg.generator
Class PrgFullGenerator

java.lang.Object
  extended by org.encog.ml.prg.generator.AbstractPrgGenerator
      extended by org.encog.ml.prg.generator.PrgFullGenerator
All Implemented Interfaces:
PopulationGenerator, PrgGenerator, MultiThreadable

public class PrgFullGenerator
extends AbstractPrgGenerator

The full generator works by creating program trees that do not stop prematurely. To do this a node is randomly selected from the "function set" until the tree reaches the maximum depth. Once the tree reaches the maximum depth only nodes from the "terminal set" are chosen. This algorithm was implemented as described in the following publication: Genetic programming: on the programming of computers by means of natural selection MIT Press Cambridge, MA, USA (c)1992 ISBN:0-262-11170-5


Constructor Summary
PrgFullGenerator(EncogProgramContext theContext, int theMaxDepth)
          Construct the full generator.
 
Method Summary
 ProgramNode createNode(Random rnd, EncogProgram program, int depthRemaining, List<ValueType> types)
          Create a random node for an Encog Program.
 
Methods inherited from class org.encog.ml.prg.generator.AbstractPrgGenerator
addPopulationMember, attemptCreateGenome, createRandomNode, createTerminalNode, determineMaxDepth, generate, generate, generateRandomOpcode, getContext, getMaxConst, getMaxDepth, getMaxGenerationErrors, getMinConst, getRandomFactory, getScore, getThreadCount, isHasEnum, setMaxConst, setMaxGenerationErrors, setMinConst, setRandomFactory, setScore, setThreadCount
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PrgFullGenerator

public PrgFullGenerator(EncogProgramContext theContext,
                        int theMaxDepth)
Construct the full generator.

Parameters:
theContext - The context.
theMaxDepth - The max depth.
Method Detail

createNode

public ProgramNode createNode(Random rnd,
                              EncogProgram program,
                              int depthRemaining,
                              List<ValueType> types)
Create a random node for an Encog Program.

Parameters:
rnd - Random number generator.
program - The program that the node should be generated for.
depthRemaining - The depth remaining to generate.
types - The types to generate.
Returns:
The newly created node.


Copyright © 2014. All Rights Reserved.