Introduction At the heart of the growth of a multi-cellular organism is the process of cellular...

32
Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… aka (in computing) self-replication

Transcript of Introduction At the heart of the growth of a multi-cellular organism is the process of cellular...

Page 1: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

Introduction

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

… aka (in computing) self-replication

Page 2: 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)

Page 3: 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… but HOW?

Page 4: 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-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 5: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

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 6: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

Environment states

0 =

1 =

2 =

3 =

4 =

etc…

Cellular Automata (CA)

Page 7: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

Cellular Automata (CA)

Environment states neighbourhood

Wolfram (1-D)

Von Neumann

Moore (Life)

Page 8: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

Cellular Automata (CA)

Environment states neighbourhood transition rules

== ==

== ==

Page 9: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

Cellular Automata (CA)

Environment states neighbourhood transition rules

Configuration Initial state of the array

Page 10: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

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 11: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

Wolfram’s Elementary CA

Rule 30

Page 12: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

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 13: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

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 14: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

2D CA: Game of Life

Page 15: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

Gliders:

Glider gun:

Game of Life: the glider

Page 16: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

Game of Life

Page 17: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

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 18: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

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 19: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

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 20: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

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 21: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

Von Neumann’s Constructor Ordinary transmission states

Standard signal transmission paths (wires)

Non-excited:

Excited:

Input

InputInput

Output

Page 22: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

Von Neumann’s Constructor Ordinary transmission states

Property 1: Transmission of excitations with a unit delay

Page 23: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

Von Neumann’s Constructor Ordinary transmission states

Property 2: OR logic gate

Page 24: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

Von Neumann’s Constructor Confluent states

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

Page 25: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

Von Neumann’s Constructor Confluent states

Property 1: Introduction of double unit delay

Page 26: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

Von Neumann’s Constructor Confluent states

Property 2: AND gate

Page 27: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

Von Neumann’s Constructor Confluent states

Property 4: Fan-out

Page 28: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

Von Neumann’s Constructor The XOR gate

Page 29: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

Von Neumann’s Constructor The SR flip-flop

Page 30: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

Von Neumann’s Constructor

Sensitive states Construction

Ordinary or special excitation

No excitation

Page 31: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

Demonstration

Page 32: Introduction At the heart of the growth of a multi-cellular organism is the process of cellular division… … aka (in computing) self-replication.

Demonstration