400 likes | 592 Views
Course material – G. Tempesti. http://www-users.york.ac.uk/~gt512/BIC.html Course material will generally be available the day before the lecture Includes PowerPoint slides and reading material. Phylogeny (P) [Evolvability]. PO hw. PE hw. POE hw. Ontogeny (O) [Scalability]. OE hw.
E N D
Course material – G. Tempesti http://www-users.york.ac.uk/~gt512/BIC.html • Course material will generally be available the day before the lecture • Includes PowerPoint slides and reading material
Phylogeny (P) [Evolvability] PO hw PE hw POE hw Ontogeny (O) [Scalability] OE hw Epigenesis (E) [Adaptability] Ontogenetic systems Drawing inspiration from growth and healing processes of living organisms… …and applying them to electronic computing systems
Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication
Introduction In the 50s, John von Neumann wanted to build a machine capable of self-replication Mark II Aiken Relay Calculator (Harvard, 1947)
Introduction In the 50s, John von Neumann wanted to build a machine capable of self-replication … but HOW?
Introduction In the 50s, John von Neumann wanted to build a machine capable of self-replication At the same time, Stanislaw Ulam was working on the computer-based realization of recursive patterns: geometric objects defined recursively. Ulam suggested to Von Neumann to build an “abstract world”, controlled by well-defined rules, to analyze the logical principles of self-replication: this world is the world of cellular automata.
Cellular Automata (CA) Conceived by S.M. Ulam and J. von Neumann Framework for the study of complex systems Organized as a two-dimensional array of cells Each cell can be in a finite number of states Updated synchronously in discrete time steps The state at the next time step depends of the current states of the neighbourhood The transitions are specified in a rule table
Environment states 0 = 1 = 2 = 3 = 4 = etc… Cellular Automata (CA)
Cellular Automata (CA) Environment states neighbourhood Wolfram (1-D) Von Neumann Moore (Life)
Cellular Automata (CA) Environment states neighbourhood transition rules = = = =
Cellular Automata (CA) Environment states neighbourhood transition rules Configuration Initial state of the array
Wolfram’s Elementary CA The simplest class of 1-D CA: two states (0 or 1), and rules that depend only on nearest neighbour values. Since there are 8 possible states for the three cells in a neighbourhood, there are a total of 256 elementary CA, each of which can be indexed with an 8-bit binary number. Rule 30
Wolfram’s Elementary CA Rule 30
Invented by John M. Conway (University of Cambridge) Popularised by Martin Gardner (Scientific American, october 1970, february 1971) Two-dimensional CA Two states per cell: dead and alive Eight neighbours (Moore) 2D CA: Game of Life
2D CA: Game of Life • Birth of a cell • Three neighbors • Death of a cell • More than three neighbors • Less than three neighbors • Survival of a cell • Two or three neighbors
Gliders: Glider gun: Game of Life: the glider
Von Neumann’s CA Environment states = 29 neighborhood = von Neumann transition rules = 295 ~ 20M Configuration Initial state of the array ~ 200k cells for the constructor, > 1M for the memory tape
Von Neumann’s Constructor Von Neumann’s Universal Constructor (Uconst) can build any finite machine (Ucomp), given its description D(Ucomp).
Von Neumann’s Constructor Von Neumann’s Universal Constructor (Uconst) can build a copy of itself (Uconst’), given its own description D(Uconst).
Von Neumann’s Constructor Von Neumann’s Universal Constructor (Uconst) can build a copy of itself (Uconst’) and of any finite machine (Ucomp’), given the description of both D(Uconst+Ucomp). DAUGHTER CELL MOTHER CELL GENOME The universal constructor is a unicellular organism.
Von Neumann’s Constructor Ordinary transmission states Standard signal transmission paths (wires) Non-excited: Excited: Input Input Input Output
Von Neumann’s Constructor Ordinary transmission states Property 1: Transmission of excitations with a unit delay
Von Neumann’s Constructor Ordinary transmission states Property 2: OR logic gate
Von Neumann’s Constructor Confluent states Signal synchronization Non-directional (depends on neighbor’s direction)
Von Neumann’s Constructor Confluent states Property 1: Introduction of double unit delay
Von Neumann’s Constructor Confluent states Property 2: AND gate
Von Neumann’s Constructor Confluent states Property 4: Fan-out
Von Neumann’s Constructor The XOR gate
Von Neumann’s Constructor The SR flip-flop
Von Neumann’s Constructor Sensitive states Construction Ordinary or special excitation No excitation
Self-replicating CA • After von Neumann, nothing much happened for almost 30 years! • Why? Probably because the hardware wasn’t ready. • In 1984, Chris Langton designed Langton’s Loop
Langton’s Loop • Environment: 8 (?) states, 5 neighbours (von Neumann), rules designed by hand • Initial configuration: 94 active cells (vs. 200k+ in von Neumann’s Universal Constructor) • Replication occurs after 151 iterations
Langton’s Loop • Aim: studying self-replication as “Artificial Life” • Problem: does nothing but self-replicate
Langton’s Loop • After Langton, the loops were optimized • In one case (Perrier et al.) a Turing machine was added to the loop (but at a high cost)
Towards functional self-replication • Environment: 7+ states, 9 neighbours (Moore), rules designed by hand • Simple initial configuration, easily simulated
Towards functional self-replication • Can be extended by adding “applications” (the complexity depends on the task)