25
Hyper-structures et modélisation de chimie artificielle dans le langage MGS Clément BOIN & Nicolas THIBAULT Maîtrise Informatique – Université d’Evry Val-d’Essonne – 2001- 2002 T.E.R. encadré par Jean-Louis Giavitto & Olivier Michel

Hyper-structures et modélisation de chimie artificielle dans le langage MGS Clément BOIN & Nicolas THIBAULT Maîtrise Informatique – Université dEvry Val-dEssonne

Embed Size (px)

Citation preview

Page 1: Hyper-structures et modélisation de chimie artificielle dans le langage MGS Clément BOIN & Nicolas THIBAULT Maîtrise Informatique – Université dEvry Val-dEssonne

Hyper-structures et

modélisation de chimie artificielle

dans le langage MGS

Clément BOIN & Nicolas THIBAULT

Maîtrise Informatique – Université d’Evry Val-d’Essonne – 2001-2002

T.E.R. encadré par Jean-Louis Giavitto & Olivier Michel

Page 2: Hyper-structures et modélisation de chimie artificielle dans le langage MGS Clément BOIN & Nicolas THIBAULT Maîtrise Informatique – Université dEvry Val-dEssonne

Plan

• Introduction– La chimie artificielle– MGS

• Modélisation d’un réseau autocatalytique• Modélisation d’un réseau biochimique• Conclusion

Page 3: Hyper-structures et modélisation de chimie artificielle dans le langage MGS Clément BOIN & Nicolas THIBAULT Maîtrise Informatique – Université dEvry Val-dEssonne

• Chimie virtuelle

• Modèles discrets et combinatoires

• Avantages et Inconvénients

La chimie artificielle

+

Page 4: Hyper-structures et modélisation de chimie artificielle dans le langage MGS Clément BOIN & Nicolas THIBAULT Maîtrise Informatique – Université dEvry Val-dEssonne

Définition d’une expérience

• Un ensemble d’objets

• Des règles de transformation

• Des règles d’interaction dynamique

Page 5: Hyper-structures et modélisation de chimie artificielle dans le langage MGS Clément BOIN & Nicolas THIBAULT Maîtrise Informatique – Université dEvry Val-dEssonne

MGS (Modèle Général de

Simulation)

• Langage dédié

• Langage déclaratif

• Deux interprètes : Ocaml et C++

Page 6: Hyper-structures et modélisation de chimie artificielle dans le langage MGS Clément BOIN & Nicolas THIBAULT Maîtrise Informatique – Université dEvry Val-dEssonne

• Les collections topologiques• Les transformations

• Les enregistrements• Lien avec la chimie

Particularités de MGS

+

Page 7: Hyper-structures et modélisation de chimie artificielle dans le langage MGS Clément BOIN & Nicolas THIBAULT Maîtrise Informatique – Université dEvry Val-dEssonne

Exemple MGS

• fun objets(m) = if m==1

then ():set

else m::(objets (m-1))

fi;;

• trans premier =

{x , y/(y%x==0) => x };;

• premier['iter='fixpoint](objets(100));;

Page 8: Hyper-structures et modélisation de chimie artificielle dans le langage MGS Clément BOIN & Nicolas THIBAULT Maîtrise Informatique – Université dEvry Val-dEssonne

Modélisation d’un réseau autocatalytique

• Exposé chimique du problème• Idée générale de modélisation• Stratégie d’implémentation en MGS

– Représentation d’un polymère– Création des produits et réactions– Exécution

• Exemple d’utilisation et interprétation des résultats

Page 9: Hyper-structures et modélisation de chimie artificielle dans le langage MGS Clément BOIN & Nicolas THIBAULT Maîtrise Informatique – Université dEvry Val-dEssonne

• M1 + M2 M12

• Sélectionner les polymères dominants

Exposé chimique du problème

Kf

Kr

Page 10: Hyper-structures et modélisation de chimie artificielle dans le langage MGS Clément BOIN & Nicolas THIBAULT Maîtrise Informatique – Université dEvry Val-dEssonne

• Approche individuelle des polymères

• Utilisation d’entiers

1 + 2 12

• Création aléatoire des éléments

Idée générale de modélisation

14

Page 11: Hyper-structures et modélisation de chimie artificielle dans le langage MGS Clément BOIN & Nicolas THIBAULT Maîtrise Informatique – Université dEvry Val-dEssonne

• Séquence1 + 2 122 + 1 2112 + 12 1212

• Séquence avec déterminisme de la réaction1 + 2 122 + 1 1212 + 12 1212

Représentation d’un polymère en MGS

• Multi-ensemble1 + 2 122 + 1 1212 + 12 1122

Page 12: Hyper-structures et modélisation de chimie artificielle dans le langage MGS Clément BOIN & Nicolas THIBAULT Maîtrise Informatique – Université dEvry Val-dEssonne

Création aléatoire des produits et réactions

• Monomères

• Polymères

• Séquence des polymères initiaux

• Séquence des polymères possibles

• Réactions

Page 13: Hyper-structures et modélisation de chimie artificielle dans le langage MGS Clément BOIN & Nicolas THIBAULT Maîtrise Informatique – Université dEvry Val-dEssonne

Exécution des réactions

• Création des produits et réactions

• Initialisation de la solution

• Transformation MGS générique– Application de chaque réaction pour un pas

d’évolution.– Itération du processus pour plusieurs pas

d’évolution.

Page 14: Hyper-structures et modélisation de chimie artificielle dans le langage MGS Clément BOIN & Nicolas THIBAULT Maîtrise Informatique – Université dEvry Val-dEssonne

Code MGStrans Biochimie =

{

reaction_a = a, b, c /((a==nieme(i,reaction).poly1)&

(b==nieme(i,reaction).poly2)&(c==nieme(i,reaction).cata))

=> if condition(nieme(i,reaction).kf)

then (nieme(i,reaction).poly_res)::c::():solution

else a::b::c::():solution fi;

reaction_b = a, c /((a==nieme(i,reaction).poly_res)&

(c==nieme(i,reaction).cata))

=> if condition(nieme(i,reaction).kr)

then (nieme(i,reaction).poly1):: (nieme(i,reaction).poly2)::c::():solution

else a::c::():solution fi;

};;

Page 15: Hyper-structures et modélisation de chimie artificielle dans le langage MGS Clément BOIN & Nicolas THIBAULT Maîtrise Informatique – Université dEvry Val-dEssonne

• Polymères initiaux : 42 , 42

• Polymères possibles : 42 , 4242

• Réaction :

42 + 42 4242

42 + 42 4242

Exemple

Kf = 42

Kr = 67

Kf = 62

Kr = 78

Page 16: Hyper-structures et modélisation de chimie artificielle dans le langage MGS Clément BOIN & Nicolas THIBAULT Maîtrise Informatique – Université dEvry Val-dEssonne

Exemple

Après 50 itérations

Après 20 itérations

Page 17: Hyper-structures et modélisation de chimie artificielle dans le langage MGS Clément BOIN & Nicolas THIBAULT Maîtrise Informatique – Université dEvry Val-dEssonne

Modélisation d’un réseau biochimique

• L’expérience de A.E. Bugrim

• Modélisation en MGS

• Visualisation avec Imoview

Page 18: Hyper-structures et modélisation de chimie artificielle dans le langage MGS Clément BOIN & Nicolas THIBAULT Maîtrise Informatique – Université dEvry Val-dEssonne

RecAC

cAMPATP

R

C

R

C

R R

CC

PhK

Ca2+

Agonist

IC + CI

G

Fig.1 Les molécules : Schéma logique

Plasma

Cytosol

Reticulum endoplasmique

Univers

Structure générale de la cellule

Stimulus

Page 19: Hyper-structures et modélisation de chimie artificielle dans le langage MGS Clément BOIN & Nicolas THIBAULT Maîtrise Informatique – Université dEvry Val-dEssonne

2

3

10

7

4

65

Rec*

AC G-protein*

ATPcAMP

R2C2

C

I

CI

(cAMP)2•R

PhK

Ca2+intracell

Ca•PhK

Agonist

Ca.PhK*

AC*

diffdiff

diff

8

9

Ca2+extracell

Channel(closed)

Channel(open)

Stimulus

1 G-protein

Rec

Fig.2

inh

Les réactions : Réseau d’interactions

G-protein

Page 20: Hyper-structures et modélisation de chimie artificielle dans le langage MGS Clément BOIN & Nicolas THIBAULT Maîtrise Informatique – Université dEvry Val-dEssonne

L’expérience de Bugrim en MGS

• Les molécules - enregistrements

• Structure générale - collections

• Les réactions - transformations

• Application récursive

• Aspects dynamiques– Les temps de diffusion– Les réactions non-déterministes

Page 21: Hyper-structures et modélisation de chimie artificielle dans le langage MGS Clément BOIN & Nicolas THIBAULT Maîtrise Informatique – Université dEvry Val-dEssonne

Code MGS (1)// Description des strutures dans l'espace

collection Volume = bag;;

collection Membrane = bag;;

collection Univ = Volume;;

collection Plasma = Membrane;;

collection Cytosol = Volume;;

collection Retic_Endo = Membrane;;

//== Initialisation

RETICULUM := {nom="r2c2"}:: ():Retic_Endo ;;

CYTOSOL := {nom="i"}:: {nom="phk"}:: {nom="atp"}:: RETICULUM:: ():Cytosol ;;

PLASMA := {nom= "recepteur",actif=0}:: {nom="r2c2"}:: {nom= "gprot",actif=0}::

{nom= "ac",actif=0}::{nom= "channel",actif=0}:: CYTOSOL:: ():Plasma ;;

U := {nom= "agonist",actif=1}:: {nom= "stimulus",actif=1}::

{nom= "ca++",diffuse=0}:: PLASMA:: ():Univ ;;

Page 22: Hyper-structures et modélisation de chimie artificielle dans le langage MGS Clément BOIN & Nicolas THIBAULT Maîtrise Informatique – Université dEvry Val-dEssonne

Code MGS (2)// Ensemble des réactions

trans Biochimie =

{

Incr = c:Cytosol => IncrCyt(c)::():Cytosol; //Incrémenter les tps de diffusion

Reaction1 = a:Agonist1, p:Plasma => (a+{actif=0})::ActiveRecepteur(p)::():Univ;

Reaction2 = r:Recepteur1, g:Gprot0 => (g+{actif=1})::(r+{actif=0})::():Plasma;

Reaction3 = g:Gprot1, a: AC0 => (g+{actif=0})::(a+{actif=1})::():Plasma;

Reaction4 = a: AC1, c:Cytosol =>(a+{actif=0}):: TransAtp(c)::():Plasma;

Reaction5 = a:cAMP1, re:Retic_Endo/member({nom="r2c2"},re) => AleaR2C2(a,re);

Reaction5b = r:R2C2, c:Cytosol/member({nom="camp",diffuse=DIFFCAMP},c) => delete({nom="camp",diffuse=DIFFCAMP}, ({nom="c",diffuse=0}::{nom="(camp)2.r"}::c))::():Plasma;

Reaction6 = c:Cenzime1, x:CaPhK0 => c::(x+{actif=1})::():Cytosol;

Reaction7 = c:Cenzime, i:I => Aleatoire(TAUXINIB,c,i);

Reaction8 = s:Stimulus1, p:Plasma => (s+{actif=0})::ActiveChannel(p)::():Univ;

Reaction9 = c:Ca2p, p:Plasma/member({nom="channel",actif=1},p) => AjoutPlasmaCa(DesChannel(p))::():Univ;

Reaction10 = x:Ca2p1, y:PhK => {nom="caphk", actif =0}::():Cytosol;

};;

Page 23: Hyper-structures et modélisation de chimie artificielle dans le langage MGS Clément BOIN & Nicolas THIBAULT Maîtrise Informatique – Université dEvry Val-dEssonne

Imoview (État initial)

StimulusAgonist Plasma

Cytosol

Reticulum

Page 24: Hyper-structures et modélisation de chimie artificielle dans le langage MGS Clément BOIN & Nicolas THIBAULT Maîtrise Informatique – Université dEvry Val-dEssonne

État final

Ca.PhK*

CI

Page 25: Hyper-structures et modélisation de chimie artificielle dans le langage MGS Clément BOIN & Nicolas THIBAULT Maîtrise Informatique – Université dEvry Val-dEssonne

Conclusion

• MGS, langage abstrait

• Limites– Complexité– Fonctions aléatoires– Code peu réutilisable