Dynamics and MetaDynamics in Biological and Chemical Networks Hugues Bersini IRIDIA Universite Libre...

Post on 03-Jan-2016

220 views 2 download

Tags:

Transcript of Dynamics and MetaDynamics in Biological and Chemical Networks Hugues Bersini IRIDIA Universite Libre...

Dynamics and MetaDynamics in Biological and Chemical Networks

Hugues BersiniIRIDIAUniversite Libre de Bruxelles

Two examples

One brief example: Hopfield networkA second longer example: Chemical

Network

1. Network ??

Homogeneous units ai (t) (the same time evolution - the same differential or difference equations) dai/dt = F(aj, Wij)

A connectivity matrix: Wij

A large family of biological networks: Idiotypic immune network Hopfield network Coupled Map Lattice Boolean network Ecological network (Lokta-Volterra) Genetic network

Chemical network ?

a + b --> cc + d --> e…..d[a]/dt = -kabc[a][b]

d[c]/dt = kabc[a][b]Quadratic form of networkFixed point dynamics

Dynamics

ai(t)

Time

MetaDynamics

A second level of change Change in the structure of the

network- add or remove units- add or remove connections- modify connection values

Studied examples

Learning in Hopfield NetworkAdding or removing antibody types

in idiotypic networkAdding or removing molecules in

chemical network

A key interdependency

First Example: Hopfield Network

daidt

ai

f( wijj1

n a j) -

1tanh(x)2

f(x) =

A 6-neurons Hopfield net

0 - 1 0 0 -1 -1

0 0 0 -1 -1 -1

-1 -1 0 0 - 1 0

-1 -1 -1 0 0 0

-1 -1 0 -1 0 0

0 - 1 -1 -1 0 0

Wij =

The dynamics

-2 -1 0 1 2-1.5

-1

-0.5

0

0.5

1

1.5figure 1

-2 -1 0 1 2-1.5

-1

-0.5

0

0.5

1

1.5figure 2

-1 -0.5 0 0.5 1-1

-0.5

0

0.5

1figure 3

-1 -0.5 0 0.5 1-1

-0.5

0

0.5

1figure 4

The frustrated chaos: the idiotypic network - the origin

0

50

100

150

200

250A

b c

on

c

0 5 01 0 01 5 02 0 02 5 0time [d]

3 0 03 5 04 0 0

2-clone case 0 1

1 0

0

50

100

150

200

250

Ab

co

nc

en

tra

tion

s

0 5 01 0 01 5 02 0 02 5 0time [d]

3 0 03 5 04 0 00

100

200

300

400

500

0

Ab

co

nc

en

tra

tion

s

1 0 02 0 03 0 04 0 05 0 06 0 0time [d]

7 0 08 0 0

3-clone open chain 0 1 0

1 0 1

0 1 0

3-clone closed chain

0 1 1

1 0 1

1 1 0

Properties of this chaos

Typical intermittent chaos: critical bifurcation, length of cycles increasing… type 1 or type 2 bifurcation T(wij) = 1/(mij - mij

T)

Where the intermittent cycles are the relaxing cycles

= Kaneko’s chaotic itinerancyPresent in immune, CML, Hopfield Net.Not enough studied

Bifurcation Diagram

MetaDynamics = Learning

Hebbian Learningd(wij)/dt = kai.aj

Control the chaos by stabilizing one of the frustrated cycle.

Learning travels on the bifurcation diagram

Still to “engineerize” or to “cognitivize”….

Second example: Chemical Network

OO CHEMISTRY

AARTIFICIALCHEMISTRY

OO COMPUTATION

Artificial Chemistry

a + b --> c + d A set of molecules:

abstract symbols, numbers, lambda expressions, strings, proofs

A set of reaction rules: string matching, concatenation,lambda calculus, finite

state automata, Turing machines,matrix multiplication, arithmetic, boolean…

A dynamics: ODE, difference equations, explicit collision, cellular

automata, reactor, 3-D Euclidean space, ..

Example

Molecules: {1,2, …}Reaction rules:

a + b --> a + c with c =

Dynamics = random choice of molecules

Dittrich in Dortmund .

a/b if a mod b = 0

b otherwise

Kaufmann - autocatalytic self-maintaining network

Fontana - emergence of self-maintaining and self-producing chaining reactions

Fontana (2)

The three main “raison d'être” of Alife or Achemistry

Offers biologists or chemists software platforms to be easily parameterize to allow simulation of real biology or chemistry--->design patterns

Allow the discovery of laws describing universal emergent behaviors of complex systems. Like Kauffman’s laws of Boolean networks Fontana’s emergence of hypercycles etc….

Lead to new engineering tools

OO Computation

OO reconnects programming and simulation

the program objets are “real” objectsUsing UML diagram helps to visualize the

program. Visualizing allows better understanding

Objects have state and behaviourObjects mutually interact by sending

messages (orders)

OO Chemistry

Component

concentration

modifyConcentration( )

0..*

ChemicalComponent

reactivity0..*

SourceComponent

0..*0..*

11..*

0..*1

myIdentity

Atom

identitykeyslocksvalenceenergyReceptors

1..*

myConnectedAtoms

1

*

1

Link

nbrOfBoundsenergy

exchangeLink( )

headAtom1

1

AtomInMolecule

aCopy_AtomInMolecule

duplicate( )compare( )

1..*

1

*

1

CrossOverOpenBound

Molecule

numberOfInstances[]

11..*

0..*1

1

1

Reaction

1

1..*1..*

1

2.5 Molecule

Atoms aggregationattributes : which atom and how many

instances of eachmethods: constructors :

– from two atoms– from one atom and one molecule– from two molecules– by splitting one molecule

One front door: the headAtom = AtomInMolecule for the structure of the complex

2.6 AtomInMolecule

As soon as an atom get into a molecule they have identity related with atom they code the tree or the graph structures they have pointers called myConnectedAtoms the well-known computational trick to handle

tree and graphs.What molecules do, atomInMolecule have to

do: test affinity, duplicate, be compared.

Basic atoms

1 - valence 42 - valence 23 - valence 14 - valence 1Basic diatomic molecules: 1(1), 2(2),

3(3), 4(4)

1(1(4 4 4) 2 (1 (3 3 3) 2 (2 (3)) 2 (4))

4 4 4

1

3 3 3

1

2

3

2

2

4

2

1

A MOLECULE = A COMPUTATIONAL TREE

Not far from the SMILES notation

2.7 Link

A link between two atomsInMolecule: poleA and poleB

Two capital attributes:the nbr of boundsthe energy

One key method in the crossover type of reactions:

aLink.exchangeLink(anotherLink)

if (the identity of n < the identity of m) { the smaller is n }

else

if (the identity of n = the identity of m)

{ if ( n has no connected atom and m has no connected atom) {the smaller is n}

else

if (the number of connected atoms of n > the number of connected atoms of m) {the smaller is n}

else

if ( the number of connected atoms of n = the number of connected atoms of m)

{for all j connected atoms of n and m

{if (the identity of the jth connected atom of n < the identity of the jth connected of m) {the smaller is n , break-

the-loop}

else

{ for all connected atoms of n and m

{ redo recursively the same testing procedure}}}}

Table 1: Which is the smaller between theatomInMolecule n and m.

THE CANONICALISATION:ONE TREE = ONE MOLECULE

Still miss:

IsomerismMerging molecules: aromaticity,…Cristals…….

The different reaction mechanisms

Chemical CrossOver: HCL + NaOH --> NaCL + H2O N2 + 3H2 --> 2NH3

C2H5OH+CH3COOH --> CH3COOC2H5 + H2O

multiple-link CrossOver: CH4 + 2O2 --> CO2 + 2H2O

OpenBound Reaction: C2H2 + 2H2 --> C2H6

CloseBound Reaction: 2Na2Cl --> 2NO2 + Cl2

Reorganisation: CH3CHO --> CH4 + CO

One simple crossover

Figure 3: a single-link-crossover

1

2

3

4

2

3

1

4

+ =

The single-link crossover:1(1) + [4] 2 (3 4) 1(3 3 3 3) + 1(2(4) 2(4) 2(4) 2(4)

The multiple-link crossover: 1(4 4 4 4) + [2] 2(2) 1(2 2) + [2] 2(4 4)

One open-bond reaction

1

1

+

4

4

=

1

1

444

444

Difference with the GA crossover

Xover occurs between trees = genetic programming

valence plays an important role (no engineering needs)

one or more links can be involvedCANONICALISATION (discussed in the

following) FITNESS (discussed in the following)

CANONICALISATION

Not necessary with GP, only the result of the tree is important not its structure

Don’t care about similar fonctionnal trees in the population because no explicit need of the concentration or the diversity.

FITNESS

Reactions lowering the fitness are much more probable.

So fitness must be implicitly distributed on the links

Molecule presents weak epistasisSimilar to (Baluja and Caruana, 1995)Where the fitness is explicilty

distributed on the schema

The random simulation loop

Take randomly one molecule Take randomly another molecule Make them react according to either:

- the Crossover - the Open-Bond reaction

In each reaction the link which breaks is the weakest link. Generate the new molecule in its canonical form only if

they don’t exist already in the system. Calculate the rate of the reaction.

The determistic simulation

Ad infinitum do {- time = time + 1- For all molecules i of the system

For all molecules j (going from 1 to i) of the system { - Make the reaction (i,j) according to a specific

reaction mechanism - Put the products in the canonical form

- If the products of the reaction already exist, increase their concentration, if not add them in the system with their specific concentration. - To do so calculate the rate

- Decrease the concentration of i and j }}

How is the rate calculated

K = exp(-Ea/T)if ( Er

links> Eplinks) Ea = else

Ea = Ep

links- Erlinks +

Erlinks

Eplinks

Departure of the reactions

Four molecules:

1(1) 2(2) 3(3) 4(4)

After several steps of the simulation

1 ( 3 3 3 3 ) , 1 ( 2 ( 2 ( 3 ) ) 3 3 3 ) , 1 ( 1 ( 3 3 3 ) 3 3 3) , 1 ( 4 4 4 4 ) , 1 ( 3 4 4 4 ) , 2 ( 2 ( 4 ) 3 ) , 1 ( 1 ( 4 4 4 ) 3 3 4 ) , 1 ( 1 ( 3 3 3 ) 1 ( 3 3 3 ) 1 ( 3 3 3 ) 1 ( 3 3 3 ) ) , 1(2 (1 ( 3 3 3 ) ) 3 3 3 ), 1 ( 2 ( 4 ) 3 3 4 ) , 1 ( 2 ( 1 ( 4 4 4 ) ) 4 4 4 ) , 1 ( 3 3 4 4 ) , 2 ( 2 ( 4 ) 4 ) , 1 ( 1 ( 3 3 3 ) 1 ( 4 4 4 ) 1 ( 4 4 4 ) 1 ( 4 4 4 ) ) , 1 ( 1 ( 3 3 3 ) 1 ( 3 3 3 ) 1 ( 3 3 3 ) 2 ( 2 ( 1 ( 3 3 3 ) ) ) ) , 1 ( 2 ( 2 ( 2 ( 1 ( 3 3 3 ) ) ) ) 3 3 3 ) , 1 ( 1 ( 4 4 4 ) 1 ( 4 4 4 ) 1 ( 4 4 4 ) 2 ( 1 ( 3 3 3 ) ) ) , 1 ( 1 ( 2 ( 4 ) 2 ( 4 ) 2 ( 4 ) ) 2 ( 3 ) 2 ( 3 ) 2 ( 3 ) ) , 1 ( 1 ( 1 ( 4 4 4 ) 2 ( 1 ( 3 3 3 ) ) 2 ( 3 ) ) 1 ( 1 ( 4 4 4 ) 2 ( 1 ( 3 3 3 ) ) 2 ( 3 ) ) 1 ( 1 ( 4 4 4 ) 2 ( 1 ( 3 3 3 ) ) 2 ( 3 ) ) 1 ( 1 ( 4 4 4 ) 2 ( 1 ( 3 3 3 ) ) 2 ( 3 ) ) ) .

A 93 atoms molecule

1 ( 1 ( 1 ( 4 4 4 ) 1 ( 4 4 4 ) 2 ( 1 ( 1 ( 4 4 4 ) 1 ( 4 4 4 ) 1 ( 4 4 4 ) ) ) ) 1 ( 1 ( 4 4 4 ) 1 ( 4 4 4 ) 2 ( 1 ( 1 ( 4 4 4 ) 1 ( 4 4 4 ) 1 ( 4 4 4 ) ) ) ) 1 ( 1 ( 4 4 4 ) 1 ( 4 4 4 ) 2 ( 1 ( 1 ( 4 4 4 ) 1 ( 4 4 4 ) 1 ( 4 4 4 ) ) ) ) 1 ( 1 ( 4 4 4 ) 1 ( 4 4 4 ) 2 ( 1 ( 1 ( 4 4 4 ) 1 ( 4 4 4 ) 1 ( 4 4 4 ) ) ) ) )

The dynamics

First order reaction: a + b --> c [c] = [c] + k [a][b] [a] = [a] - k[a][b] [b] = [b] - k[a][b]

First Simple results

A chemical reactor only containing:

And simple Crossover reaction

3

3

And

4

4

Irreversible - simulation deterministe

0

50

100

150

200

250

1 5 9 13 17 21 25 29 33 37 41 45 49 53 57 61

Series1

Series2

Series3

reversible

0

10

20

30

40

50

60

70

80

90

100

1 4 7 10 13 16 19 22 25 28 31 34 37 40

Series1

Series2

Series3

More general simulations departing with 1(1), 2(2), 3(3) and 4(4).

To avoid exponential explosion: only make the nth first molecules

interact with the nth first moleculesOR

only make the molecules with concentration above a certain threshold to interact

0

10

20

30

40

50

60

70

80

90

100

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Series1

Series2

Series3

Series4

Series5

Series6

Series7

Series8

Series9

Series10

Series11

Series12

Series13

Series14

Results

Emergence of survival networkWhich network, which molecule, is

hard to predict ??Depending on the dynamics and

metadynamicsVery sensitive in an intricate way to

a lot of factors

Conclusions

Very general abstract scheme studying how metadynamics and dynamics interact in natural networks

Mainly computer experiments For Immune nets: tolerance, homeostasis, memory

... For NN --> possible connection with learning and

the current new wave NN (chaos, oscillation and synchronicity)

For chemistry: how and which surviving networks emerge in an unpredictable way