Evolution of Computing Site Map

Key Architectural Principles are shared by multicellular life and multicellular computing

Four principles of multicellular systems -- Architectural strategies for managing cooperation between cells emerged more than 500 million years ago.  They are nearly universal in multicellular organisms.  And they each evolved before or coincident with the emergence of multicellular life.  Webs of cooperating computers are evolving similar principles.

1) Specialization -- a fundamental characteristic of multicellular systems
Specialization in Computing -- Although there is a tendency to think of computers as general purpose, most computers are in fact quite specialized already

2) Messaging -- the receiver, not the sender, determines a message'a meaning

Messaging in biological systems -- the taboo of intercellular transfer of genetic information

Messaging in multicellular computing -- code transfer should also be taboo.

Issues of loading code and dealing with interpreted code complicate matters.

3) Stigmergy -- individual parts of the system communicate by modifying their local environment. The modifications become persistent cues for other elements in the system

Stigmergy and self -- self is defined by the body-as-stigmergy-structure, not by the genetic identities of the cells

Stigmergy in computing systems -- cues left in persistent stores, e.g., databases, network structures and Web Services, organize multicellular computing

Novel stigmergy structures in the Internet -- Stigmergy is the primary organizing force in the Internet

4) Programmed Cell Death (apoptosis) -- Multicellular organisms protect and even "sculpt" themselves during development by programmed cell suicide

Apoptosis in Computing -- in multicellular computing, the individual computer must be willing to sacrifice itself for the good of the larger organism. But old single-cell computing attitudes that each computer is supreme will die slowly.

How the four principles are intertwined -- the four principles co-evolved and are interdependent both as abstract architecural principles and as concrete implimentations within each cell.

Conclusions -- The evolution from single-cell to multicellular computing is happening. The Four Principles can smooth the transition.

Background Issues: The Underlying Problems of Complexity in both worlds

A brief statement of the problem -- Complexity in the digital world is beyond our control, yet computing becomes ever more central to business and society

Characterizing Complexity -- Dynamic complex systems inevitably become even more complex. But why? Turns out that's a deep question.

Dynamic Complexity -- Dynamic elements in a system that adapt to other dynamic elements create positive feedback loops and complex interdependencies

Out of control complexity -- Once complexity is out of control, it takes control

The need for Encapsulation -- both life and computing use encapsulation to limit unwanted dynamic interactions

The parallels between biology and computing -- Information processing, complexity, encapsulation and the evolution toward multicellularity

Biological information processing -- Cells process information in order to survive and thrive. How comparable are their capabilities to computers?

Background Issues: Emergence and Evolution

Multi-Level Emergent Complexity -- Complex systems inevitably evolve multiple levels of complexity which are difficult to understand, and even more difficult to predict

Multi-Level Biological Systems -- It took more than a dozen intermediate stages/levels of emergence to evolve multicellular life, and they all still play a role in everyday living systems.

Multi-Level Computing Systems -- The evolution of computing systems is far shorter than the evolution of life, but now the two are merging!

Scale and Emergence -- The tradeoff between the richness of possible interactions and the number of elements required in a system for emergence to generate new surprises.

Examples of Emergence -- Some familiar examples in nature: hurricanes, flocks of birds, and sand dunes

The evolution of multicellular systems -- From "training wheels" (biofilms) to full-blown multicellular life

Evolution, co-evolution and monoculture -- No matter how hard we try to engineer complex computing systems, they stubbornly insist upon evolving.

Other Resources

Last revised 3/29/2015