Top Banner
Nature Motivated Approaches to Computer Science I. György Vaszil University of Debrecen, Faculty of Informatics Department of Computer Science Potsdam, July 2017
79

Nature Motivated Approaches to Computer Science

Oct 16, 2021

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Nature Motivated Approaches to Computer Science

Nature Motivated Approaches to

Computer Science – I.

György Vaszil

University of Debrecen, Faculty of Informatics

Department of Computer Science

Potsdam, July 2017

Page 2: Nature Motivated Approaches to Computer Science

What is „Nature Motivated”?

Theoretical computational models constructed

with inspiration from nature

Computing machinery with the use of natural

processes

Modelilng and simulating natural processes

Page 3: Nature Motivated Approaches to Computer Science

What is „Nature Motivated”?

Real world/Nature Theoretical model Implementation

Page 4: Nature Motivated Approaches to Computer Science

What is a „Computational Model”?

A computational model:

An abstract machine behind

the computational process.

• input/output

• method of data storage

• set of instructions

• a method for the

application of the instructions

• etc. …

Page 5: Nature Motivated Approaches to Computer Science

For Example

Page 6: Nature Motivated Approaches to Computer Science

Example, continued

Page 7: Nature Motivated Approaches to Computer Science

Random Access Machine

network of logic gates

different types of automata

Page 8: Nature Motivated Approaches to Computer Science

Turing machine

infinite tape, finite tape alphabet

a read-write head moving left/right on the tape

finite control (finite set of instructions, finite set of

internal states)

Page 9: Nature Motivated Approaches to Computer Science

Turing machine

, where

finite set of states

input alphabet

tape alphabet

state transition mapping

initial state

set of final states

Page 10: Nature Motivated Approaches to Computer Science

Turing machine

The Turing machine „can do anything”. It can

compute anything that is algorithmically computable.

Page 11: Nature Motivated Approaches to Computer Science

Real world Theoretical models Implementation

clerk

DNA

cell

Turing machine

genetic alg.

DNA computing

membrane computing

electroniic media

(in silico)

bio-media

(in vivo, in vitro)

Page 12: Nature Motivated Approaches to Computer Science

The Turing machine is not a

nature motivated model

Real world Model Implementation

a clerc Turing machine usual

using pencil on computer

paper

Sequentiality on different levels:

data reading/writing

the data structure itself (tape / string of symbols)

the order of the execution of instructions

Page 13: Nature Motivated Approaches to Computer Science

Our topics

„Chemical” (abstract) computational models

What can we learn from chemical processes?

(Can we use them for motivating computational

models, how?)

Chemical programming

Membrane systems

Model and implementation

Computing with DNA molecules

Page 14: Nature Motivated Approaches to Computer Science

Abstract models - 1

Real world Theoretical models Implementation

chemical reactions

DNA

cell

Chemical paradigm

genetic alg.

DNA computing

membrane computing

electroniic media

(in silico)

bio-media

(in vivo, in vitro)

Page 15: Nature Motivated Approaches to Computer Science

Abstract models - 2

Real world Theoretical models Implementation

chemical reactions

DNA

cell

Chemical paradigm

genetic alg.

DNA computing

membrane computing

electroniic media

(in silico)

bio-media

(in vivo, in vitro)

Page 16: Nature Motivated Approaches to Computer Science

Abstract model + implementation

Real world Theoretical models Implementation

chemical reactions

DNA

cell

Chemical paradigm

genetic alg.

DNA computing

membrane computing

electroniic media

(in silico)

bio-media

(in vivo, in vitro)

Page 17: Nature Motivated Approaches to Computer Science

The chemical computing

paradigm

„Chemistry” as a metaphor

The goal: free algorithms from those types of

sequentiality which is

not inherently come from the problem to be solved

the result of the sequentiality of the computational

model executing the algorithm

J.P. Banatre, D. Le Metayer, 1990

Page 18: Nature Motivated Approaches to Computer Science

Example – Maximum search

„Conventional” approach:

„Chemical” approach:

Page 19: Nature Motivated Approaches to Computer Science

Symbolic chemical solution with abstract

molecules, and rules describing reactions

between them

Molecules represent data, reactions represent

operations

Brownian motion, as execution model

The chemical model

Page 20: Nature Motivated Approaches to Computer Science

Multisets of symbols/objects + multiset rewriting

rules

More precisely

Page 21: Nature Motivated Approaches to Computer Science

Maximum search - Gamma

Gamma – General Abstract Model for Multiset

Manipulation

Multiset as data structure

Reaction conditions and reaction results

Parallel application…

… as long as possible

Page 22: Nature Motivated Approaches to Computer Science

Example – Primes

Page 23: Nature Motivated Approaches to Computer Science

„Higher order chemical language” (HOCL):

program = molecules + reactions + sub-solutions

contained in an initial solution

(higher order: the reactions are also molecules-> they can also evolve)

[Banatre, Fradet, Radenac, 2005]

Chemical programming languages –

an example

Page 24: Nature Motivated Approaches to Computer Science

The rules describing the reactions:

where

P is a pattern

C is a reaction condition

M is a reaction product

Chemical programs in HOCL

Page 25: Nature Motivated Approaches to Computer Science

The program

returns the minimum of 2,7,4,3,6,8.

For example

Page 26: Nature Motivated Approaches to Computer Science

Reaction rules:

The solution with a sub-solution:

Result: the least common multiple of 4 and 6.

Another example

Page 27: Nature Motivated Approaches to Computer Science

Multiset of abstract molecules in a

solution, with

reactions (operations): reaction condition + reaction result.

Sub-solutions: „sub-regions” with their own reaction rules (priority, sequentiality).

Program execution ends, if there are no applicable reactions.

Natural, free from the forced sequentiality of the physical computer architecture

Properties of chemical programs

Page 28: Nature Motivated Approaches to Computer Science

Real world Theoretical models Implementation

chemical reactions

DNA

cell

Chemical paradigm

genetic alg.

DNA computing

membrane computing

electroniic media

(in silico)

bio-media

(in vivo, in vitro)

Page 29: Nature Motivated Approaches to Computer Science

Membrane systems – The

biochemical motivation

Cells contain regions

Regions are enclosed by

membranes

Different regions have

different biochemical

processes inside

Membranes also

regulate traffic between

the regions

Page 30: Nature Motivated Approaches to Computer Science

More on this next week.

Page 31: Nature Motivated Approaches to Computer Science

Real world Theoretical model Implementation

chemical reactions

DNA

cell

Chemical paradigm

genetic alg.

DNA computing

membrane computing

electroniic media

(in silico)

bio-media

(in vivo, in vitro)

Page 32: Nature Motivated Approaches to Computer Science

Data is not represented by abstract objects, but

real DNA molecules, solution in a test tube

The possibility of implementation

(Abstract model and implementation in one.)

Page 33: Nature Motivated Approaches to Computer Science
Page 34: Nature Motivated Approaches to Computer Science

Operations, laboratory

techniques

1. Synthesis: Arbitrary base sequences can be

produced in millions of copies

2. Denaturation: Double strings fall apart to single

strings when heating the solution

3. Hybridization: Single strings combine to double

strings (ligase enzymes)

Page 35: Nature Motivated Approaches to Computer Science
Page 36: Nature Motivated Approaches to Computer Science

Operations - 2

4. Selection: Removing molecules containing a

specific string/sequence of bases

Page 37: Nature Motivated Approaches to Computer Science
Page 38: Nature Motivated Approaches to Computer Science

Operations - 3

5. Gel electrophoresis (separation based on

length): DNA molecules have negative charge, in

an electric field, they move towards the positive

pole

In a gel, the speed of movement depends on the

size of the molecule

Page 39: Nature Motivated Approaches to Computer Science
Page 40: Nature Motivated Approaches to Computer Science

Operations - 4

6. Polymerase chain reaction: Polymerase

enzymes can „fix” missing parts of a double

string.

Page 41: Nature Motivated Approaches to Computer Science

Polymerase chain reaction -

multiplying molecules

The beginning and the

end is known

There can be upto

3000 base pairs in the

„middle”.

Page 42: Nature Motivated Approaches to Computer Science

Operations - 5

7. Cutting: Cutting double chains with enzymes

(sticky ends)

Page 43: Nature Motivated Approaches to Computer Science
Page 44: Nature Motivated Approaches to Computer Science

the code of a vertex is 20 base pairs long

Page 45: Nature Motivated Approaches to Computer Science

Adleman’s experiment – Phase 1

Molecules representing vertices and edges mixed in

a test tube.

Page 46: Nature Motivated Approaches to Computer Science

Adleman’s experiment – Phase 2

Polymerase chain reaction: multiply those starting

with v1, ending in v7

Choosing those which have the proper length (140

base pairs, gel electrophoresis)

Page 47: Nature Motivated Approaches to Computer Science

Adleman’s experiment – Phase 2

Choosing those which contain all vertices, 5 steps:

In the i-th step, we get rid of those molecules which

do not contain vertex i+1

(Phase 2 removes all molecules which cannot

represent solutions.)

Page 48: Nature Motivated Approaches to Computer Science

Adleman’s experiment – last phase

Read off the path from the resulting molecules.

If vi is the j-the vertex in the path, then the part

between v1 and vi has j*20 base pairs.

First, create the v1-vi double strand for all vi, then a

series of PCR reactions…

Page 49: Nature Motivated Approaches to Computer Science

All vertices have a path, the distance the molecules move in the path corresponds to the distance of the vertex from v1.

Page 50: Nature Motivated Approaches to Computer Science

We can use the operations …

… to define abstract computational models

1. Filtering type algorithms

2. Constructive algorithms (self-assembly)

Page 51: Nature Motivated Approaches to Computer Science

The abstract model

The idea (data structure): DNA molecules can be

represented by strings, test tubes with solutions of

DNA can be represented by string multisets.

Page 52: Nature Motivated Approaches to Computer Science

Operations:

separate(T,S): T test tube, S string, the result are

the multisets +(T,S) and –(T,S), those strings of T

which contain or not contain substring S.

merge(T1,T2,…,Tn): create the union

detect(T): returns „true” if T is not empty

(L. Adleman 1994)

The abstract model

Page 53: Nature Motivated Approaches to Computer Science

Example – SAT, formula

satisfiiability

Formula with n variables, for example (n=3):

A truth assignment is represented by an

n bit string.:

These assignments can be represented by

molecules: b1b2b3, where bi base sequence can be

of two forms coding bi=1 or bi=0

Page 54: Nature Motivated Approaches to Computer Science

A SAT algorithm (T. Lipton 1995)

(1) create T

(2) for each clause c

(3) for each literal v

(4) if v is „positive”, collect those assignements from T, which assign 1 to v, otherwise collect those, which assign 0 to v

(5) end

(6) merge the collected assignments in a new T

(7) end

(8) if T is not empty, the formula is satisfiable

Page 55: Nature Motivated Approaches to Computer Science

(polynomial time complexity)

Page 56: Nature Motivated Approaches to Computer Science

Filtering type algorithms in

general

1. Create DNA molecules representing all possible

solution candidates

2. Remove those, which cannot be solutions

3. If something remains, it is the solution

For example: L. Adleman’s experiment, or the

previous SAT algorithm

Page 57: Nature Motivated Approaches to Computer Science

Other experiments

[Faulhammer et al. 2000]

Page 58: Nature Motivated Approaches to Computer Science

Knights on a chess board

(A SAT variant)

hiszen:

(the variable for a position is 1 if

there is a knight there, 0 otherwise)

Page 59: Nature Motivated Approaches to Computer Science

The algorithm

Page 60: Nature Motivated Approaches to Computer Science
Page 61: Nature Motivated Approaches to Computer Science

The result

Page 62: Nature Motivated Approaches to Computer Science

An other SAT solution

Page 63: Nature Motivated Approaches to Computer Science
Page 64: Nature Motivated Approaches to Computer Science

A „gel based” computer

Page 65: Nature Motivated Approaches to Computer Science

The formula

Page 66: Nature Motivated Approaches to Computer Science

The machinery

Page 67: Nature Motivated Approaches to Computer Science

Next

Limitations of filtering type models

Different approaches:

Self-assembly

Page 68: Nature Motivated Approaches to Computer Science
Page 69: Nature Motivated Approaches to Computer Science

The argument of Hartmanis

The exponential function seems to give an upper

limit for the feasibly computable (time, memory,

weight requirements should not grow exponentially

with the size of the problem).

Page 70: Nature Motivated Approaches to Computer Science

The argument of Hartmanis

Page 71: Nature Motivated Approaches to Computer Science

The argument of Hartmanis

At step 1, almost all possible paths have to be

generated, for the algorithm to work.

Each molecule has a certain weight.

Let us calculate how heavy the initial test tubes may

get.

Page 72: Nature Motivated Approaches to Computer Science

The argument of Hartmanis

Consider a graph with 200 nodes

200 nodes have to be coded with a 4 letter

alphabet, the length of these coding sequences

cannot be less than log4 200

A base weighs 10-25 kg

Thus, the initial set weighs:

which is more than the weight of the planet Earth.

Page 73: Nature Motivated Approaches to Computer Science

Limits of the filtering type models

- improvements to the filtering models,

- invention of more sophisticated models

Different approaches (basic ideas and simple

examples):

Self-assembly

Page 74: Nature Motivated Approaches to Computer Science

Limits of the filtering type models

- improvements to the filtering models

- invention of more sophisticated models

Different approaches (basic ideas and simple

examples):

Self-assembly

Page 75: Nature Motivated Approaches to Computer Science

Self-assembly

Two dimensional building blocks out of DNA molecules:

E. Winfree, 1995

Page 76: Nature Motivated Approaches to Computer Science

An example – binary counter

Page 77: Nature Motivated Approaches to Computer Science

How can we compute?

For example: Blocked cellular automata, simple

variants are equivalent with the Turing machine

Page 78: Nature Motivated Approaches to Computer Science

Even more interesting – creating

nano-structures

Page 79: Nature Motivated Approaches to Computer Science