by Hogan, James
Code of the LifemakerCode of the Lifemaker
By James P. Hogan
Prologue
THE SEARCHER
1.1 MILLION YEARS B.C.;
1,000 LIGHT-YEARS FROM THE SOLAR SYSTEM
HAD ENGLISH-SPEAKING HUMANS EXISTED, THEY WOULD PROBABLY have translated the
spacecraft's designation as "searcher." Unmanned, it was almost a mile long,
streamlined for descent through planetary atmospheres, and it operated fully
under the control of computers. The alien civilization was an advanced one, and
the computers were very sophisticated.
The planet at which the searcher arrived after a voyage of many years was the
fourth in the system of a star named after the king of a mythical race of alien
gods, and could appropriately be called Zeus IV. It wasn't much to look at—an
airless, lifeless ball of eroded rock formations, a lot of boulders and debris
from ancient meteorite impacts, and vast areas of volcanic ash and dust—but the
searcher's orbital probes and surface landers found a crust rich in titanium,
chromium, cobalt, copper, manganese, uranium, and many other valuable elements
concentrated by thermal-fluidic processes operating early in the planet's
history. Such a natural abundance of metals could support large-scale production
without extensive dependence on bulk nuclear transmutation processes—in other
words, very economically—and that was precisely the kind of thing that the
searcher had been designed to search for. After completing their analysis of the
preliminary data, the control computers selected a landing site, composed and
transmitted a message home to report their findings and announce their
intentions, and then activated the vessel's descent routine.
Shortly after the landing, a menagerie of surveyor robots, equipped with
imagers, spectrometers, analyzers, chemical sensors, rock samplers, radiation
monitors, and various manipulator appendages, emerged from the ship and
dispersed across the surrounding terrain to investigate surface features
selected from orbit. Their findings were transmitted back to the ship and
processed, and shortly afterward follow-up teams of tracked, legged, and wheeled
mining, drilling, and transportation robots went out to begin feeding ores and
other materials back to where more machines had begun to build a fusion-powered
pilot extraction plant. A parts-making facility was constructed next, followed
by a parts-assembly facility, and step by step the pilot plant grew itself into
a fully equipped, general-purpose factory, complete with its own control
computers. The master programs from the ship's computers were copied into the
factory's computers, which thereupon became self-sufficient and assumed control
of surface operations. The factory then began making more robots.
Sometimes, of course, things failed to work exactly as intended, but the alien
engineers had created their own counterpart of Murphy and allowed for his law in
their plans. Maintenance robots took care of breakdowns and routine wear and
tear in the factory; troubleshooting programs tracked down causes of production
rejects and adjusted the machines for drifting tolerances; breakdown teams
brought in malfunctioning machines for repair; and specialized scavenging robots
roamed the surface in search of wrecks, write-off's, discarded components, and
any other likely sources of parts suitable for recycling.
Time passed, the factory hummed, and the robot population grew in number and
variety. When the population had attained a critical size, a mixed workforce
detached itself from the main center of activity and migrated a few miles away
to build a second factory, a replica of the first, using materials supplied
initially from Factory One. When Factory Two became self-sustaining, Factory
One, its primary task accomplished, switched to mass-production mode, producing
goods and materials for eventual shipment to the alien home planet.
While Factory Two was repeating the process by commencing work on Factory Three,
the labor detail from Factory One picked up its tools and moved on to begin
Factory Four. By the time Factory Four was up and running, Factories Five
through Eight were already taking shape, Factory Two was in mass-production
mode, and Factory Three was building the first of a fleet of cargo vessels to
carry home the products being stockpiled. This self-replicating pattern would
spread rapidly to transform the entire surface of Zeus IV into a totally
automated manufacturing complex dedicated to supplying the distant alien
civilization from local resources.
From within the searcher's control computers, the Supervisor program gazed out
at the scene through its data input channels and saw that its work was good.
After a thorough overhaul and systems checkout, the searcher ship reembarked its
primary workforce and launched itself into space to seek more worlds on which to
repeat the cycle.
FIFTY YEARS LATER
Not far—as galactic distances go—from Zeus was another star, a hot, bluish white
star with a mass of over fifteen times that of the Sun. It had formed rapidly,
and its life span—the temporary halt of its collapse under self-gravitation by
thermonuclear radiation pressure—had demanded such a prodigious output of energy
as to be a brief one. In only ten million years the star, which had converted
all the hydrogen in its outer shell to helium, resumed its collapse until the
core temperature was high enough to bum the helium into carbon, and then, when
the helium was exhausted, repeated the process to begin burning carbon. The
ignition of carbon raised the core temperature higher still, which induced a
higher rate of carbon burning, which in turn heated the core even more, and a
thermonuclear runaway set in which in terms of stellar timescales was
instantaneous. In mere days the star erupted into a supernova—radiating with a
billion times the brightness of the Sun, exploding outward until its photosphere
enclosed a radius greater than that of Uranus' orbit, and devouring its tiny
flock of planets in the process.
Those planets had been next on the searcher's list to investigate, and it
happened that the ship was heading into its final approach when the star
exploded. The radiation blast hit it head-on at three billion miles out.
The searcher's hull survived more-or-less intact, but secondary x-rays and
high-energy subnuclear particles—things distinctly unhealthy for
computers—flooded its interior. With most of its primary sensors bumed out, its
navigation system disrupted, and many of its programs obliterated or altered,
the searcher veered away and disappeared back into the depths of interstellar
space.
One of the faint specks lying in the direction now ahead of the ship was a
yellow-white dwarf star, a thousand light-years away. It too possessed a family
of planets, and on the third of those planets the descendants of a species of
semi-intellig
ent ape had tamed fire and were beginning to experiment with tools
chipped laboriously from thin flakes of stone.
Supernovas are comparatively rare events, occurring with a frequency of perhaps
two or three per year in the average galaxy. But as with most generalizations,
this has occasional exceptions. The supernova that almost enveloped the searcher
turned out to be the first of a small chain that rippled through a localized
cluster of massive stars formed at roughly the same time. Located in the middle
of the cluster was a normal, longer-lived star which happened to be the home
star of the aliens. The aliens had never gotten round to extending their
civilization much beyond the limits of their own planetary system, which was
unfortunate because that was the end of them.
Everybody has a bad day sometimes.
ONE MILLION YEARS B.C.
One hundred thousand years after being scorched by the supernova, the searcher
drifted into the outer regions of a planetary system. With its high-altitude
surveillance instruments only partly functioning and its probes unable to deploy
at all, the ship went directly into its descent routine over the first sizeable
body that it encountered, a frozen ball of ice-encrusted rock about three
thousand miles in diameter, with seas of liquid methane and an atmosphere of
nitrogen, hydrogen, and methane vapor. The world came nowhere near meeting the
criteria for worthwhile exploitation, but that was of no consequence since the
computer programs responsible for surface analysis and evaluation weren't
working.
The programs to initiate surface activity did work, however, more or less, and
Factory One, with all of its essential functions up and running to at least some
degree, was duly built on a rocky shelf above an ice beach flanking an inlet of
a shallow methane sea. The ship's master programs were copied across into the
newly installed factory computers, which identified the commencement of work on
Factory Two as their first assignment. Accordingly Factory One's Supervisor
program signaled the ship's databank for a copy of the "How to Make a Factory"
file, which included a set of subfiles on "How to Make the Machines Needed to
Make a Factory," i.e., robots. And that was where everything really started to
go wrong.
The robots contained small internal processors that could be reprogramed via
radiolink from the factory computers for each new task to be accomplished. This
allowed the robots to proceed with their various jobs under autonomous local
control and freed up the central computers for other work while they were
waiting for the next "Done that—what do I do now?" signal. Hence many software
mechanisms existed for initiating data transfers between the factory computers
and the remote processors inside the robots.
When the copying of the "How to Make a Factory" file from the ship to Factory
One was attempted, the wrong software linkages were activated; instead of
finding their way into the factory's central system, the subfiles containing the
manufacturing information for the various robots were merely relayed through the
factory and beamed out into the local memories of the respective robot types to
which they pertained. No copies at all were retained in the factory databank.
And even worse, the originals inside the ship managed to self-destruct in the
process and were irretrievably erased. The only copies of the "How to Make a
Fred-type Robot" subfile were the ones contained inside the Fred-types out on
the surface. And the same was true for all the other types as well.
So when the factory's Supervisor program ordered the Scheduler program to
schedule more robots for manufacture, and the Scheduler lodged a request with
the Databank Manager for the relevant subfiles, the Databank Manager found that
it couldn't deliver. Neither could it obtain a recopy from the ship. The
Databank Manager reported the problem to the Scheduler; the Scheduler complained
to the Supervisor; the Supervisor blamed the Communications Manager; the
Communications Manager demanded an explanation from the Message Handler; and
after a lot of mutual electronic recriminations and accusations, the system
logging and diagnostic programs determined that the missing subfiles had last
been tracked streaming out through the transmission buffers on their way to the
robots outside. Under a stem directive from the Supervisor, the Communications
Manager selected a Fred from the first category of robots called for on the
Scheduler's list, and beamed it a message telling it to send its subfile back
again.
But the Fred didn't have a complete copy of the subfile; its local memory simply
hadn't been big enough to hold all of it. And for the same reason, none of the
other Freds could return a full copy either. They had been sprayed in succession
with the datastream like buckets being filled from a fire-hose, and all had
ended up with different portions of the subfile; but they appeared to have
preserved the whole subfile among them. So the Supervisor had to retrieve
different pieces from different Freds to fit them together again in a way that
made sense. And that was how it arrived at the version it eventually handed to
the Scheduler for manufacture.
Unfortunately, the instruction to store the information for future reference got
lost somewhere, and for each batch of Freds the relevant "How to Make" subfile
was promptly erased as soon as the Manufacturing Manager had finished with it.
Hence when Factory One had spent some time producing parts for Factory Two and
needed to expand its robot workforce to begin surveying sites for Factory Three,
the Supervisor had to go through the whole rigmarole again. And the same process
was necessary whenever a new run was scheduled to provide replacements for
robots that had broken down or were wearing out.
All of this took up excessive amounts of processor time, loaded up the
communications channels, and was generally inefficient in the ways that cost
accountants worry about. The alien programers had been suitably indoctrinated by
the alien cost accountants who ran the business— as always—and had written the
Supervisor as a flexible, self-modifying learning program that would detect such
inefficiencies, grow unhappy about them, and seek ways to improve things. After
a few trials, the Supervisor found that some of the Freds contained about half
their respective subfiles, which meant that a complete copy could be obtained by
interrogating just two individuals instead of many. Accordingly it made a note
of such "matching pairs" and began selecting them as its source for repeat
requests from the Scheduler, ignoring the others.
Lost along with the original "How to Make a Fred" subfiles were the subsubfiles
on "Programs to Write into a Fred to Start It Up after You've Made It." To make
up for the deficiency, the Supervisor copied through to the Scheduler the full
set of programs that it found already existing in the Freds selected to provide
reproduction information, and these programs, of course, included the ones on
how to make Freds. Thus the robots began coming off the line with one-half of
their "genetic" information automatically built in, and a cycle asserted itself
whereby they in turn became the source of information to be recombined later for
producing more Freds. The method worked, and the Supervisor never figured out
that it could have saved itself a lot of trouble by storing the blueprints away
once and for all in the factory databank.
The program segments being recombined in this way frequently failed to copy
faithfully, and the "genomes" formed from them were seldom identical, some
having portions of code omitted while others had portions duplicated.
Consequently Freds started taking on strange shapes and behaving in strange
ways.
Some didn't exhibit any behavior at all but simply fell over or failed during
test, to be broken down into parts again and recycled. A lot were like that.
Some, from the earlier phase, were genetically incomplete —"sterile" —and never
called upon by the Supervisor to furnish reproductive data. They lasted until
they broke down or wore out, and then became extinct.
Some reproduced passively, i.e., by transmitting their half-subfiles to the
factory when the Scheduler asked for them.
A few, however, had inherited from the ship's software the program modules whose
function was to lodge requests with the Scheduler to schedule more models of
their own kind—program modules, moreover, which embodied a self-modifying
priority structure capable of raising the urgency of their requests within the
system until they were serviced. The robots in this category sought to reproduce
actively: They behaved as if they experienced a compulsion to ensure that their
half-subfiles were always included in the Scheduler's schedule of "Things to
Make Next."
So when Factory One switched over to mass-production mode, the robots competing
for slots in its product list soon grabbed all of the available memory space and
caused the factory to become dedicated to churning out nothing else. When
Factory Two went into operation under control of programs copied from Factory
One, the same thing happened there. And the same cycle would be propagated to
Factory Three, construction of which had by that time begun.
More factories appeared in a pattern spreading inland from the rocky coastal
shelf. The instability inherent in the original parent software continued to