鈥淕O!鈥 barks the researcher into the microphone. The oscilloscope in front of
him displays a steady green line across the top of its screen. 鈥淪top!鈥 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 鈥済o鈥 and
cuts off the signal when it hears 鈥渟top鈥.
It is unremarkable that a microprocessor can perform such a task鈥攅xcept
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鈥檛 ask the designer because there wasn鈥檛 one. Instead, the circuit evolved
from a 鈥減rimordial soup鈥 of silicon components guided by the principles of
genetic variation and survival of the fittest.
Advertisement
Thompson鈥檚 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鈥攚hich began four years ago
and earned him his PhD鈥攁re 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鈥檚 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 understanding.
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
鈥渇ittest鈥 software for a task. These 鈥済enetic 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鈥檛 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 鈥渙ns鈥 and 鈥渙ffs鈥 in its memory. This forces the transistors
inside computer chips to work as switches鈥攖hey鈥檙e 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?
鈥淚 wanted to see what happens if you let evolution break out of the
constraints that humans have,鈥 says Thompson. 鈥淚f you give it some hardware,
does it do new things?鈥 These questions could only be answered if a way were
found to combine the 鈥渨et鈥 processes of biological evolution with the 鈥渄ry鈥
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 鈥渓ogic cells鈥 and simply by loading a special program into the
chip鈥檚 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
(鈥淪oftware, who needs it?鈥, 快猫短视频, 2 November 1996, p 41).
Mission impossible
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). 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鈥檚 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鈥攐ffspring. 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鈥攖wo waveforms corresponding to 1 kilohertz and 10
kilohertz鈥攂ut not yet the required steady output at 0 volts or 5 volts
(see Diagram). 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 鈥済o鈥 and 鈥渟top鈥.
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鈥攁
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 鈥渞ing oscillator鈥濃攁 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鈥攁nd 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.
鈥淏ut really, I don鈥檛 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. 鈥淓volution 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鈥檚 operation. Thompson
could bypass the other cells without affecting it. A further five cells appeared
to serve no logical purpose at all鈥攖here was no route of connections by
which they could influence the output. And yet if he disconnected them, the
circuit stopped working.
It appears that evolution made use of some physical property of these
cells鈥攑ossibly a capacitive effect or electromagnetic inductance鈥攖o
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鈥檛 measure the analogue values. Thompson鈥檚
colleague, Paul Layzell, is building a circuit board that will allow all the
components to be measured with analogue instruments.
However it works, Thompson鈥檚 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 掳C and 80 掳C. 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鈥檚 evolved circuit only works over a 10 掳C range鈥攖he
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鈥檚 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鈥檛 tell the circuit what to do with it.
鈥淚t will be a resource鈥攚e鈥檒l see what use evolution makes of it,鈥 he
says.
Thompson鈥檚 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鈥檚 ideas.
Suspicious minds
Already, at Napier University in Edinburgh, Julian Miller and Peter Thomson
have picked up on Thompson鈥檚 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鈥檝e evolved simple arithmetic units such as a multiplier. 鈥淚t 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鈥檛 understand. And some see this as a drawback. 鈥淚 can
see engineers in industry who won鈥檛 trust these devices,鈥 says Thomson. 鈥淏ecause
they can鈥檛 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. 鈥淗ow acceptable is a
safety-critical component of a system if it has been artificially evolved and
nobody knows how it works?鈥 he asks. 鈥淲ill 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鈥檛 understand how today鈥檚
microprocessors are tested, says Pierre Marchal, who leads research into new
computer architectures at the Swiss Centre for Electronics and Microtechnology
in Neuch芒tel. 鈥淚 have no problem with this,鈥 he says. 鈥淵ou never test
every possibility inside a microprocessor.鈥 That is why the bug in Intel鈥檚
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鈥檛
matter how the chip works internally. The great thing about Thompson鈥檚 idea,
says Marchal, is that if you find a problem you add another constraint to the
fitness test and evolve a better solution. 鈥淵ou can adapt it, just as the immune
system adapts to new diseases,鈥 he says.
Marchal believes there is a 鈥渞eal possibility鈥 that machines will evolve in
ways that will be beyond human reasoning. To some, this prospect is frightening.
But not to Marchal. 鈥淚鈥檓 not sure this is a real problem. The risk from a bomb
is higher,鈥 he says. 鈥淗umanity can destroy itself far easier than these alien
迟别肠丑苍辞濒辞驳颈别蝉.鈥
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. 鈥淚t
gives us a new way of looking at things,鈥 says Thomson. And at Sussex, Adrian
Thompson has his own goal. 鈥淚鈥檓 just trying to explore what evolution will
诲辞.鈥
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鈥檚 another story.
- Further reading:
A collection of Adrian Thompson鈥檚 papers is posted on his
Web site at http://www.cogs.susx.ac.uk/users/adrianth/ade.html