Le simulateur de Framsticks supporte divers formats de génotype. Le "format"
est un code que vous pouvez employer pour décrire des créatures. Les
propriétés de ce code sont extrêmement importantes du point de
vue de l'évolution.
f0.
Un format de base qui permet de construire toutes les créatures (c'est
le moins restrictif). Implémenté.
f1. Un langage récurrent facile
à utiliser. Implémenté et décrit ci-dessous.
f2. Décrit comment les morceaux de l'organisme sont reliés.
En projet et test.
f3. Décrit les règles du développement, pas
l'organisme en lui-même. En projet et test.
f4.
Décrit le chemin d'accroissement d'un organisme (codage développemental).
Mis en application. Veuillez lire f1 avant
la lecture f4.
f5. Décrit des règles "chimiques" de croissance.
En projet et test.
...
Génotype (format f1)
Bien qu'il puisse sembler compliqué, il est, en fait, très facile.
Ouvrez juste la fenêtre d'information des créatures ("creature
information window", voir les info. d'interface
) et expérimentez vos génotypes. Vous pouvez écrire n'importe
quoi de valide et obtenir le résultat immédiatement !
Structure d'organisme:
X – bâtonnet, () – embranchement
la structure est établie comme un arbre, les nouveaux bâtonnets sont
jointes à la suite des précédents
X(X, X) signifie un embranchement de deux bâtonnets à partir d'un
bâtonnet.
X(X, X, X) signifie trois etc...
X(X, X,) est également possible; ainsi que X(, X,, X, X) etc...
à l'intérieur de la parenthèse, un cercle entier (360°) est
divisé en autant de partie qu'il y a de virgules+2, et chaque bâtonnet
dans une telle 'jonction' a autant de liberté.
Des modificateurs peuvent être placé avant les X et les parenthèses.
Ils affectent le X suivant et, habituellement de moins en moins, les Xs. suivants
supplémentaires . Les modificateurs modifient la position du bâtonnet
et ses dispositifs. Des majuscules et des minuscules peuvent être utilisées.
Les majuscules augmentent la propriété donnée tandis que les
minuscules la diminuent.
modificateurs: Rr, Qq, Cc, Ll, Ww, Ff, Aa, Ss, Mm, Ii, Ee.
Propriétés des joints des bâtonnets
R
la rotation (par 45 degrés) – ce modificateur n'affecte pas les
autres bâtonnets
Q
la torsion
C
la courbure
Propriétés physiques
L
longueur
W
poids (dans un environnement aquatique, les bâtonnets légers
flottent à la surface)
F
frottement (les bâtonnets glisseront sur la terre ou y adhéreront)
Propriétés biologiques (mutuellement exclusive)
A
assimilation = photosynthèse (un bâtonnet vertical peut assimiler
deux fois plus qu'un horizontal)
S
endurance (augmente les chances de survie pendant les combats, voir également
le paramètres du simulateur – "collisions destructives")
M
force de muscle ou rapidité du muscle (un muscle robuste agit
avec plus de force, a une vitesse plus élevée, peut résister
à un plus grand effort, mais utilisent plus d'énergie)
I
ingestion (capacité de gagner l'énergie par de la nourriture:
sphère énergétique ou corps morts)
Autre
E
énergie (stade expérimental). La créature commence
avec une énergie plus haute (E) ou plus basse (e). Vous devez l'utiliser
seulement quand le mode énergétique (energetic efficiency mode)
est activé (voir les paramètres du simulateur). Autrement, désactiver
les modificateurs "Ee" dans les paramètres génétiques!
Exemples:
XXX(XX,X)
X(X,RRX(X,X))
XlCXlCXlCX
Autres structures possibles:
Commande de l'organisme (réseau de neurone de topologie libre) :
Des neurones sont placés dans des crochets [ ], après les X.
Les entrées des neurone peuvent avoir différents signaux comme sources :
les sorties d'autres neurones ou les récepteurs. Une entrée de neurone
peut également avoir une valeur constante. Le neurone peut contrôler
la flexion ou la rotation de son bâtonnet.
La syntaxe est: [ commande
entrée : poids, entrée : poids,
entrée ... ]
commande : @ (la rotation du bâtonnet) ou
| (flexion du bâtonnet) ou rien (omis)
entrée : n'importe quel nombre (faisant référence
à un autre neurone) ou un signal spécial de neurone:
* – valeur constante
Récepteurs: G – sens gyroscopique (sens
d'équilibre), T -sens tactile,
S – odorat
Paramètres du neurone: ! [ marque d'exclamation
] – force, = [ égales ] – d'inertie,
/ [ barre de fraction ] – sigmoïde
(voir également la section des détails
de simulation )
le 'poids' est un nombre réel, décrivant l'importance des connexion
(pour les liens des neurones et les récepteurs) ou la valeur des paramètres.
Exemples:
X[@-1:2,1:3 ]
signifie qu'un bâtonnet a un neurone sur lui. Il contrôle la rotation
du bâtonnet (@), et le neurone a deux entrées: le premier étant
à la position relative -1 dans le génotype, l'autre de la position
relative +1. Le premier signal à un poids de 2, l'autre de 3.
X[|*:1, G:2 ]
est un bâtonnet avec un neurone contrôlant la flexion, ayant deux
entrées: une constamment égale 1 et l'autre reliée à un
gyroscope (placé sur le bâtonnet) dont le poids est de 2.
Un bâtonnet peut avoir plusieurs neurones : X[.....][.....][.....]
Exemple: X X[|0:1 ] X[@-1:1.2,1:2.3][G:1 ]
le neurone (1) affecte la flexion du bâtonnet et boucle sur lui-même.
le neurone (2) affecte la rotation du bâtonnet, et reçoit des signaux
des neurones (1) et (3)
le neurone (3) a un entré gyroscopique (sens d'équilibre du dernier
bâtonnet)