Discovering Boolean Gates in Slime Mould

07/07/2016 ∙ by Simon Harding, et al. ∙ IDSIA UWE Bristol 0

Slime mould of Physarum polycephalum is a large cell exhibiting rich spatial non-linear electrical characteristics. We exploit the electrical properties of the slime mould to implement logic gates using a flexible hardware platform designed for investigating the electrical properties of a substrate (MECOBO). We apply arbitrary electrical signals to `configure' the slime mould, i.e. change shape of its body and, measure the slime mould's electrical response. We show that it is possible to find configurations that allow the Physarum to act as any 2-input Boolean gate. The occurrence frequency of the gates discovered in the slime was analysed and compared to complexity hierarchies of logical gates obtained in other unconventional materials. The search for gates was performed by both sweeping across configurations in the real material as well as training a neural network-based model and searching the gates therein using gradient descent.

READ FULL TEXT VIEW PDF
POST COMMENT

Comments

There are no comments yet.

Authors

page 5

page 12

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

Introduction

Slime mould Physarum polycephalum is a large single cell stephenson1994myxomycetes capable for distributed sensing, concurrent information processing, parallel computation and decentralized actuation adamatzky2010physarum ; adamatzkyAdvancesPhysarum . The ease of culturing and experimenting with Physarum makes this slime mould an ideal substrate for real-world implementations of unconventional sensing and computing devices adamatzky2010physarum . A range of hybrid electronic devices were implemented as experimental working prototypes. They include Physarum self-routing and self-repairing wires adamatzky2013physarumwire , electronic oscillators adamatzky2014slimeoscillator , chemical sensor whiting2014towards , tactical sensor adamatzky2013slime , low pass filter whiting2015transfer , colour sensor adamatzky2013towards , memristor gale2013slime ; tarabella2015hybrid , robot controllers tsuda2006robot ; galeAndroid , opto-electronics logical gates mayne2015slimegates , electrical oscillation frequency logical gates whiting2014slimefrequency , FPGA co-processor mayne2015towardsFPGA , Shottky diode cifarelli2014non , transistor tarabella2015hybrid . There prototypes show that Physarum is amongst most prospective candidates for future hybrid devices, where living substrates physically share space, interface with and co-function with conventional silicon circuits.

So far there are four types of Boolean gates implemented in Physarum. Two of the prototypes employ propagation of Physarum: logical False is an absence of tube in a particular point of substrate and logical True is a presence of the tube tsuda2004robust ; adamatzky2010slime . One of the ‘morphological’ gates employs chemotactic behaviour of Physarum tsuda2004robust , another prototype is based on inertial propagation of the slime mould adamatzky2010slime . Third prototype of Physarum logical gates is a hybrid device, where growing Physarum acts as a conductor and the Physarum’s behaviour is controlled by light mayne2015slime . Fourth prototype interprets frequencies of Physarum’s electrical potential oscillations as Boolean values and input data as chemical stimuli whiting2014slime . These logical circuits are slow and unreliable, and are difficult to reconfigure. Thus we aimed to develop an experimental setup to obtain fast, repeatable and reusable slime mould circuits using the ‘computing in materio’ paradigm.

The Mecobo platform has been designed and built within an EU-funded research project called NASCENCE BroersmaNAS2012 . The purpose of the hardware and software is to facilitate ‘evolution in materio’ (EIM) — a process by which the physical properties of a material are exploited to solve computational problems without requiring a detailed understanding of such properties Miller:2014 .

EIM was inspired by the work of Adrian Thompson who investigated whether it was possible for unconstrained evolution to evolve working electronic circuits using a silicon chip called a Field Programmable Gate Array (FPGA). He evolved a digital circuit that could discriminate between 1 kHz or 10 kHz signal adrian_thompson:book:hardware_evolution . When the evolved circuit was analysed, Thompson discovered that artificial evolution had exploited physical properties of the chip. Despite considerable analysis and investigation Thompson and Layzell were unable to pinpoint what exactly was going on in the evolved circuits thom:99 . Harding and Miller attempted to replicate these findings using a liquid crystal display harding04b . They found that computer-controlled evolution could utilize the physical properties of liquid crystal — by applying configuration signals, and measuring the response from the material — to help solving a number of computational problems harding:ijuc:2007 .

In the work by Harding and Miller, a flexible hardware platform known as an ‘Evolvable Motherboard’ was developed. The NASCENCE project has developed a new version of this hardware based on low-cost FPGAs that more flexible than the original platform used with liquid crystal.

In this paper, we describe the Mecobo platform (The Mecobo Platform) and how it is interfaced to Physarum (Interfacing Physarum to Mecobo) to perform an exhaustive search over a sub-set of possible configurations. In Exhaustive search for Boolean gates the results from this search are then searched to confirm whether Physarum is capable of acting as Boolean gates. We find that all possible 2-input gates can be configured this way. Mould Modelling using Neural Networks further explores the complexity of the computation by modelling the material using a neural network model.

The Mecobo Platform

Mecobo is designed to interface a host computer to a candidate computational substrate, in this instance the Physarum. The hardware can act as a signal generator, and route these signals to arbitrary ‘pins’ — which are typically electrodes connected to the candidate material. The hardware can also record the electrical response from the substrate. Again, this recording (or recordings) can be linked to any ‘pin’. Both applied signals (used for configuration) and measurements can be analog or digital.

The core of the hardware is a microprocessor and an FPGA that run a ‘scheduler’, illustrated in Figure 2. A series of actions, such as “output 1Hz square wave on pin 5, measure on pin 3” are placed into a queue, and the queue executed. Complex series of actions can be scheduled onto the Mecobo. The Mecobo connects, via USB, to a host PC. The host PC runs software implementing the server side of the Mecobo Application Programming Interface (API). The API work flow mirrors the hardware’s scheduler, and allows for applications to interface to the hardware without understanding all of the underlying technical details. Implemented using THRIFT, the API is also language and operating system agnostic, with the additional benefit that it can executed remotely over a network. The API software also includes functionality for data processing and logging of collected data for later analysis.

Figure 1 shows a simplified architectural overview of the Mecobo hardware and software. A full description, of both hardware and software can be found in oddrune2014

. The hardware, firmware and software for the Mecobo are open source and can be accessed at the project website:

http://www.nascence.eu/.

Figure 1: Overview of the Mecobo hardware software architecture.
Figure 2: Overview of the low-level Mecobo hardware architecture.

Interfacing Physarum to Mecobo

Figure 3: Time-lapse of Physarum growing on agar with electrodes. Images are approximately 6 hours apart.

A crude containing dish with electrodes was constructed from matrix board and gold-plated header pins, as shown in Figure 4(a). Onto these pins, we pushed down a section of agar (with or without Physarum) so that the pins punctured the agar, and were visible above the surface. This allowed the Physarum to come into direct contact with the electrodes. For experiments where the substrate was intended to be only Physarum, a small amount of molten agar was painted over the contacts and some of the matrix board. This minimized the amount of agar, in order to reduce its influence. Small amounts of damp paper towel were placed around the container to maintain humidity.

A video available at https://www.youtube.com/watch?v=rymwltzyK88 shows the Physarum growing and moving around the electrodes.

Figure 4: (a) Electrodes with agar and Physarum. The white spots are oat flakes, which are used to feed the Physarum. (b) Agar dish connected to Mecobo.

As shown in Figure 4(b) the electrodes were then connected to the digital outputs of the Mecobo. Each electrode was connected to the Mecobo interface using a 4.7 k resistor to limit the amount of applied current. The digital outputs of the Mecobo provide either v (low) or v (high).

1 Data collection

The possible configuration space for the Mecobo platform is vast, and it would be infeasible to attempt to apply all possible configurations to the Physarum. In the Nascence project, evolutionary algorithms are used as a practical method to search through the configuration space and find configurations that perform a particular task. Just as with the initial experiments in the Nascence project

oddrune2014 , we start with an exhaustive search over a small configuration space.

The exhaustive search procedure consisted of applying all possible binary combinations of various frequency pairs to 9 pins (which is a practical amount for time purposes). One pin was used as an output from the material, with the other 8 pins acting as inputs.

For each binary combination, each pair of frequencies was tried with one frequency representing a ‘low’ and the other representing a ‘high’ input. The frequency pairs were combinations of square waves of either  Hz,  Hz,  kHz, or  kHz.

The order of applied configurations was shuffled to help prevent similar configurations being applied sequentially.

The Mecobo measured the digital response from the Physarum and/or agar for 32ms. The digital threshold is v for high, with voltages below this being classed as low. The sampling frequency was twice the highest input frequency applied.

In total, states are applied, in a process that takes approximately hours to complete. The majority of the time is spent configuring the Mecobo and transferring sampled data back to the host PC.

Exhaustive search for Boolean gates

1.1 Method

Boolean logic gates are the building block for many circuits, sensors and computational devices. Using an exhaustive search, we were able to data mine within the collected data to look for configurations that acted as Boolean gates.

The data was searched for all two-input Boolean functions. Two pins were selected as the inputs to the gates ( and ), and one pin was selected as the gate output. The output response of the material (i.e. true or false

) was determined from the output frequency of the material. A Fast Fourier Transform (FFT) was performed, and the frequency of the highest magnitude response was determined. The output was

true if this frequency was nearer to the true input frequency, and false if nearer in value to the false input frequency. The remaining pins were then treated as configuration pins for the Physarum/agar. Each possible combination of configuration, input pair and output were then compared to see what logical operation it performed.

If for a given configuration (using the same frequency pairs), the output for all combinations of inputs and matched the expected behaviour of a gate, then it was judged that the Physarum and/or agar could implement that gate. As the configurations are temporally spaced, and each configuration applied multiple times (as and could be swapped over), a discovered gate would likely be ‘stable’ over the time taken to run the experiment. As the Physarum grows and moves, or as the agar dehydrates and shrinks, the physical substrate will vary. Therefore, we would not expect the system to be stable over long periods of time. Repeated measurements that are temporally spaced also reduces the possibility of measurement noise strongly influencing the results.

1.2 Results

Cfg. Inputs Agar Physarum Physarum Gate
FF FT TF TT & Agar
1 F F F F 76 104 121 144 15864 Constant False
2 T F F F 86 8 NOR
3 F T F F 201 13 NOT AND
4 T T F F 60 2 NOT
5 F F T F 201 13 AND NOT
6 T F T F 60 2 NOT
7 F T T F 66 4 XOR
8 T T T F 112 10 NAND
9 F F F T 43 546 13 268 564 AND
10 T F F T 52 0 XNOR
11 F T F T 15 249 18 259 3 707
12 T T F T 260 9 NOT AND NOT OR
13 F F T T 15 249 18 259 3 707
14 T F T T 260 9 OR NOT
15 F T T T 43 564 13 128 536 OR
16 T T T T 74 996 113 266 13 448 Constant True
Table 1: Number of gates mined from the frequency responses of the Physarum. The Agar column contains a number of such configurations (input pins having values true, T, or false, F) found in the bare agar substrate and the Physarum column contains number of the configuration found in the dish containing the Physarum. We can see that the Physarum actually performs the logic functions whereas the sole agar is not capable of that.

As detailed in Table 1, agar on its own was unable to produce the universal gates NAND or NOR. It was also unable to produce the non-linear gates XOR or NXOR. Substrates that involve Physarum can be seen to produce more types of gates. It is particularly interesting to note that far fewer AND or OR gates were found when using Physarum+Agar, compared to only agar.

Using Physarum, both with the agar and with minimal agar, the search was able to find many types of logic gates.

When the amount of agar was minimised, the fewest gates were found. This result was expected as the Physarum did not appear to connect between many of the electrodes, and therefore would only be able to participate in a smaller number of the configurations.

1.2.1 Detailed Analysis XOR

Considering only the XOR solutions that occur in the Physarum+Agar substrate, we can investigate the collected data in some detail. Table Table 2 shows the frequency of times that particular pins are used as inputs (the symmetry is a result of the fact that in this instance A and B can be swapped and still produce a valid gate).

Input Pin A
0 2 3 4 5 6 7 8

Input Pin B

0 24 24 16 40 24 8
2 24 16 8
3 24 8 16
4 16 16 24 8 16 8
5 40 8 8 24 8
6 24 14 8 8
7 16 16 8
8 8 8
Table 2: Number of XOR gates found for given Input pin configurations.

Table 2 shows that some electrode pins are used much more frequently than others as inputs, and that only two electrodes ever get used successfully as outputs. This strongly suggests that the physical structure of the Physarum is important, and that a uniform mass would not be effective.

The experiment ran for seconds ( minutes). During this time we observed the Physarum did move around on the agar. We generated a histogram that shows the number of times an applied configuration was used as part of XOR against time. The chart in Figure 5 indicates that most of the results were found earlier on in the experiment. In addition to the movement of the Physarum, this may be caused by the agar drying out and becoming less conductive. It therefore seems likely that there might be more possible gate configurations, but that the search was too slow to discover them before the characteristics of the Physarum+agar changed.

Figure 5: XOR density. The chart shows how many XOR functions were found in the Physarum material over the course of 120 minute long experiment. We can see that most of the gates was found in the beginning.

Mould Modelling using Neural Networks

This section uses neural network (NN; haykin:1998:NNC:521706 ) models, trained by gradient descent Linnainmaa:1970 ; dreyfus:1973 ; Werbos:74 to approximate the mapping from input voltages to the output voltage by training them on many randomly chosen examples measured during the exhaustive search. By solving that task a NN becomes a differentiable model of the—potentially complex—structures inside the material. Having the NN model, one can assess the complexity of the material based on trainability of the NN model.

A NN consist of a sequence of layers, where each layer computes an affine projection of its inputs followed by the application of a point-wise non-linear function :

Where are the parameters of the layer. By stacking these layers one can build non-linear functions of varying expressiveness that are differentiable. In theory they can approximate any function to arbitrary precision given enough hidden units.

1.2.2 Data Preprocessing

The random search collected data was preprocessed in order to form a supervised training set. The input frequencies were ordered and translated to integer numbers in range from to

forming an input vector

, where the input frequency was present. The value of

was used in the case of a grounded input pin or when the pin was used as the output pin. The target output vector had

entries as well () but only the one that corresponds to the output pin was used at a time.

A middle section of the output buffer (1/4 to 3/4 section of the signal length) was preprocessed and transformed to a desired output target in one following three ways in the three experiments:

  • Ratio: The proportion of ones in the signal.

  • Peak Frequency: The peak of the frequency spectrum normalised such that corresponds to a constant signal and corresponds to the sequence . The peak was obtained by computing the Fourier spectrum of the middle section of the signal, removing the DC component (first frequency component), computing the absolute values of the complex spectrum and using the first half (the spectrum is symmetric) to find the position of the maximum peak index.

  • Compressibility: Relative length of the output buffer compressed using LZW to the maximum length of the compressed buffer. High values point to irregular outputs.

The networks have been trained to predict the output vector given the inputs, where we only trained for the one active output while ignoring the other 8 predictions of the network. Note that this essentially corresponds to training 9 different neural networks with one output each, that share the weights of all but their last layer.

The network weights were trained using Stochastic Gradient Descend (SGD) with a minibatch-size of 100 to minimise the Mean Squared Error on the active output. We kept aside 10% of the data as a validation set. Training was stopped after 100 epochs (full cycles through the training data) or once the error on the validation set didn’t decrease for 5 consecutive epochs.

Neural networks have certain hyperparameters like the learning rate for SGD and the network-architecture that need to be set. To optimize these choices we performed a big random search of 1650 runs sampling the hyperparameters as follows:

  • learning rate log-uniform from to

  • number of hidden layers uniform from {1, 2, 3, 4, 5, 6, 7, 8}

  • number of hidden units in each layer from the set {50, 100, 200, 500}

  • The activation function of all hidden units from the set {tanh, ReLU

    111

    ReLU: Rectified Linear Unit

    , logistic sigmoid}

The best networks for the three tasks can be found in Table 3.

Task # Layers # Units Act. Fn. Learning Rate MSE
Ratio 8 200 ReLU 0.055
Frequency 5 200 ReLU 0.074
Compressibility 5 200 ReLU 0.100
Table 3: Best hyperparameter settings for each of the three tasks along with the resulting Mean Squared Error (MSE).
Figure 6: Loss, true output, and prediction for all validation samples on each of the three tasks. The examples are sorted by their associated training loss.

1.2.3 Modelling Results

On all three tasks the networks prediction error on the validation set decreased significantly during training. Figure 6 depicts the loss, the target and the prediction of the network for each example of the validation for all three tasks sorted by their loss. It can be seen that in all three cases the targets (true outputs) have a characteristic structure consisting of horizontal lines. This is due to the fact that certain target values are very likely. For each such value there are easy cases that the networks predict with high accuracy (the left side of the bar), and there seem to be difficult cases (right part of the bars) for which the predictions bifurcate (see prediction plots at the bottom of Figure 6). This essentially means that the output distribution has sharp peaks which get smoothed out a bit by the networks. Overall, the networks predictive performance is very good (apart from the high values in the frequencies task which all fall into the high-loss region). The worst performance is on the frequencies task, while the best performance is achieved on the first task (predicting the ratios).

1.2.4 Searching for Logic Gates in the NN Model

The best network for the first task (predicting the ratio) was searched for the following logic functions: AND, OR, NAND, NOR, XOR, and XNOR. We encode the values for True and False for the inputs as 4 and 1 respectively (corresponding to high and low input frequency). For the output values we define 0 as False and 0.5 as True, because these two values are easy to distinguish and are the most common output values.

First, a set of examples with different combinations of input values but which share the same (random) values for the configuration pins along with the desired output values.

Gradient descent is then used to minimise the MSE by adjusting the values for the configuration pins, but we keep their values the same for all examples. So formally, given our neural network model of the nano-material, we define an error over our input/output pairs :

The gradient is then calculated using backpropagation of the error:

where .

Unfortunately, at the end of this gradient descent process the configuration pin values won’t be in the allowed set {1, 2, 3, 4} anymore. To make them valid inputs we round and clip them. This will most likely increase the error but hopefully still remain in a region where the network computes the desired function. It is unlikely that this procedure will always work, so in addition to this local search we also perform a global search.

One problem with the method described above is that it only performs a local search, which means that the solution that it converges to, might correspond to a bad local minimum. Furthermore the discretization we need to perform at the end of the local search might lead to a configuration which doesn’t approximate the desired function very well.

To mitigate these problems we first sample random starting points (settings of the configuration leads) and perform just 10 iterations of our local search on them. Only the starting point that lead to the lowest error is then optimised further for 500 epochs to obtain the final solution. In this way we reduce the risk of getting stuck in a poor local minimum. There is another free parameter which we haven’t optimised yet, which is the assignments of input and output pins. We therefore repeat the above procedure for all 224 possible allocations of input and output pins. The found gates and their responses are summarised in Figure 7.

Figure 7: The functions found by our search procedure all with pins 1 and 2 for inputs and pin 4 as output. The results for AND and NOR are a good fit, while the search for OR and XOR clearly failed to produce usable functions.

2 Discussion

We do not know what is exact physical mechanism of the gate operations implemented by the slime mould. We can speculate that the following factors might contribute to the particular responses observed:

  • The slime mould is conductive. Every single protoplasmic tube can be considered as a wire adamatzky2013physarumwire .

  • The resistance of the slime mould wire depends on biochemical and physiological state of slime, thickness of tubes, and the Physarum’s reaction to environmental conditions. The resistance also oscillates, due to contractile activity and shuffling of cytoplasm in the protoplasmic tubes adamatzky2014slimeoscillator

  • Physarum exhibits memristive properties when tested in current-voltage cycles gale2013slime . Thus some pathways in Physarum could become non-conductive under AC stimulation.

  • Morphology of Physarum can be modified by application of AC tsuda2012routing . That is the slime mould can physically move between electrodes in response to stimulation by input electrical signals.

  • In certain conditions Physarum allows the conduction of AC frequencies with attenuation profile similar to a low pass filter whiting2015transfer ; whiting2015practical .

The frequency of gates’ discovery in Physarum varies substantially between the gates, with XOR and XNOR being the most rarely observable gates. Is it typical for all non-linear systems implementing gates or just Physarum? Let gates and are discovered with occurrence frequencies and , we say gate is easy to develop or evolve than gate : if . The hierarchies of gates obtained using evolutionary techniques in liquid crystals harding2005evolution , light-sensitive modification of Belousov-Zhabotinsky system toth2008dynamic are compared with Physarum generated gates and morphological complexity of configurations of one-dimensional cellular automata governed by the gates adamatzky2009complex :

  • Gates in liquid crystals harding2005evolution : {OR, NOR} AND NOT NAND XOR

  • Gates in Belousov-Zhabotinsy medium toth2008dynamic : AND NAND XOR

  • Gates in cellular automata adamatzky2009complex : OR NOR AND NAND XOR

  • Gates in Physarum: AND OR NAND NOR XOR XNOR

We see that in all systems quoted the gate XOR is the most difficult to find, develop or evolve. Why is it so? A search for an answer could be one of the topics for further studies.

The search of gate configurations in the differentiable material model renders to be an efficient method of finding the correct configurations, that generates robust solutions. It remains to be confirmed whether these configurations work at the real mold again and close the loop between the modelling and the real material.

Acknowledgements

The research leading to these results has received funding from the EC FP7 under grant agreements 317662 (NASCENCE project) and 316366 (PHYCHIP project).

The authors would like to acknowledge the assistance of Odd Rune Lykkebø for his technical assistance with Mecobo. Simon and Andy prepared the mould and performed the exhaustive search experiments on the hardware platform, Jan, Klaus and Jürgen contributed with the mould neural network modelling.

References

References

  • (1) S. L. Stephenson, H. Stempen, I. Hall, Myxomycetes: a handbook of slime molds, Timber Press Portland, Oregon, 1994.
  • (2) A. Adamatzky, Physarum machines: computers from slime mould, Vol. 74, World Scientific, 2010.
  • (3) A. Adamatzky (Ed.), Advances in Physarum machines: Sensing and computing with slime mould, Springer, 2016.
  • (4) A. Adamatzky, Physarum wires: Self-growing self-repairing smart wires made from slime mould, Biomedical Engineering Letters 3 (4) (2013) 232–241.
  • (5) A. Adamatzky, Slime mould electronic oscillators, Microelectronic Engineering 124 (2014) 58–65.
  • (6) J. G. Whiting, B. P. de Lacy Costello, A. Adamatzky, Towards slime mould chemical sensor: Mapping chemical inputs onto electrical potential dynamics of physarum polycephalum, Sensors and Actuators B: Chemical 191 (2014) 844–853.
  • (7) A. Adamatzky, Slime mould tactile sensor, Sensors and actuators B: chemical 188 (2013) 38–44.
  • (8) J. G. Whiting, B. P. de Lacy Costello, A. Adamatzky, Transfer function of protoplasmic tubes of physarum polycephalum, Biosystems 128 (2015) 48–51.
  • (9) A. Adamatzky, Towards slime mould colour sensor: Recognition of colours by physarum polycephalum, Organic electronics 14 (12) (2013) 3355–3361.
  • (10) E. Gale, A. Adamatzky, B. de Lacy Costello, Slime mould memristors, BioNanoScience 5 (1) (2013) 1–8.
  • (11) G. Tarabella, P. D’Angelo, A. Cifarelli, A. Dimonte, A. Romeo, T. Berzina, V. Erokhin, S. Iannotta, A hybrid living/organic electrochemical transistor based on the physarum polycephalum cell endowed with both sensing and memristive properties, Chemical Science 6 (5) (2015) 2859–2868.
  • (12) S. Tsuda, K.-P. Zauner, Y.-P. Gunji, Robot control: From silicon circuitry to cells, in: Biologically inspired approaches to advanced information technology, Springer, 2006, pp. 20–32.
  • (13) E. Gale, A. Adamatzky, Translating slime mould responses: A novel way to present data to the public, in: A. Adamatzky (Ed.), Advances in Physarum Machines, 2016.
  • (14) R. Mayne, A. Adamatzky, Slime mould foraging behaviour as optically coupled logical operations, International Journal of General Systems 44 (3) (2015) 305–313.
  • (15) J. G. Whiting, B. P. de Lacy Costello, A. Adamatzky, Slime mould logic gates based on frequency changes of electrical potential oscillation, Biosystems 124 (2014) 21–25.
  • (16) R. Mayne, M.-A. Tsompanas, G. C. Sirakoulis, A. Adamatzky, Towards a slime mould-fpga interface, Biomedical Engineering Letters 5 (1) (2015) 51–57.
  • (17) A. Cifarelli, A. Dimonte, T. Berzina, V. Erokhin, Non-linear bioelectronic element: Schottky effect and electrochemistry, International Journal of Unconventional Computing 10 (5-6) (2014) 375–379.
  • (18) S. Tsuda, M. Aono, Y.-P. Gunji, Robust and emergent physarum logical-computing, Biosystems 73 (1) (2004) 45–55.
  • (19) A. Adamatzky, Slime mould logical gates: exploring ballistic approach, arXiv preprint arXiv:1005.2301.
  • (20) R. Mayne, A. Adamatzky, Slime mould foraging behaviour as optically coupled logical operations, International Journal of General Systems 44 (3) (2015) 305–313.
  • (21) J. G. Whiting, B. P. de Lacy Costello, A. Adamatzky, Slime mould logic gates based on frequency changes of electrical potential oscillation, Biosystems 124 (2014) 21–25.
  • (22) H. Broersma, F. Gomez, J. F. Miller, M. Petty, G. Tufte, NASCENCE Project: Nanoscale Engineering for Novel Computation Using Evolution, International Journal of Unconventional Computing 8 (4) (2012) 313–317.
  • (23) J. F. Miller, S. L. Harding, G. Tufte, Evolution-in-materio: evolving computation in materials, Evolutionary Intelligence 7 (2014) 49–67.
  • (24) A. Thompson, Hardware Evolution - Automatic Design of Electronic Circuits in Reconfigurable Hardware by Artificial Evolution, Springer, 1998.
  • (25) A. Thompson, P. Layzell, Analysis of unconventional evolved electronics, Communications of the ACM 42 (4) (1999) 71–79.
  • (26)

    S. Harding, J. F. Miller, Evolution in materio: A tone discriminator in liquid crystal, in: In Proceedings of the Congress on Evolutionary Computation 2004 (CEC’2004), Vol. 2, 2004, pp. 1800–1807.

  • (27) S. L. Harding, J. F. Miller, Evolution in materio: Evolving logic gates in liquid crystal, International Journal of Unconventional Computing 3 (4) (2007) 243–257.
  • (28) O. R. Lykkebø, S. Harding, G. Tufte, J. F. Miller, Mecobo: A hardware and software platform for in materio evolution, in: O. H. Ibarra, L. Kari, S. Kopecki (Eds.), Unconventional Computation and Natural Computation, LNCS, Springer International Publishing, 2014, pp. 267–279.
  • (29) S. Haykin, Neural Networks: A Comprehensive Foundation, 2nd Edition, Prentice Hall PTR, Upper Saddle River, NJ, USA, 1998.
  • (30) S. Linnainmaa, The representation of the cumulative rounding error of an algorithm as a Taylor expansion of the local rounding errors, Master’s thesis, Univ. Helsinki (1970).
  • (31) S. E. Dreyfus, The computational solution of optimal control problems with time lag, IEEE Transactions on Automatic Control 18(4) (1973) 383–385.
  • (32) P. J. Werbos, Beyond regression: New tools for prediction and analysis in the behavioral sciences, Ph.D. thesis, Harvard University (1974).
  • (33) S. Tsuda, J. Jones, A. Adamatzky, J. Mills, Routing physarum with electrical flow/current, arXiv preprint arXiv:1204.1752.
  • (34) J. G. Whiting, R. Mayne, N. Moody, B. d. L. Costello, A. Adamatzky, Practical circuits with physarum wires, arXiv preprint arXiv:1511.07915.
  • (35) S. Harding, J. F. Miller, Evolution in materio: Evolving logic gates in liquid crystal, in: Proc. Eur. Conf. Artif. Life (ECAL 2005), Workshop on Unconventional Computing: From cellular automata to wetware, Beckington, UK, 2005, pp. 133–149.
  • (36) R. Toth, C. Stone, A. Adamatzky, B. de Lacy Costello, L. Bull, Dynamic control and information processing in the belousov–zhabotinsky reaction using a coevolutionary algorithm, The Journal of chemical physics 129 (18) (2008) 184708.
  • (37) A. Adamatzky, L. Bull, Are complex systems hard to evolve?, Complexity 14 (6) (2009) 15–20.