Published as a chapter in "Towards Evolvable Hardware: The evolutionary engineering approach," pages 136-165, edited by E. Sanchez and M. Tomassini, Springer-Verlag LNCS 1062, 1996.
Unconstrained Evolution and Hard Consequences
CSRP 397
Adrian Thompson, Inman Harvey and
Philip Husbands
School of Cognitive and Computing Sciences,
University of Sussex,
Brighton BN1 9QH, UK.
E-mail: adrianth, inmanh, philh @sussex.ac.uk
Artificial evolution as a design methodology for hardware frees many of the simplifying constraints normally imposed to make design by humans tractable. However, this freedom comes at some cost, and a whole fresh set of issues must be considered. Standard genetic algorithms are not generally appropriate for hardware evolution when the number of components need not be predetermined. The use of simulations is problematic, and robustness in the presence of noise or hardware faults is important. We present theoretical arguments, and illustrate with a physical piece of hardware evolved in the real-world (`intrinsically evolved' hardware). A simple asynchronous digital circuit controls a real robot, using a minimal sensorimotor control system of 32 bits of RAM and a few flip-flops to co-ordinate sonar pulses and motor pulses with no further processing. This circuit is tolerant to single-stuck-at faults in the RAM. The methodology is applicable to many types of hardware, including Field-Programmable Gate Arrays (FPGA's).