Parallels between Biology and Computing
Biological systems are complex evolving
information processing systems that exploit multicellularity
as a way to manage ever-growing complexity. For similar reasons,
now driven inexorably toward multicellular architectures.
As computing becomes an ever more pervasive part of our modern lives,
naturally look to understand it in terms of what we know of
complex phenomena such as biology. And vice versa. On the one hand,
computing professionals the way to the exceedingly sophisticated kinds
found in bilogical organisms: collabortions between cells, between
even between organisms collaborating/competing in an ecology. On the
computing systems are recent and are human designed. We can still
stages of evolution in computing and thereby perhaps get insight into
the evolution of computing that may have had parallels
in biology in the mists of prehistory.
Parallels between biology and computing systems include:
The most recent, and most obvious parallel is that both rely on
to enable complexity to grow beyond the limits manageable in a single
cell or single computer. Multicellullarity itself evolves from
single-cell architectures because of its inherent advantages. The most
multicellular systems have few types of specialized cells. They
become more sophisticated and capable by exploiting more cells and more
types of cells.
At present we can only compare the simplest biological examples with
the most complex computing examples because multicellular
computing is in its infancy.
Examples in Biology
Simple Metazoans (i.e., multicellular organsims) include:
- Placozoa -- Thought to be the
simplest Metazoan organism.
They are millimeter-scale discs that contain a few thousand cells.
The cell types are: dorsal cells with flagella, ventral “gland cells,”
ventral flagellar cells, and central “fiber cells ” that have some of
the properties of both nerve cells and muscle cells.
- Hydra -- A
milimeter-scale (5-20mm), multi-tentacled Cnidaria (the family that
It is estimated to contain 50,000 - 70,000 cells. It has at least 15
cell types including simple nerves, epidermis (outer layer),
gastrodermis (inner layer), germ cells, and Nematocysts (stinging
- Jellyfish (e.g.,
Cnideria Cyanea) -- Number of cells >
10 million. At least 22 cell types including neurons, sensors, muscle,
endocrine, and Nematocysts used for capturing prey.
Examples in Computing
Wikipedia, large public database services (e.g., EMBL/EBI Hinxton
GenBank), various "clouds" (Google's Cloud, Amazon's EC2), Social
Twitter), Massively Multiplayer Online Role Playing Games (World of
Second Life) and instant messaging, chat and VOIP systems (e.g.,
The largest and most familiar, and those about which more data is
- Ebay -- Estimated 15K-20K servers,
At least 5 functional types of servers: database,
LDAP, web servers, application servers, networking switches and routers
- Facebook -- An estimated
30,000 servers as of the end of 2009. There are at least 4 types: proxy
servers, web servers, database servers, and application servers.
- Google -- uses at least 1.5
million servers and very likely more than 2 million servers.
Their system uses at least 9 specialized types of server: crawers, ad
servers, indexing, spelling, documents, http, search, formatting, and
Note that Facebook and EBay, while among the largest multicellular
computing systems, are comparable to Placozoa, the smallest Metazoan.
And Google, by far the largest multicellular computing system is far
simpler than a jellyfish. Moreover, a jellyfish is self organizing,
self sustaining, and self reproducing whereas Google is none of those
Neither biological nor computing systems advance just by growing
more and more "cells" of one type. They seem to prefer to specialize and exploit more
types. The chart below has far too few data points to support a
firm conclusion, yet it indicates a functional relationship, shared by
both realms, between the
number of "cells" and the number of "cell" types.
Contact: sburbeck at mindspring.com
Last revised 6/6/2012