Hello.

Le lun. 22 nov. 2021 à 13:47, Avijit Basak <avijit.ba...@gmail.com> a écrit :
>
> Hi All
>
>         We need to make a decision on the chromosome hierarchy, proposed for 
> commons-math-ga module.
> Currently the hierarchy is designed as shown in the diagram below.

Image has probably been stripped from your original message.
Please upload it to JIRA and post a link here.

Thanks,
Gilles

>
>
> Brief description:
> 1) The chromosome hierarchy is based on it's internal representation of 
> Genotype.
> 2) The phenotype of chromosomes is kept as a Generic parameter <P>.
> 3) Decoder is introduced to convert Genotype to Phenotype.
> 4) FitnessFunction is introduced to calculate Fitness of chromosomes.
> 5) AbstractChromosome represents the chromosome abstraction for all genotypes.
> 6) AbstractListChromosome has been introduced to represent the abstraction 
> for List based Genotype.
> 7) Any chromosome representing list based genotypes should extend 
> AbstractListBasedChromosome.
> 8) All other chromosomes should extend the AbstractChromosome class.
> 9) BinaryChromosome(not committed) is introduced to represent binary 
> genotypes and extends AbstractChromosome.
>
> Pros:
> 1) This hierarchy maintains a separation of Genotype and Phenotype.
> 2) Chromosome class with the same genotype can represent different phenotypes 
> with different implementations of Decoders.
> 3) Users will be able to use primitive types for higher dimensions by 
> extending the AbstractChromosome class.
> 4) Unlike the legacy model all concrete chromosomes are reusable with proper 
> implementation of FitnessFunction and Decoder.
> 5) Any custom list based genotypes can be implemented by extending 
> AbstractListChromosome class.
> 6) Internal genotype representations have been exposed which enabled the 
> reuse of crossover and mutation operators.
>
>         I would like to request everyone to review the design and reply in 
> case of any concerns.
>
>
> Thanks & Regards
> -- Avijit Basak

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
For additional commands, e-mail: dev-h...@commons.apache.org

Reply via email to