Dynamic control and information processing in the Belousov – Zhabotinsky reaction using a coevolutionary algorithm

We propose that the behavior of nonlinear media can be controlled dynamically through coevolutionary systems. In this study, a light-sensitive subexcitable Belousov-Zhabotinsky reaction is controlled using a heterogeneous cellular automaton. A checkerboard image comprising of varying light intensity cells is projected onto the surface of a catalyst-loaded gel resulting in rich spatiotemporal chemical wave behavior. The coevolved cellular automaton is shown to be able to either increase or decrease chemical activity through dynamic control of the light intensity within each cell in both simulated and real chemical systems. The approach is then extended to construct a number of simple logical functions.


INTRODUCTION
The theory of evolution was introduced by Charles Darwin, namely, that all living species evolve over the course of generations through a natural selection process. 1 The complex mixture of biochemical reactions that build up a living system is the result of evolution over billions of years. 2 These reactions are interacting with each other nonlinearly producing and maintaining a semiclosed system: An organism, which consists of cells. 3,4Living cells communicate with each other and with their environment by passing, receiving, and processing information and these processes are dynamically controlled.How the dynamical behavior of ͑bio͒chemical systems is controlled and how they process information is an important question.
There is also growing interest in research into the development of "nonlinear computers." 5The aim is to harness the as yet only partially understood intricate dynamics of nonlinear media to perform complex "computations" more effectively than with traditional architectures and to further the understanding of how such systems function.][8][9][10] In our previous work ͑see overview in Ref. 10͒, we demonstrated that nonlinear chemical systems are capable of implementing various kinds of computational procedures.Experimental prototypes of reaction-diffusion processors have been used to solve a wide range of specialized computational problems, including image processing, 11,12 path planning, 13,14 robot navigation, 15 computational geometry, 16 "chemical diode," 17 counting, 18 and implementing memory. 19,20In addition to these applications, logic gates were constructed in excitable chemical systems 9,[21][22][23][24] and in bistable systems. 257][28][29][30][31] Okamoto et al. 32 have considered certain enzymatic reactions as basic biochemical switching devices.
In this work, we produce networks of nonlinear mediareaction-diffusion systems-to achieve a user-defined computation in a way that allows direct control of the media.We use the spatially distributed light-sensitive Belousov-Zhabotinsky ͑BZ͒ reaction which supports traveling reaction-diffusion waves and patterns.Exploiting the photoinhibitory property of the reaction, the chemical activity ͑amount of excitation on the gel͒ can be controlled by the applied light intensity, namely, can be decreased by illuminating the gel with high light intensity and vice versa.In this way, a BZ network is created via light and controlled using cooperative coevolutionary computing to design heterogeneous automata networks.We adapt the system described by Wang et al. 33 and explore its computational potential based on the movement and control of wave fragments.In our experiments, a heterogeneous automata network controls the light intensity in the cells of a checkerboard image projected onto the surface of the light-sensitive catalyst-loaded gel.Initially a certain number of wave fragments are created on the gel and the automata network is shown to be able to either increase or decrease the number of wave fragments through dynamic control of the light intensity within each cell in both simulated and real chemical systems.Building upon these results, we increase the complexity of the task and we design a simple scheme to create a number of twoinput Boolean logic gates: AND, NAND, and XOR both in simulation and real chemical experiments.natural selection.EAs employ a population of individuals, each coding as a genome a possible solution to a target problem.By testing each of these individuals against the target problem, the fitness of that individual with respect to the problem is obtained.Promising individuals ͑i.e., those with high fitness͒ are then selected from the population and evolved by means of recombination and/or mutation.Recombination involves combining elements from promising individuals to create new, hopefully better, individuals.We expect that a high degree of spatial heterogeneity will typically be required in the present system, rendering the use of recombination somewhat superfluous.We therefore do not use recombination in the present work.Instead, mutation is the sole source of variation used in our EA and it occurs by changing randomly chosen genes to other random values with a fixed low probability, allowing alternative possible solutions to be explored.In this way, a new generation of offspring individuals is created from the original parent population, which replaces the previous population.This cycle is repeated for a specified number of generations or until an individual with the desired fitness is found.
EAs are being used increasingly in the design and analysis of complex systems ͑e.g., Ref. 35͒.Example applications include data mining, time series analysis, scheduling, process control, robotics, and electronic circuit design.EAs are also used in organic chemistry for laser pulse shape design to split complex molecules into simpler molecules 36 and in the pharmaceutical industry for product-based design of combinatorial libraries. 37Such techniques can be used for the design of computational resources in a way that offers substantial promise for application in nonlinear media computing since the algorithms are almost independent of the medium in which the computation occurs.This is important in order to achieve effective nonlinear media computing since an EA does not need to directly manipulate the material to facilitate learning and the task itself can be defined in an unsupervised manner.In contrast, most traditional learning algorithms use techniques that require detailed knowledge of and control over the computing substrate involved.Indeed, Harding and Miller 38 have recently described the use of an EA to design a computational system using liquid crystals and Tour et al. 39 constructed a number of logic gates from molecular switches using an EA.

HETEROGENEOUS AUTOMATA NETWORK
We use an automata network to control the chemical system.The network has a cellular-automaton topology, i.e., finite automata are arranged in a ͑2D͒ lattice with aperiodic boundary conditions ͑an edge cell has five neighbors, a corner cell has three neighbors, and all other cells have eight neighbors each͒.Use of an automata network with such a 2D topology is a natural choice given the spatiotemporal dynamics of the BZ reaction.Each automaton updates its state depending on its own state and the states of its neighbors.States are updated in parallel and in discrete time.In cellular automata ͑CA͒, all cells have the same state transition function ͑rule͒, whereas in this automata network each cell/ automaton can have its own state transition function.In this work, the transition function of every cell is evolved by an EA.Rules are initially random and change over the course of an experiment as the EA searches the space of possible solutions.
Such automata networks are sometimes called heterogeneous CA, but the notion is misleading and contradictory to the exact sense of CA.However, we will be using this terminology in our paper to keep consistency with previous works on evolving CA.
Sipper 40 has presented a nonuniform, or heterogeneous, approach to evolving CA.Each cell of a one-dimensional or 2D CA is also viewed as an EA population member, mating only with its lattice neighbors and receiving an individual fitness.However, the reliance upon each cell having access to its own fitness means it is not applicable in the majority of chemical computing scenarios we envisage.Instead, fitness is based on emergent global phenomena in our approach.Thus, following Kauffman, 41 we use a simple coevolutionary approach wherein each cell of a 2D CA controller is developed via a simple EA.Coevolution is a particular form of evolution whereby the fitness of an individual in a population undergoing evolution depends on the fitness of other members of that population.Due to the use of a single global fitness measure, cells do not evolve in isolation and fitness is influenced by the state of all cells in the grid.
For a given experiment, a random set of CA rules is created for a 2D array of size 10ϫ 10, i.e., 100 cells.The rule for each cell is represented as a gene in the EA's genome, which at any one time takes one of the discrete light intensity values used in the experiment.As previously mentioned, the grid edges are not connected ͑i.e., the grid is planar and does not form a toroid͒ and the neighborhood size of each cell is of radius 1; cells consider neighborhoods of varying size depending on their spatial position, varying from three in the corners, to five for the other edge cells, and eight everywhere else.In the model, each of the 100 cells consists of 400 ͑20ϫ 20͒ simulation points for the reaction.The reaction is thus simulated numerically by a lattice of size 200ϫ 200 points, which is divided into the 10ϫ 10 grid in the same way as for the chemical experiment.

CHEMICAL MODEL
Features of the chemical system are simulated using a two-variable Oregonator model modified to account for photochemistry: 42,43 The variables u and v represent the instantaneous local concentrations of the bromous acid autocatalyst and the oxidized form of the catalyst, HBrO 2 and tris ͑bipyridyl͒ Ru ͑III͒, respectively, scaled to dimensionless quantities.The rate of the photoinduced bromide production is designated by ⌽, which also denotes the excitability of the system.Low simulated light intensities facilitate excitation while high intensi-ties result in the production of bromide ions that inhibits the process, experimentally verified by Kádár et al. 42 The system was integrated using the Euler method with a five-node Laplacian operator, time step ⌬t = 0.001 and grid point spacing ⌬x = 0.62.The diffusion coefficient, D u , of species u was unity, while that of species v was set to zero as the catalyst is immobilized in the gel.The kinetic parameters were set to = 0.11, f = 1.1, and q = 0.0002.The medium is oscillatory in the dark which made it possible to initiate waves in a cell by setting its simulated light intensity to zero.At different ⌽ values, the medium is excitable, subexcitable, or nonexcitable.

CONTROL PROCESS
Waves were initiated by setting ⌽ to zero for a small area under and just outside the bottom center of the grid.These waves were channeled into the grid and broken up into 12 fragments by choosing an appropriate light pattern, as shown in Fig. 1͑a͒.The black area represents the excitable medium while the white area is nonexcitable.After initiation, three light levels were used: one is sufficiently high to inhibit the reaction, one is at the subexcitable threshold such that excitation just manages to propagate, and the other low enough to fully enable it.The modeled chemical system was run for 600 iterations of the simulator.This value was chosen to produce network dynamics similar to those obtained in experiment over 10 s of real time.
A color image was produced by mapping the level of oxidized catalyst at each simulation point into an RGB value.These color images were designed to mimic those obtained from a digital camera during experiments and thus allow direct comparison between simulation and experimental results.
Image processing of the color image was necessary to determine chemical activity.This was done by differencing successive images on a pixel by pixel basis to create a black and white thresholded image.Each pixel in the black and white image was set to white ͑corresponding to excitation͒ if the intensity of the red or blue channels in successive color images differed by more than 5 out of 256 pixels ͑1.95%͒.Pixels at locations not meeting this criterion were set to black.An outline of the grid was superimposed on the black and white images to aid visual analysis of the results.Though this may appear to be a somewhat circuitous methodology, for reasons of consistency, we wanted to use the same techniques for extraction and processing of results for both modeling and experiment.
The black and white images were then processed to produce a 100 bit description of the grid for the CA.In this description, each bit corresponds to a cell and it is set to true if the average level of activity within the given cell is greater than a predetermined threshold of 10%.Here, activity is computed for each cell as the fraction of white pixels in that cell.This binary description represents a high-level depiction of activity in the BZ network and is used as input to the CA. 1 cycle of the CA is performed whereby each cell of the CA considers its own state and that of its neighbors ͑obtained from the binary state description͒ to determine the light level to be used for that grid cell in the next time step.Each grid cell may be illuminated with one of three possible light levels.The CA returns a 100-digit ternary action string, each digit of which indicates whether high ͑⌽ = 0.093 023͒, subexcitable threshold ͑⌽ = 0.04͒, or low ͑⌽ = 0.000 876͒ intensity light should be projected onto the given cell.The progression of the ͑simulated͒ chemical system, image analysis of its state, and operation of the CA to determine the set of new light levels comprises one control cycle of the process.Figure 2 provides a simplified view of one control cycle and a typical light pattern generated by the CA controller is shown in Fig. 1͑b͒.
Another 600 iterations are then simulated with those light levels projected, etc., until 25 control cycles have passed.After 25 control cycles, the fitness of the emergent behavior is calculated.As previously mentioned, the EA used in this work employs a single global fitness measure.The nature of the tasks undertaken means that it is not possible to decompose solutions obtained by the EA and apportion fitness to their constituent parts.Instead, a global fitness is determined according to how well the task has been performed and this fitness is assigned to the genome for each CA cell.
After fitness has been assigned, some proportion of the CA genes are randomly chosen and mutated.Mutation is the variation operator used by the EA to modify a CA cell's transition rule to allow the exploration of alternative light levels for the grid state randomly selected.During mutation, the transition value for one of the possible states considered by a CA cell is changed to one of the other possible light intensities.For a CA cell with eight neighbors, there are 2 9 possible grid state to light level transitions, each of which is a potential mutation site.After mutation, a generation of the EA is complete and the simulation is reset and repeated as described.
The EA keeps track of which CA states are visited since mutation.On the next fitness evaluation ͑at the end of a further 25 control cycles͒, mutations in states that were not visited are discarded on the grounds that they have not contributed to the global fitness value and are thus untested.We also performed control experiments with a modified version of the EA to determine the performance of a random CA controller.This algorithm ignored the fitness of mutants and retained all mutations except those from unvisited states.

NUMERICAL RESULTS
We begin by considering two tasks.In the first task, the CA controller must decrease the amount of excitation on the grid.In the second task, the goal is to increase the overall amount of excitation, i.e., the CA controller must create new fragments.
Figure 3͑a͒ shows the fitness of our coevolutionary approach averaged over ten runs for the inhibition task wherein fitness is calculated as the number of cells in the grid that have an activity level less than the 10% threshold.Note that for this task fitness increases as grid activity decreases.As can be seen, the amount of excitation decreases during learning.Figure 4 shows the snapshots of the spatiotemporal behavior of a typical solution produced.
Figure 3͑b͒ shows the fitness of our coevolutionary approach averaged over ten runs for the excitation task wherein fitness is calculated as the number of cells in the grid that have an activity level greater than or equal to the 10% threshold.As can be seen, the amount of excitation increases during learning.Figure 4 shows the snapshots of the spatiotemporal behavior of a typical solution produced.If the task were to have been tackled by a person with prior knowledge of the BZ reaction, the number of fragments would be increased simply via the predominant projection of the lowest light level.However, it appears from observation that the number of fragments and thus the total excitation level is also increased via the application of appropriate high and low light intensity cells placed by the CA so as to maneuver and split existing fragments.However, the exact mechanism of this process is yet to be fully understood.

EXPERIMENTAL IMPLEMENTATION
Given the success of our approach using the simulated chemical reaction, we have attempted to implement the same two tasks using a real chemical system constructed using the following methodology.
Sodium bromate, sodium bromide, malonic acid, sulfuric acid, tris͑bipyridyl͒ ruthenium ͑II͒ chloride, and 27% sodium silicate solution stabilized in 4.9M sodium hydroxide were purchased from Aldrich ͑UK͒ and used as received unless stated otherwise.
To create the gels a stock solution of sodium silicate was prepared by mixing 222 ml of the purchased sodium silicate solution with 57 ml of 2M sulfuric acid and 187 ml of deionized water. 33Ru͑bpy͒ 3 SO 4 was recrystallized from the chloride salt with sulfuric acid. 44Gels were prepared by mixing 2.5 ml of the acidified silicate solution with 0.6 ml of 0.025M Ru͑bpy͒ 3 SO 4 and 0.65 ml of 1.0M sulfuric acid solution.Using capillary action, portions of this solution were quickly transferred into a custom-designed 25 cm long, 0.3 mm deep Perspex mould covered with microscope slides.The solutions were left for 3 h to permit complete gellation.After gellation the adherence to the Perspex mould is negligible leaving a thin gel layer on the glass slide.After 3 h, the slides were carefully removed from the mould and the gels on the slides were washed in de-ionized water at least five times to remove by-products.The gels were 26ϫ 26 mm 2 , with a wet thickness of approximately 300 m.The gels were stored under water and rinsed just before use.
The catalyst-free reaction mixture was freshly prepared in a 30 ml CSTR, which involved the in situ synthesis of stoichiometric bromomalonic acid from malonic acid and bromine generated from the partial reduction of sodium bromate.This CSTR in turn continuously fed a thermostated open reactor with fresh catalyst-free BZ solution in order to maintain a nonequilibrium state.The final compositions of the catalyst-free reaction solution in the reactor were 0.42M sodium bromate, 0.19M malonic acid, 0.64M sulfuric acid, and 0.11M bromide.The residence time was 30 min.
An InFocus model LP820 projector was used to illuminate the computer-controlled image.Images were captured using a Lumenera Infinity2 USB 2.0 scientific digital camera.The open reactor was surrounded by a water jacket thermostated at 22 °C.Peristaltic pumps were used to pump the reaction solution into the reactor and remove the effluent.A schematic representation of the experimental setup is shown in Fig. 5.The spatially distributed excitable field on the surface of the gel was achieved by the projection of a 10ϫ 10 cell checkerboard grid pattern generated using a computer.The checkerboard image comprised of cells with three possible intensity levels of 0.035, 1.6, and 3.5 mW cm −2 , representing excitable, the subexcitable threshold, and nonexcitable domains, respectively.
The checkerboard grid pattern was projected onto the catalyst-loaded gel through a 455 nm narrow bandpass interference filter, 100/ 100 mm focal length lens pair, and mirror assembly.The size of the projected grid was approximately 20 mm 2 .Every 10 seconds, the checkerboard pattern was replaced with a uniform gray level of 3.5 mW cm −2 for 10 ms during which time an image of the BZ fragments on the gel was captured.The purpose of removing the grid pattern dur-ing this period was to allow activity on the gel to be more visible to the camera and assist in subsequent image processing of chemical activity.
Captured images were cropped to the grid location and processed to identify activity in the same manner as for the model ͑see above͒.

EXPERIMENTAL RESULTS
Figure 6 shows the examples of the spatiotemporal dynamics exhibited by the real chemical system.In both cases, the behavior observed was qualitatively similar to that observed during numerical simulation.Moreover, our coevolutionary approach is able to control the chemical system to achieve the desired goal to a similar degree of accuracy, i.e., fitness, as was seen in the simulations, as shown in Figs.7͑a͒ and 7͑b͒ ͓compare with Figs.3͑a͒ and 3͑b͒ over the same period͔.We were able to run a maximum of 40 generations ͑which required about 6 h͒ in real chemical experiments because after that time the excitability of the system changed due to the "desensitization" effect of high intensity light. 45s before, if the excitation task were to have been tackled by a person with prior knowledge of the BZ reaction, the number of fragments would be increased simply via the predominant projection of the lowest light level.However, it again appears from experimental observation that the number of fragments and thus the total excitation level is increased also via the projection of appropriate high and low light intensity cells placed by the CA so as to maneuver and split existing fragments.

SIMPLE LOGIC GATES
To begin examining the potential for the coevolution of such structures in the continuous, nonlinear 2D media described, we have designed a simple scheme to simulate a number of two-input Boolean logic gates.As before, excitation is fed in at the bottom of the grid into the same branching pattern.To encode logicals "1" and "0" either both branches or just one branch of the two "trees" shown in Fig. 1͑a͒ are allowed to fill with excitation, i.e., the grid is divided into two for the inputs ͑Fig.8͒.The number of active cells in the grid, that is, those with activity at or above the 10% threshold, is used to distinguish between logicals 0 and 1 as the output of the system.That is, since the above results indicate that it is possible to either increase or decrease excitation through the coevolution of CA cell rules, we aim to build upon this by increasing the complexity of the task.For example, in the case of XOR, the controller must learn to keep the number of active cells below the specified level for the 00 and 11 cases but increase the number for the 01 and 10 cases.

NUMERICAL RESULTS
Figure 8 shows the typical examples of each of the three logic gates learned using the simulated chemical system.Here all parameters were as before except that the mutation rate was set either at 4000 or 6000.The required number of active cells was set at 20.That is, 20 or more grid locations must exhibit sufficient excitation to be above the 10% activity threshold for the output of the system to be considered as a logical 1, otherwise an output of logical 0 is assumed.Each of the four possible input combinations is presented in turn, 00-11, and for each input presentation the system is allowed to develop for 25 control cycles in a similar way to the inhibition and excitation tasks.Fitness of the logic gate is evaluated after the complete sequence of four-input presentations.Each correct output scores 1, resulting in a maximum possible fitness of 4 for a correctly functioning gate.Figures 9͑a͒ and 9͑b͒ show the fitness averaged over ten runs for AND and NAND tasks with a mutation rate of 4000, and similar results for XOR are shown in Fig. 9͑c͒ for mutation rate 6000.FIG. 8. Typical examples of solutions of AND, NAND, and XOR logic gates in simulation, required active cells: 20, N: actual number of active cells.Input states I 1 , I 2 for the logic gates are shown on the left and consist of two binary digits, spatially encoded using left and right "initiation trees" ͓Fig.1͑a͔͒.Input values of 0 are encoded using a single branch of the relevant tree resulting in three fragments, while binary 1 is encoded using both branches of the tree resulting in six fragments.The EA found a solution in 56 ͑AND͒, 364 ͑NAND͒, and 1656 ͑XOR͒ input presentations.FIG. 9.The average fitness over time for ten runs for the ͑a͒ AND gate, ͑b͒ NAND gate, and ͑c͒ XOR gate on the simulated chemical system.AND, NAND with mutation rate of 4000, and XOR with 6000 ͑solid lines͒.Dashed lines: random controller ͑ten runs͒.
Favorable comparisons to an equivalent random controller are also shown in each case, as before.
Table I shows a more detailed comparison, namely, the results of ten runs for each gate with two different mutation rates ͑4000 and 6000͒.All these experiments were also run with random CA controllers.Due to the high computational requirements needed to perform the simulations, a limited number of input presentations were allowed for each experiment and an experiment was considered successful if the controller found a solution within 2000 input presentations.The success rate shows the number of successful runs out of 10.The AND task was so simple that a solution was easily found even with a random controller for both mutation rates.This task was simple because the first three inputs provided activity levels similar to the correct outputs, and only the activity levels provided by the 11 input needed to be changed to generate appropriate output activity, namely, the controller had to increase excitation to get higher than the required number of active cells ͑that is, those with an activity level greater than or equal to 10%͒.In contrast, the NAND gate was the most difficult task, because the controller had to achieve the opposite activity levels to those provided by the input states.For 00, 01, and 10 inputs the initial number of fragments were less than the required value so the controller had to increase the excitation to get the correct logical 1 output ͑N ജ 20͒, while for the 11 input the controller had to decrease the excitation to achieve the logical 0 output ͑N Ͻ 20͒.This is seen in the success rates shown in Table I.For this task, the use of a coevolutionary CA controller and an increased mutation rate resulted in a higher success rate and lower average number of input presentations required to find a solution for the NAND gate compared to a random controller and/or lower mutation rate.The XOR task was also hard because the activity levels provided by three of the initial inputs ͑00, 01, and 10͒ were the opposite of the desired output activity levels and only the 11 input provided an appropriate direct basis for correct output activity.
We have to mention here that, in the cases where the success rate was less than 10, the averages in Table I, are the lowest possible averages, since 2000 was taken as the number of input presentations required, even though no solution was found in these cases.For this reason, we can only use these data as an indication of the difficulty of the task.Comparing these results with results of the same tasks but with a random controller, we can conclude that the success rates for the coevolutionary CA controller were usually greater than or equal to the success rates of the runs with a random controller.These results indicate the ability of the coevolutionary approach for universal computation since all functions can be constructed by NAND gates.

EXPERIMENTAL RESULTS
Figures 10 and 11 show how similar performance is possible on the real chemical system for each of the three logic functions.In order to produce working XOR and NAND gates from these experiments, it was necessary to use a value of 15 for the required number of active cells due to the relative difficulty of these tasks.All other parameters were the same as those used for numerical simulation.
Because of the limited lifetime of the medium, experiments were once again limited to 40 input presentations.Initial runs with the CA controller produced no correctly functioning logic gates within this time frame ͑dashed lines on Fig. 11͒.This is not surprising considering that the average number of input presentations needed to find a solution in numerical simulation was considerably higher than 40 because of the difficulty of the task.We therefore carried out experiments where the genomes of the CAs were seeded with ones evolved during successful simulation runs.CAs seeded in this way ͑solid lines in Fig. 11͒ found solutions very quickly-16 or 20 input presentations-compared to numerical simulation.This speedup indicates the similarity of solutions obtained from numerical simulations compared to those needed for the chemical system.With a seeded solution, a few generations of evolution are still needed to adapt to the differences between the two systems, but this is one or two orders of magnitude lower than evolving a solution from a random genome.These results show that the EA is capable of adapting to small changes in its environment and finding a solution very quickly when presented with domain-specific knowledge obtained from modeling.

DISCUSSION AND CONCLUSIONS
Excitable and oscillating chemical systems have previously been used to solve a number of simple computational tasks.However, the experimental design of such systems has typically been nontrivial.In this paper, we have presented initial results from a methodology by which to achieve the complex task of designing such systems-through the use of coevolution.We have shown using both simulated and real systems that it is possible in this way to control dynamically the behavior of a light-sensitive BZ reaction, showing fundamental control by increasing or decreasing the amount of excitation and the implementation of a number of logic gates.We also demonstrated that the real chemical experiments can be seeded with learnt solutions evolved during modeling.
Our results may seem to be very complicated solutions to simple problems, especially in the case of changing the activity on the surface of the gel.A researcher with prior knowledge of the BZ reaction may suggest that we could have increased the activity simply by increasing the number of low light intensity cells or vice versa.Instead, considerable time was spent by the EA to solve the problem by po-sitioning appropriate high and low light intensity cells so as to maneuver and split existing fragments.In addition, we do not fully understand how the EA has reached the various solutions to the set problems.This lack of transparency may be confusing and prevent researchers from designing systems that exploit such complex systems.However, we need to consider that natural and artificial evolutionary processes are "blind watchmakers" 46 -they have no comprehension of the problem they solve.While human researchers use their prior knowledge to make their decisions with a specific eye toward improvement and only implement the solutions that they consider good and/or useful, evolutionary processes have no preconceptions and choose solutions from all possible ones.They do not rule out steps because of prior knowledge and preconceptions, so they may find novel solutions that a human designer would never consider.Thus, there is the possibility that the use of this type of EA in chemistry may aid the discovery of novel phenomena that would in turn help in the understanding of underlying dynamical control and information processing in natural systems and therefore ultimately help the design of novel information processing technologies based around natural systems.FIG. 10.Typical examples of solutions of AND, NAND, and XOR logic gates in chemical experiment, required number of active cells: 15 ͑20 for AND͒, N: actual number of active cells.Input states I 1 , I 2 for the logic gates are shown on the left and consist of two binary digits, spatially encoded using left and right initiation trees ͓Fig.3͑a͔͒.Input values of 0 are encoded using a single branch of the relevant tree resulting in three or four fragments, while binary 1 is encoded using both branches of the tree resulting in six or seven fragments.The EA-seeded with a CA evolved during the simulated runs-found a solution in 16 input presentations in each case.FIG. 11.Showing the typical fitness over time for ͑a͒ the AND gate ͑mutation rate 4000͒, ͑b͒ NAND gate ͑mutation rate of 4000͒, and ͑c͒ XOR gate ͑mutation rate of 6000͒ on the real chemical system.Dashed line: random initial controllers ͑three runs each͒.
][8][9][10] We demonstrated both in computational 7,8 and experimental studies 9 using a subexcitable BZ system that under carefully controlled conditions compact wave fragments develop in the medium.These fragments then travel for reasonably long distances when undisturbed and their collisions can be interpreted as the implementation of logical operations.
To present the true and false values of Boolean variables in the BZ medium, we used a threshold function, namely, if the amount of excitation exceeds a certain amount then the system represents logical truth, otherwise falsity.This was done purely for simplicity in these initial experiments.In principle, the experimental approach can be extended to n-valued logical systems by employing classical conventions: x ∧ y = min͑x , y͒ and x ∨ y = max͑x , y͒.These operations, originally invented in n-valued postlogic, have been adopted in a variety of logical systems, including fuzzy and continuous-valued logics.The choice of negation operator in such chemical n-valued logical circuits may depend on many factors; however, we do not foresee any problems in implementing cyclical negation.Some preliminary results on implementing a wide range of logics in geometrically constrained BZ systems have been already obtained. 24e are also planning to explore the use of EAs to design collision-based architectureless computers, where instead of the dynamically changing checkerboard image only one light level-the subexcitable light level-will be used.The use of larger gels, populations to evolve cell rules, and alternative evolutionary approaches to chemical computing are also being considered.

FIG. 3 .
FIG. 3. The typical fitness over time for both the ͑a͒ inhibition and ͑b͒ excitation tasks with the model.Solid lines, mutation rate 1000; dashed lines, random controller.

TABLE I .
The success rate of ten runs and the minimum, maximum, and average number of input presentations required to find a solution for each gate.An experiment was deemed successful if it found a solution within 2000 input presentations.