GALib-Parallel
Header-only C++ library for parallel evolutionary algorithms
Loading...
Searching...
No Matches
Public Member Functions | List of all members
galib::GaussianMutation< GeneType > Class Template Reference

Performs Gaussian mutation. More...

#include <GaussianMutation.h>

Inheritance diagram for galib::GaussianMutation< GeneType >:
[legend]

Public Member Functions

 GaussianMutation (double sigma)
 Constructs the mutation operator.
 
double getSigma () const
 
void mutate (Individual< GeneType > &individual, double mutation_rate) override
 Adds Gaussian noise to the individual's genes.
 
- Public Member Functions inherited from galib::Mutation< GeneType >
virtual ~Mutation ()=default
 

Detailed Description

template<typename GeneType>
class galib::GaussianMutation< GeneType >

Performs Gaussian mutation.

Adds a random value sampled from a Gaussian distribution (mean=0, std_dev=sigma) to selected genes. This is the standard mutation for real-coded GAs.

Template Parameters
GeneTypeThe numeric type of the genes.

Definition at line 22 of file GaussianMutation.h.

Constructor & Destructor Documentation

◆ GaussianMutation()

template<typename GeneType >
galib::GaussianMutation< GeneType >::GaussianMutation ( double  sigma)
inlineexplicit

Constructs the mutation operator.

Parameters
sigmaStandard deviation of the Gaussian noise.

Definition at line 30 of file GaussianMutation.h.

Member Function Documentation

◆ getSigma()

template<typename GeneType >
double galib::GaussianMutation< GeneType >::getSigma ( ) const
inline

Definition at line 33 of file GaussianMutation.h.

◆ mutate()

template<typename GeneType >
void galib::GaussianMutation< GeneType >::mutate ( Individual< GeneType > &  individual,
double  mutation_rate 
)
inlineoverridevirtual

Adds Gaussian noise to the individual's genes.

Parameters
individualTarget individual.
mutation_rateProbability per gene.

Implements galib::Mutation< GeneType >.

Definition at line 40 of file GaussianMutation.h.

References galib::Individual< GeneType >::getGenotype().


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