SlideShare uma empresa Scribd logo
1 de 23
ALMA MATER STUDIORUM – UNIVERSITA’ DI BOLOGNA
                          SEDE DI CESENA
           Seconda Facoltà di Ingegneria con Sede a Cesena
         Corso di Laurea Specialistica in Ingegneria Informatica




VERSO RETI AUTO-ORGANIZZANTI
  ISPIRATE ALLA BIOCHIMICA:
UN FRAMEWORK DI SIMULAZIONE

                         Elaborato in
            Linguaggi e Modelli Computazionali LS


Relatore                  Correlatore                 Presentata da
Prof. Mirko Viroli        Ing. Matteo Casadei         Lorenzo Cavina
INTRODUZIONE
Obiettivo: studiare e realizzare un simulatore ed un
           tool di supporto alla simulazione

Tipo di simulazioni?
                 Simulazioni stocastiche..
                 ..orientate all'auto-organizzazione..
                 ..ispirandosi alla biochimica

Creazione di un framework di simulazione
          ..in breve: Maude : motore di simulazione
                      + Java : sistema di simulazione

Lorenzo Cavina               INTRODUZIONE                2
AUTO-ORGANIZZAZIONE / 1

 Termine diffuso, sta influenzando molti campi:
    es. pervasive computing, intelligenza artificiale distribuita,
      MAS, p2p, ...


 Definizione informale:
    - capacità di mantenere la propria struttura interna
     ordinata
    - nonostante eventuali perturbazioni
    - attraverso il solo utilizzo di interazioni locali



Lorenzo Cavina                AUTO-ORGANIZZAZIONE                    3
AUTO-ORGANIZZAZIONE / 2

 Perché è interessante:

       nuovo approccio risolutivo per
       l'ingegneriazzazione di sistemi complessi
       diverso dagli approcci di ingegneria del sw standard
       si presta al dinamismo e all'imprevedibilità
       forte ispirazione alla natura




Lorenzo Cavina           AUTO-ORGANIZZAZIONE                  4
ISPIRAZIONE DALLA BIOLOGIA / 1

 Scambi di idee tra ambiti di studio diversi
                 es. informatica      biologia

 Natura fonte di spunti significativi
            ..soprattutto per la progettazione
                  di sistemi complessi..

Caratteristiche della natura ci permettono di affrontare
più facilmente problemi complessi
         es. dinamismo, imprevedibilità, caoticità, evoluzione
             continua, adattabilità, larga scala, ecc..


Lorenzo Cavina                 ISPIRAZIONE BIOLOGIA              5
ISPIRAZIONE DALLA BIOLOGIA / 2
 In particolare:


                      Cellule                          Nodi
           Tessuti cellulari                           Reti di nodi




                                                                             Informatica
                   Molecole                            Informazioni o
Biologia




                                                       servizi
           Concentrazione                              Livello di attività
                                                       del servizio
                 Reazioni tra                          Transizioni tra
                    sostanze                           stati del sistema


Lorenzo Cavina                  ISPIRAZIONE BIOLOGIA                                   6
MODELLAZIONE DI SISTEMI
   CHIMICI
 Reazioni chimiche riconducibili alla forma generale
                                 A+B→C+D

 Sistema chimico definibile come sistema di equazioni
 differenziali (ODE)
     •   difficoltà proibitiva


 Introduzione di approssimazioni
     •   per effettuare simulazioni:
           - su scale temporali significative
           - su sistemi complessi
     •   minore accuratezza dei risultati

Lorenzo Cavina                     SISTEMI CHIMICI      7
MODELLO STOCASTICO
Assunzione sui sistemi chimici:
      insieme di molecole e reazioni
      rappresentati dal numero di molecole per ogni specie
      presente
Le reazioni avvengono in modo non deterministico
      •   casualità nelle interazioni tra i reagenti
      •   stocasticità come componente fondamentale dei processi
          chimici
      •   ad ogni reazione può essere associato un rate (r)


      Sistemi chimici sono particolarmente adatti ad essere
         descritti tramite labelled transition system
Lorenzo Cavina             SIMULAZIONI STOCASTICHE                 8
SIMULAZIONI STOCASTICHE
Strumento adatto per studiare la dinamica di sistemi
biologici, chimici e fisici

Il non-determinismo dei sistemi complessi rende il
modello stocastico particolarmente adatto al loro studio

 Per creare il nostro simulatore abbiamo bisogno di:
      Modello di riferimento
             •   per il design dei sistemi considerati
             •   ispirato alla biochimica
          Modalità di simulazione
             •   per lo studio dei meccanismi di auto-organizzazione
             •   basata sul modello stocastico

Lorenzo Cavina                   SIMULAZIONI STOCASTICHE               9
MODALITÀ DI SIMULAZIONE

 Modalità di simulazione adottata:
        simulazione del sistema in modo standard per i
        processi markoviani, noto in bioinformatica come
        algoritmo di Gillespie (Gillespie SSA)
             sistema stocastico inteso come un sistema di transizioni
             etichettate, del tipo
                                     a:r
                                 s          s’
             Gillespie SSA: approccio esatto per simulazioni
                            stocastiche, accurato ed
                            efficiente


Lorenzo Cavina                  GILLESPIE SSA                      10
MODELLO COMPUTAZIONALE
   ISPIRATO ALLA BIOCHIMICA / 1
 Combina elementi della chimica e della biologia, come?
    sistema chimico composto da sostanze in soluzione:
         •   dette reagenti (r)
         •   composte da molecole (m) con concentrazione (c)

    concetto di compartimento (dalla biologia)
         •   porzione di spazio delimitato da membrana
         •   regola il passaggio delle sostanze
         •   ciascuno con un particolare contenuto (molecole, reazioni)

    2 tipi di leggi:
                                r
        1) chimiche: X + Y     Z
        2) bio-meccaniche: cambi di struttura e spostamento di
                           molecole

Lorenzo Cavina                 MODELLO COMPUTAZIONALE                     11
MODELLO COMPUTAZIONALE / 2:
   LA       SINTASSI
 Siano: n = identificatore univoco compartimenti
        l = nome univoco leggi
 Sistema espresso tramite
                                             n
                 S ::= 0| M | A | l | [S]r | n         r
                                                           n’ | (S|S)
 in cui l è specificato come l := L, ove
                                r
                      L   ::= I → O
                      I   ::= 0 | M | I + I
                      O   ::= 0 | M | A | O + O
                      A   ::=   M| M| M
Lorenzo Cavina                MODELLO COMPUTAZIONALE                    12
MODELLO COMPUTAZIONALE / 3:
   LA       SEMANTICA
    rate globale per ogni azione
            ..dipende direttamente dalla concentrazione delle molecole..

 Transizioni possibili:
      1.   reazioni chimiche l := L
            - legge chimica generica
      2.   reazioni Out
            - M : uscita di M dal compartimento
      3.   reazioni In
            - M : ingresso di M in compartimento
      4.   reazioni Link
            -    M : spostamento di M da compartimento ad uno collegato


Lorenzo Cavina                    MODELLO COMPUTAZIONALE                   13
MODELLO COMPUTAZIONALE / 4:
   ESEMPI ED APPLICAZIONI
 Esempio di legge biochimica
                          r
                      mol → mol + toNeighbour(mol)

 Esempio di sistema chimico
                 S0 = l1 | l2 | na | na | … | na | cl | cl | … | cl
                                              r1
                            l1 := na + cl → na+ + cl-
                                                 r2
                           l2 :=   na+   +   cl -→    na + cl

 Applicazioni pratiche del modello
    -   simulazione sistemi biologici
    -   ecosistemi di servizi eternamente adattativi

Lorenzo Cavina                 MODELLO COMPUTAZIONALE                 14
MAUDE
 Cos'è Maude?
    potente linguaggio di specifica
    basato su:
          •   Rewriting Logic ed Equational Logic
        strumento general-purpose
        utile per:
                 •   modellare la semantica di una grande varietà di sistemi
                     soprattutto distribuiti e concorrenti
                 •   esprimere linguaggi di programmazione

 Strumento fondamentale per il nostro lavoro
                 •   molto flessibile
                 •   facile definire la semantica dei sistemi

Lorenzo Cavina                            MAUDE                                15
SIMULATORE IN MAUDE / 1
 Struttura modulare
                          modulo Maude unico
           Modulo         estremamente semplice
           Utente         specifica i dati di simulazione: struttura e
                          contenuto del sistema e leggi



                          insieme di più moduli Maude
       Middleware         specializza il comportamento del motore
                          implementa il modello computazionale



                          motore di simulazione generico
                 ENGINE   basato su Gillespie SSA
                          deve essere adattato al caso considerato
Lorenzo Cavina             SIMULATORE MAUDE                              16
SIMULATORE IN MAUDE / 2:
   ENGINE DI SIMULAZIONE
    realizza principalmente:
        • selezione stocastica
        • transizione tra stati


    3 tipi di simulazioni:
        • Last
          simula N passi e restituisce un’osservazione del passo N-esimo
        • Trace
          simula N passi e restituisce un’osservazione per ogni passo
        • Series
          serie di M simulazioni Last consecutive, ognuna da N passi
      in cui N ed M sono specificati dall’utente

Lorenzo Cavina                SIMULATORE MAUDE                         17
TOOL DI SIMULAZIONE / 1
    simulatore in Maude:
    utilizzabile, potente, ma di basso livello!
          ..presuppone la conoscenza di Maude..
          ..presuppone la conoscenza di dettagli di basso livello
            (es. rappresentazione dati)..
          ..utilizzabile solo da linea di comando..
          ..grande difficoltà nella gestione dei risultati
            (es. gestione dell’output problematica)..


    idea: realizzare un sistema di simulazione completo,
          in grado di risolvere questi difetti

Lorenzo Cavina                 TOOL DI SIMULAZIONE                  18
TOOL DI SIMULAZIONE / 2

    sistema realizzato in Java
      •   interfaccia grafica per gestire: input, controllo e output
    si interfaccia con il simulatore Maude
      •   utilizza Maude come processo interno
      •   gestione dei risultati a scambio di messaggi (Socket)
    rappresentazione grafica per
      •   dati di input
      •   output generato dal simulatore: gestisce i risultati e li
          visualizza graficamente per una migliore fruizione


Lorenzo Cavina                 TOOL DI SIMULAZIONE                     19
CASO DI STUDIO:
   FIELD-LIKE DIFFUSION
Contesto: studio e sviluppo di ecosistemi di servizi
         eternamente adattativi
Caso di studio: pattern di Field-like Diffusion o
                diffusione a campo, ovvero:
     •   non tutti i servizi devono rimanere localizzati in un’unica
         posizione
     •   diffusione dei servizi nella rete a partire da una sorgente
         localizzata
     •   legge fondamentale di diffusione
                                    r
                         Service        Service +                Service

                                     0.05
                                na          na + left(na)
Lorenzo Cavina                CASE STUDY: Field-like Diffusion             20
SCREENCAST
    Screencast per:
      •   Introduzione al tool
      •   Esempio di utilizzo per il caso di studio




Lorenzo Cavina                  SCREENCAST            21
CASO DI STUDIO:
   ALCUNI RISULTATI
A partire dai dati raccolti dalla simulazione sono stati
realizzati alcuni grafici di analisi




Lorenzo Cavina        CASE STUDY: Field-like Diffusion     22
ALMA MATER STUDIORUM – UNIVERSITA’ DI BOLOGNA
                          SEDE DI CESENA
           Seconda Facoltà di Ingegneria con Sede a Cesena
         Corso di Laurea Specialistica in Ingegneria Informatica




VERSO RETI AUTO-ORGANIZZANTI
  ISPIRATE ALLA BIOCHIMICA:
UN FRAMEWORK DI SIMULAZIONE

                         Elaborato in
            Linguaggi e Modelli Computazionali LS


Relatore                  Correlatore                 Presentata da
Prof. Mirko Viroli        Ing. Matteo Casadei         Lorenzo Cavina

Mais conteúdo relacionado

Semelhante a VERSO RETI AUTO-ORGANIZZANTI ISPIRATE ALLA BIOCHIMICA: UN FRAMEWORK DI SIMULAZIONE

Extended Summary of "Engineered Self-Organization for Resilient Robot Self-As...
Extended Summary of "Engineered Self-Organization for Resilient Robot Self-As...Extended Summary of "Engineered Self-Organization for Resilient Robot Self-As...
Extended Summary of "Engineered Self-Organization for Resilient Robot Self-As...
SergioMilo1
 
Compressione di insiemi di espressioni regolari tramite programmazione geneti...
Compressione di insiemi di espressioni regolari tramite programmazione geneti...Compressione di insiemi di espressioni regolari tramite programmazione geneti...
Compressione di insiemi di espressioni regolari tramite programmazione geneti...
Simone Cumar
 
Definizione e sviluppo di un algoritmo genetico multiobiettivo per problemi d...
Definizione e sviluppo di un algoritmo genetico multiobiettivo per problemi d...Definizione e sviluppo di un algoritmo genetico multiobiettivo per problemi d...
Definizione e sviluppo di un algoritmo genetico multiobiettivo per problemi d...
Stefano Costanzo
 
Implementazione in Java di plugin Maven per algoritmi di addestramento per re...
Implementazione in Java di plugin Maven per algoritmi di addestramento per re...Implementazione in Java di plugin Maven per algoritmi di addestramento per re...
Implementazione in Java di plugin Maven per algoritmi di addestramento per re...
Francesco Komauli
 

Semelhante a VERSO RETI AUTO-ORGANIZZANTI ISPIRATE ALLA BIOCHIMICA: UN FRAMEWORK DI SIMULAZIONE (13)

Tesi Laurea Cristian Randieri
Tesi Laurea  Cristian RandieriTesi Laurea  Cristian Randieri
Tesi Laurea Cristian Randieri
 
Extended Summary of Self-building Neural Networks
Extended Summary of Self-building Neural NetworksExtended Summary of Self-building Neural Networks
Extended Summary of Self-building Neural Networks
 
Extended Summary of "Engineered Self-Organization for Resilient Robot Self-As...
Extended Summary of "Engineered Self-Organization for Resilient Robot Self-As...Extended Summary of "Engineered Self-Organization for Resilient Robot Self-As...
Extended Summary of "Engineered Self-Organization for Resilient Robot Self-As...
 
Modelli di Durata: un'analisi sull'utilizzo del portale Web dell'Università d...
Modelli di Durata: un'analisi sull'utilizzo del portale Web dell'Università d...Modelli di Durata: un'analisi sull'utilizzo del portale Web dell'Università d...
Modelli di Durata: un'analisi sull'utilizzo del portale Web dell'Università d...
 
Complexity education by Valerio Eletti (3/4)
Complexity education by Valerio Eletti (3/4)Complexity education by Valerio Eletti (3/4)
Complexity education by Valerio Eletti (3/4)
 
Compressione di insiemi di espressioni regolari tramite programmazione geneti...
Compressione di insiemi di espressioni regolari tramite programmazione geneti...Compressione di insiemi di espressioni regolari tramite programmazione geneti...
Compressione di insiemi di espressioni regolari tramite programmazione geneti...
 
Stefano Bragaglia MSc Thesis, awarded as Best Italian thesis in AI 2009/2010
Stefano Bragaglia MSc Thesis, awarded as Best Italian thesis in AI 2009/2010Stefano Bragaglia MSc Thesis, awarded as Best Italian thesis in AI 2009/2010
Stefano Bragaglia MSc Thesis, awarded as Best Italian thesis in AI 2009/2010
 
Definizione e sviluppo di un algoritmo genetico multiobiettivo per problemi d...
Definizione e sviluppo di un algoritmo genetico multiobiettivo per problemi d...Definizione e sviluppo di un algoritmo genetico multiobiettivo per problemi d...
Definizione e sviluppo di un algoritmo genetico multiobiettivo per problemi d...
 
Interpolazione Meteo
Interpolazione MeteoInterpolazione Meteo
Interpolazione Meteo
 
Le reti neurali
Le reti neuraliLe reti neurali
Le reti neurali
 
Implementazione in Java di plugin Maven per algoritmi di addestramento per re...
Implementazione in Java di plugin Maven per algoritmi di addestramento per re...Implementazione in Java di plugin Maven per algoritmi di addestramento per re...
Implementazione in Java di plugin Maven per algoritmi di addestramento per re...
 
Database Data Aggregator
Database Data AggregatorDatabase Data Aggregator
Database Data Aggregator
 
Approccio Sistemico Vitale - intro
Approccio Sistemico Vitale - introApproccio Sistemico Vitale - intro
Approccio Sistemico Vitale - intro
 

Último

Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptxNicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
lorenzodemidio01
 
Adducchio.Samuel-Steve_Jobs.ppppppppppptx
Adducchio.Samuel-Steve_Jobs.ppppppppppptxAdducchio.Samuel-Steve_Jobs.ppppppppppptx
Adducchio.Samuel-Steve_Jobs.ppppppppppptx
sasaselvatico
 
case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....
giorgiadeascaniis59
 
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptxScienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
lorenzodemidio01
 
Presentazione tre geni della tecnologia informatica
Presentazione tre geni della tecnologia informaticaPresentazione tre geni della tecnologia informatica
Presentazione tre geni della tecnologia informatica
nico07fusco
 

Último (20)

Storia-CarloMagno-TeccarelliLorenzo.pptx
Storia-CarloMagno-TeccarelliLorenzo.pptxStoria-CarloMagno-TeccarelliLorenzo.pptx
Storia-CarloMagno-TeccarelliLorenzo.pptx
 
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptxNicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
 
Descrizione Piccolo teorema di Talete.pptx
Descrizione Piccolo teorema di Talete.pptxDescrizione Piccolo teorema di Talete.pptx
Descrizione Piccolo teorema di Talete.pptx
 
Presentazioni Efficaci e lezioni di Educazione Civica
Presentazioni Efficaci e lezioni di Educazione CivicaPresentazioni Efficaci e lezioni di Educazione Civica
Presentazioni Efficaci e lezioni di Educazione Civica
 
Quadrilateri e isometrie studente di liceo
Quadrilateri e isometrie studente di liceoQuadrilateri e isometrie studente di liceo
Quadrilateri e isometrie studente di liceo
 
Una breve introduzione ad Elsa Morante, vita e opere
Una breve introduzione ad Elsa Morante, vita e opereUna breve introduzione ad Elsa Morante, vita e opere
Una breve introduzione ad Elsa Morante, vita e opere
 
Tosone Christian_Steve Jobsaaaaaaaa.pptx
Tosone Christian_Steve Jobsaaaaaaaa.pptxTosone Christian_Steve Jobsaaaaaaaa.pptx
Tosone Christian_Steve Jobsaaaaaaaa.pptx
 
Vuoi girare il mondo? educazione civica.
Vuoi girare il mondo? educazione civica.Vuoi girare il mondo? educazione civica.
Vuoi girare il mondo? educazione civica.
 
Adducchio.Samuel-Steve_Jobs.ppppppppppptx
Adducchio.Samuel-Steve_Jobs.ppppppppppptxAdducchio.Samuel-Steve_Jobs.ppppppppppptx
Adducchio.Samuel-Steve_Jobs.ppppppppppptx
 
LE ALGHE.pptx ..........................
LE ALGHE.pptx ..........................LE ALGHE.pptx ..........................
LE ALGHE.pptx ..........................
 
descrizioni della antica civiltà dei sumeri.pptx
descrizioni della antica civiltà dei sumeri.pptxdescrizioni della antica civiltà dei sumeri.pptx
descrizioni della antica civiltà dei sumeri.pptx
 
discorso generale sulla fisica e le discipline.pptx
discorso generale sulla fisica e le discipline.pptxdiscorso generale sulla fisica e le discipline.pptx
discorso generale sulla fisica e le discipline.pptx
 
CHIẾN THẮNG KÌ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN - PHAN THẾ HOÀI (36...
CHIẾN THẮNG KÌ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN - PHAN THẾ HOÀI (36...CHIẾN THẮNG KÌ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN - PHAN THẾ HOÀI (36...
CHIẾN THẮNG KÌ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN - PHAN THẾ HOÀI (36...
 
case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....
 
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptxScienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
 
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptxProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
 
Oppressi_oppressori.pptx................
Oppressi_oppressori.pptx................Oppressi_oppressori.pptx................
Oppressi_oppressori.pptx................
 
Scrittura seo e scrittura accessibile
Scrittura seo e scrittura accessibileScrittura seo e scrittura accessibile
Scrittura seo e scrittura accessibile
 
Presentazione tre geni della tecnologia informatica
Presentazione tre geni della tecnologia informaticaPresentazione tre geni della tecnologia informatica
Presentazione tre geni della tecnologia informatica
 
Aristotele, vita e opere e fisica...pptx
Aristotele, vita e opere e fisica...pptxAristotele, vita e opere e fisica...pptx
Aristotele, vita e opere e fisica...pptx
 

VERSO RETI AUTO-ORGANIZZANTI ISPIRATE ALLA BIOCHIMICA: UN FRAMEWORK DI SIMULAZIONE

  • 1. ALMA MATER STUDIORUM – UNIVERSITA’ DI BOLOGNA SEDE DI CESENA Seconda Facoltà di Ingegneria con Sede a Cesena Corso di Laurea Specialistica in Ingegneria Informatica VERSO RETI AUTO-ORGANIZZANTI ISPIRATE ALLA BIOCHIMICA: UN FRAMEWORK DI SIMULAZIONE Elaborato in Linguaggi e Modelli Computazionali LS Relatore Correlatore Presentata da Prof. Mirko Viroli Ing. Matteo Casadei Lorenzo Cavina
  • 2. INTRODUZIONE Obiettivo: studiare e realizzare un simulatore ed un tool di supporto alla simulazione Tipo di simulazioni? Simulazioni stocastiche.. ..orientate all'auto-organizzazione.. ..ispirandosi alla biochimica Creazione di un framework di simulazione ..in breve: Maude : motore di simulazione + Java : sistema di simulazione Lorenzo Cavina INTRODUZIONE 2
  • 3. AUTO-ORGANIZZAZIONE / 1 Termine diffuso, sta influenzando molti campi: es. pervasive computing, intelligenza artificiale distribuita, MAS, p2p, ... Definizione informale: - capacità di mantenere la propria struttura interna ordinata - nonostante eventuali perturbazioni - attraverso il solo utilizzo di interazioni locali Lorenzo Cavina AUTO-ORGANIZZAZIONE 3
  • 4. AUTO-ORGANIZZAZIONE / 2 Perché è interessante: nuovo approccio risolutivo per l'ingegneriazzazione di sistemi complessi diverso dagli approcci di ingegneria del sw standard si presta al dinamismo e all'imprevedibilità forte ispirazione alla natura Lorenzo Cavina AUTO-ORGANIZZAZIONE 4
  • 5. ISPIRAZIONE DALLA BIOLOGIA / 1 Scambi di idee tra ambiti di studio diversi es. informatica biologia Natura fonte di spunti significativi ..soprattutto per la progettazione di sistemi complessi.. Caratteristiche della natura ci permettono di affrontare più facilmente problemi complessi es. dinamismo, imprevedibilità, caoticità, evoluzione continua, adattabilità, larga scala, ecc.. Lorenzo Cavina ISPIRAZIONE BIOLOGIA 5
  • 6. ISPIRAZIONE DALLA BIOLOGIA / 2 In particolare: Cellule Nodi Tessuti cellulari Reti di nodi Informatica Molecole Informazioni o Biologia servizi Concentrazione Livello di attività del servizio Reazioni tra Transizioni tra sostanze stati del sistema Lorenzo Cavina ISPIRAZIONE BIOLOGIA 6
  • 7. MODELLAZIONE DI SISTEMI CHIMICI Reazioni chimiche riconducibili alla forma generale A+B→C+D Sistema chimico definibile come sistema di equazioni differenziali (ODE) • difficoltà proibitiva Introduzione di approssimazioni • per effettuare simulazioni: - su scale temporali significative - su sistemi complessi • minore accuratezza dei risultati Lorenzo Cavina SISTEMI CHIMICI 7
  • 8. MODELLO STOCASTICO Assunzione sui sistemi chimici: insieme di molecole e reazioni rappresentati dal numero di molecole per ogni specie presente Le reazioni avvengono in modo non deterministico • casualità nelle interazioni tra i reagenti • stocasticità come componente fondamentale dei processi chimici • ad ogni reazione può essere associato un rate (r) Sistemi chimici sono particolarmente adatti ad essere descritti tramite labelled transition system Lorenzo Cavina SIMULAZIONI STOCASTICHE 8
  • 9. SIMULAZIONI STOCASTICHE Strumento adatto per studiare la dinamica di sistemi biologici, chimici e fisici Il non-determinismo dei sistemi complessi rende il modello stocastico particolarmente adatto al loro studio Per creare il nostro simulatore abbiamo bisogno di: Modello di riferimento • per il design dei sistemi considerati • ispirato alla biochimica Modalità di simulazione • per lo studio dei meccanismi di auto-organizzazione • basata sul modello stocastico Lorenzo Cavina SIMULAZIONI STOCASTICHE 9
  • 10. MODALITÀ DI SIMULAZIONE Modalità di simulazione adottata: simulazione del sistema in modo standard per i processi markoviani, noto in bioinformatica come algoritmo di Gillespie (Gillespie SSA) sistema stocastico inteso come un sistema di transizioni etichettate, del tipo a:r s s’ Gillespie SSA: approccio esatto per simulazioni stocastiche, accurato ed efficiente Lorenzo Cavina GILLESPIE SSA 10
  • 11. MODELLO COMPUTAZIONALE ISPIRATO ALLA BIOCHIMICA / 1 Combina elementi della chimica e della biologia, come? sistema chimico composto da sostanze in soluzione: • dette reagenti (r) • composte da molecole (m) con concentrazione (c) concetto di compartimento (dalla biologia) • porzione di spazio delimitato da membrana • regola il passaggio delle sostanze • ciascuno con un particolare contenuto (molecole, reazioni) 2 tipi di leggi: r 1) chimiche: X + Y Z 2) bio-meccaniche: cambi di struttura e spostamento di molecole Lorenzo Cavina MODELLO COMPUTAZIONALE 11
  • 12. MODELLO COMPUTAZIONALE / 2: LA SINTASSI Siano: n = identificatore univoco compartimenti l = nome univoco leggi Sistema espresso tramite n S ::= 0| M | A | l | [S]r | n r n’ | (S|S) in cui l è specificato come l := L, ove r L ::= I → O I ::= 0 | M | I + I O ::= 0 | M | A | O + O A ::= M| M| M Lorenzo Cavina MODELLO COMPUTAZIONALE 12
  • 13. MODELLO COMPUTAZIONALE / 3: LA SEMANTICA rate globale per ogni azione ..dipende direttamente dalla concentrazione delle molecole.. Transizioni possibili: 1. reazioni chimiche l := L - legge chimica generica 2. reazioni Out - M : uscita di M dal compartimento 3. reazioni In - M : ingresso di M in compartimento 4. reazioni Link - M : spostamento di M da compartimento ad uno collegato Lorenzo Cavina MODELLO COMPUTAZIONALE 13
  • 14. MODELLO COMPUTAZIONALE / 4: ESEMPI ED APPLICAZIONI Esempio di legge biochimica r mol → mol + toNeighbour(mol) Esempio di sistema chimico S0 = l1 | l2 | na | na | … | na | cl | cl | … | cl r1 l1 := na + cl → na+ + cl- r2 l2 := na+ + cl -→ na + cl Applicazioni pratiche del modello - simulazione sistemi biologici - ecosistemi di servizi eternamente adattativi Lorenzo Cavina MODELLO COMPUTAZIONALE 14
  • 15. MAUDE Cos'è Maude? potente linguaggio di specifica basato su: • Rewriting Logic ed Equational Logic strumento general-purpose utile per: • modellare la semantica di una grande varietà di sistemi soprattutto distribuiti e concorrenti • esprimere linguaggi di programmazione Strumento fondamentale per il nostro lavoro • molto flessibile • facile definire la semantica dei sistemi Lorenzo Cavina MAUDE 15
  • 16. SIMULATORE IN MAUDE / 1 Struttura modulare modulo Maude unico Modulo estremamente semplice Utente specifica i dati di simulazione: struttura e contenuto del sistema e leggi insieme di più moduli Maude Middleware specializza il comportamento del motore implementa il modello computazionale motore di simulazione generico ENGINE basato su Gillespie SSA deve essere adattato al caso considerato Lorenzo Cavina SIMULATORE MAUDE 16
  • 17. SIMULATORE IN MAUDE / 2: ENGINE DI SIMULAZIONE realizza principalmente: • selezione stocastica • transizione tra stati 3 tipi di simulazioni: • Last simula N passi e restituisce un’osservazione del passo N-esimo • Trace simula N passi e restituisce un’osservazione per ogni passo • Series serie di M simulazioni Last consecutive, ognuna da N passi in cui N ed M sono specificati dall’utente Lorenzo Cavina SIMULATORE MAUDE 17
  • 18. TOOL DI SIMULAZIONE / 1 simulatore in Maude: utilizzabile, potente, ma di basso livello! ..presuppone la conoscenza di Maude.. ..presuppone la conoscenza di dettagli di basso livello (es. rappresentazione dati).. ..utilizzabile solo da linea di comando.. ..grande difficoltà nella gestione dei risultati (es. gestione dell’output problematica).. idea: realizzare un sistema di simulazione completo, in grado di risolvere questi difetti Lorenzo Cavina TOOL DI SIMULAZIONE 18
  • 19. TOOL DI SIMULAZIONE / 2 sistema realizzato in Java • interfaccia grafica per gestire: input, controllo e output si interfaccia con il simulatore Maude • utilizza Maude come processo interno • gestione dei risultati a scambio di messaggi (Socket) rappresentazione grafica per • dati di input • output generato dal simulatore: gestisce i risultati e li visualizza graficamente per una migliore fruizione Lorenzo Cavina TOOL DI SIMULAZIONE 19
  • 20. CASO DI STUDIO: FIELD-LIKE DIFFUSION Contesto: studio e sviluppo di ecosistemi di servizi eternamente adattativi Caso di studio: pattern di Field-like Diffusion o diffusione a campo, ovvero: • non tutti i servizi devono rimanere localizzati in un’unica posizione • diffusione dei servizi nella rete a partire da una sorgente localizzata • legge fondamentale di diffusione r Service Service + Service 0.05 na na + left(na) Lorenzo Cavina CASE STUDY: Field-like Diffusion 20
  • 21. SCREENCAST Screencast per: • Introduzione al tool • Esempio di utilizzo per il caso di studio Lorenzo Cavina SCREENCAST 21
  • 22. CASO DI STUDIO: ALCUNI RISULTATI A partire dai dati raccolti dalla simulazione sono stati realizzati alcuni grafici di analisi Lorenzo Cavina CASE STUDY: Field-like Diffusion 22
  • 23. ALMA MATER STUDIORUM – UNIVERSITA’ DI BOLOGNA SEDE DI CESENA Seconda Facoltà di Ingegneria con Sede a Cesena Corso di Laurea Specialistica in Ingegneria Informatica VERSO RETI AUTO-ORGANIZZANTI ISPIRATE ALLA BIOCHIMICA: UN FRAMEWORK DI SIMULAZIONE Elaborato in Linguaggi e Modelli Computazionali LS Relatore Correlatore Presentata da Prof. Mirko Viroli Ing. Matteo Casadei Lorenzo Cavina