40
Course material – G. Tempesti http://www-users.york.ac.uk/~gt512/BI C.html Course material will generally be available the day before the lecture Includes PowerPoint slides and reading material

Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Embed Size (px)

Citation preview

Page 1: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Course material – G. Tempestihttp://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

Page 2: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Ontogenetic systems

Drawing inspiration from growth and healing processes of living organisms…

…and applying them to electronic computing systems

Phylogeny (P)[Evolvability]

Epigenesis (E)[Adaptability]

Ontogeny (O)[Scalability]

PO hw

POE hw

OE hw

PE hw

Page 3: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Introduction

At the heart of the growth of a multi-cellular organism is the process of cellular division…

… aka (in computing) self-replication

Page 4: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Introduction In the 50s, John von Neumann wanted to build a

machine capable of self-replication

Mark II Aiken Relay Calculator (Harvard, 1947)

Page 5: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Introduction In the 50s, John von Neumann wanted to build a

machine capable of self-replication… but HOW?

Page 6: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Introduction In the 50s, John von Neumann wanted to build a

machine capable of self-replicationAt 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.

Page 7: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

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

Page 8: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Environment states

0 =

1 =

2 =

3 =

4 =

etc…

Cellular Automata (CA)

Page 9: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Cellular Automata (CA)

Environment states neighbourhood

Wolfram (1-D)

Von Neumann

Moore (Life)

Page 10: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Cellular Automata (CA)

Environment states neighbourhood transition rules

== ==

== ==

Page 11: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Cellular Automata (CA)

Environment states neighbourhood transition rules

Configuration Initial state of the array

Page 12: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

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

Page 13: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Wolfram’s Elementary CA

Rule 30

Page 14: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Invented by John M. Conway (University of Cambridge)

Popularised by Martin Gardner (Scientific American, october 1970, february 1971)

Two-dimensional CATwo states per cell: dead and aliveEight neighbours (Moore)

2D CA: Game of Life

Page 15: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

2D CA: Game of Life

• Birth of a cell

• Death of a cell

• Survival of a cell

• More than three neighbors• Less than three neighbors

• Two or three neighbors

• Three neighbors

Page 16: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

2D CA: Game of Life

Page 17: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Gliders:

Glider gun:

Game of Life: the glider

Page 18: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Game of Life

Page 19: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

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

Page 20: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Von Neumann’s Constructor

Von Neumann’s Universal Constructor (Uconst) can build any finite machine (Ucomp), given its description D(Ucomp).

Uconst

D(Ucomp)M

Ucomp

Page 21: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

M

Uconst

D(Uconst)

Von Neumann’s Constructor

Von Neumann’s Universal Constructor (Uconst) can build a copy of itself (Uconst’), given its own description D(Uconst).

Uconst'

D(Uconst)M'

Page 22: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

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).

MUconstUcomp

D(Uconst+Ucomp)

M'

D(Uconst+Ucomp)

Ucomp' Uconst'

The universal constructor is a unicellular organism.

MOTHER CELL

DAUGHTER CELL

GENOME

Page 23: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Von Neumann’s Constructor Ordinary transmission states

Standard signal transmission paths (wires)

Non-excited:

Excited:

Input

InputInput

Output

Page 24: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Von Neumann’s Constructor Ordinary transmission states

Property 1: Transmission of excitations with a unit delay

Page 25: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Von Neumann’s Constructor Ordinary transmission states

Property 2: OR logic gate

Page 26: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Von Neumann’s Constructor Confluent states

Signal synchronization Non-directional (depends on neighbor’s direction)

Page 27: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Von Neumann’s Constructor Confluent states

Property 1: Introduction of double unit delay

Page 28: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Von Neumann’s Constructor Confluent states

Property 2: AND gate

Page 29: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Von Neumann’s Constructor Confluent states

Property 4: Fan-out

Page 30: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Von Neumann’s Constructor The XOR gate

Page 31: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Von Neumann’s Constructor The SR flip-flop

Page 32: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Von Neumann’s Constructor

Sensitive states Construction

Ordinary or special excitation

No excitation

Page 33: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Demonstration

Page 34: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Demonstration

Page 35: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

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

Page 36: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

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

Page 37: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Langton’s Loop Aim: studying self-replication as “Artificial Life” Problem: does nothing but self-replicate

Page 38: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

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)

Page 39: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Towards functional self-replication Environment: 7+ states, 9 neighbours (Moore),

rules designed by hand Simple initial configuration, easily simulated

Page 40: Course material – G. Tempesti gt512/BIC.html Course material will generally be available the day before the lecture Includes

Towards functional self-replication Can be extended by adding “applications” (the

complexity depends on the task)