JAGA Homepage

org.jaga.reproduction
Class Mutation

java.lang.Object
  extended by org.jaga.reproduction.Mutation
All Implemented Interfaces:
ReproductionAlgorithm
Direct Known Subclasses:
FunctionTreeMutation, PolypeptidePatternElongation, PolypeptidePatternMutation, SimpleBinaryMutation

public abstract class Mutation
extends java.lang.Object
implements ReproductionAlgorithm

TODO: Complete these comments.

Project: JAGA - Java API for Genetic Algorithms.

Company: University College London and JAGA.Org (http://www.jaga.org).

Copyright: (c) 2004 by G. Paperin.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, ONLY if you include a note of the original author(s) in any redistributed/modified copy.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA or see http://www.gnu.org/licenses/gpl.html

Version:
JAGA public release 1.0 beta
Author:
Greg Paperin (greg@jaga.org)

Field Summary
private  double mutationProbability
           
 
Constructor Summary
Mutation()
           
Mutation(double mutProb)
           
 
Method Summary
abstract  java.lang.Class getApplicableClass()
          Returns the class of individuals handled by this reproduction algorithm.
 double getMutationProbability()
           
 int getRequiredNumberOfParents()
          Returns, how many individuals are required to produce one new individual whwn using this reproduction algorithm.
abstract  Individual[] reproduce(Individual[] parents, GAParameterSet params)
          Reproduces the specified individuals.
 void setMutationProbability(double mutProb)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

mutationProbability

private double mutationProbability
Constructor Detail

Mutation

public Mutation()

Mutation

public Mutation(double mutProb)
Method Detail

getRequiredNumberOfParents

public int getRequiredNumberOfParents()
Description copied from interface: ReproductionAlgorithm
Returns, how many individuals are required to produce one new individual whwn using this reproduction algorithm. If any number of parents is permitted (e.g. for most kinds of mutation), this method should return -1.

Specified by:
getRequiredNumberOfParents in interface ReproductionAlgorithm
Returns:
The required length of the array-parameter parents to the method reproduce or -1 if any length is parmitted.

setMutationProbability

public void setMutationProbability(double mutProb)

getMutationProbability

public double getMutationProbability()

getApplicableClass

public abstract java.lang.Class getApplicableClass()
Description copied from interface: ReproductionAlgorithm
Returns the class of individuals handled by this reproduction algorithm.

Specified by:
getApplicableClass in interface ReproductionAlgorithm
Returns:
The required type of the array-members in the parameter parents to the method ReproductionAlgorithm.reproduce.

reproduce

public abstract Individual[] reproduce(Individual[] parents,
                                       GAParameterSet params)
Description copied from interface: ReproductionAlgorithm
Reproduces the specified individuals.

Specified by:
reproduce in interface ReproductionAlgorithm
Parameters:
parents - The individuals to reproduce. The type of objects in this array must be the class returned by getApplicableClass. The number of objects in this array must be the same as returned by getRequiredNumberOfParents.
params - Experiment parameters.
Returns:
The children - i.e. the result of the reproduction of parents.

JAGA Homepage

Go to JAGA Homepage