JGAP

org.jgap.gp.function
Class ReplaceInMatrix

java.lang.Object
  extended by org.jgap.gp.CommandGene
      extended by org.jgap.gp.function.ReplaceInMatrix
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, java.lang.Comparable, IMutateable, ICloneable

public class ReplaceInMatrix
extends CommandGene
implements ICloneable, IMutateable

Replaces occurrences of specified characters in a two-dimensional matrix with a given other character. Returns the number of replacements.

Since:
3.4.3
See Also:
Serialized Form

Nested Class Summary
static class ReplaceInMatrix.ReplacementMode
           
 
Nested classes/interfaces inherited from class org.jgap.gp.CommandGene
CommandGene.COMMAND_TYPE
 
Field Summary
 
Fields inherited from class org.jgap.gp.CommandGene
BooleanClass, CharacterClass, DELTA, DoubleClass, FloatClass, IntegerClass, LongClass, nodeIndex, VoidClass
 
Constructor Summary
ReplaceInMatrix(GPConfiguration a_conf, java.lang.String a_matrixName, ReplaceInMatrix.ReplacementMode a_mode, java.lang.String a_targetCharacters, char a_replacement)
           
ReplaceInMatrix(GPConfiguration a_conf, java.lang.String a_matrixName, ReplaceInMatrix.ReplacementMode a_mode, java.lang.String a_targetCharacters, char a_replacement, int a_subChildType)
          Allows setting a sub child type.
 
Method Summary
 CommandGene applyMutation(int index, double a_percentage)
          Mutates a CommandGene.
 java.lang.Object clone()
          Clones the object.
 int compareTo(java.lang.Object a_other)
          The compareTo-method.
 boolean equals(java.lang.Object a_other)
          The equals-method.
 int execute_int(ProgramChromosome c, int n, java.lang.Object[] args)
          Executes this node as an integer.
 void execute_void(ProgramChromosome c, int n, java.lang.Object[] args)
          Executes this node, returning nothing.
 java.lang.Class getChildType(IGPProgram a_ind, int a_chromNum)
          Determines which type a specific child of this command has.
 java.lang.String getName()
           
 java.lang.String toString()
           
 
Methods inherited from class org.jgap.gp.CommandGene
check, check, cleanup, dynamizeArity, ensureUniqueness, ensureUniqueness, ensureUniqueness2, execute_boolean, execute_double, execute_float, execute_long, execute_object, execute, getAllele, getApplicationData, getArity, getArityMax, getArityMin, getCommandType, getEnergy, getGPConfiguration, getInternalValue, getPersistentRepresentation, getPersistentRepresentationExt, getReturnType, getSubChildType, getSubChildTypes, getSubReturnType, hashCode, init, isAffectGlobalState, isCompareApplicationData, isFloatType, isIntegerType, isValid, isValid, setAllele, setApplicationData, setArity, setArityMax, setArityMin, setCompareApplicationData, setEnergy, setNoValidation, setReturnType, setToRandomValue, setValueFromPersistentRepresentation, setValueFromString, size
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ReplaceInMatrix

public ReplaceInMatrix(GPConfiguration a_conf,
                       java.lang.String a_matrixName,
                       ReplaceInMatrix.ReplacementMode a_mode,
                       java.lang.String a_targetCharacters,
                       char a_replacement)
                throws InvalidConfigurationException
Throws:
InvalidConfigurationException

ReplaceInMatrix

public ReplaceInMatrix(GPConfiguration a_conf,
                       java.lang.String a_matrixName,
                       ReplaceInMatrix.ReplacementMode a_mode,
                       java.lang.String a_targetCharacters,
                       char a_replacement,
                       int a_subChildType)
                throws InvalidConfigurationException
Allows setting a sub child type.

Parameters:
a_conf - the configuration to use
a_matrixName - name of the matrix
a_mode - how to replace characters in the matrix
a_targetCharacters - the characters to be replaced
a_replacement - the character to replace others with
a_subChildType - int
Throws:
InvalidConfigurationException
Since:
3.4.3
Method Detail

toString

public java.lang.String toString()
Specified by:
toString in class CommandGene
Returns:
the string representation of the command. Especially usefull to output a resulting formula in human-readable form.

getName

public java.lang.String getName()
Overrides:
getName in class CommandGene
Returns:
textual name of this command
Since:
3.4.3

getChildType

public java.lang.Class getChildType(IGPProgram a_ind,
                                    int a_chromNum)
Determines which type a specific child of this command has.

Overrides:
getChildType in class CommandGene
Parameters:
a_ind - ignored here
a_chromNum - index of child
Returns:
type of the a_chromNum'th child
Since:
3.4.3

execute_int

public int execute_int(ProgramChromosome c,
                       int n,
                       java.lang.Object[] args)
Description copied from class: CommandGene
Executes this node as an integer. Override to implement.

Overrides:
execute_int in class CommandGene
Parameters:
c - ignored here
n - ignored here
args - ignored here
Returns:
nothing but exception

execute_void

public void execute_void(ProgramChromosome c,
                         int n,
                         java.lang.Object[] args)
Description copied from class: CommandGene
Executes this node, returning nothing. Override to implement.

Overrides:
execute_void in class CommandGene
Parameters:
c - ignored here
n - ignored here
args - ignored here

compareTo

public int compareTo(java.lang.Object a_other)
The compareTo-method.

Specified by:
compareTo in interface java.lang.Comparable
Overrides:
compareTo in class CommandGene
Parameters:
a_other - the other object to compare
Returns:
-1, 0, 1
Since:
3.4.3

equals

public boolean equals(java.lang.Object a_other)
The equals-method.

Overrides:
equals in class CommandGene
Parameters:
a_other - the other object to compare
Returns:
true if the objects are seen as equal
Since:
3.4.3

clone

public java.lang.Object clone()
Clones the object. Simple and straight forward implementation here.

Specified by:
clone in interface ICloneable
Overrides:
clone in class java.lang.Object
Returns:
cloned instance of this object
Since:
3.4.3

applyMutation

public CommandGene applyMutation(int index,
                                 double a_percentage)
                          throws InvalidConfigurationException
Description copied from interface: IMutateable
Mutates a CommandGene.

Specified by:
applyMutation in interface IMutateable
Parameters:
index - references the part of a multipart object, normally not relevant
a_percentage - the mutation rate (0.0 to 1.0)
Returns:
the mutant
Throws:
InvalidConfigurationException

JGAP