Today I realised my understanding of reaction diffusion was slightly inaccurate. I finally understood a few things about the reaction diffusion model (see previous work here). For starters, Reaction Diffusion is a chemical process in which substances react with each other and diffuse at the same time. This website contains the image below which defines an area called the u-skate world, as well as a being a good resource for understanding reaction diffusion.
(n.b. Flow rate is the rate at which chemicals are added into the system and kill rate is the rate at which particles precipitate into their ‘final’ state)
This image graphs the range of possibilities of reaction diffusion outcomes. The horizontal axis, k (kill rate) ranges from 0.05 to 0.07 units, and the vertical axis ranges from 0.04 to 0.08 units. Each box in this graph shows what happens when the coinciding kill and Flow rates meet. Beforehand, I had always plugged arbitrary numbers into each parameter, but I now realise the process is completely deterministic. I still find it very interesting that the system does not reach an equilibrium point however, as I’ve left several simulations running for days on end only to find the form continues to evolve.
So looking at the u-skate boundary, we can pull out particular Flow and kill rates as specified in the graph above in order to generate particular patterns.For instance,
- at the upper extents of u-bounds (u because the graph is u shaped), we get a lot of long ‘worm’ formations (where F = 0.0740 and k = 0.0610)
- as we move down through the graph, we still get a lot of worm formations, but much shorter (where F = 0.0340 and k = 0.0610)
- on the blue fringes we get the formation of solitons (where F = 0.0340 and k = 0.0570)
- and on the red fringes of the pattern we get a mitosis formation (where F = 0.0220 and k = 0.0610)
The equation essentially models two substances (u and v) in a fixed volume, and these two equations return the rate of change of each substance and hence form the basis for how the form is generated. For purposes of simplicity, we can assume that all other terms apart from Flow and kill rate in the equation remain as constants.
Going back to some of the models that I’d created, and according to Andrew Adamatzky’s book, ‘Reaction-Diffusion Computers’, the ending representation is not of the two chemicals in their current ‘resting position’, rather the darker regions define where a precipitate has formed, and the white regions are a precipitate free area. As the reaction continues, the chemicals continue to diffuse through the container, forming larger areas of precipitation. However, they can also follow a phenomenon called The Liesegang Phenomenon which is defined as an oscillatory precipitation in the wake of a moving diffuse front. This means that the precipitation of the chemical is not a finite state, the chemicals can oscillate through a state of precipitate to precipitate free.
Something interesting which I came across in Andrew Adamatzky’s book is that reaction diffusion is actually being developed as a means of unconventional computing. It is agreed that naturally at some point we are going to reach the limits of what our current computers do, because currently they use serial computing methods, whereas the future could well be biological and chemical processing, as they perform predominantly via parallel mechanisms. Tomasso Toffoli once said, “A computing scheme that today is viewed as unconventional may well be because its time hasn’t come yet – or is already gone.” So perhaps reaction diffusion could form the basis for computation of the future. Till then, reaction diffusion seems to mainly be used as an art form, as I will be hoping to use it.