mgs - spatial-computing.org€¦ · mgs @ ucnc’2012. j.-l. giavitto, a. spicher. material! •...

41
MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org MGS « encore un Modèle Général de Simula3on » and Spa&al Compu&ng 1 JeanLouis Giavi:o, Antoine Spicher, Olivier Michel [email protected] [email protected] [email protected]

Upload: others

Post on 11-Aug-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

MGS  «  encore  un  Modèle  Général  de  Simula3on  »  

and  Spa&al  Compu&ng  

1

Jean-­‐Louis  Giavi:o,  Antoine  Spicher,  Olivier  Michel  

[email protected] [email protected]

[email protected]

Page 2: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

Material  

•  The  MGS  home  page  (new  home  page  for  the  end  of  the  year)  h:p://mgs.spa3al-­‐compu3ng.org  

•  MGS  download  (new  home  page  for  the  end  of  the  year)  h:p://www.spa3al-­‐compu3ng.org/mgs  

•  This  MGS  tutorial  h:p://www.spa3al-­‐compu3ng.org/mgs:tutorial  

•  MGS  publica3on  h:p://mgs.spa3al-­‐compu3ng.org/PUBLICATIONS    (old)  h:p://repmus.ircam.fr/giavi:o/publica3ons  h:p://www.lacl.fr/~michel/doku.php?id=research:start  h:p://www.lacl.fr/~michel/www/bib  h:p://www.lacl.fr/~aspicher/publica3ons.html  

 •  The  Spa3al  Compu3ng  home  page  

h:p://www.spa3al-­‐compu3ng.org  

2

Page 3: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

Lecture  I      (Tuesday,  September  4)  

A.  Mo3va3on  &  Applica3on  domains  1.  Modelling  Morphogenesis  2.  (DS)2:  dynamical  systems  with  a  dynamical  structure    

B.  MGS  1.  Collec3on  2.  Transforma3on  3.  A  Func3onal  Language  

 

C.  Applica3ons  1.  Algorithmic  Examples  2.  Monoidal  Collec3ons  3.  GBF  :  Cellular  and  La`ce  Gaz  Automata  4.  Delaunay  :  the  growth  of  a  meristem  

3

Page 4: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

Lecture  II      (Wednesday,  September  5)  

A.  Mo3va3on  &  Applica3on  domains  1.  Spa3al  Compu3ng  2.  Interac3on-­‐Based  Compu3ng    

B.  MGS  1.  Abstract  Combinatorial  Complex  2.  Formaliza3on      

C.  Applica3ons  1.  Remeshing  2.  Growing  a  «  T  »  3.  Self-­‐Assembly  of  Musical  Spaces  4.  Growing  an  ontology  with  the  Li:le  Riding  Hood  5.  Growing  an  analogy  with  Paul  Ricœur  

4

Page 5: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

Lecture  III      (Thursday,  September  6)  

B.  MGS  1.  Stochas3c  strategies  

C.  Applica3ons  (non  physical  spaces)  1.  Self-­‐Assembly  of  Musical  Spaces  2.  Growing  an  Ontology  with  the  Li:le  Riding  Hood    3.  Growing  an  Analogy  with  Paul  Ricœur  4.  Programming  unconven3onal  models  

D.  Implementa3on  1.  Generic  pa:ern  matching  2.  Incremental  HOAS  implementa3on  of  a  DSL  3.  Beyond  algebraic  data  type  :  a  Generic  Advanced  API  for  Containers  

E.  Current  Fron3ers  From  Global  to  Local  ,  Mul3-­‐level  and  par3al  processes,  Hybrid  Modeling,  Time  

5

Page 6: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

Implementa&on    

•   pa:ern  matching  •   evalua3on  schema  •   incremental  implementa3on  

6

Page 7: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

A  polytypic  (generic)  pa9ern  matching  algorithm  

7

Page 8: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

How  to  find  the  occurrence  of  a  path  pa9ern  ?    

• x • p/exp • p,p • p|p • p*

8

Page 9: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

The  no&on  of  deriva&ve  of  a  regular  expression  

∂R/∂a  =  {w  |  aw  ∈  L(R)  }      (the  set  of  word  of  R  without  a  leading  a)    

[R]  =  {ε}  if  ε  ∈  L(R)    else  ∅    Provided  that  R  is  a  regular  expression  •  ∂R/∂a  is  a  regular  expression  •  [R]  is  a  regular  expression  

9

Page 10: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

Checking  word  membership  

∂R/∂a  =  {w  |  aw  ∈  L(R)  }  =  R’  

10

gives  a  new  RE  

reduce  by  one  the  number  of  elements  in  the  word  

iterate  recursively  un3l  base  case  ε  

and  then  check  [R’]  

Page 11: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

Deriva&on  rules  

11

Page 12: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

Extension  to  path  pa9erns  

Extension  to  path  pa:erns  on  collec3on  

12

regular expression word

Page 13: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

Deriva&on  of  a  path  pa9ern  

∂P/∂pos(Coll,  Env,  FreePos)  =  the  set  of  paths  in  Coll  •  begining  at  posi3on  pos • matching  the  path  pa:ern  P  •  passing  only  by  elements  of  FreePos  •  and  variable  binded  in  Env  

13

Page 14: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

The  base  case  

14

Base  case  :  the  empty  collec3on  the  only  pa:ern  that  can  match  a  path  in  the  empty  collec3on  must  specify  a  zero-­‐length  path,  hence          x* all  other  pa:ern  fails  and  gives  an  emty  solu3on  set  

Page 15: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

Deriva&on  rules    (by  combinatorial  analysis)  

the  set  of  path  matching  (x,P)  and  star3ng  at  pos  is:    pos  preppended  to  “  the  elements  of  the  set  of  paths  matching  P  and  star3ng  at  a  posi3on  belongings  to  a  neigbhor  of  pos  passing  …  ”  

15

∂(x,P)/∂pos(Coll, Env, FreePos) = pos ⊗ { ∂P/∂p’(Coll, Env[x→pos], FreePos-{p’}), p’∈ neighborColl(pos) }

Page 16: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

The  complete  path  pa9ern  seman&cs  

16

Page 17: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

An  HOAS  evalua&on  schema  

17

Page 18: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

High  Order  Abstract  Syntax  

type  expr  =  |  Const  of  value  |  App  of  expr  *  expr    and  value  =    |  Int  of  int  |  Bool  of  bool  |  Fun  of  (value  -­‐>  value)  

18

Page 19: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

High  Order  Abstract  Syntax  [Pfenning  &  Elliot  PLDI’88]  

 let  rec  eval  =  func3on  |  Const  v  -­‐>  v  |  App  (e1,  e2)  -­‐>        (match  (eval  e1,eval  e2)  with      |  (Fun  f  ,  v)  -­‐>  f  v        (*  caml  applica3on  *)      |  _  -­‐>  raise  TypeError          )  

19

Page 20: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

Two  step  transla&ons  

1.  non-­‐strictness  elimina3on  transforming  condi3onals  and  impera3ve  features  into  func3ons  

2.  variable  elimina3on    transforming  λ-­‐abstrac3ons  into  host  language  func3ons    S, K, I  and   Bc, Cc, Nc,c’  

and  smart  par0al  applica0on  and  mul3ple  abstrac3on/applica3on  

20

MGS expression

exp (HOAS expression) value fully

functional exp 1 2 eval

Page 21: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

Combinatorisa&on  

21

Page 22: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

Combinatorisa&on  

22

Page 23: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

Advantages  

•  includes  higher-­‐order  func3ons,  impera3ve  features  and  non-­‐strict  features    

•  no  difference  between  user  and  library  func3ons  (seamless  mixing  including  high-­‐order)  

•  very  small  •  host  language  can  be  any  mainstream  languages  (done  in  Java)  

•  transforma3ons  proved  correct  (in  Coq)  •  effec3ve…  

23

Page 24: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

Performances  

24

Page 25: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

Performances  

25

Page 26: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

Performances  

26

Page 27: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

An  incremental  development  

27

Page 28: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org 28

MGS type hierarchy

Interpreter  Development  

•  In  2000:  first  version  wri:en  in  1  year  –  3  topological  collec3on  types  –  9k  lines  of  Ocaml,  C  and  C++  code  

•  Now:  third  version  wri:en  on  a  3  years  period  –  >12  topological  collec3on  types  (and  12  scalar  types)  ⇒  >24  data  types  –  50k  lines  of  Ocaml,  and  many  libraries  (>  100k  lines)  –  Sca:ered  over  >100  files  –  225  overloaded  MGS  func3ons  

Page 29: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org 29

Incremental  Development  ?  

Our  goals  1.  Allowing  new  target  data  structures  to  be  added  without  modifying  

the  already  wri:en  implementa3on  files  of  the  interpreter,  2.  Adding  easily  new  target  data  structures  and  func3ons  3.  Li}ing  Ocaml  func3ons  in  MGS  4.  Embedding  MGS  func3ons  in  Ocaml  5.  Automa3ng  the  defini3on  of  highly  overloaded  MGS  func3ons  6.  Don’t  modify  the  implementa3on  language  (Ocaml)  7.  Do  thing  as  much  as  possible  sta3cally  

Our  solu3on  1+2  ⇒  AOP-­‐like  approach  3+4  ⇒  Higher  Order  Abstract  Syntax  5  ⇒  Automagically  produce  the  dispatch  code  6  ⇒  A  simple  external  tool  and  simple  syntac3c  conven3ons  7  ⇒  at  compile-­‐3me  

Page 30: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org 30

The  Expression  Problem  or    How  to  Implement  the  Value  Data-­‐Type  

•  Goes  back  to  [Wadler  98]  

To: java-genericity@... The Expression Problem Philip Wadler, 12 November 1998 The Expression Problem is a new name for an old problem. The goal is to define a datatype by cases, where one can add new cases to the datatype and new functions over the datatype, without recompiling existing code, and while retaining static type safety (e.g., no casts). […]

Page 31: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org 31

The  Expression  Problem  or    How  to  Implement  the  Value  Data-­‐Type  

•  Goes  back  to  [Wadler  98]    •  A  sum  type  

–  Painful  incremental  addi3on  of  new  MGS  collec3on  types  –  Easy  addi3on  of  new  operators  –  Compa3ble  with  HOAS  

•  A  hierarchy  of  classes  –  Easy  incremental  addi3on  of  new  MGS  collec3on  types  –  Painful  addi3on  of  new  operators  

An  «  aspect  oriented  »  approach  •   Language-­‐independant  approach  •   Very  light  implementa3on  •   No  sophis3cated  type/module/language  strategy  •   Efficient  

•   Minimal  overhead  at  compile-­‐3me  (files  scanned  instantaneously)  •   No  run-­‐3me  (except  dispatch)  

 

Page 32: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org 32

(1)  Gathering  all  the  cases  of  the  sum  type  

Access all .ml and .mli file to produce the value type

type value = | Int of int | Float of float | …

types.ml

Page 33: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org 33

(2)  Gathering  all  the  cases  of  the  overloaded  func3ons  

Access all .ml files and produce the signature file and set the forward mechanism

open Types;; open Sig;; let _add_int_int i1 i2 = Int (i1 + i2)

def1.ml

open Types;; open Sig;; let _add_int_float i1 f1 = Float (f1 +. (float_of_int i1)) let _add_float_float f1 f2 = Float (f1 +. f2) let _add_float_int f1 i1 = add (Int i1) (Float f1)

def2.ml

Note the use of the overloaded function!

open Types;; (* Signature declaration *) let (add_forward : (value -> value -> value) ref) = ref (function _ -> failwith "unitialized add") (* Setting foward pointer *) let add x y = !add_forward x y

sig.ml (generated)

Page 34: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org 34

(3)  Generate  the  Overloaded  Func3ons  

open Types, Sig, Def1, Def2 let __add x y = match x, y with | (Int x0), (Int x1) -> _add_int_int x0 x1 | (Float x0), (Float x1) -> _add_float_float x0 x1 | (Int x0), (Float x1) -> _add_int_float x0 x1 | (Float x0), (Int x1) -> _add_float_int x0 x1 … (* Setting the correct links *) Sig.add_forward := __add

dispatch.ml (generated)

Computing the correct cases order and setting the correct link

Page 35: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org 35

open Types, Sig print (add (Float 2.0) (Float 3.0)) print (add (Float 2.0) (Int 1)) print (add (Int 2) (Float 1.0)) print (add (Int 2) (Int 1)) using.ml

(4)  Using  the  Dispatched  Func3ons  

Voila!

Page 36: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

Towards  a  new  evalua&on/development  architecture  

36

transla&on  

Weaving  the  dispatch  func&ons,  boxing  &  

unboxing  

Weaving  the  Value  type  

Parameterized  transforma&ons  

Pa9ern-­‐matching  

Scalars  &  αcollec&on  

as    modules  

API 0 statically typed collection

API 2 heterogeneous collection

API 1 generic patter-matching and transformations

API 3 dynamic interpreter/compiler

Page 37: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

Perspec&ves  

Success  

•  Polytypisme  is  good  

•  Pa:erns/rules  are  expressive  and  usually  concise  

•  Clean  seman3cs  

•  Find  the  “good”  topology  for  the  problem  at  hand  

To  do  

•  Integra3on  into  a  standard  programming  language  (aspect,  à  la  TOM,…)  

•  A  logic  for  topological  rewri3ng  

•  Efficiency:  compila3on  well…  

•  Space-­‐,me  !  

–  Amorphous/autonomic/spa3al  compu3ng  applica3ons  (including  synthe3c  biology)  

–  Musicology    

37

Page 38: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

Autonomic  systems:  systemic  soEware  engineering?  •  Systems  with  self-­‐*  proper3es  (self-­‐healing,  self-­‐op3mizing,  …)  

•  Analogy  with  dynamical  complex  systems  •  Running  programme:  dynamical  system  •  Nominal  behavior:  equilibrium  state  •  Self-­‐*  proper3es:  going  from  a  perturba0on  to  the  equilibrium  

Nominal behavior Perturbation

Viability domain

Resilience (self-* properties)

Perturbed behavior

38

Page 39: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org 39

Thanks  http://mgs.spatial-computing.org

Julien   Antoine  

Olivier  

•   Julien  Cohen  •   Antoine  Spicher  •   Olivier  Michel  •   PhD  and  other  students              Julien,  Antoine,  P.  Barbier  de  Reuille,              E.  Delsinne,  V.  Larue,  F.  Le3erce,  B.  Calvez,                F.  Thonerieux,  D.  Boussié    and  the  others...  •   Collabora&ons  •  P.  Fradet  (INRIA  Grenoble,  programma3on)  •  A.  Lesne  (IHES,  stochas3c  simula3on)  •  P.  Prusinkiewicz  (Calgary,  declara3ve  modeling)        •  P.  Barbier  de  Reuille  (meristeme  model)  •  D.  Pumain  (Paris  1,  géography)  •  René  Doursat  (ISC,  morphogene3c  engineering)  •  Moreno  Andrea:a  (IRCAM,  formalisa3on  spa3ale  de  la  musique)  •  H.  Berry  (LRI,  stochas3c  simula3on)  •  C.  Godin  (CIRAD,  biological  modeling)                            •  J.-­‐P.  Banâtre  (IRISA,  programming)                  •  F.  Gruau  (U.  PXI,  language  and  hardware)                    •  G.  Malcolm  (Liverpool,  rewri3ng)  •  F.  Delaplace  (IBISC,  synthe3c  biology)  •  P.  Liehnard  (Poi3er,  CAD,  Gmap  and  quasi-­‐manifold)    

Page 40: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

to  be  con&nued…  

40

Page 41: MGS - spatial-computing.org€¦ · MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher.  Material! • The!MGS!home!page! (new!home!page!for!the!end!of!the!year)!

MGS @ UCNC’2012. J.-L. Giavitto, A. Spicher. http://mgs.spatial-computing.org

Acknowledgements  MGS:  Antoine  Spicher,  Olivier  Michel,  Julien  Cohen  S&S  Bio  :  Hanna  Klaudel,  Franck  Delaplace,  Hugues  Berry,  Przemek    Prusinkiewicz,  Annick  Lesne…  Spa3al   Compu3ng:   Jacob   Beal,   Fréderic   Gruau,  René  Doursat…  

Examples:   Pierre   Barbier   de   Reuille,   Christophe  Godin,  Samuel  Bo:ani,  the  Paris  iGEM’07  team…    

Some  figures  are  borowed  from  Olivier  Michel,  Antoine  Spicher,  Pierre   Barbier   de   Reuille,   Franck   Delaplace,   Hugues   Berry  (INRIA),  the  iGEM  Paris  2007  and  many  others.  

 

41