A Hardware Artificial Immune System and Embryonic Array for Fault Tolerant Systems

R.O. Canham, A.M. Tyrrell

Research output: Contribution to journalArticlepeer-review


Nature demonstrates amazing levels of fault tolerance; animals can survive injury, damage, wear and tear, and are under continual attack from infectious pathogens. This paper details inspiration from biology to provide fault tolerant electronic circuits. An artificial immune system (AIS) is used to detect faults and an embryonic array to quickly reconfigure around them. The AIS makes use of a negative selection algorithm to detect abnormal behaviour. The embryonic array takes its inspiration from the development of multi-cellular organisms; each cell contains all the information necessary to describe the complete individual. Should an electronic cell fail, its neighbours have the configuration data to take over the failed cell's functionality. Two demonstration robot control systems have been implemented to provide a Khepera robot with fault tolerance. The first is very simple and is implemented on an embryonic array within a Virtex FPGA. An AIS is also implemented within the array which learns normal behaviour. Injected stuck-at faults were detected and accommodated. The second system uses fuzzy rules (implemented in software) to provide a more graceful functionality. A small AIS has been implemented to provide fault detection; it detected all faults that produced an error greater than 15% (or 23% off straight).
Original languageEnglish
Pages (from-to)359-382
Number of pages23
JournalJournal of Genetic Programming and Evolvable Machine
Issue number4
Publication statusPublished - Dec 2003

Cite this