Presentation is loading. Please wait.

Presentation is loading. Please wait.

Matthew Ziegler CS 851 – Bio-Inspired Computing Evolvable Hardware and the Embryonics Approach.

Similar presentations


Presentation on theme: "Matthew Ziegler CS 851 – Bio-Inspired Computing Evolvable Hardware and the Embryonics Approach."— Presentation transcript:

1 Matthew Ziegler CS 851 – Bio-Inspired Computing Evolvable Hardware and the Embryonics Approach

2 2 Overview POE Model –The three axes of evolvable hardware Embryonics –Overview and hierarchy –Implementation approaches –Example applications Evaluation and Conclusion

3 3 POE Model Bio-inspired hardware can be partitioned along three axes –Phylogeny: temporal evolution (GAs) –Ontogeny: cellular division –Epigenesis: learning (ANNs)

4 4 Phylogenetic Axis (Evolving) All genetic operations carried out in hardware –Open-ended evolution (survivability) All genetic operations carried out in hardware –Not open-ended evolution Real Circuit –Some operations carried out in software Evolutionary circuit design –All operations carried out in software Phylogeny online offline

5 5 Ontogenetic Axis (Growing) Ontogeny involves growth, replication, regeneration Replication – exact duplicate, no genetic operators (ontogenetic) Reproduction – genetic operators involved (phylogenetic)

6 6 Epigenetic Axis (Learning) Rote learning vs. Intelligent learning –Intelligent learning involves generalization Predesigned systems can be viewed as a leaned systems with instinct –Learned systems are faster and less resource demanding Artificial Neural Networks are primary example Learning Systems Human brain consists of both learned and learning systems

7 7 POE Space PO plane – evolving hardware that exhibits replication characteristics PE plane – evolving hardware that can learn –Instincts arise during the course of evolution (Baldwin effect) –Language – humans have innate ability to learn language, but do not know language at birth OE plane – growing, learning hardware –Growing, adaptive neural networks based on information learned POE space – ANN (E), implemented via self-replicating multicellular automaton (O), whose genome is subject to evolution (P)

8 8 Embryonics Project Goals Multicellular organisms share the following features: 1.Multicellular Organization Organism divided into a finite number of cells Different types of cells realize different functions 2.Cellular Division Cells generate one or two daughter cells Entire genome copied in each daughter cell 3.Cellular Differentiation Each cell has a particular function, genome expression Cell function is determine by physical position in organism

9 9 Embryonics Hierarchy Population –group of organisms Organism –group of cells Cell –small processor and memory Molecule –FPGA element

10 10 Artificial Genome Operative Genome (OG) –program containing all genes, position in array determines which gene is expressed –each cell contains entire OG, i.e., instruction for all cells Ribosome Genome (RG) –configuration string to assign logic functions to each molecule Polymerase Genome (PG) –height and width of the cell (number of molecules), number of spare columns

11 11 Molecule MUX based FPGA element MOLCODE defines individual molecule configuration, portion of Ribosome Genome Molecule-level redundancy and error detection –Only checks MUX failure, what about registers? –Could add third MUX and voter for triple-modular redundancy (TMR) MOLCODE + (stored in registers)

12 12 Cell Cells composed of a group of molecules Spare columns included to account for faulty molecules Ribosome Genome –configuration string to assign logic functions to each molecule Polymerase Genome –height and width of the cell (number of molecules), number of spare columns

13 13 Cellular Fault Tolerance Faulty molecules replaced be spares Polymerase Genome determines the number of spare columns Example –Can tolerant one faulty molecule per column –Two faulty molecules results in a KILL No faults1 fault / col 2 faults / column

14 14 Cellular Replication Cell contains entire Operative Genome, but only one gene is expressed X-Y coordinates determine gene expression

15 15 Organism Group of cells forms an Organism X-Y coordinates determine gene expression

16 16 Organism Fault Tolerance A Faulty cell causes all cells in the column to be marked with a KILL Faulty column replaced by spare column

17 17 Population from Organism Replication Organism replicates in X-Y directions Organisms are required to be identical (apparently)

18 18 Implementation “Eventual Implementation” –Want flexible architecture that will eventually be implemented in a “new kind of fine-grained FPGA” –Each element consists of a MUX and programmable connection network ~ molecule First Demonstration system –essentially removes the concept of a molecule –Artificial cell implementation called MICTREE (microinstruction tree), based on a binary decision machine

19 19 MICTREE Implementation MICTREE cell sequentially executes programs using the following instruction set: Essentially a 4-bit wide processor Limited to 16 x 16 array (256 cells, register sizes) Microprogram limited to 1024 instructions (RAM size) –microprogram space for Operative Genome

20 20 Simple Example - StopWatch Simple organism with 4 cells –Countmod10 – counts tens minutes or seconds –Countmod6 – counts 6 tens minutes or seconds

21 21 Other Simple Examples Random number generator based of Wolfram’s CA Specialized Turing machine for parenthesis checking

22 22 Second Generation: MUXTREE Molecule MICTREE applications limited to 1024 instructions and 16 x16 arrays New molecule called MUXTREE (multiplexer tree) –Based on order binary decision diagrams –20-bit configuration string

23 23 Fault Tolerance in MUXTREE Muxes and register duplicated, output compared for fault Third copy of register is a present for self-repair (TMR) Configuration register tested every time (shift register) Faults in the switch block can be detected, but not repaired

24 24 MUXTREE Shift Binary Decision Machine 30 x 30 array (900) MUXTREE molecules, 2 Cells Program memory is a shift memory using the D-flip-flops in the MUXTREEs –Most of resources in MUXTREE wasted –Difficult to embed typical RAM in MUXTREE arrays Example application modulo-60 counter –Operative Genome has 36 instructions Shift Memory

25 25 Mapping the MUXTREE to an FPGA Storing the entire Operative Genome is in each cell is an inefficient use of hardware –Area for a living organism is less “expensive” than in hardware 16 MUXTREEs could be mapped to FPGA is OP is fully specified for each cell New version of MUXTREE, each cell stores only its own portion of the OG as well as all cells in a neighboring column –reduces storage requirements from n 2 + 1 to n + 1 25 MUXTREEs mapped to FPGA in more recent work –example application is a frequency divider on one FPGA Is this reasonable?

26 26 Looking at the Numbers… 900 MUXTREEs for a shift binary decision machine –programmed to act as a modulo 60 counter 25 MUXTREE per FPGA 900 / 25 = 36 FPGAs?! - way too big! Optimal implementation of modulo 60 counter has –6 Registers, 6 muxes, 6 nand gates –should only occupy a small portion of one FPGA Frequency divider example –essentially a counter as well Optimal implementation would occupy small percentage of FPGA

27 27 Neat Idea, but Too Expensive Embryonics approach looks to have around 10-100x area overhead –too costly for current technologies –living organisms grow/evolve into “free” area, where as all hardware area must be allocated initially Speed and Power Consumption should lag behind conventional approaches as well + Plus Side –evolvable, reconfigurable design paradigm –multiple levels of fault-tolerance (important for future technologies) –may be more appealing for future technologies, if “area grows on trees”

28 28 Summary POE model is a reference for many evolvable hardware researchers –Phylogeny axis: evolving –Ontogeny axis: growing –Epigenesis axis: learning The Embryonics Approach is inspired by nature’s architecture –molecule, cell, organism, population Functioning prototype systems based on Embryonics have been demonstrated However, the hardware overhead is quite expensive for today’s technologies


Download ppt "Matthew Ziegler CS 851 – Bio-Inspired Computing Evolvable Hardware and the Embryonics Approach."

Similar presentations


Ads by Google