Differential Evolution C++ library
de::mutation_strategy Class Reference

#include <mutation_strategy.hpp>

Inheritance diagram for de::mutation_strategy:

List of all members.

Classes

class  Urn

Public Types

typedef boost::tuple
< individual_ptr,
de::DVectorPtr > 
mutation_info

Public Member Functions

 mutation_strategy (size_t varCount, const mutation_strategy_arguments &args)
virtual mutation_info operator() (const population &pop, individual_ptr bestIt, size_t i)=0
size_t varCount () const
double weight () const
double crossover () const
double dither () const

Detailed Description

A an abstract based class for mutation strategies

A mutation strategy defines how varaibles values are adjusted during the optimization process

Author:
adrian (12/1/2011)

Member Typedef Documentation

typedef boost::tuple< individual_ptr, de::DVectorPtr > de::mutation_strategy::mutation_info

type for the tuple returned by the operator() member.


Constructor & Destructor Documentation

de::mutation_strategy::mutation_strategy ( size_t  varCount,
const mutation_strategy_arguments args 
) [inline]

constructs a mutation strategy

Author:
adrian (12/4/2011)
Parameters:
varCountnumber of variables
argsmutation strategy arguments

Member Function Documentation

double de::mutation_strategy::crossover ( ) const [inline]

returns the crossover factor

Author:
adrian (12/4/2011)
Returns:
double

Here is the call graph for this function:

Here is the caller graph for this function:

double de::mutation_strategy::dither ( ) const [inline]

returns the dither factor

Author:
adrian (12/4/2011)
Returns:
double

Here is the call graph for this function:

Here is the caller graph for this function:

virtual mutation_info de::mutation_strategy::operator() ( const population pop,
individual_ptr  bestIt,
size_t  i 
) [pure virtual]

performs the mutation

Author:
adrian (12/4/2011)
Parameters:
popa reference to the current population
bestItthe best individual of the previous generation
ithe current individual index
Returns:
mutation_info tuple containing the mutated individual and a vector of doubles of the same size as the number of variables, used as origin to generate new values in case they exceed the limits imposed by the corresponding constraints

Implemented in de::mutation_strategy_5, de::mutation_strategy_4, de::mutation_strategy_3, de::mutation_strategy_2, and de::mutation_strategy_1.

size_t de::mutation_strategy::varCount ( ) const [inline]

returns the number of variables

Author:
adrian (12/4/2011)
Returns:
size_t

Here is the caller graph for this function:

double de::mutation_strategy::weight ( ) const [inline]

returns the weight factor

Author:
adrian (12/4/2011)
Returns:
double

Here is the call graph for this function:

Here is the caller graph for this function:


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