org.encog.ml.prg.generator
Class PrgFullGenerator
java.lang.Object
org.encog.ml.prg.generator.AbstractPrgGenerator
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
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 |
PrgFullGenerator
public PrgFullGenerator(EncogProgramContext theContext,
int theMaxDepth)
- Construct the full generator.
- Parameters:
theContext
- The context.theMaxDepth
- The max depth.
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.