CREATURES FROM PRIMORDIAL SILICON
----- Begin NetScrap(TM) -----
CREATURES FROM PRIMORDIAL SILICON
Entered on: 03/25/1998
Let Darwinism loose in an electronics lab and just watch what it
creates. A lean, mean machine that nobody understands. Clive Davidson
"GO!" barks the researcher into the microphone. The oscilloscope in
front of him displays a steady green line across the top of its
screen. "Stop!" he says and the line immediately drops to the bottom.
Between the microphone and the oscilloscope is an electronic circuit
that discriminates between the two words. It puts out 5 volts when it
hears "go" and cuts off the signal when it hears "stop".
It is unremarkable that a microprocessor can perform such a
task--except in this case. Even though the circuit consists of only a
small number of basic components, the researcher, Adrian Thompson,
does not know how it works. He can't ask the designer because there
wasn't one. Instead, the circuit evolved from a "primordial soup" of
silicon components guided by the principles of genetic variation and
survival of the fittest.
Thompson's work is not aimless tinkering. His brand of evolution
managed to construct a working circuit with fewer than one-tenth of
the components that a human designer would have used. His
experiments--which began four years ago and earned him his PhD--are
already making waves. Chip manufacturers, robot makers and satellite
builders are interested because the technique could produce smaller,
more efficient devices than those designed today using traditional
methods. Thompson's experiments have also inspired other research
projects and some serious speculation about whether technology is
poised to evolve in ways that will take it well beyond human
Looking for inspiration
Computer scientists have long looked to biology for inspiration. From
simplified models of the brain they developed neural networks that
have proved particularly good at recognising patterns such as
signatures on credit cards and fingerprints. They have also worked out
ways to mate and mutate programs and allow the resulting programs to
compete with one another to generate the "fittest" software for a
task. These "genetic algorithms" have been used to evolve software
that does everything from creating works of art to selecting
high-performing shares on the stock market.
To Thompson, who works with Phil Husbands at the Centre for
Computational Neuroscience and Robotics at the University of Sussex,
all these techniques leave something to be desired. They are too
tightly constrained by the rules of chip designers and software
engineers. The behaviour of living neurons, for example, is
inseparable from the biochemicals from which they are made. But it
doesn't matter what material the circuits of a neural network chip are
etched in, so long as they operate in a digital fashion.
Digital computers break down all data into strings of 1s and 0s, which
the hardware stores as "ons" and "offs" in its memory. This forces the
transistors inside computer chips to work as switches--they're either
on or off. But transistors are not intrinsically digital. Between on
and off they pass through a smooth series of values, and in these
regions they can behave as amplifiers, for example. Computer
designers, however, make little or no use of these properties.
Likewise, programmers are constrained by the digital nature of
computers. A program is a sequence of logic instructions that the
computer applies to the 1s and 0s as they pass through its
circuitry. So the evolution that is driven by genetic algorithms
happens only in the virtual world of a programming language.
What would happen, Thompson asked, if it were possible to strip away
the digital constraints and apply evolution directly to the hardware?
Would evolution be able to exploit all the electronic properties of
silicon components in the same way that it has exploited the
biochemical structures of the organic world?
"I wanted to see what happens if you let evolution break out of the
constraints that humans have," says Thompson. "If you give it some
hardware, does it do new things?" These questions could only be
answered if a way were found to combine the "wet" processes of
biological evolution with the "dry" world of silicon chips. Thompson
found the solution in a field-programmable gate array (FPGA).
The transistors in a conventional microprocessor are hardwired into
logic gates, which carry out the processing. By contrast, the logic
gates in an FPGA and their interconnections can be changed at
will. The transistors are arranged into an array of "logic cells" and
simply by loading a special program into the chip's configuration
memory, circuit designers can turn each cell into any one of a number
of logic gates, and connect it to any other cell. So by loading first
one program, then another, the chip can be changed at a stroke from,
say, an amplifier to a modem ("Software, who needs it?", New
Scientist, 2 November 1996, p 41).
Thompson realised that he could use a standard genetic algorithm to
evolve a configuration program for an FPGA and then test each new
circuit design immediately on the chip. He set the system a task that
appeared impossible for a human designer. Using only 100 logic cells,
evolution had to come up with a circuit that could discriminate
between two tones, one at 1 kilohertz and the other at 10 kilohertz.
To kick off the experiment, Thompson created a population of 50
configuration programs on a computer, each consisting of a random
string of 1s and 0s. The computer downloaded each program in turn to
the FPGA to create its circuit and then played it the test tones (see
Diagram, below). The genetic algorithm tested the fitness of each
circuit by checking how well it discriminated between the tones. It
looked for some characteristic that might prove useful in evolving a
solution. At first, this was just an indication that the circuit's
output was not completely random. In the first generation, the fittest
individual was one with a steady 5-volt output no matter which audio
tone it heard.
After testing the initial population, the genetic algorithm killed off
the least fit individuals by deleting them and let the most fit
produce copies of themselves--offspring. It mated some individuals,
swapping sections of their code. Finally, the algorithm introduced a
small number of mutations by randomly switching 1s and 0s within
individual programs. It then downloaded the new population one at a
time onto the FPGA and ran the fitness tests once more.
By generation 220, the fittest individual produced outputs almost
identical to the inputs--two waveforms corresponding to 1 kilohertz
and 10 kilohertz--but not yet the required steady output at 0 volts or
5 volts (see Diagram, below right). By generation 650, the output
stayed mostly high for the 1 kilohertz input, although the 10
kilohertz input still produced a waveform. By generation 1400, the
output was mostly high for the first signal and mostly low for the
second. By generation 2800, the fittest circuit was discriminating
accurately between the two inputs, but there were still glitches in
its output. These only disappeared completely at generation
4100. After this, there were no further changes.
Once the FPGA could discriminate between the two tones, it was fairly
easy to continue the evolutionary process until the circuit could
detect the more finely modulated differences between the spoken words
"go" and "stop".
So how did evolution do it? If a human designer, steeped in digital
lore, were to tackle the same problem, one component would have been
essential--a clock. The transistors inside a chip need time to flip
between on and off, so the clock is set to keep everything marching in
step, ensuring that no transistor produces an output between 0 and
1. A human designer would also use the clock to count the number of
ticks between the peaks of the waves of the input tones. There would
be 10 times as many ticks between the wave peaks of the 1 kilohertz
tone as those of the 10 kilohertz tone.
In order to ensure that his circuit came up with a unique result,
Thompson deliberately left a clock out of the primordial soup of
components from which the circuit evolved. Of course, a clock could
have evolved. The simplest would probably be a "ring oscillator"--a
circle of cells that change their output every time a signal passes
through. It generates a sequence of 1s and 0s rather like the ticks of
a clock. But Thompson reckoned that a ring oscillator was unlikely to
evolve because it would need far more than the 100 cells available.
So how did evolution do it--and without a clock? When he looked at the
final circuit, Thompson found the input signal routed through a
complex assortment of feedback loops. He believes that these probably
create modified and time-delayed versions of the signal that interfere
with the original signal in a way that enables the circuit to
discriminate between the two tones. "But really, I don't have the
faintest idea how it works," he says.
One thing is certain: the FPGA is working in an analogue manner. Up
until the final version, the circuits were producing analogue
waveforms, not the neat digital outputs of 0 volts and 5
volts. Thompson says the feedback loops in the final circuit are
unlikely to sustain the 0 and 1 logic levels of a digital
circuit. "Evolution has been free to explore the full repertoire of
behaviours available from the silicon resources," says Thompson.
That repertoire turns out to be more intriguing than Thompson could
have imagined. Although the configuration program specified tasks for
all 100 cells, it transpired that only 32 were essential to the
circuit's operation. Thompson could bypass the other cells without
affecting it. A further five cells appeared to serve no logical
purpose at all--there was no route of connections by which they could
influence the output. And yet if he disconnected them, the circuit
It appears that evolution made use of some physical property of these
cells--possibly a capacitive effect or electromagnetic inductance--to
influence a signal passing nearby. Somehow, it seized on this subtle
effect and incorporated it into the solution.
To solve this mystery, Thompson needs to measure the input and output
values of each cell when the circuit is operating. But the FPGA
allows only digital access to these points, so he can't measure the
analogue values. Thompson's colleague, Paul Layzell, is building a
circuit board that will allow all the components to be measured with
However it works, Thompson's device is tailor-made for a single 10 by
10 array of logic cells. But how well would that design travel? To
test this, Thompson downloaded the fittest configuration program onto
another 10 by 10 array on the FPGA. The resulting circuit was
unreliable. Another individual from the final generation of circuits
did work, however. Thompson thinks it will be possible to evolve a
circuit that uses the general characteristics of a brand of chip
rather than relying on the quirks of a particular chip. He is now
planning to see what happens when he evolves a circuit design that
works on five different FPGAs.
Another challenge is to make the circuit work over a wide temperature
range. On this score, the human digital scheme proves its
worth. Conventional microprocessors typically work between -20 0C and
80 0C. Human designers set the clock so that chip components have
enough time to settle into a digital value. As many computer hackers
know, they can turn up the clock speed if they keep the temperature of
the microprocessor low because the transistors settle into their on or
off states more quickly when cold.
Thompson's evolved circuit only works over a 10 0C range--the
temperature range in the laboratory during the experiment. This is
probably because the temperature changes the capacitance, resistance
or some other property of the circuit's components. Whatever the
cause, this is a serious drawback. If the circuit needs a temperature
controller to enable it to operate, then it is no longer a cheap,
low-power device. But evolution could come to the rescue here as well.
In a future genetic algorithm, Thompson plans to score circuits not
only on how well they perform an electronic task, but also on how well
they cope with temperature variation. Evolution might, for example,
create a design that includes a set of subcircuits each of which
operates over a different temperature range. If this fails to solve
the problem, Thompson will try giving the FPGA a clock. But he won't
tell the circuit what to do with it. "It will be a resource--we'll see
what use evolution makes of it," he says.
Thompson's circuits have so far solved only simple problems. If they
succeed at more complex tasks, they could prove useful for all kinds
of applications. Thompson has evolved controllers for miniature robots
for Xilinx, the Edinburgh firm that makes FPGAs. And the American
company Motorola is showing interest in his ideas because they may
mesh well with a new analogue FPGA the company has produced. British
Telecom, which has an obvious interest in the sort of
signal-processing problem that Thompson started with, is sponsoring
work by Layzell, who is extending Thompson's ideas.
Already, at Napier University in Edinburgh, Julian Miller and Peter
Thomson have picked up on Thompson's concept and are evolving their
own digital circuits. They do this at a slightly higher level than
Thompson, by creating lists of logic gates and connections, and
putting evolution to work on these lists. They've evolved simple
arithmetic units such as a multiplier. "It uses a lot fewer resources
than a human would design," says Thomson.
If evolutionary design fulfils its promise, we could soon be using
circuits that work in ways we don't understand. And some see this as
a drawback. "I can see engineers in industry who won't trust these
devices," says Thomson. "Because they can't explain how these things
work, they might be suspicious of them."
If the chips ever make their way into engine control systems or
medical equipment we could well face an ethical dilemma, says Inman
Harvey, head of the Centre for Computational Neuroscience and
Robotics. "How acceptable is a safety-critical component of a system
if it has been artificially evolved and nobody knows how it works?" he
asks. "Will an expert in a white coat give a guarantee? And who can be
sued if it fails?"
This is only a problem for people who don't understand how today's
microprocessors are tested, says Pierre Marchal, who leads research
into new computer architectures at the Swiss Centre for Electronics
and Microtechnology in Neuchbtel. "I have no problem with this," he
says. "You never test every possibility inside a microprocessor." That
is why the bug in Intel's Pentium chip was found only a year after the
first one was made.
Harvey and Marchal agree that the safety of future chips will have to
be assured through exhaustive testing. If the chip operates properly
under all the likely combinations of inputs and environmental
conditions, then it doesn't matter how the chip works internally. The
great thing about Thompson's idea, says Marchal, is that if you find a
problem you add another constraint to the fitness test and evolve a
better solution. "You can adapt it, just as the immune system adapts
to new diseases," he says.
Marchal believes there is a "real possibility" that machines will
evolve in ways that will be beyond human reasoning. To some, this
prospect is frightening. But not to Marchal. "I'm not sure this is a
real problem. The risk from a bomb is higher," he says. "Humanity can
destroy itself far easier than these alien technologies."
For the moment, though, the thinking is more down to earth. At Napier,
Thomson and Miller hope that evolution will teach them new design
tricks. "It gives us a new way of looking at things," says
Thomson. And at Sussex, Adrian Thompson has his own goal. "I'm just
trying to explore what evolution will do."
Perhaps this is where the real value of his work lies. Whether or not
his approach produces useful devices, it may help us to understand
more about how the evolutionary process itself works. But that's
Further reading: A collection of Adrian Thompson's papers is posted on
his Web site at http://www.cogs.susx.ac.uk/users/adrianth/ade.html
Clive Davidson is a freelance journalist specialising in new
applications for computers
CREATURES FROM PRIMORDIAL SILICON
----- End NetScrap(TM) -----
Allegedly perpetrated by:
Copy and paste this into an email to a friend. We can make it easy for you. Mail
it off with the Netscrap(TM) MailTool.
Clive Davidson is a freelance journalist specialising in new
applications for computers
Got any more information about this? Add to the story.