FitnessEvaluation.MaxProblem
Class MaxProblemInterpreter

java.lang.Object
  extended by FitnessEvaluation.MaxProblem.MaxProblemInterpreter
All Implemented Interfaces:
FitnessFunction, ParameterI, Stochastic

public class MaxProblemInterpreter
extends java.lang.Object
implements FitnessFunction, Stochastic

This problem tries to generate the largest number possible from with a given terminal and functional set and with a depth limit. Despite seeming to be a simple problem the fitness landscape is deceptive and leads to suboptimal solutions. Even though the problem tries to generate the largest number the fitness is still minimised. It is based on as Interpreter for symbolic regression by Erik Hemberg.

Author:
erikhemberg

Constructor Summary
MaxProblemInterpreter()
           
 
Method Summary
 boolean canCache()
          Return true if it is ok to cache the results of the fitness function
 void getFitness(Individual ind)
          Split the phenotype of the individual.
 double getMaxValue()
           
 RandomNumberGenerator getRNG()
          Get the number generator
 void setMaxProblemDepth(int maxProblemDepth)
           
 void setMaxValue()
           
 void setProperties(java.util.Properties p)
          Set properties
 void setRNG(RandomNumberGenerator m)
          Set the number generator
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MaxProblemInterpreter

public MaxProblemInterpreter()
Method Detail

setProperties

public void setProperties(java.util.Properties p)
Description copied from interface: ParameterI
Set properties

Specified by:
setProperties in interface ParameterI
Parameters:
p - object containing properties

getRNG

public RandomNumberGenerator getRNG()
Description copied from interface: Stochastic
Get the number generator

Specified by:
getRNG in interface Stochastic
Returns:
number generator

setRNG

public void setRNG(RandomNumberGenerator m)
Description copied from interface: Stochastic
Set the number generator

Specified by:
setRNG in interface Stochastic
Parameters:
m - number generator

getMaxValue

public double getMaxValue()

getFitness

public void getFitness(Individual ind)
Split the phenotype of the individual. Calculate the fitness as the sum of the squared distance to the target. Errors in the calculation will lead to default fitness

Specified by:
getFitness in interface FitnessFunction
Parameters:
ind - Individual that will be evaluated and assigned fitness

canCache

public boolean canCache()
Description copied from interface: FitnessFunction
Return true if it is ok to cache the results of the fitness function

Specified by:
canCache in interface FitnessFunction

setMaxProblemDepth

public void setMaxProblemDepth(int maxProblemDepth)

setMaxValue

public void setMaxValue()