CELLULAR AUTOMATON BELOUSOV-ZHABOTINSKY MODEL FOR BINARY FULL ADDER

The continuous increment of classical computers’ computational performance is driven to its limit. New ways are studied in order to avoid this fore-coming bottleneck and many answers are found into nature. An example is the Belousov-Zhabotinsky (BZ) reaction which includes some fundamental and essential characteristics that attract chemists, biologists, and computer scientists. Interaction of excitation wave-fronts in BZ system, can be interpreted in terms of logical gates and applied in design of unconventional hardware components. Logic gates and other more complicated components are already proposed using different topologies and particular characteristics. In this study, the inherent parallelism and simplicity of Cellular Automata (CA) modelling is combined with an Oregonator model of light-sensitive version of BZ reaction. The resulting parallel and computationally-inexpensive model has the ability to simulate a topology that can be considered as an one-bit full adder digital component towards the design of an Arithmetic Logic Unit (ALU).


Introduction
The human history has been divided in time zones according to the main material that people were using during each one of them.The stone age, the bronze or the iron age are a few examples.If a name must be given to our time zone, talking about the past few decades, the "silicon age" would be a strong candidate.Every simple or complicated calculation is made by computers based on silicon.Those computers have dominated the global market and millions of people work in this industry.Every couple of years, the density of the computer chip is getting higher and the computational speed is increased dramatically.But this evolution seems reaching to a limit.Already, Intel has confirmed the launching of 10 nm Cannonlake in 2017.It is believed that this increment of density will stop in fifteen years because tools used in manufacturing of transistors cannot handle smaller designs.So, a plan must be made in order to maintain the continuous growth of processing performance.The existing ideas are two-fold, a short-term and a long-term.
The first one tries to answer the question "and now what"?The basic idea behind solving complex algorithms remains the utilization of serial operations using a CPU equipped with a ruling clock.This serial operation logic causes a serious bottleneck in performing simultaneous computations using large data sets.This drops the overall system's performance.There are many studies trying to parallelise those operations.CPUs began to include many processors which have to work in parallel in order to execute a task as fast as possible.Hardware designers are trying to implement new protocols that will optimize this communication between CPUs and their shared memory [Souris et al., 2016].The last few years the GPUs (General Purpose Graphic Processing Unit) gave a new perspective on the idea of parallel computation.Thousands of threads working together can execute simultaneously a great number of independent processes [Giitsidis et al., 2015;Heimlich et al., 2016].Others are searching an effective way to connect many computers in parallel.All these solutions result in acceleration but still there is a central digital architecture that distributes priorities in peripheral computers serially.In words, the central serial control remains.The second long term approach is to find a new material that will enhance the computing performance.Last years graphene and other two-dimensional materials were proposed as alternatives to pure silicon transistors [Fiori et al., 2014].The study of new materials could lead to new characteristics and properties that might change directions of computer evolution.
On the other hand, there are scientists that are trying to combine those two solutions.The key is in information processing in natural systems.What is a better material producer other than nature and its tools?It has been found that parallel computation takes place in living organisms within their cytoskeleton structures without any ruling CPU or clock [Siccardi et al., 2016;Alonso-Sanz & Adamatzky, 2016;Evangelidis et al., 2015;Dourvas et al., 2015;Mayne et al., 2015;Asai et al., 2005a].The research on such biological paradigms could open new horizons in computing.Thinking in the longer term we can imagine the production of implantable, distributed and parallel computing processors made by novel architectures inspired by chemistry, physics and biology.
One example of such an architecture is the Belousov-Zhabotinsky (BZ) reaction [Belousov, 1959;Zhabotinsky, 1964].The (BZ) reaction is a classic now example of an oscillatory chemical system which shows a wide range of excitation wave patterns when in two-dimensional medium.There are simplest realistic models of the BZ reaction such as the Oregonator model which was created by Field and Noyes [Field & Noyes, 1974].A number of chemical processes occur, producing excitable travelling waves [Tóth et al., 2009;Adamatzky & de Lacy Costello, 2007;De Lacy Costello & Adamatzky, 2003].This phenomenon can be controlled by applying illumination in specific loci which reduce the expansion of the waves.The effective control of those waves can lead to very interesting topologies that can be applied in many scientific fields.It has been proved that BZ reaction is capable of solving a wide range of computational tasks such as approximation of shortest path [Adamatzky & de Lacy Costello, 2002;Rambidi & Yakovenchuk, 2001], robotics [Adamatzky et al., 2004], information processing [Gorecki et al., 2015[Gorecki et al., , 2014] ] computing devices [Adamatzky et al., 2012;Gruenert et al., 2013;Dini et al., 2013;King et al., 2012;Gentili et al., 2012;Adamatzky, 2004] and logical circuits [Adamatzky et al., 2008;Zhang et al., 2012;Adamatzky et al., 2011a;Holley et al., 2011;Asai et al., 2005b]; see a brief overview in [Adamatzky, 2015].
In present study we are interested in constructing logic gates via BZ system.The first experimental implementation of logical gates in the spatially extended BZ system based on the space-time interaction of travelling excitation waves was presented by the Showalter Laboratory in early 1990s [Tóth & Showalter, 1995;Steinbock et al., 1996a,b].When the phrase "travelling waves" is used on biological operations the first thought leads on electrical waves travelling through neurons.But there have been already many observations, by scientists of information processing field, on travelling waves in a wide variety of cellular systems.The logical gates were constructed by a geometrical topology of channels in which the waves propagated.Different topologies of channels for excitation wave propagation were used to implement Boolean logic gates [Gorecki et al., 2009;Yoshikawa et al., 2009;Costello et al., 2011], counters [Gorecki et al., 2003] and many-valued logical gates [Motoike & Adamatzky, 2005].We propose an alternative way to modeling complex physical systems with partial differential equations (PDEs), namely with a cellular automaton (CA) model which simulates the behavior of an Oregonator BZ system when implementing a binary one bit-full adder with the minimum complexity and computational resources need.

Computation with Cellular Automata
Physical systems are characterized in several cases by high modeling complexity, which make the work of simulating effectively their complicated inherent behavior a very difficult task.Continuity, uniformity, locality, linearity or reversibility are only some of the characteristics that can be taken into account to reduce the aforementioned complexity.Moreover, the temporal correlations of dynamics between states may be much more finite than the formation of states or variables which try to include an infinite amount of information for the whole system.The latter gives effectively a general statistical view about the system's behavior but due to its great amount of complicated information it can not easily be used for simulations even by synchronous computational tools and computers.So, the extraction of some definite qualitative or quantitative statements about the system's behavior is very important.
There are excitable media such as the neurons in the human body that are capable of supporting chemical /electrical waves of activity.The BZ reaction has been extensively used as a physical model to investigate generic dynamical features of excitable media.There are studies that are focusing on the propagation of waves in heterogeneous media, for which the excitability is a function of spatial coordinate [Armstrong et al., 2004].This propagation of waves is based on the diffusion of activator species interacting with inhibitors and are expressed mathematically by PDEs based on the general form of diffusion equation.Nevertheless, PDEs as mathematical tools for simulating physics, contain much more information than is usually needed, because variables may take an infinite number of values in a continuous space.Moreover, they usually require a large amount of computational time and memory and handle with difficulty the complicated boundary and initial conditions.As a result numerical modeling can be achieved with other computational tools that are more appropriate to describe systems where global behavior arises from the collective effect of simple components that interact locally.Cellular automata (CA) is such a tool and can be considered as an alternative to differential equations in modeling physics [Toffoli, 1984;Sirakoulis et al., 2005].It is well known, that the value of a physical quantity cannot be measured at a point, but instead it is measured over a finite volume [Toffoli, 1984].On the other hand, PDEs are used to compute values of physical quantities at points, whereas CAs are used to compute values of physical quantities over finite volumes (CA cells).Several well-known partial differential equations have been solved on CA lattices, like the Diffusion equation [Chopard & Droz, 1991], the Laplace equation [Danikas et al., 1996], the Poisson equation [Chen et al., 1990], and the Weyl, Dirac, and Maxwell equations [Bialynicki-Birula, 1994], just to name a few.
In general, Cellular automata (CA) is a very elegant parallel computational tool started by John von Neumann [von Neumann, 1966] and Konrad Zuse [Zuse, 1970].CA produce models of physical systems, where space and time are discrete and interactions are local.John von Neumann introduced them as formal models of self-reproducing organisms, who was thinking of imitating the behavior of a human brain in order to build a machine able to solve very complex problems.His goal was to show that complex phenomena can be reduced to the dynamics of many identical, very simple primitives capable of interacting and maintaining their identity.CA can capture the essential features of systems where global behavior arises from the collective effect of simple components which interact locally.
There are three design components in a two-dimensional CA.First, a regular 2D lattice L N,N of N × N cells covering the dimensional space must be designed.Then, a set of local states attached to each site of the lattice must be defined.These states give the local state of each cell at the specific time step t.The local state of the cell i, j is given by Eq. 1.
The global state of the system at time t is given by Eq. 2.  The next step is to define the neighborhood of its cell.Every cell must communicate with its neighbors, exchanging information in order to continue its evolution in the next time step.The neighborhood of a cell at specific location in the lattice is described by a set given in Eq. 3.
N ei(loc, t) = {N ei(loc, t), . . ., N eim(loc, t)} (3) Finally, after the size of the neighbourhood (the number of cells around the central one) is defined, a local transition function, F = {F 1, F 2, ..., F m} must be applied which specifies the evolution of the central cell's state at the next time step according to the values of its neighbors.This procedure of the transition function on a neighborhood of a cell state is given by 4.
where r + δ p demonstrates the set of cells that define the neighbourhood of the cell in location loc.
In general, the rule is identical for all sites and is applied simultaneously to each of them, leading to a synchronous dynamics.But many problems demand the introduction of inhomogeneities changing the application of the rule from site to site.For two-dimensional CA, the Moore neighborhood is very often used.This neighborhood consists of a central cell and its four geographical neighbours, namely north, west, south, east as well the diagonal nearest neighbors of the central cell (northeast, northwest, southeast, southwest) and it is expressed in Eq. 5 and represented by Fig. 1.
In many cases neighborhoods of bigger sizes can be used but this increases the complexity of the algorithm, which has to be avoided.CA have sufficient expressive dynamics to represent phenomena of arbitrary complexity [Zhao et al., 2007;Martínez et al., 2008;Alonso-Sanz & Adamatzky, 2008;Adamatzky et al., 2006;Tsompanas et al., 2015;Siccardi & Adamatzky, 2015;Evangelidis et al., 2015].Looking at the characteristics of chemical computers and CA, we understand the importance of combining them.The inherent parallelism, the decentralized processing, the usage of local interactions in order to take the global behavior make CA the ideal modelling tool for chemical computers and more specifically in the case of the BZ reaction.
3. The proposed topology, the CA model and the experimental results.

The proposed topology
In order to implement a collision based scheme in a spatially extended chemical medium, travelling localized excitations must be employed.Such wave fragments emerge in a light-sensitive BZ medium when it is in a sub-excitable state.In particular, the BZ medium proposed in [Adamatzky, 2015] is a two-variable Oregonator model adapted to a light sensitive BZ reaction.This model follows the Eqs.6 -7.The variables n and m represent local concentrations of an activator and an inhibitor of BZ system.The activator is also the excitatory component and the inhibitor is the refractory component.ratio sets up a ratio of time scale of variables n and m while scal is a scaling parameter depending on rates of activation and inhibition.The h is a stoichiometric coefficient, while γ is a rate of inhibitor production and, more specifically, in this case it is proportional to intensity of illumination.This model shows a high degree of light sensitivity.This means that under certain levels of illumination we can perturb the medium and then it behaves in excited mode, forming omni-directional propagating waves.But when a specific level of illumination is exceeded the excitation stops and the travelling waves starts to shrink.There is a narrow range of illumination parameters where the BZ medium is in a subexcitable state between the non-excitable and excitable states [Adamatzky et al., 2011b].
We are proposing a CA implemented model of the topology proposed in [Adamatzky, 2015].This scheme, which can be viewed in Fig. 2 represents the design of a one-bit full adder.The two inputs are represented by variables In1 and In2.The C represents the Carry which is coming from a previous addition of two numbers.The outputs are shown at the bottom of this scheme.The left output (Out1) holds the result of the carry of the full adder while the right one (Out2) holds the result of the addition of two binary numbers.J1, J2, J3 and J4 represent the junctions of this circuit (where the rule changes).The black lines represent the channels inside which the waves are travelling.In order to maintain the desired path of the travelling waves we have to model some special characteristics of the BZ system.For example if we initiate a travelling wave at first input (In1=TRUE) and the medium is excited everywhere, this pulse will create concentric waves which will expand in all over the topology, something that is not desirable.Furthermore, it must be ensured that in a bounded channel the wave will travel only in one direction and not backwards.This propagation can be distinguished in three states.The neutral state which means that the medium is unexcited and ready to become excited and propagate the wave.The excited state which is the state of the travelling wave.The last one is the ref ractory state, an interval of time after excitation when the system evolves towards the neutral state and its repeated excitation is impossible due to a large concentration of inhibitor.For propagating pulses it means that the space behind a pulse is in the refractory regime characterized by a large amplitude of inhibitor and it cannot be re-excited.
Another basic characteristic that must be modeled is the behavior of the travelling wave on the sub-excitable medium.Given the previous example, if we perturb an input, the pulse will forage in all the topology and will not follow only certain paths.In real chemical reaction this can be controlled by changing the levels of the illumination that is applied on specific loci (principally in junctions where we have to maintain the narrow path following the bounded channel).Being staunched to these constraints, the last and most important part is to find the CA characteristics that are going to model this system effectively.

The CA model
In order to create a CA model we have to follow some basic steps.First, we have to divide the space in a lattice of cells.A CA cell is the elementary unit of a CA model.In our case, we use a two-dimensional CA and we divide our space in a quadrangle of 270 × 111 cells (i.e.L 270,111 ) Then we have to decide the states that each CA can hold.In this implementation the CA cell must represent a type of the topology.In particular, a cell can either be a wall of the topology, an excited cell which holds a part of the travelling wave, a ref ractory cell that cannot be re-excited immediately being excited and finally a neutral cell that is a free cell which could be excited at some specific time (Eqs.8-9).In order to be more accurate about the size of channels and the design of junctions used, some basic positions are enlarged as shown in Fig. 3. Value 20 represents the walls of the design while 0 represents the free channels where the wave can be transmitted.The black lines are designed in order to present the borders of the walls.
The third step is to define the type and size of the local neighborhood.The crucial part is to maintain the size of the neighborhood as small as possible in order to reduce the complexity of the calculations.After many tests and observations we concluded that the best solution between complexity and effectiveness is an extended Moore neighbourhood, meaning the closest twenty four (24) cells around the central one (Fig. 4).Finally, we have to define the rule that is going to be applied in each CA cell.The goal is to create a very simple rule which will reduce the algorithmic complexity and increase the system's performance.And this is achieved.The topology is distinguished between the bounded channels that form a clear line or path and the junctions where all channels end up.
Rule 1: A neutral cell that exists inside a channel can become an excited one if at least one of the neighbours is in excited state.This imitates the medium being in an excitable state [Adamatzky, 2015].
The selection of the number of the excited neighbors leads to different speeds of the pulse.If a greater amount of neighbors (i.e. two or three) is demanded in order to change a neutral cell to an excited one will reduce the travelling speed of the wave.This characteristic offers the opportunity to the designer of each topology to calibrate her/his rule in order to take simultaneous results at the output.On the other hand, an excited cell becomes a ref ractory cell at the next time step and cannot be re-excited until the end of the simulation.Rule 2: When an excited pulse reaches a junction, the rule changes in order to model the sub-excitable behavior of the medium [Adamatzky, 2015].The alternations of the illumination that control the excitation level are modeled effectively if we demand more neighbors in order to change a neutral cell to an excited one.
More specifically, at the cells belonging to the junctions, the number of excited neighbors needed is scaled up from two (2) to five (5) and then is scaled down from five (5) to two (2).
This repetitive procedure controls the pulse from expanding in all paths around in an uncontrollable way and simultaneously doesn't permit it to collapse.This is how exactly pulses was contolled in laboratory experiments on implementation of a binary adder with real BZ [Costello et al., 2011].This rule maintains the pulse at a narrow path until it reaches the next channel.At this point, it is worth mentioning that the geometry of the architecture plays an equally important role as the dynamics.If the geometry changes, a calibration of the model must be applied in order to re-estimate the position of the junctions in the 2D lattice.In Fig. 5 the cells that are white follow the rule 1, while the ones in black color obey in rule 2.

Experimental results
These very simple rules have the ability to model effectively the behaviour of the light sensitive Oregonator approach of BZ system in order to form a one-bit full adder.The truth table of this full adder is demonstrated in Table 1.The model presented here must verify the truth table.For the implementation of the CA model MATLAB environment was used.The simulation results are presented at the following Figs.6 -10.We do not include all the eight possible states because some of them are obvious or some of them are the same.
The input sequence 000 is not mentioned because if none of the inputs is not perturbed there will be no travelling wave in the modeled circuit.In Fig. 6 the result of the simulation is shown when inputs are C = 0, In1 = 0 and In2 = 1.The travelling wave is propagated into the channels passing through junctions J1 and J3.Finally, it ends to Out1.
The same results are presented in the simulation of Fig. 7.The input sequence is 010 and while the propagating wave travels through junctions J1, J2 and J3 it reaches the Out1.The simulation with input sequence 100 is skipped because it has the same result.
The next two simulations present the behavior of our model when two inputs are perturbed.In Fig. 8 the input sequence is 011 and in Fig. 9 the input sequence is 110.As it is expected, both simulations lead the propagating wave to Out2.Simulation with input sequence 101 is also skipped because it presents the same result.Finally, the simulation with three perturbed inputs ( 111) is examined at Fig. 10.It is obvious

C In1 In2 Out1
that the travelling wave passes through all junctions (J1 − J4) and energises both the Out1 and Out2.

Conclusions
We proposed a simple and low-cost cellular automaton (CA) model of a light sensitive Oregonator model of Belousov-Zhabotinsky (BZ) system.The inherent powerful characteristics of CA are combined with the remarkable properties of BZ reaction in order to create a digital component and more specific, an one-bit full adder.The model is based on a 2-dimensional lattice with inhomogeneities, meaning that two different rules are used depending on the location of the cell.To be more precise, a simple rule is used inside the channels of the circuit and another rule if followed at the cells inside the junctions.This strategy is used because the in vitro experiments make use of illumination at junctions in order to lead the BZ wave at the desired path.The simulations verify the truth table of the full adder, meaning that this topology can be expanded in order to create an adder that can calculate numbers of more bits.Furthermore, the lack of complexity empowers the ability of the model to achieve high computational performance, and low energy consumption.The inherent parallelism of the CA model can be exploited by parallel computing devices such as Field Programmable Gate Arrays (FPGAs) or GPUs in order to accelerate the simulations times even more.In this implementation the fusion gate is used as a basic element, which represents the digital XOR and AND gates [Adamatzky, 2015].It must be examined if a different fusion gate could be created by using gaps between the channels that lead accordingly the BZ wave in order to produce more logical gates such as OR and NOT [Sun & Zhao, 2013].This could lead to the design of a digital systems including many computational procedures such as an Arithmetic Logic Unit (ALU).Our approach may be proved efficient where discretised excitable media are concerned.Namely, our techniques could be adopted in implementation of computing circuits in BZ medium encapsulated in arrays of micro-droplets [Wang et al., 2016;Henson et al., 2015], nano-scale realisations of reaction-diffusion computers [Epstein & Xu, 2016], and wave-fronts of electrical potential travelling in bioengineered living tissue [McNamara et al., 2016].