Main Page | Namespace List | Class Hierarchy | Compound List | File List | Compound Members | File Members

Gene Class Reference

Class representing a binary-coded real gene.

#include <Gene.h>

Inheritance diagram for Gene:

BinaryGene BinaryGrayRealGene BinaryRealGene RealGene List of all members.

Public Member Functions

 Gene (VariableType geneType_, Random *random)
 Constructor.

 Gene (Gene &gene)
 Copy constructor.

 Gene (Gene *gene)
 Copy constructor.

virtual ~Gene ()
 Destructor.

virtual int bitFlipMutation (double mutationProbability)
virtual int randomMutation (double mutationProbability)
virtual int polynomialMutation (double mutationProbability, double distributionIndex)
virtual int uniformMutation (double mutationProbability, double perturbation)
virtual double getRealAllele ()
virtual void writeGenotype (ofstream &outputFile)=0
Geneoperator= (const Gene &gene)
 Copy operator.


Public Attributes

Randomrandom_
 Random number generator.

VariableType geneType_
 Type of the gene.


Friends

ostream & operator<< (ostream &outputStream, Gene &gene)
 << operator


Constructor & Destructor Documentation

Gene::Gene VariableType  geneType,
Random random
 

Parameters:
individual The individual to copy
Constructor of the class

Definition at line 17 of file Gene.cpp.

References geneType_, and random_.

Gene::Gene Gene gene  ) 
 

Parameters:
gene The gene to copy
Constructor of the class

Definition at line 28 of file Gene.cpp.

References geneType_, and random_.

Gene::Gene Gene gene  ) 
 

Parameters:
gene The gene to copy
Constructor of the class

Definition at line 39 of file Gene.cpp.

References geneType_, and random_.

Gene::~Gene  )  [virtual]
 

Destructor of the class

Definition at line 49 of file Gene.cpp.


Member Function Documentation

int Gene::bitFlipMutation double  mutationProbability  )  [virtual]
 

Reimplemented in BinaryGene, BinaryGrayRealGene, and BinaryRealGene.

Definition at line 54 of file Gene.cpp.

References geneType_.

Referenced by Individual::bitFlipMutation().

double Gene::getRealAllele  )  [virtual]
 

Reimplemented in BinaryGrayRealGene, BinaryRealGene, and RealGene.

Definition at line 80 of file Gene.cpp.

References geneType_.

Gene & Gene::operator= const Gene gene  ) 
 

Definition at line 89 of file Gene.cpp.

References geneType_, and random_.

int Gene::polynomialMutation double  mutationProbability,
double  distributionIndex
[virtual]
 

Reimplemented in RealGene.

Definition at line 66 of file Gene.cpp.

References geneType_.

Referenced by Individual::polynomialMutation().

int Gene::randomMutation double  mutationProbability  )  [virtual]
 

Reimplemented in RealGene.

Definition at line 60 of file Gene.cpp.

References geneType_.

Referenced by Individual::randomMutation().

int Gene::uniformMutation double  mutationProbability,
double  perturbation
[virtual]
 

Reimplemented in RealGene.

Definition at line 73 of file Gene.cpp.

References geneType_.

Referenced by Individual::uniformMutation().

virtual void Gene::writeGenotype ofstream &  outputFile  )  [pure virtual]
 

Implemented in BinaryGene, BinaryGrayRealGene, BinaryRealGene, and RealGene.

Referenced by Population::printGenotype().


Friends And Related Function Documentation

ostream& operator<< ostream &  outputStream,
Gene gene
[friend]
 

Definition at line 99 of file Gene.cpp.


Member Data Documentation

VariableType Gene::geneType_
 

Definition at line 22 of file Gene.h.

Referenced by bitFlipMutation(), Gene(), getRealAllele(), operator<<(), operator=(), polynomialMutation(), randomMutation(), and uniformMutation().

Random* Gene::random_
 

Definition at line 21 of file Gene.h.

Referenced by BinaryGene::BinaryGene(), BinaryGrayRealGene::BinaryGrayRealGene(), BinaryRealGene::BinaryRealGene(), BinaryRealGene::bitFlipMutation(), BinaryGrayRealGene::bitFlipMutation(), BinaryGene::bitFlipMutation(), Gene(), operator=(), RealGene::polynomialMutation(), RealGene::randomMutation(), RealGene::RealGene(), and RealGene::uniformMutation().


The documentation for this class was generated from the following files:
Generated on Wed Feb 11 10:38:03 2004 for Paes by doxygen 1.3.3