Evaluation system architecture

The evaluation system allows operators to access the entire creature, including its genome and realm, and so ordinary operators may be used to implement breeding and migration between realms.

Rather than building the available operators into the underlying system, we make them part of each creature, not only for the maximum static flexibility but also to allow them to be changed as the ecosystem and its creatures progress. To reduce the bulk of each creature, we have each creature as a member of a taxon, and some of the evaluation parameters are part of the taxon.

The evaluation step

At each step, each organism gets a pointer stepped (cyclically) along its list of loci (see the section about the structure of each creature) for details of the genome format, until one is found whose promoter / condition evaluates to true, and it is then run, (and the pointer stepped again so that the same locus goes to the back of the consideration queue). While a locus is running from this mechanism, it can call other loci by name.

Reification and reflection

The creatures system is almost fully reifying and reflective, that is, much of it is available for inspection and modification by the operator code of the creatures running within it.

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