GEP::Individual< ReturnType, ChromosomeType, EvalType > Class Template Reference

Generic class for Individual representation Individual is a mother class for all classers describing an Individual. It holds GEP::SChromosome. Provides virtual methods that are used in GEP::Population. More...

#include <Individual.h>

Inheritance diagram for GEP::Individual< ReturnType, ChromosomeType, EvalType >:
Inheritance graph
[legend]
Collaboration diagram for GEP::Individual< ReturnType, ChromosomeType, EvalType >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef ReturnType base_type
typedef ReturnType ret_type
typedef ChromosomeType chromo_type
typedef EvalType eval_type
typedef dataSample
< chromo_type, eval_type
data_type

Public Member Functions

 Individual ()
 Individual (const Individual &)
virtual ~Individual ()
virtual void evaluate (const EvalType &user_param=EvalType(0), const size_t pop_age=0)
virtual ret_type calculateFitness (const size_t pop_age=0)
virtual void reset ()
Chromosome< ChromosomeType > & getChromosome ()
const Chromosome
< ChromosomeType > & 
getChromosome () const
bool isViable () const
ReturnType getFitness () const
individual_state getState () const
bool isIdle () const
void setFitness (const ret_type &fit)
void setChromosome (const Chromosome< ChromosomeType > &chromosome)
void setState (const individual_state &state)
virtual std::string toString () const

Static Public Member Functions

static u_short solutionSize ()

Protected Attributes

ReturnType _fitness
Chromosome< ChromosomeType > _chromosome
individual_state _state

Friends

template<class U , class V , class W >
std::ostream & operator<< (std::ostream &os, const Individual< U, V, W > &a)

Detailed Description

template<class ReturnType = double, class ChromosomeType = double, class EvalType = ReturnType>
class GEP::Individual< ReturnType, ChromosomeType, EvalType >

Generic class for Individual representation Individual is a mother class for all classers describing an Individual. It holds GEP::SChromosome. Provides virtual methods that are used in GEP::Population.

Parameters:
ReturnType - the return type
ChromosomeType - the type of the enclosed Chromosome

Member Typedef Documentation

template<class ReturnType = double, class ChromosomeType = double, class EvalType = ReturnType>
typedef ReturnType GEP::Individual< ReturnType, ChromosomeType, EvalType >::base_type
template<class ReturnType = double, class ChromosomeType = double, class EvalType = ReturnType>
typedef ChromosomeType GEP::Individual< ReturnType, ChromosomeType, EvalType >::chromo_type
template<class ReturnType = double, class ChromosomeType = double, class EvalType = ReturnType>
typedef dataSample<chromo_type,eval_type> GEP::Individual< ReturnType, ChromosomeType, EvalType >::data_type
template<class ReturnType = double, class ChromosomeType = double, class EvalType = ReturnType>
typedef EvalType GEP::Individual< ReturnType, ChromosomeType, EvalType >::eval_type
template<class ReturnType = double, class ChromosomeType = double, class EvalType = ReturnType>
typedef ReturnType GEP::Individual< ReturnType, ChromosomeType, EvalType >::ret_type

Constructor & Destructor Documentation

template<class ReturnType = double, class ChromosomeType = double, class EvalType = ReturnType>
GEP::Individual< ReturnType, ChromosomeType, EvalType >::Individual (  )  [inline]

Default constructor

template<class ReturnType , class ChromosomeType , class EvalType >
GEP::Individual< ReturnType, ChromosomeType, EvalType >::Individual ( const Individual< ReturnType, ChromosomeType, EvalType > &  copy  )  [inline]

Copy constructor

template<class ReturnType = double, class ChromosomeType = double, class EvalType = ReturnType>
virtual GEP::Individual< ReturnType, ChromosomeType, EvalType >::~Individual (  )  [inline, virtual]

Default destructor


Member Function Documentation

template<class ReturnType = double, class ChromosomeType = double, class EvalType = ReturnType>
virtual ret_type GEP::Individual< ReturnType, ChromosomeType, EvalType >::calculateFitness ( const size_t  pop_age = 0  )  [inline, virtual]

Calcultaion of the fitness - typical for the inheriting classes,

Reimplemented in GEP::ClassificationIndividual, GEP::FunctionIndividual, and GEP::ClassificationMOIndividual.

template<class ReturnType = double, class ChromosomeType = double, class EvalType = ReturnType>
virtual void GEP::Individual< ReturnType, ChromosomeType, EvalType >::evaluate ( const EvalType &  user_param = EvalType(0),
const size_t  pop_age = 0 
) [inline, virtual]

Evaluation of an Individual, typical for the inheriting class.

Reimplemented in GEP::ClassificationIndividual, GEP::FunctionIndividual, and GEP::ClassificationMOIndividual.

template<class ReturnType = double, class ChromosomeType = double, class EvalType = ReturnType>
const Chromosome<ChromosomeType>& GEP::Individual< ReturnType, ChromosomeType, EvalType >::getChromosome (  )  const [inline]
template<class ReturnType = double, class ChromosomeType = double, class EvalType = ReturnType>
Chromosome<ChromosomeType>& GEP::Individual< ReturnType, ChromosomeType, EvalType >::getChromosome (  )  [inline]
template<class ReturnType = double, class ChromosomeType = double, class EvalType = ReturnType>
ReturnType GEP::Individual< ReturnType, ChromosomeType, EvalType >::getFitness (  )  const [inline]
template<class ReturnType = double, class ChromosomeType = double, class EvalType = ReturnType>
individual_state GEP::Individual< ReturnType, ChromosomeType, EvalType >::getState (  )  const [inline]
template<class ReturnType = double, class ChromosomeType = double, class EvalType = ReturnType>
bool GEP::Individual< ReturnType, ChromosomeType, EvalType >::isIdle (  )  const [inline]
template<class ReturnType = double, class ChromosomeType = double, class EvalType = ReturnType>
bool GEP::Individual< ReturnType, ChromosomeType, EvalType >::isViable (  )  const [inline]
template<class ReturnType = double, class ChromosomeType = double, class EvalType = ReturnType>
virtual void GEP::Individual< ReturnType, ChromosomeType, EvalType >::reset (  )  [inline, virtual]

Resets values used for fitness calculation.

Reimplemented in GEP::ClassificationIndividual, GEP::FunctionIndividual, and GEP::ClassificationMOIndividual.

template<class ReturnType = double, class ChromosomeType = double, class EvalType = ReturnType>
void GEP::Individual< ReturnType, ChromosomeType, EvalType >::setChromosome ( const Chromosome< ChromosomeType > &  chromosome  )  [inline]
template<class ReturnType = double, class ChromosomeType = double, class EvalType = ReturnType>
void GEP::Individual< ReturnType, ChromosomeType, EvalType >::setFitness ( const ret_type fit  )  [inline]
template<class ReturnType = double, class ChromosomeType = double, class EvalType = ReturnType>
void GEP::Individual< ReturnType, ChromosomeType, EvalType >::setState ( const individual_state state  )  [inline]
template<class ReturnType = double, class ChromosomeType = double, class EvalType = ReturnType>
static u_short GEP::Individual< ReturnType, ChromosomeType, EvalType >::solutionSize (  )  [inline, static]
template<class ReturnType = double, class ChromosomeType = double, class EvalType = ReturnType>
virtual std::string GEP::Individual< ReturnType, ChromosomeType, EvalType >::toString (  )  const [inline, virtual]

Friends And Related Function Documentation

template<class ReturnType = double, class ChromosomeType = double, class EvalType = ReturnType>
template<class U , class V , class W >
std::ostream& operator<< ( std::ostream &  os,
const Individual< U, V, W > &  a 
) [friend]

Member Data Documentation

template<class ReturnType = double, class ChromosomeType = double, class EvalType = ReturnType>
Chromosome<ChromosomeType> GEP::Individual< ReturnType, ChromosomeType, EvalType >::_chromosome [protected]

Chromosome holding chromosome (genes)

template<class ReturnType = double, class ChromosomeType = double, class EvalType = ReturnType>
ReturnType GEP::Individual< ReturnType, ChromosomeType, EvalType >::_fitness [protected]

Fitness of this individual

template<class ReturnType = double, class ChromosomeType = double, class EvalType = ReturnType>
individual_state GEP::Individual< ReturnType, ChromosomeType, EvalType >::_state [protected]

State of this individual


The documentation for this class was generated from the following file:

Generated on Fri Dec 11 22:28:17 2009 for LibGEP by  doxygen 1.6.1