gpsys
Class Function

java.lang.Object
  |
  +--gpsys.Primitive
        |
        +--gpsys.Function
Direct Known Subclasses:
Add, AddVector2Mod8, ADFunction, And, Div, EQ, Frog, GE, GT, If, LE, LT, MemGet, MemSet, Mul, Not, Or, ProgN, Sub, Xor

public abstract class Function
extends Primitive

The super class of all GP functions. A Function is a GP Primitive that takes arguments. This abstract class should be extended to create your own functions. One or more of the evaulation methods should be overridden to create the desired functionality. The reason the evaulation methods have not been declared abstract is to relieve the burden of subclasses having to define all of the different evaluation methods, when only one is needed.

Version:
$Revision: 1.1 $, $Date: 2000/07/05 16:21:25 $
Author:
Adil Qureshi
Department of Computer Science,
University College London,
Gower St,
London WC1E 6BT,
UK.
See Also:
Primitive, gpsys.primitives, Serialized Form

Field Summary
 Type[] argTypes
          The types of each argument that this function takes.
 
Fields inherited from class gpsys.Primitive
type
 
Constructor Summary
Function()
           
 
Method Summary
 boolean evaluateBoolean(Individual i, Gene[] arguments)
          To be overridden by Functions returning a boolean when evaluated.
 byte evaluateByte(Individual i, Gene[] arguments)
          To be overridden by Functions returning a byte when evaluated.
 char evaluateChar(Individual i, Gene[] arguments)
          To be overridden by Functions returning a char when evaluated.
 double evaluateDouble(Individual i, Gene[] arguments)
          To be overridden by Functions returning a double when evaluated.
 float evaluateFloat(Individual i, Gene[] arguments)
          To be overridden by Functions returning a float when evaluated.
 int evaluateInt(Individual i, Gene[] arguments)
          To be overridden by Functions returning an int when evaluated.
 long evaluateLong(Individual i, Gene[] arguments)
          To be overridden by Functions returning a long when evaluated.
 java.lang.Object evaluateObject(Individual i, Gene[] arguments)
          To be overridden by Functions returning an Object when evaluated.
 short evaluateShort(Individual i, Gene[] arguments)
          To be overridden by Functions returning a short when evaluated.
 
Methods inherited from class gpsys.Primitive
instance, toString
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, wait, wait, wait
 

Field Detail

argTypes

public Type[] argTypes
The types of each argument that this function takes. The length of this array therefore specifies the number of arguments.
Constructor Detail

Function

public Function()
Method Detail

evaluateObject

public java.lang.Object evaluateObject(Individual i,
                                       Gene[] arguments)
                                throws EvaluationException
To be overridden by Functions returning an Object when evaluated.
Parameters:
i - the individual that is being evaluated.
arguments - the arguments supplied to the Function.
Returns:
A reference to an Object which is the evaluation result.
Throws:
EvaluationException - If this method is called.

evaluateByte

public byte evaluateByte(Individual i,
                         Gene[] arguments)
                  throws EvaluationException
To be overridden by Functions returning a byte when evaluated.
Parameters:
i - the individual that is being evaluated.
arguments - the arguments supplied to the Function.
Returns:
A byte which is the evaluation result.
Throws:
EvaluationException - If this method is called.

evaluateShort

public short evaluateShort(Individual i,
                           Gene[] arguments)
                    throws EvaluationException
To be overridden by Functions returning a short when evaluated.
Parameters:
i - the individual that is being evaluated.
arguments - the arguments supplied to the Function.
Returns:
A short which is the evaluation result.
Throws:
EvaluationException - If this method is called.

evaluateInt

public int evaluateInt(Individual i,
                       Gene[] arguments)
                throws EvaluationException
To be overridden by Functions returning an int when evaluated.
Parameters:
i - the individual that is being evaluated.
arguments - the arguments supplied to the Function.
Returns:
An int which is the evaluation result.
Throws:
EvaluationException - If this method is called.

evaluateLong

public long evaluateLong(Individual i,
                         Gene[] arguments)
                  throws EvaluationException
To be overridden by Functions returning a long when evaluated.
Parameters:
i - the individual that is being evaluated.
arguments - the arguments supplied to the Function.
Returns:
A long which is the evaluation result.
Throws:
EvaluationException - If this method is called.

evaluateFloat

public float evaluateFloat(Individual i,
                           Gene[] arguments)
                    throws EvaluationException
To be overridden by Functions returning a float when evaluated.
Parameters:
i - the individual that is being evaluated.
arguments - the arguments supplied to the Function.
Returns:
A float which is the evaluation result.
Throws:
EvaluationException - If this method is called.

evaluateDouble

public double evaluateDouble(Individual i,
                             Gene[] arguments)
                      throws EvaluationException
To be overridden by Functions returning a double when evaluated.
Parameters:
i - the individual that is being evaluated.
arguments - the arguments supplied to the Function.
Returns:
A double which is the evaluation result.
Throws:
EvaluationException - If this method is called.

evaluateChar

public char evaluateChar(Individual i,
                         Gene[] arguments)
                  throws EvaluationException
To be overridden by Functions returning a char when evaluated.
Parameters:
i - the individual that is being evaluated.
arguments - the arguments supplied to the Function.
Returns:
A char which is the evaluation result.
Throws:
EvaluationException - If this method is called.

evaluateBoolean

public boolean evaluateBoolean(Individual i,
                               Gene[] arguments)
                        throws EvaluationException
To be overridden by Functions returning a boolean when evaluated.
Parameters:
i - the individual that is being evaluated.
arguments - the arguments supplied to the Function.
Returns:
A boolean which is the evaluation result.
Throws:
EvaluationException - If this method is called.