The chaotic computer
This article first appeared in Personal Computer World magazine, April 1999.
ON THE FACE OF IT, chaos might seem the natural enemy of computing -- a science which, after all, relies entirely upon precision. Dissect any computer system and you'll find error-correcting schemes in use everywhere, from ensuring that files can't get corrupted by the inherent noise in magnetic storage, to guaranteeing that data sent across the Internet doesn't get scrambled. But William Ditto, of the Georgia Institute of Technology, believes that the unpredictabilty of chaotic processes may power a new breed of computer. Together with Madras mathematician Sudeshna Sinha, Ditto has come up with a radically new approach. He calls the bizarre machine a "dynamic computer".
When mathematicians speak of "chaos", they mean something more precise than our everyday notion of randomness and disorder. Mathematically, chaos is the name given to any irregular behaviour which results from the application of a fixed set of rules. For example, take a simple pendulum -- just a bob on the end of a string. If you set it swinging, its movement is a regular swaying, easily described by a simple equation. No matter how you start the bob off, it'll always swing like you'd expect it to. But hang a second pendulum from the bob, and then give the lower bob a push, and the whole thing goes haywire. At times the movement is graceful and regular, but then it will suddenly switch to jerky dancing, and back again. There's no evident pattern to the wobbles of the two pendulums. One pendulum -- order; two pendulums -- chaos. You can see a nice Java animation of this behaviour here. The applet also shows just how sensitive the system is to changes in its initial conditions -- alter the angle between the pendulum bobs by less than one millionth of a degree and the system behaves utterly -- and quite unpredictably -- differently.
Having studied the chaotic behaviour exhibited by many biological systems, including heart muscles and brain cells, Ditto and his team argued that chaotic systems must have important properties for life, to have survived evolution and natural selection. In particular, they theorised that chaotic processes underpin our capacity for thought. And if the brain can conjure reasoning from chaos, why not a computer?
Ditto's proposed machine is a network of interconnected processors, each of which is a simple chaotic system, whose state at each tick of the machine's internal clock is a single numerical value. If, at any tick, an element's state value exceeds a pre-set threshold, it downloads its excess value into a neighbouring element. This process continues throughout the network, and can trigger a "domino effect", with waves of change avalanching throughout the system. It's these waves that are harnessed to do the computing.
It sounds abstract and intangible, but Ditto and Sinha have proved mathematically that it will work. Crucially, they've demonstrated that such a machine could implement logic functions such as AND and OR. And they've gone further, showing that their hypothetical chaotic computer can directly perform basic numerical operations like addition and multiplication. As for building an experimental machine, Ditto's plans are adventurous, to say the least. He intends to build the whole thing out of criss-crossing laser beams.
The dynamic computer is promising because of its flexibility. By changing the connections between the individual processors, and their thresholds, Ditto's machine can be rapidly reconfigured to solve different kinds of problem. One technical challenge will be to determine how to configure the system to solve a particular problem. But perhaps another, more awkward, problem will be to persuade people to trust a computer built from chaos. Would you?
Toby Howard teaches at the University of Manchester.