next up previous
Next: Provoking a Spontaneous Up: Complexity Increase Previous: Lessons From Nature

A Digital Analog to the Cambrian Explosion

Because the Cambrian explosion generated the largest of organic life's complexity increases, it is interesting to consider what its digital analogue may be. At its most fundamental level, the Cambrian explosion arose out of the transition from single to multi-cellular organisms. The digital analog would be a transition from serial to parallel processes.

If we make an analogy between the cell and the processor, then modern multi-cellular organisms are parallel programs on a scale of complexity that vastly exceeds any existing computer software. In organic life, the program is the genome, based on nucleic acid sequences. In humans this program has roughly three billion bases. However, no individual cell expresses all the genes in the genome. Each cell expresses a small subset of the genes, and this subset defines which ``cell type'' the cell is. It may be a skin cell, liver cell, brain cell, etc. depending on what subset of genes it expresses.

The human body is thought to have several hundred distinct cell types, with a total of trillions of cells. This corresponds to two of the main types of parallelism in computer software: SPMD and MIMD. In SPMD parallelism (Single Program Multiple Data) there is a single program code shared by all of the processors, so every CPU executes the same code though not necessarily in synchrony. In MIMD parallelism (Multiple Instruction Multiple Data), each CPU is capable of executing a different set of code.

SPMD parallelism corresponds roughly to multiple cells of a single cell type, in that in both cases, the same genetic code is being expressed. MIMD parallelism corresponds to multiple cells of different cell types in that different cells are expressing different code. Large modern multi-cellular organisms combine both SPMD and MIMD parallelism on a massive scale.

However, most parallel computer software is primarily of the SPMD type. The reason is that SPMD software is approximately the same as serial software, but executed simultaneously on many processors and presumably operating on different data. However, existing MIMD software is much simpler that the genomes of organic multi-celled organisms. Such software is just too complex to write. While existing MIMD computer hardware has the capability of having hundreds or thousands of processors each executing different code, while all cooperating on a single task, there does not exist an art for writing such software. It is beyond the capability of programmers to write code involving more than a few distinct processes.

We know that evolution embedded in the medium of carbon chemistry is capable of generating parallel software combining both SPMD and MIMD parallelism on an astronomical scale. However, we don't know the capabilities of evolution when embedded in the medium of digital computation. The experiments that have been conducted so far show a surprising ability of evolution to reorganize and improve machine code.

However, organic evolution was able to increase the complexity of the replicators by many orders of magnitude. So far digital evolution has shown small increases of complexity, perhaps by a factor of as much as two or three. Is digital evolution capable of very large spontaneous complexity increases, and if so, under what conditions? The answers to these questions can only be determined by experimentation.



next up previous
Next: Provoking a Spontaneous Up: Complexity Increase Previous: Lessons From Nature



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