sdleiF | epytoneG | ||
string name | Name | ||
multiline string genotype | GenotypeGenes as a string of characters. | ||
int isValid RO0 .. 1 (false/true) | ValidUse 'is_valid' instead of 'isValid'. | ||
int is_valid-1 .. 1 default=-1 | Validity0 = invalid genotype 1 = valid genotype -1 = validity is not known. This is a transient state. The value of "is_valid" will never be -1 when read. It is safe to treat is_valid as boolean in statements like "if (g.is_valid) ...". Setting "is_valid=-1" will make it 0 or 1 again. This third state (-1) is only needed for loading Genotype objects from files where the "is_valid" field might not be present. | ||
Geno geno RO | GenoA Geno object for this Genotype | ||
string uid RO | #Unique identifier that is generated on object creation. "uid" is only unique during a single application run. Subsequent runs generate the same sequence of uid values. See also: num | ||
GenePool genepool RO | gene poolGenePool object or null when not in pool | ||
int index RO | current index in gene pool-1 when not in pool. Note that the index changes depending on the current genotype position in the pool. Use Genotype.uid if you need a permanent identifier that persists through the entire object lifetime. | ||
setoN | |||
float info_timestamp0 .. -1 default=0.0 | Last modified | ||
string info_author | Author name | ||
int info_author_ispublic0 .. 1 (false/true) default=1 | Author name is public | ||
string info_email | Author email | ||
int info_email_ispublic0 .. 1 (false/true) default=0 | Author email is public | ||
multiline string info | DescriptionShort description of key features of this creature. | ||
int info_origin0 .. 4 | OriginDeclaration of how this genotype originated. | ||
multiline string info_how_created | How createdDescription of the process of designing and/or evolving this genotype. | ||
multiline string info_performance | Performance notesDescription of why this genotype is special/interesting and how it performs. | ||
ydoB | |||
float simi RO | SimilarityAverage of 'dissimilarity(thisgeno,othergeno)' calculated for all other Genotype instances. This property is meant as fitness multiplier, included in the fitness function when similarity speciation (ExpProperties.cr_simi) is enabled. Read about details of dissimilarity calculation and its applications: http://www.framsticks.com/bib/Komosinski-et-al-2001 http://www.framsticks.com/bib/Komosinski-and-Kubiak-2011 http://www.framsticks.com/bib/Komosinski-2016 | ||
float energ0 RO | Starting energy | ||
float energy00 .. -1 default=0.0 | Starting energy | ||
int strsiz RO | Body parts (deprecated; use numparts) | ||
int strjoints RO | Body joints (deprecated; use numjoints) | ||
int nnsiz RO | Brain size (deprecated; use numneurons) | ||
int nncon RO | Brain connections (deprecated; use numconnections) | ||
int numparts | Number of body Parts | ||
int numjoints | Number of body Joints | ||
int numneurons | Number of neurons | ||
int numconnections | Number of neural connections | ||
ecnamrofreP | |||
int num | Ordinal numberActs as a unique identifier, but less strict than "uid". Unlike "uid", "num" can be changed and therefore can be saved and restored, providing persistence and continuity beyond a single application run. "num" is only guaranteed to be unique if it is autogenerated and not changed by the user, otherwise it is user's responsibility to manage the proper values of "num". "Genotype.num" is generated on adding a Genotype object to a group, unless it already has a non-zero "num" (previously autogenerated or user-assigned). Autogenerated "num" is always equal to the largest previously used "num" + 1. The largest previously used value is stored in Simulator.last_genotype_num and can be changed as well (and is automatically saved and restored as a part of the Simulator state). Limitation: being a 32-bit integer, "num" overflows at about 2 billion counts. See also: uid | ||
int gnum | Generation | ||
int popsiz | Population sizePlease use 'instances' instead of 'popsiz'. | ||
int instances | InstancesCopies of this genotype | ||
float lifespan | Life spanSee Creature.lifespan | ||
float velocity | VelocitySee Creature.velocity | ||
float distance | DistanceSee Creature.distance | ||
float vertvel | Vertical velocitySee Creature.vertvel | ||
float vertpos | Vertical positionSee Creature.vertpos | ||
Dictionary data | Custom fields dictionary | ||
untyped user1 | User field 1 | ||
untyped user2 | User field 2 | ||
untyped user3 | User field 3 | ||
ssentiF | |||
float fit RO | Fitness | ||
float fit2 RO | Final fitnessFitness shifted by (avg-n*stddev) | ||
snoisrevnoC | |||
multiline string f0genotype RO | f0 genotypeconverted to f0 genotype | ||
multiline string convtrace1 RO | Conversion backtrace [1] | ||
snoitcnuF | |||
function addPerformanceFromCreature(Creature)doesn't return a value | Updates the Genotype's performance values merging them with the supplied Creture's performance. It assumes the Genotype.instances has a reasonable value and performs the proper weighting. Use your own function instead if these conditions are not met in your experiment. | ||
function afterLoad()doesn't return a value | After loading | ||
function beforeLoad()doesn't return a value | Before loading | ||
function clone RO()returns Genotype | create a copy of the genotypeReturns a duplicated genotype, not attached to any gene pool. All genotype fields are copied including 'data' (for which Dictionary.clone() produces a shallow copy). | ||
function delete()doesn't return a value | remove from the pool | ||
function deleteOne()doesn't return a value | delete single instance from the pool | ||
function getModel RO()returns Model | Model object | ||
function getNormalized RO(untyped property_name_or_index)returns float | get normalized property | ||
function moveTo(GenePool pool)doesn't return a value | move to another gene poolthe genotype is removed from its current pool when pool=null | ||
function mutate()doesn't return a value | Mutate | ||
function newFromCreature(Creature)returns Genotype | create new object | ||
function newFromGeno(Geno)returns Genotype | create new object | ||
function newFromString(string genotype)returns Genotype | create new object | ||
function splitInstances()doesn't return a value | split instances |
Global context |