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

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

Embed Size (px)

Citation preview

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

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

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

INTRODUZIONE

Obiettivo: studiare e realizzare un simulatore ed untool 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

2Lorenzo Cavina INTRODUZIONE

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

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 internaordinata

- nonostante eventuali perturbazioni- attraverso il solo utilizzo di interazioni locali

3Lorenzo Cavina AUTO-ORGANIZZAZIONE

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

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

4Lorenzo Cavina AUTO-ORGANIZZAZIONE

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

ISPIRAZIONE DALLA BIOLOGIA / 1

Scambi di idee tra ambiti di studio diversies. 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..

5Lorenzo Cavina ISPIRAZIONE BIOLOGIA

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

ISPIRAZIONE DALLA BIOLOGIA / 2

6Lorenzo Cavina ISPIRAZIONE BIOLOGIA

Bio

log

ia

Info

rm

ati

ca

In particolare:

Cellule Nodi

Tessuti cellulari Reti di nodi

Molecole Informazioni o

servizi

Concentrazione Livello di attivitàdel servizio

Reazioni tra Transizioni tra

sostanze stati del sistema

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

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

7Lorenzo Cavina SISTEMI CHIMICI

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

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

8Lorenzo Cavina SIMULAZIONI STOCASTICHE

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

SIMULAZIONI STOCASTICHE

Strumento adatto per studiare la dinamica di sistemibiologici, 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

9Lorenzo Cavina SIMULAZIONI STOCASTICHE

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

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 transizionietichettate, del tipo

s s’

Gillespie SSA: approccio esatto per simulazionistocastiche, accurato ed efficiente

10Lorenzo Cavina GILLESPIE SSA

a:r

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

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:

1) chimiche: X + Y Z

2) bio-meccaniche: cambi di struttura e spostamento di

molecole

11

r

Lorenzo Cavina MODELLO COMPUTAZIONALE

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

12

MODELLO COMPUTAZIONALE / 2:

LA SINTASSI

Siano: n = identificatore univoco compartimentil = nome univoco leggi

Sistema espresso tramite

S ::= 0| M | A | l | [S] | n n’ | (S|S)

in cui l è specificato come l := L, ove

L ::= I → OI ::= 0 | M | I + IO ::= 0 | M | A | O + OA ::= M | M | M

n

rr

r

Lorenzo Cavina MODELLO COMPUTAZIONALE

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

MODELLO COMPUTAZIONALE / 3:

LA SEMANTICA

13

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

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

MODELLO COMPUTAZIONALE / 4:

ESEMPI ED APPLICAZIONI

14

Esempio di legge biochimica

mol → mol + toNeighbour(mol)

Esempio di sistema chimico

S0 = l1 | l2 | na | na | … | na | cl | cl | … | cl

l1 := na + cl → na+ + cl-

l2 := na+ + cl- → na + cl

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

r

r1

r2

Lorenzo Cavina MODELLO COMPUTAZIONALE

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

MAUDE

Cos'è Maude?potente linguaggio di specificabasato su:

• Rewriting Logic ed Equational Logic

strumento general-purposeutile 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

15Lorenzo Cavina MAUDE

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

SIMULATORE IN MAUDE / 1

16

motore di simulazione genericobasato su Gillespie SSAdeve essere adattato al caso considerato

Struttura modulare

ENGINE

Middleware

Modulo

Utente

insieme di più moduli Maudespecializza il comportamento del motoreimplementa il modello computazionale

modulo Maude unicoestremamente semplicespecifica i dati di simulazione: struttura e contenuto del sistema e leggi

Lorenzo Cavina SIMULATORE MAUDE

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

SIMULATORE IN MAUDE / 2:

ENGINE DI SIMULAZIONE

realizza principalmente:

• selezione stocastica• transizione tra stati

3 tipi di simulazioni:

• Lastsimula N passi e restituisce un’osservazione del passo N-esimo

• Tracesimula N passi e restituisce un’osservazione per ogni passo

• Seriesserie di M simulazioni Last consecutive, ognuna da N passi

in cui N ed M sono specificati dall’utente

Lorenzo Cavina 17SIMULATORE MAUDE

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

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

18Lorenzo Cavina TOOL DI SIMULAZIONE

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

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

19Lorenzo Cavina TOOL DI SIMULAZIONE

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

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

Service Service + Service

na na + left(na)

20Lorenzo Cavina CASE STUDY: Field-like Diffusion

r

0.05

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

SCREENCAST

Screencast per:• Introduzione al tool• Esempio di utilizzo per il caso di studio

21SCREENCASTLorenzo Cavina

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

CASO DI STUDIO:

ALCUNI RISULTATI

A partire dai dati raccolti dalla simulazione sono stati realizzati alcuni grafici di analisi

22Lorenzo Cavina CASE STUDY: Field-like Diffusion

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

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