Breeding

Our breeding of creatures is different from that in many genetic algorithm systems, in that it is not done for the organisms by the underlying implementation as part of the framework of the world in which they live, but they have to do it themselves as one of their possible actions.

This is made possible through the reflective architecture of the underlying evaluation system, which makes almost the entire system available for inspection and modification by operator code.

In many genetic algorithm systems, the lifecycle of the organisms is fixed by the evaluation framework, which evaluates all organisms in a generation, picks the best to breed and the worst to die, and then sets up a new generation.

The creatures system does not have a rigid generational structure, but allows each organism to attempt to breed whenever it finds a possible mate. (It is probably possible for courtship rituals to evolve within the system). The parents will then typically survive alongside their offspring (unless reproduction brings their energy levels down too far and they die).

This structure allows the passing of memory (within-generation knowledge) from one generation to the next, as well as being generally more similar to typical real biological systems.


The creatures system
[Creatures index] [alife index]
John C. G. Sturdy
[research index] [John's home] Last modified: Sun Sep 25 21:59:54 GMT Daylight Time 2005