The best survey of self-replication written to date is Kinematic Self-Replicating Machines, a book co-authored by Robert A. Freitas Jr. and Ralph C. Merkle, which describes all proposed and experimentally realized self-replicating systems that were publicly known as of 2004 ranging from nanoscale to macroscale systems, and presents for the first time a detailed 137-dimensional map of the entire kinematic replicator design space to assist future engineering efforts.
A crucial objective of nanotechnology is to make products inexpensively. While the ability to make a few very small, very precise molecular machines very expensively would clearly be a major scientific achievement, it would not fundamentally change how we make most products.
If we are to use positional assembly of molecular parts to efficiently build large structures (kilograms or more) then we will have to use some form of massive parallelism. One robotic arm would take forever to build a kilogram-sized object one molecular part at a time, so we'll need huge numbers of robotic arms working together. One general approach is to follow nature's example and design and build self replicating systems (this is the approach taken by Drexler's assembler: a small device able to manufacture other assemblers as well as valuable products). A different approach is to seek our inspiration from today's factories. This latter approach leads to various forms of convergent assembly. In convergent assembly, parts are assembled using robotic manufacturing systems, and then those (now larger) parts are passed along to other robotic manufacturing systems. Progressively larger parts are handled by progressively larger robotic arms, letting convergent assembly rapidly manufacture large objects (meters in size) starting from small components (nanometers or molecular in size). It seems most likely that some form of convergent assembly will be the dominant approach used in future molecular manufacturing systems. Among other advantages, convergent assembly offers a convenient way to flexibly build large components from small parts. We simply place the parts where we want them to go. Biologically inspired systems use much more indirect methods to form large complex structures, making them less efficient and more difficult to program. On the downside, explaining convergent assembly takes more time. We cannot point to an existing biological example to clarify what we are talking about, but must instead explain a new (and less familiar) manufacturing paradigm. This has slowed understanding of convergent assembly, despite its inherent technical advantages as a manufacturing technology.
This web page focuses on how self replicating systems might be used in manufacturing. If we did not know that such systems existed, many would argue that they were impossible.
Fortunately, we are surrounded and inspired by products that are marvelously complex and yet very inexpensive. Potatoes, for example, are made by intricate molecular machines involving tens of thousands of genes, proteins, and other molecular components; yet the result costs so little that we think nothing of mashing this biological wonder and eating it.
It's easy to see why potatoes and other agricultural products are so cheap: put a potato in a little moist dirt, provide it with some air and sunlight, and we get more potatoes. In short, potatoes are self replicating.
Just as the early pioneers of flight took inspiration by watching birds soar effortlessly through the air, so we can take inspiration from nature as we develop molecular manufacturing systems. Of course, "inspired by" does not mean "copied from." Airplanes are very different from birds: a 747 bears only the smallest resemblance to a duck even though both fly. The artificial self replicating systems that have been envisioned for molecular manufacturing bear about the same degree of similarity to their biological counterparts as a car might bear to a horse.
Horses and cars both provide transportation. Horses, however, can get their energy from potatoes, corn, sugar, hay, straw, grass, and countless other types of "fuel." A car uses only a single artifical and carefully refined source of energy: gasoline. Putting sugar or straw into its gas tank is not recommended!
The machines that people make tend to be inflexible and brittle in response to changes in their environments. By contrast, living biological systems are wonderfully flexible and adaptable. Horses can pick their way along a narrow trail or jump over shrubs; they get "parts" (from their food) in the same flexible way they get energy; and they have a remarkable self repair ability.
Cars, on the other hand, need roads on which to travel; have to be provided with odd and very unnatural parts; are often difficult to repair (let alone self repairing!); and in general are simply unable to cope with a complex environment. They work because we want them to work, and because we can fairly inexpensively provide carefully controlled conditions under which they can perform as we desire.
In the same way, the artifical self replicating systems that are being proposed for molecular manufacturing are inflexible and brittle. It's difficult enough to design a system able to self replicate in a controlled environment, let alone designing one that can approach the marvelous adaptibility that hundreds of millions of years of evolution have given to living systems. Designing a system that uses a single source of energy is both much easier to do and produces a much more efficient system: the horse pays for its ability to eat potatoes when grass isn't available by being less efficient at both. For artificial systems where we wish to decrease design complexity and increase efficiency, we'll design the system so that it can handle one source of energy, and handle that one source very well.
Horses can manufacture the many complex proteins and molecules they need from whatever food happens to be around. Again, they pay for this flexibility by having an intricate digestive system able to break down food into its constituent molecules, and a complex intermediary metabolism able to synthesize whatever they need from whatever they've got. Artificial self replicating systems will be both simpler and more efficient if most of this burden is off-loaded: we can give them the odd compounds and unnatural molecular structures that they require in an artifical "feedstock" rather than forcing the device to make everything itself -- a process that is both less efficient and more complex to design.
The mechanical designs proposed for nanotechnology are more reminiscent of a factory than of a living system. Molecular scale robotic arms able to move and position molecular parts would assemble rather rigid molecular products using methods more familiar to a machine shop than the complex brew of chemicals found in a cell. Although we are inspired by living systems, the actual designs are likely to owe more to design constraints and our human objectives than to living systems. Self replication is but one of many abilities that living systems exhibit. Copying that one ability in an artificial system will be challenge enough without attempting to emulate their many other remarkable abilities.
One conclusion from this body of work is that the design complexity of artificial self replicating systems need not be excessive. One of the simplest "self replicating systems" (when executed, it prints itself out on the standard output) is the following one line C program:
main(){char q=34,n=10,*a="main(){char
q=34,n=10,*a=%c%s%c;printf(a,q,a,q,n);}%c";printf(a,q,a,q,n);}
(From Self-reproducing programs, Byte magazine, August 1980, page 74. Those interested in a deeper understanding of the recursion theorem and its applications are referred to Introduction to the Theory of Computation by Michael Sipser, 1996, PWS Publishing Company, chapter 6.)
Another conclusion is that "replicating" systems need not be "self replicating." This is best illustrated by exponential assembly, a process by which simple assembly stations on a surface make additional assembly stations on a facing surface. This process provides exponential growth (until the surfaces are fully occupied), but requires extensive non-"self" supporting infrastructure. This is in sharp contrast to biological self replication, where self sufficiency in the replicative process is taken for granted.
The following table illustrates the design complexity of several other systems:
Complexity of self replicating systems (bits) Von Neumann's universal constructor ~500,000 Internet worm (Robert Morris, Jr., 1988) ~500,000 Mycoplasma genitalium 1,160,140 E. Coli 9,278,442 Drexler's assembler ~100,000,000 Human ~6,400,000,000 NASA Lunar Manufacturing Facility over 100,000,000,000The estimate of the complexity of the internet worm is simply an approximation to the number of bits in the C source code. For the biological systems, the complexity is derived by multiplying the number of base pairs in the DNA times 2. For humans, the number of base pairs is for the haploid, rather than diploid, system. The complexity for the the NASA proposal was taken from Advanced Automation for Space Missions.
Mycoplasma genitalium is the simplest natural living system that can survive on a well defined chemical medium. Its genomic complexity of 1,160,140 bits (twice the 580,070 base pairs sequenced by TIGR) is less than 150 kilobytes -- about one tenth of a typical floppy disk. TIGR is pursuing the Minimal Genome Project to reduce to a minimum the number of genes required for a simple living system. (While viruses are simpler they require a living system to infect: they need additional molecular machinery provided in their environment. For this reason, we exclude them from the table).
The primary observation to be drawn from this data is that simpler designs and proposals for self replicating systems both exist and are well within current design capabilities. The engineering effort required to design systems of such complexity will be significant, but should not be greater than the complexity involved in the design of such existing systems as computers, airplanes, etc. A recent proposal is "Exponential growth of large self-reproducing machine systems," by Klaus S. Lackner and C. H. Wendt, Mathl. Comput. Modelling Vol. 21, No. 10, pages 55-81, 1995.
One last point: self replication is used here as a means to an end, not as an end in itself. A system able to make copies of itself but unable to make much of anything else would not be very useful and would not satisfy our objectives. The purpose of self replication in the context of manufacturing is to permit the low cost replication of a flexible and programmable manufacturing system -- a system which can be reprogrammed to make a very wide range of molecularly precise structures. This lets us economically build a very wide range of products.
While self replicating systems are the key to low cost, there is no need (and little desire) to have such systems function in the outside world. Instead, in an artificial and controlled environment they can manufacture simpler and more rugged systems that can then be transferred to their final destination. Medical devices designed to operate in the human body don't have to self replicate: we can manufacture them in a controlled environment and then inject them into the patient as needed. The resulting medical device will be simpler, smaller, more efficient and more precisely designed for the task at hand than a device designed to perform the same function and self replicate. This conclusion should hold generally: optimize device design for the desired function, manufacture the device in an environment optimized for manufacturing, then transport the device from the manufacturing environment to the environment for which it was designed. A single device able to do everything would be harder to design and less efficient.
This page is part of the nanotechnology web site.