Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

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

315 views

Published on

Published in: Education
  • Be the first to comment

  • Be the first to like this

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

  1. 1. ALMA MATER STUDIORUM – UNIVERSITA’ DI BOLOGNA SEDE DI CESENA Seconda Facoltà di Ingegneria con Sede a Cesena Corso di Laurea Specialistica in Ingegneria InformaticaVERSO RETI AUTO-ORGANIZZANTI ISPIRATE ALLA BIOCHIMICA:UN FRAMEWORK DI SIMULAZIONE Elaborato in Linguaggi e Modelli Computazionali LSRelatore Correlatore Presentata daProf. Mirko Viroli Ing. Matteo Casadei Lorenzo Cavina
  2. 2. INTRODUZIONEObiettivo: studiare e realizzare un simulatore ed un tool di supporto alla simulazioneTipo di simulazioni? Simulazioni stocastiche.. ..orientate allauto-organizzazione.. ..ispirandosi alla biochimicaCreazione di un framework di simulazione ..in breve: Maude : motore di simulazione + Java : sistema di simulazioneLorenzo Cavina INTRODUZIONE 2
  3. 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 localiLorenzo Cavina AUTO-ORGANIZZAZIONE 3
  4. 4. AUTO-ORGANIZZAZIONE / 2 Perché è interessante: nuovo approccio risolutivo per lingegneriazzazione di sistemi complessi diverso dagli approcci di ingegneria del sw standard si presta al dinamismo e allimprevedibilità forte ispirazione alla naturaLorenzo Cavina AUTO-ORGANIZZAZIONE 4
  5. 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 affrontarepiù facilmente problemi complessi es. dinamismo, imprevedibilità, caoticità, evoluzione continua, adattabilità, larga scala, ecc..Lorenzo Cavina ISPIRAZIONE BIOLOGIA 5
  6. 6. ISPIRAZIONE DALLA BIOLOGIA / 2 In particolare: Cellule Nodi Tessuti cellulari Reti di nodi Informatica Molecole Informazioni oBiologia servizi Concentrazione Livello di attività del servizio Reazioni tra Transizioni tra sostanze stati del sistemaLorenzo Cavina ISPIRAZIONE BIOLOGIA 6
  7. 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 risultatiLorenzo Cavina SISTEMI CHIMICI 7
  8. 8. MODELLO STOCASTICOAssunzione sui sistemi chimici: insieme di molecole e reazioni rappresentati dal numero di molecole per ogni specie presenteLe 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 systemLorenzo Cavina SIMULAZIONI STOCASTICHE 8
  9. 9. SIMULAZIONI STOCASTICHEStrumento adatto per studiare la dinamica di sistemibiologici, chimici e fisiciIl non-determinismo dei sistemi complessi rende ilmodello 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 stocasticoLorenzo Cavina SIMULAZIONI STOCASTICHE 9
  10. 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 efficienteLorenzo Cavina GILLESPIE SSA 10
  11. 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 molecoleLorenzo Cavina MODELLO COMPUTAZIONALE 11
  12. 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| MLorenzo Cavina MODELLO COMPUTAZIONALE 12
  13. 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 collegatoLorenzo Cavina MODELLO COMPUTAZIONALE 13
  14. 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 adattativiLorenzo Cavina MODELLO COMPUTAZIONALE 14
  15. 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 sistemiLorenzo Cavina MAUDE 15
  16. 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 consideratoLorenzo Cavina SIMULATORE MAUDE 16
  17. 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’utenteLorenzo Cavina SIMULATORE MAUDE 17
  18. 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 difettiLorenzo Cavina TOOL DI SIMULAZIONE 18
  19. 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 fruizioneLorenzo Cavina TOOL DI SIMULAZIONE 19
  20. 20. CASO DI STUDIO: FIELD-LIKE DIFFUSIONContesto: studio e sviluppo di ecosistemi di servizi eternamente adattativiCaso 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. 21. SCREENCAST Screencast per: • Introduzione al tool • Esempio di utilizzo per il caso di studioLorenzo Cavina SCREENCAST 21
  22. 22. CASO DI STUDIO: ALCUNI RISULTATIA partire dai dati raccolti dalla simulazione sono statirealizzati alcuni grafici di analisiLorenzo Cavina CASE STUDY: Field-like Diffusion 22
  23. 23. ALMA MATER STUDIORUM – UNIVERSITA’ DI BOLOGNA SEDE DI CESENA Seconda Facoltà di Ingegneria con Sede a Cesena Corso di Laurea Specialistica in Ingegneria InformaticaVERSO RETI AUTO-ORGANIZZANTI ISPIRATE ALLA BIOCHIMICA:UN FRAMEWORK DI SIMULAZIONE Elaborato in Linguaggi e Modelli Computazionali LSRelatore Correlatore Presentata daProf. Mirko Viroli Ing. Matteo Casadei Lorenzo Cavina

×