HAL's limitations

HAL's limitations

HAL is not an ideal model in many respects - rather it is a cocktail of compromises:

  • HAL's highly parallel model means that it executes extremely inefficiently on conventional hardware. While this is an inevitable aspect of its design it will significantly reduce the number of people in a position to use it.

  • HAL, by primarily targetting the domain of low-level cellular automata, is a very low-level model.

    It is possible to use HAL as a mere genetic substrate, using the output from the first calculation layer as a single number which represents a description of the phenotype of the resulting organism. If this approach is taken, then HAL can code for any sort of phenotype - for example, it could be used to provide architectural parameters for neural nets - or almost any other system.

    If such an approach were to be taken then a number of the issues associated with dealing with such a low-level substrate disappear. However, such an approach would appear to discard many of the dynamics arising from having the entire system embedded in a single cellular substrate which make it interesting in the first place.

    Once a low-level approach has been taken it becomes very difficult to provide problem-specific heuristics to narrow the search space from outside. Of course, such heuristics can still be discovered by the program over a period of time, during the course of evolution, but this can be a long process.

    Further, as the system does not know about simple things such as addition, comparing two numbers and so on, these all have to be evolved from scratch. This means there is a long period of 'teething problems' while the system is incapble of performing any useful work.

    Primitive operations have to be encoded from scratch, and in effect a whole interpreter for a higher level language needs to be constructed by the automata. This makes the resulting organisms larger than they would otherwise be.

    Larger organisms usually need to be exposed to a decreased mutation rate in order to remain viable and avoid error catastrophes.

    Such considerations will probably mean that HAL is not efficient as a means of arriving at very simple systems, even once it arrives at a high-level representation suitable for dealing with typical problems it is fed.

  • While HAL is a low level model, some will argue that it is not at a low enough level. In particular, advocates of artifical chemistry models may feel that by building the essence of the genetic inheritance method into the we have placed too many constraints on our organisms and forced them into a particular way of life, perhaps not the most ideally suitable to sustaining evolutionary processes. It seems, for example that there's no way for organisms to experience anything like an RNA->DNA swap over, and that organisms have been forced to use the substrate provided.

    It is true that conducting a simulation at a lower level may produce better dynamics and evolvability in the long run. For very complex systems these improved dynamics may actually offset the additional computational costs of running the simulation at a lower level. However, low level models do have drawbacks in terms of the quantity of time it takes for them to get off the ground and the minimum complexity of systems it is efficient to evolve using them. Also at the moment, nobody appears to have a very clear idea about what systems at a significantly lower level might look like.

    HAL is a model at about as high a level as it is possible to imagine while retaining the desirable properties of a cellular automata. It occupies this niche in the hope of becoming physically realisable and possible to use in practical problems more rapidly than still lower-level models. If lower-level models prove to have attractive, they can be developed at a later date.

  • Organisms within HAL typically cannot move around very much and it is difficult to adjust their mobility or the number of potential offspring a cell may have from outside the system. These restrictions are not absolute, but provide a definite flavour to the model, a flavour not entirely in harmony with one of the aims of the project, the evolution of sex.

    Some aspects of sex appear to be maintained, at least partly, by pressure from parasites to maintain a high level of diversity within the population.

    If the population is highly viscous, and your main candidates for prospecitve mates are consequently your parents and your sisters then diversity will only be able to spread slowly throughout the population, and it may ghave difficulty in keeping up with any rapidly reproducing parasites present.

    Modelling will reveal what limitations these dynamics are likely to impose. It is possible for organisms to get genetic information from more distant cells, provided there exists a pathway of co-operating cells between the donor and the recipient, but it is hard to imagine such gene-transfer systems being both simple and robust.

    Gene-repair mechanisms may be even more central in maintaining sex in populations. Again, modelling is probably the easiest way to get a feel for how strict cellularity would affect the dynamics of such a system in the process of evolving sexual organisms.

  • The fact that HAL is not a pure cellular automata may offend some people's aesthetic sense. It has been argued that the best way to create artificial life models is to embed the entire system in a substrate and let it run. By this, I mean including the criteria for successful reproduction within the automata - rather than imposing them from the outside.

    HAL is not like this. It uses an external computer to enter into a dialogue with all individual cells establishes their fitness by evaluating their performance on particular tasks and then rewards them as it sees fit.

    This has the potential to introduce non local interactions and may adversely affect the ability of the universe to scale to large sizes.

    While closed universes do have a certian appeal, we're mainly interested in creating a tool able to solve practical optimisation problems. For these problems to be embedded in the fabric of a cellular automata, we suspect a significantly more complex model would have to be used, and embedding the problem in the model would be a serious problem of its own, perhaps of comparable complexity to the problem whose solution we were initially interested in.

    The decision to provide an interface to a more conventional computer was a pragmatic one, based partly on the nature of our target problems. If strict cellularity proves desirable for some reason, this interface could, in principle, eventually be replaced by links to another automata running in parallel to the first one, and providing the same services as the external computer.

Index | HAL | HALcell | Parallel | Hardware | Future | Problem | Limits | Automata | Questions | Links
tim@tt1.org | http://www.alife.co.uk/