# Chemical computer

A chemical computer, also called a reaction-diffusion computer, Belousov–Zhabotinsky (BZ) computer, or gooware computer, is an unconventional computer based on a semi-solid chemical "soup" where data are represented by varying concentrations of chemicals. The computations are performed by naturally occurring chemical reactions.

## Background

Originally chemical reactions were seen as a simple move towards a stable equilibrium which was not very promising for computation. This was changed by a discovery made by Boris Belousov, a Soviet scientist, in the 1950s. He created a chemical reaction between different salts and acids that swing back and forth between being yellow and clear because the concentration of the different components changes up and down in a cyclic way. At the time this was considered impossible because it seemed to go against the second law of thermodynamics, which says that in a closed system the entropy will only increase over time, causing the components in the mixture to distribute themselves until equilibrium is gained and making any changes in the concentration impossible. But modern theoretical analyses shows sufficiently complicated reactions can indeed comprise wave phenomena without breaking the laws of nature. (A convincing directly visible demonstration was achieved by Anatol Zhabotinsky with the Belousov–Zhabotinsky reaction showing spiraling colored waves.)
The wave properties of the BZ reaction means it can move information in the same way as all other waves. This still leaves the need for computation, performed by conventional microchips using the binary code transmitting and changing ones and zeros through a complicated system of logic gates. To perform any conceivable computation it is sufficient to have NAND gates. (A NAND gate has two bits input. Its output is 0 if both bits are 1, otherwise it's 1). In the chemical computer version logic gates are implemented by concentration waves blocking or amplifying each other in different ways.

## Current research

In 1989 it was demonstrated how light-sensitive chemical reactions could perform image processing. This led to an upsurge in the field of chemical computing. Andrew Adamatzky at the University of the West of England has demonstrated simple logic gates using reaction–diffusion processes. Furthermore, he has theoretically shown how a hypothetical "2$^+$ medium" modelled as a cellular automaton can perform computation. Adamatzky was inspired by a theoretical article on computation by using balls on a billiard table to transfer this principle to the BZ-chemicals and replace the billiard balls with waves: if two waves meet in the solution, they create a third wave which is registered as a 1.
One of the problems with the present version of this technology is the speed of the waves; they only spread at a rate of a few millimeters per minute. According to Adamatzky, this problem can be eliminated by placing the gates very close to each other, to make sure the signals are transferred quickly. Another possibility could be new chemical reactions where waves propagate much faster.
In 2014, a chemical computing system was developed by an international team headed by the Swiss Federal Laboratories for Materials Science and Technology (Empa). The chemical computer used surface tension calculations derived from the Marangoni effect using an acidic gel to find the most efficient route between points A and B, outpacing a conventional satellite navigation system attempting to calculate the same route.
In 2015, Stanford University graduate students created a computer using magnetic fields and water droplets infused with magnetic nanoparticles, illustrating some of the basic principles behind a chemical computer.
In 2015, University of Washington students created a programming language for chemical reactions (originally developed for DNA analysis).
In 2017, researchers at Harvard University patented a chemical Turing machine that operated using the non-linear dynamics of the Belousov–Zhabotinsky reaction. The system that they developed is capable of recognizing a Chomsky type-1 language using Gibbs free energy considerations. This work was subsequently published in 2019, including systems for Chomsky type-2 and type-3 languages.
In 2020, University of Glasgow researchers created a chemical computer using 3D-printed parts and magnetic stirrers in order to control the oscillations of BZ medium. In doing so, they were able to compute binary logic gates, and perform pattern recognition.