One of the tenets of Darwinism is that organisms are engaged in a struggle for existence. However, it is difficult to identify the precise nature of this struggle, as Darwin himself observed. In The Origin of Species, he wrote ``What checks the natural tendency of each species to increase in number is most obscure ... The amount of food for each species of course gives the extreme limit to which each can increase; but very frequently it is not the obtaining food, but the serving as prey to other animals, which determines the average numbers of a species'' [Darwin 59] (pp.119-120). Thus, an important aspect of the struggle for existence is the obtaining of food not from passive, abiotic sources, but through predator-prey relationships. In the biological realm, the struggle for existence involves organisms killing other organisms, because the very matter from which they are constructed is a valuable resource of matter and energy. This competition is therefore very much a matter of life or death.
It may be difficult to identify the precise nature of the struggle for existence, but it seems likely that the numerous forms of competition can be categorised in terms of a small number of fundamental resources. In the biosphere, a (speculative) list might be: matter, energy, space and information.7.4
Tierra-like systems generally do not have any notion of competition for matter. Indeed, they cannot really be said to have a notion of matter at all, in terms of fundamental units from which all structures are built, and which are conserved during reactions. Instead, when a program is writing a copy of itself, it can produce the copied instructions spontaneously rather than first having to collect a copy of the individual instruction from somewhere else in memory. In other words, the individual instructions are represented as states of specific memory locations, rather than as units of matter.7.5 The only fundamental competition that exists in Tierra is for space (memory) into which to divide. This is allocated at a global level by the Tierran operating system's memory allocation services. The programs are not even really competing for energy (CPU-time), because any number of programs are allowed to execute instructions at each time slice; the limiting factor is how many programs can fit into the available memory.
Programs in Tierra can act as resources for other programs in another way, by acting as `library code' which can be read by their neighbours (as happens in the evolution of parasites). In other words, they can act as information resources. However, this is not as strong an ecological interaction as when one organism acts as a resource of matter or energy, in the sense that acting as an information resource is not a direct matter of life or death for the host.
Cosmos introduces competition for energy through the `energy token' mechanism. These tokens are distributed across the environment, and programs must compete for them locally in order to be given the chance to run further instructions. However, as programs are read-protected as well as write-protected, they cannot act as resources of library code for their neighbours. In these respects, Cosmos therefore has some advantages over Tierra, but also some disadvantages.
Ray has suggested that introducing the notion of ``conservation of instructions'' would be an interesting extension to Tierra [Ray 91] (pp.399-400). Morris has also suggested a similar extension to Hofstadter's Typogenetics [Morris 88] (p.387). However, I am not aware that these suggestions have been implemented.
The issue of how energy is represented in these systems is perhaps more controversial. Some would claim that it is essential to model certain fundamental energetic considerations (e.g. [Morán et al. 97], [Ruiz-Mirazo et al. 98]). An important point to note is that all artificial life platforms have to model energy at the basic level of determining when a component can perform an action (e.g. when a program can execute an instruction, as determined by the system's CPU-time allocation scheme). Without a theoretical grounding, any scheme is just as arbitrary as any other (e.g. the schemes in Tierra and Cosmos). Ideally, the system's design should be based upon explicit considerations of how energy should be modelled.
Only when one organism can act as a resource of energy and matter for other organisms do ecological concepts such as food webs and trophic levels become relevant. Furthermore, without competition for matter and energy, or other interactions whereby one organism can benefit by physically damaging another, it is doubtful whether any selection pressure exists for the evolution of self-maintaining (and eventually fully autopoietic) organisms. As mentioned in Section 6.8, it has even been suggested that the emergence of heterotrophs (organisms which eat other organisms) might have been the prime cause of the Cambrian explosion [Stanley 73]. If this is so, more careful consideration of these matters in artificial life systems is surely required.
These considerations of the specific resources for which individuals are competing may not be necessary in the context of open-ended evolution in general, but they probably are relevant for modelling other processes commonly associated with biological life. Of course, the extent to which these deficiencies are considered important will depend upon one's conception of life, as discussed in Chapter 2. The extent to which the various phenomena associated with biological life can be recreated in artificial life systems with or without features such as competition for matter and energy is a matter to be resolved empirically. In doing so, we can develop a better understanding of the fundamental nature of life. We will return to these topics in Sections 7.3.2 and 7.3.3.