next up previous
Next: Resulting Evolutions Up: Tierra Previous: The Metaphor

The Virtual Machine

Attempting to create the Darwinian process on any conventional computer would probably be impossible for a variety of reasons, the most prominent of which are:

1) Conventional computers do not experience bit flips in the machine code, and do not make errors in computations.

2) Attempting to execute machine codes which have been randomly altered by bit flips will quickly lead to error conditions that will crash the computer.

3) The operating systems of multi-process computers allow processes to spawn daughter processes, but do not forcibly kill old processes in a way that leads to the turn over of generations required for the Darwinian scenario.

Overcoming these problems on a conventional computer would require considerable modification of the system. Once that had been achieved, and if programs could be caused to evolve on the system, there would exist the possibility that the programs could spread like a computer virus to other computers of the same kind (e.g., from Macintosh to Macintosh), although it is unlikely that evolution, or even reproduction would continue on the inadvertently infected machines unless they had also been modified in the same was as the original machine.

All of these problems can be overcome by designing a new computer specifically for the purpose of evolving programs. This new computer will have both a machine architecture and an operating system designed to support the Darwinian process. The design of any new computer (or of any complex product) today begins by simulation of the design by computer software. It is possible to create software that will exhibit the same behavior as the computer, were it to be built. This is the basis of the ``soft PC'' that makes it possible to run IBM compatible PC software on a Macintosh or Sun workstation.

A computer simulation of a computer is called a ``virtual computer''. Because the behavior of the virtual computer is identical to that of the real thing (except for a major disadvantage in speed), it is not necessary to go to the expense of building the new computer in hardware. The Darwinian computer has been called Tierra, and exists only as a virtual computer. However this virtual computer is able to be run on most computing platforms (DOS, Windows, Macintosh, Unix, VMS, Amiga) making expensive, specialized, and rapidly obsolescent hardware unnecessary.

In addition, the virtual system provides absolute security, as the digital organisms are only able to execute on the virtual system. On any conventional system they are only data, no more capable of executing than a text file from a word processor.

next up previous
Next: Resulting Evolutions Up: Tierra Previous: The Metaphor

Thomas S.Ray
Mon Jul 15 15:51:28 JST 1996