Genotype encodings 

The Framsticks simulator supports various genotype formats. A "format" is a language you can use to describe creatures. The properties of this language are extremely important from the viewpoint of evolution. If you are a Framsticks beginner, read about the f1 format first. For some people, the f0 format is even easier.


f0 A low-level format which allows for building any creatures (least restrictive)
f1 An easy-to-use recursive language
f4 Describes the way of growing an organism (developmental encoding). Learn about f1 before reading f4
f2 Describes how basic parts of an organism are joined
f3 Encodes f2 in "biological" genes with codons etc.
f5 A variant of f4
f6 Describes chemical/metabolic rules of growing
f7 Accepts any string of symbols, a "messy" genome
f8 A parametric Lindenmayer system (L-system) - rules of body and brain development
f0Fuzzy Used for the evolution of fuzzy control systems embedded in f0 genotypes (see this paper and this movie)
... other encodings are easy to add


The "Comparison of Different Genotype Encodings..." research paper contains more formal and detailed description of genetic formats, their properties, and mutation and crossover operators.

If you enter a genotype, you have to indicate its format. If it is, for example, f4, you should start the genotype with /*4*/ prefix. For multiline genotypes (like f0), you can also use another style for such a prefix: //0. If there is no format prefix, f1 is assumed.

Although some genotype formats may look complicated, they are easy to learn. Just open the "new genotype" window and experiment with genotypes. You can enter anything valid and get an immediate preview! Select genes to see which creature parts are created by these genes. Click on creature parts to see which genes created them.

 
 
 
On the forum: