The objective of these experiments is a study of evolution
capabilities of creatures in simplified Earth-like conditions.
They are: a three-dimensional environment, genotype representation
of organisms, physical structure (body) and neural network (brain)
both described in genotype, stiumuli loop (environment – receptors –
brain – effectors – environment), genotype reconfiguration operations
(mutation, crossing over, repair), energetic requirements and balance,
and specialization.
The simulator allows the study of both directed (with fitness criterion
defined) and spontaneous (with no such criterion) evolution.
In the directed case, it is possible to "grow" creatures with
the given properties, like simple construction and smooth movement,
strength and robustness, ability to move in land and water environments,
seeking food, following targets, escaping and many others. The system
allows users to create more experiment definitions, which may lead
to unexpected results and emergence of very complex behaviors.
Another aspect of this research is the influence of representation
(description) of creatures, reconfiguration operators and the rules
of organism building on evolution results and characteristics
of structures of created individuals.
The most important part of the research is the study and evaluation
of capabilities of various evolutionary processes, including those
concerning undirected evolution (which has not already been done in such
a complex environmental and simulation conditions).
System capabilities
Framsticks has a powerful, universal simulator with great capabilities,
which are:
Three-dimensional, mechanical simulation of the artificial world (Mechastick module):
Creatures' simulation with finite elements method
Specialization of their limbs – friction, strength, ways of acquiring energy by assimilation, ingestion etc.
Flat land, terrain made of blocks/slopes of different height and water environment
Nondestructive and destructive collisions
Ability for the user to interact with the simulated world (dragging
of creatures, energy balls placement, revival and killing of individuals)
Simulation of creatures' control system ("brain"):
Neural net of any topology, built from any kind of neurons
Interaction with the environment: receptors (touch, equilibrium and energy localization senses) and effectors (muscles moving
a creature, controlled by its neural network)
Various types of neurons
Evolution:
Maintaining a set of genotypes grouped in gene pools
Maintaining a set of individuals grouped in populations
Many ways of organism description (genetic representations)
Modification of creatures' descriptions by crossover and mutations
Evaluation of creatures with various criteria (life span, speed etc.)
Maintaining of creatures' energetic balance (gains and usage of energy for various purposes)
Scripting language which allows for modification and extension of the system, designing custom user experiment definitions, custom neuron types, user-defined fitness functions, macros, visualization styles, etc.
Parametization of most of operations, environment, simulation and evolution rules, and system behavior
Graphical interface for Windows and Amiga platforms, textual interface for any system
Directions of work
various genotype encodings (including developmental) to describe body and brain
network version of the simulator, and specification of the communication protocol
JAVA and Python network interfaces independent from the simulator; other interfaces from Framsticks users
more accurate physical simulation
design of experiment definitions for open-ended, spontaneous evolution and biologically-plausible ecosystem simulation