JENETICS LIBRARY USER’S MANUAL 4.0 Franz Wilhelmstötter Franz Wilhelmstötter
[email protected] http://jenetics.io 4.0.0—2017/11/18 This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Austria License. To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/at/ or send a letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA. Contents 1 Fundamentals 1 1.1 Introduction . .1 1.2 Architecture . .4 1.3 Base classes . .6 1.3.1 Domain classes . .6 1.3.1.1 Gene . .6 1.3.1.2 Chromosome . .7 1.3.1.3 Genotype . .8 1.3.1.4 Phenotype . 11 1.3.2 Operation classes . 12 1.3.2.1 Selector . 12 1.3.2.2 Alterer . 16 1.3.3 Engine classes . 21 1.3.3.1 Fitness function . 21 1.3.3.2 Fitness scaler . 22 1.3.3.3 Engine . 23 1.3.3.4 EvolutionStream . 25 1.3.3.5 EvolutionResult . 26 1.3.3.6 EvolutionStatistics . 27 1.4 Nuts and bolts . 29 1.4.1 Concurrency . 29 1.4.1.1 Basic configuration . 29 1.4.1.2 Concurrency tweaks . 30 1.4.2 Randomness . 31 1.4.3 Serialization . 34 1.4.4 Utility classes . 35 2 Advanced topics 37 2.1 Extending Jenetics ......................... 37 2.1.1 Genes . 37 2.1.2 Chromosomes . 38 2.1.3 Selectors . 40 2.1.4 Alterers . 41 2.1.5 Statistics . 41 2.1.6 Engine .