Safe Haskell | Safe-Inferred |
---|
Operations on the chromosomes of individuals. The following assumptions are made.
- Symbols are numbered 1 through n for a chromosome of length n.
- Genes are numbered 0 through m-1 for a chromosome with m genes.
The functions provided in this module are purely functional. See GEP.MonadicGeneOperations for code that invokes these from within the GEP.Rmonad monad.
- crossover1pt :: (Chromosome, Chromosome) -> Int -> (Chromosome, Chromosome)
- crossover2pt :: (Chromosome, Chromosome) -> Int -> Int -> (Chromosome, Chromosome)
- crossoverGene :: (Sequence, Sequence) -> Int -> Int -> (Sequence, Sequence)
- transposeGene :: Chromosome -> Genome -> Int -> Chromosome
- transposeIS :: Chromosome -> Genome -> Int -> Int -> Int -> Int -> Chromosome
- transposeRIS :: Sequence -> Genome -> Int -> Int -> Int -> Sequence
Documentation
:: (Chromosome, Chromosome) | Pair of individuals before crossover |
-> Int | Crossover point |
-> (Chromosome, Chromosome) | Pair of individuals after crossover |
One-point crossover
:: (Chromosome, Chromosome) | Pair of individuals before crossover |
-> Int | Crossover point 1 |
-> Int | Crossover point 2 |
-> (Chromosome, Chromosome) | Pair of individuals after crossover |
Two-point crossover
:: (Sequence, Sequence) | Pair of individuals before crossover |
-> Int | Gene number for crossover |
-> Int | Gene length in symbols |
-> (Sequence, Sequence) | Pair of individuals after crossover |
Gene crossover
:: Chromosome | Chromosome |
-> Genome | Genome |
-> Int | Gene number |
-> Chromosome | Resulting chromosome |
Gene transposition.
:: Chromosome | Chromosome |
-> Genome | Genome |
-> Int | Gene number |
-> Int | Position to take from within a gene |
-> Int | Length to take |
-> Int | Position to put within a gene |
-> Chromosome | Resulting chromosome |
Insertion sequence transposition.
:: Sequence | Sequence to perform RIS transposition on |
-> Genome | Genome information |
-> Int | Gene to perform RIS transposition within |
-> Int | Position within gene to start search for RIS for transposition |
-> Int | Length of RIS |
-> Sequence | Sequence after RIS transposition performed |
Root insertion sequence transposition.