HSGEP-0.1.0: Gene Expression Programming evolutionary algorithm in HaskellSource codeContentsIndex
GEP.MonadicGeneOperations
Description

This module contains wrappers around the purely functional gene operations in GEP.GeneOperations in order to string the random number generation state through via the GEP.Rmonad. These helper functions are responsible for sampling the random number generator to determine the parameters for applying the genetic operators.

The reasoning behind using a specialized Random monad instead of the system generator provided by IO is that this allows independent generators to be used should we support multiple threads of execution. Parallel random number generation requires distinct generators, not a shared one.

Author: mjsottile@computer.org

Synopsis
isTransposer :: Genome -> SimParams -> Individual -> GEPMonad [Symbol]
risTransposer :: Genome -> SimParams -> Individual -> GEPMonad [Symbol]
geneTransposer :: Genome -> Individual -> GEPMonad [Symbol]
x1PHelper :: Genome -> (Individual, Individual) -> GEPMonad (Individual, Individual)
x2PHelper :: Genome -> (Individual, Individual) -> GEPMonad (Individual, Individual)
xGHelper :: Genome -> (Individual, Individual) -> GEPMonad (Individual, Individual)
Documentation
isTransposer :: Genome -> SimParams -> Individual -> GEPMonad [Symbol]Source
IS Transposition helper
risTransposer :: Genome -> SimParams -> Individual -> GEPMonad [Symbol]Source
RIS Transposition helper
geneTransposer :: Genome -> Individual -> GEPMonad [Symbol]Source
Gene transposition helper
x1PHelper :: Genome -> (Individual, Individual) -> GEPMonad (Individual, Individual)Source
One-point crossover helper. Takes a genome, a pair of individuals, and selects the crossover point before generating the new pair of resulting individuals after crossover.
x2PHelper :: Genome -> (Individual, Individual) -> GEPMonad (Individual, Individual)Source
Two-point crossover helper. Takes a genome, a pair of individuals, and selects the crossover points before generating the new pair of resulting individuals after crossover.
xGHelper :: Genome -> (Individual, Individual) -> GEPMonad (Individual, Individual)Source
Gene crossover helper. Takes a genome, a pair of individuals, and selects the crossover gene before generating the new pair of individuals resulting after crossover.
Produced by Haddock version 2.6.1