heukarya-0.1.0.1: A genetic programming based on tree structure.

Safe HaskellNone

AI.Heukarya.Jungle

Description

a sort of Eukarya,Jungle, operating

Synopsis

Documentation

evalJungle :: HeukaryaGene a => Seq (Tree a) -> Seq aSource

evaluate a Jungle

genJungleSource

Arguments

:: (Eq len, Num len, RandomGen g, HeukaryaGene d) 
=> g

Random Generator

-> Int

depth of Eukkarya's tree structure

-> [d]

genes for constructing Eukarya

-> Text

Type

-> len

the quantity of Eukarya in Jungle

-> Seq (Tree d)

output Jungle

generate a Jungle

crossJungleSource

Arguments

:: (RandomGen g, HeukaryaGene d) 
=> g

Random Generator

-> Int

depth of Eukkarya's tree structure

-> Seq (Tree d)

input Jungle

-> Double

probability of crossover a pair of Heukarya

-> Seq (Tree d)

output Jungle

crossover the Eukaryas in Jungle

mutateJungleSource

Arguments

:: (RandomGen g, HeukaryaGene d) 
=> g

Random Generator

-> Int

depth of Eukkarya's tree structure

-> [d]

genes for mutating Eukarya

-> Seq (Tree d)

input Jungle

-> Double

probability of mutating Heukarya

-> Seq (Tree d)

output Jungle

mutating the Eukarya in Jungle

choiceJungleSource

Arguments

:: (Ord n, RandomGen g) 
=> g

Random Generato

-> Seq n

Fitness of each Heukarya in Jungle

-> Seq a

input Jungle

-> Double

probability of Heukarya who has bigger fitness win the competition

-> Seq a

output Jungle

choose better Eukarya, one to one competition