Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

39
Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource

Transcript of Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Page 1: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Un Software per la Modellistica Computazionale

C3MIG 18 Dicembre 2008

Celllular Open Resource

Page 2: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

PREMESSE (Sommario) (1/2)

Contesto in cui si inserisce COR:

• Problemi connessi alla modellistica computazionale (Multidisciplinarietà, Comunicazione e Condivisione modelli)

• Lo IUPS Physiome Project

Obiettivi

Iniziative correlate (CellML)

Page 3: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

PREMESSE (Sommario) (2/2)

Il progetto CellML

• Obiettivi

• Caratteristiche del linguaggio

• Strumenti e SW correlati (editor, validatori, simulatori, etc.)

Page 4: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

PREMESSE

La potenza di calcolo e la disponibilità dei computer hanno reso la modellistica computazionale uno strumento importante per lo studio dei fenomeni biofisici. I modelli computazionali sono strumenti fondamentali per la comprensione di fenomeni che operano su scale temporali e spaziali diverse, che sottendono a complesse strutture e processi biofisici ( Garny et al., Phil.Trans.R.Soc.A (2008))

La fisiologia computazionale è un campo impegnativo:

• E’ un campo multidisciplinare che può richiedere competenze in biologia, biofisica, matematica (tra cui la conoscenza dei metodi numerici) e programmazione

Page 5: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Pubblicazione dei modelli (peer reviewed)

• Formulazione (sviluppatore)

• Presentazione alla rivista (sviluppatore)

• Verifica del modello (“arbitro”)

• Pubblicazione sulla rivista (redattore)

• Interpretazione (utente)

• Simulazione (utente/programmatore)

• Ciascuno di questi passi rappresenta una fonte di possibili errori ed include un grado di ambiguità di interpretazione

• E’ quindi opportuno definire un nuovo standard per la pubblicazione dei modelli che sia più protetto da questo tipo di errori

Page 6: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

IUPS Physiome Project

Lo IUPS (International Union of Physiological Sciences) Physiome Project fornisce un framework per la modellistica dell’organismo umano, utilizzando metodi computazionali che incorporano informazioni biochimiche, biofisiche ed anatomiche su molteplici scale spaziali e temporali

I principali obiettivi del progetto sono l’uso della modellistica computazionale per analizzare funzioni biologiche in modo integrato e fornire un sistema per il test di verifica di ipotesi (“hypothesis testing”)

L’iniziativa richiede lo sviluppo di linguaggi di mark-up, ontologie e strumenti per facilitare l’integrazione, la computazione e la condivisione dei modelli.

Page 7: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

10-6s 10-3s 100s 103s 106s 109s

Molecular events(ion channel gating)

DiffusionCell signalling

Motility Mitosis Proteinturnover

Humanlifetime

Atom Protein Cell Tissue Organ

10-12m 10-9m 10-6m 10-3m 100m

ProteinML CellML TissueML AnatML

Organism &organ system

OrganSystemML

Pathway models Stochastic models ODEs Continuum models(PDEs)

Systems modelsGene networks

IUPS Physiome Project

Page 8: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Il Progetto CellML (1/2)• Ideato per gestire la definizione e condivisione di modelli di processi biologici (ma in grado di descrivere anche processi di altro tipo)

• Indirizzato a fornire una consistenza (delle grandezze fisiche) nella rappresentazione matematica dei modelli

• Incoraggia l’evoluzione ed il riuso de modelli

• E’ un linguaggio di mark-up, basato sul formato XML, leggibile sia dall’uomo che dal computer

• Iniziò nel 1999, quasi in concomitanza con SBML

• CellML e SBML hanno scopi diversi:•“SBML is designed for representing models of biochemical reaction networks”.(http://www.sbml.org/)

•“The purpose of CellML is to store and exchange computer-based mathematical models”. (http://www.cellml.org/)

Page 9: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Il Progetto CellML (2/2)

CellML include informazioni inerenti a:• Struttura dei modelli (come le parti di un modello sono relazionate l’una all’altra)

• Espressioni matematiche (equazioni che descrivono i processi biologici sottostanti)

• Metadati (informazioni addizionali sul modello che permettano agli scienziati di ricercare specifici modelli o componenti di modelli in un database o repository di modelli)

• CellML include espressioni matematiche e metadati avvalendosi di altri linguaggi basati su XML, come ad esempio Content MathML, XML Linking Language (XLink), e Resource Description Framework (RDF) (C. M. Lloyd, M. D. B. Halstead, and P. F. Nielsen, "CellML: its future, present and past" Progress in Biophysics & Molecular Biology, vol. 85, pp. 433-450, June-July 2004)

Page 10: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Componenti CellML

• CellML ha una struttura semplice basata su componenti interconnessi

• I componenti astraggono concetti mettendo a disposizione interfacce ben definite ad altri componenti

• I componenti incapsulano concetti nascondendo dettagli ad altri componenti

Page 11: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Connessioni

• Le connessioni permettono la condivisione di informazioni fra componenti associando variabili visibili nell’interfaccia di un componente con quelle nell’interfaccia di un altro componente

• La consistenza delle associazioni è garantita imponendo che ad ogni variabile siano associate le appropriate unità fisiche

Page 12: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

IncapsulamentiL’utilizzo di interfacce private abilita gerarchie di incapsulazione

Page 13: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

ModelloUn modello è l’elemento radice di un documento CellML. E’ un contenitore per componenti, connessioni, unità e metadati.

Page 14: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Importazione• Il riuso dei modelli è abilitato dall’elemento import

• Grazie ad esso si possono costruire nuovi modelli combinando i modelli esistenti in appropriate gerarchie

Page 15: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Repository di Modelli CellMLIl repository di modelli CellML comprende oltre 350 modelli di:

• Vie di trasduzione del segnale;

• Vie metaboliche (metabolic pathways);

• Elettrofisiologia cellulare;

• Dinamica del calcio;

• Immunologia;

• Cicli cellulari;

• Modelli di muscolo liscio e scheletrico…

• Relazioni meccaniche e costitutive

• http://www.cellml.org/models/ (C. M. Lloyd, J. R. Lawson, P. J. Hunter, and P. F. Nielsen, "The CellML model repository" Bioinformatics, 2008)

•Il database BioModels è un repository simile che supporta modelli creati dalla comunità SBML

•http://www.biomodels.net/

Page 16: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Nuovo modello di repository CellML• Un modello CellML1.0 è contenuto in un singolo file (no import)

• CellML 1.1 permette di decomporre un modello in file più piccoli attraverso l’aggregazione di sottomodelli

• Gestire la condivisione di questi file è un compito difficile:

ad es. aggiornare un file in quanto componente di un determinato modello può romperne un altro, o può essere difficile individuare il componente più appropriato per essere incluso in un modello

• Il nuovo repository CellML si propone di risolvere questi problemi tramite un “distributed version control system” (DVCS)

• DVCS permette ad un gruppo di modellisti di lavorare insieme per costruire modelli, consentendo versioni multiple di componenti condivisi, senza fare affidamento ad un server centralizzato

Page 17: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Gestione dei modelli•I modelli del repository vengono continuamente esaminati

• Attualmente i modelli sono marcati (tag) con un attributo che indica il livello di gestione:

• Livello 0 – il modello riflette la versione pubblicata ma non è stato curato;

• Livello 1 - il modello viene caricato ed avviato nell’ambiente di simulazione specificato;

• Livello 2 - il modello produce risultati qualitativamente simili a quelli precedentemente pubblicati per il modello;

• Livello 3 – è stato verificato rigorosamente e quantitativamente che il modello produca esattamente i risultati pubblicati

• La gestione dei modelli è stata introdotta con il repository di modelli CellML 1.1

• Si sta lavorando per ottenere una “complianza MIRIAM” per tutti i modelli (N. Le Novere, A. Finney, M. Hucka, U. S. Bhalla, F. Campagne, J. Collado-Vides, E. J. Crampin,

M. Halstead, E. Klipp, P. Mendes, P. Nielsen, H. Sauro, B. Shapiro, J. L. Snoep, H. D. Spence, and B. L. Wanner, "Minimum information requested in the annotation of biochemical models (MIRIAM)" Nature Biotechnology, vol. 23, pp. 1509-1515, December 2005)

Page 18: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Problemi

• CellML è utile per scambiare descrizioni di modelli indipendenti dall’implementazione

•Tuttavia la rappresentazione in formato CellML non cattura un più alto livello di conoscenza

• L’informazione potrebbe essere inclusa tramite i metadati, ma questo approccio non è sufficientemente rigoroso

• E’ necessario un meccanismo di linking per associare le entità CellML a rappresentazioni di conoscenza ben definite (ontologie)

Page 19: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Impiego delle Ontologie• Attualmente si stanno sviluppando ontologie per descrivere forme e funzioni fisiologiche

• Altri si stanno occupando di ontologie relative alla modellistica della biologia. Ontologie:

• Anatomica (Gene Ontology/GONG, FMA);

• Gene regulation pathway (Gene Ontology/GONG, BioPax);

• di Espressione genica (Gene Ontology/GONG);

• Accesso comune a risorse bioinformatiche (TAMBIS/TaO);

• Fisica e matematica (SBO, Stanford Knowledge Systems, OPB)

• Si stanno collegando le entità dei modelli del repositoryes CellML a queste varie ontologie

Page 20: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Visualzzazione di Modelli CellML (1/4)

Le ontologie sono state sviluppate per supportare la visualizzazione di modelli CellML

Page 21: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Visualizzazione di Modelli CellML (2/4)

• I modelli sono convertiti nel Web Ontology Language (OWL) usando una ontologia (CellMLOWL) che cattura la struttura del file CellML

• Le entità CellMLOWL sono collegate al modello originale usando le specifiche che compaiono nei metadati del file CellML

Page 22: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Visualizzazione di Modelli CellML (3/4)• A sua volta è stabilita una relazione/mappatura fra le entità CellMLOWL e l’ontologia CellMLBio che fornisce un significato biofisico alle entità CellML

• Una visual template ontology (VTO) permette di far corrispondere ad ogni processo biologico e biofisico definito nella ontologia CellMLBio una notazione grafica

Page 23: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Visualizzazione di Modelli CellML (4/4)

• Tramite queste mappature, e sfruttando un insieme di regole di riduzione”grafica”, si può ottenere una rappresentazione più schematica della biologia di un modello

Page 24: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Cambiamenti Proposti per la Nuova Versione di CellML

• Rimozione dell’elemento reazione .

• Nuovo sistema di “tipizzazione” per permettere di definire tipi non reali e tipi strutturati attualmente non supportati.

Page 25: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Riepilogo (1/2)•Il paradigma di pubblicazione di un modello: pubblicazione a revisione paritaria.

•Il modello è implementato in un certo linguaggio di programmazione, specifico per una certa piattaforma (insieme di apparecchiature hardware e/o di struttura software che permette ad una applicazione di essere eseguita).

•Spesso il codice sorgente non è disponibile, ed occorre affidarsi solo alle informazioni contenute nella pubblicazione.

•Le informazioni riportate nelle pubblicazioni possono risultare lacunose o contenere errori impossibile riprodurre i risultati delle simulazioni documentati

QUESTO APPROCCIO NON FAVORISCE LA CONDIVISIONE ED IL RIUSO DEI MODELLI

Page 26: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Riepilogo (2/2)

•CellML, una soluzione per la modellistica computazionale

•E’ un linguaggio di markup

•Prospettive e finalità del linguaggio

•Gli elementi caratteristici di un modello in formato CellML (componenti, connessioni, unità, variabili, import)

•Il repository di modelli CellML (organizzazione e funzionalità)

•Progetto in corso di sviluppo: elaborazione, a partire da un modello CellML, di grafici che ne riproducano la struttura

Page 27: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Potenzialità del Linguaggio CellML

Modello CellML

Creazione / modifica modello CellML

(EDITOR)

Condivisione modelli

(REPOSITORY)

Simulazione modello (risoluzione numerica)

Validazione:

•Correttezza sintattica e semantica

•Consistenza unità

Metadati

Page 28: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Simulazione ed Authoring•Applicazioni in grado di lavorare su modelli CellML:

•CMISS/CMGUI (University of Auckland);

•PCEnv (University of Auckland);

•Cellular Open Resource (University of Oxford);Cellular Open Resource (University of Oxford);

•JSim (University of Washington);

•Virtual Cell (University of Connecticut Health Center);

•insilicoIDE (Osaka University).

• Tali applicazioni sono disponibili all’indirizzohttp://www.cellml.org/tools/

Page 29: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Tabella Comparativa di Alcuni SW che Lavorano su CellML

Page 30: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Cellular Open Resource (COR)

• Una applicazione dedicata a CellML, ideata per i modellisti e anche per gli insegnanti/studenti dal Dr. Alan Garny dell’università di Oxford

• E’ sviluppata per funzionare unicamente su Microsoft Windows, sviluppata in Delphi (frontend) e C (backend) http://it.wikipedia.org/wiki/Front-end_e_back-end

• Possibilità di effettuare aggiornamenti automatici

• Due modalità di funzionamento: editorial e computational

Page 31: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Editorial Mode•Attualmente supporta solo l’editing dei modelli in formato CellML1.0, ma è facilmente estendibile.

•L’aspetto dell’interfaccia grafica è ampiamente personalizzabile, in termini di colori (sfondo, testo,etc.), di font, di visualizzazione delle equazioni…

•Resa grafica delle equazioni delle variabili e delle definizioni delle unità.

•Esportazione modello in altri linguaggi

•Salvataggio modello

Page 32: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Computational Mode

•Simulazione del modello

•Grafici delle variabili di interesse

•Variazione delle condizioni iniziali

•Impostazione dell’integratore numerico

•Salvataggio ed esportazione dati

Page 33: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

“Concise text format”

Page 34: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Validazione in COR

•Validazione nell’ambito della modellistica: verificare che un dato modello riproduca adeguatamente i risultati sperimentali

•Validazione in CellML: 1) verifica della correttezza sintattica e semantica del file CellML 2) controllo delle unità di misura

•Validazione nell’ambito della modellistica: verificare che un dato modello riproduca adeguatamente i risultati sperimentali

•Validazione in CellML: 1) verifica della correttezza sintattica e semantica del file CellML 2) controllo delle unità di misura

COR è in grado di validare i modelli rispetto a tutte le regole fissate nelle specifiche per CellML 1.0, eccetto che per le reazioni ed i metadati:

•Modello con elemento reazione modello invalido

•Metadati accettati ma senza nessun controllo

Page 35: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Controllo Unità di Misura•Verificare la consistenza dimensionale dei termini che compaiono nelle espressioni matematiche (es. I=C*dV/dt)

•Effettuare una conversione automatica fra grandezze con le stesse dimensioni fisiche ma unità di misura differenti (es mV e V)

•In CellML ogni quantità (costante, variabile) deve avere una unità associata

COR implementa i recenti algoritmi di controllo delle unità sviluppati da Kooper & McKeever (Kooper & McKeever, Softw. Pract. Exp., 2008, mentre NON EFFETTUA UNA CONVERSIONE AUTOMATICA DELLE UNITA’

Errori dimensionali generano un messaggio di avvertimento (warning) a seguito del tentativo di debug/validazione del file.

Page 36: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Warning/ErrorWARNING: inconsistenza dimensionale o differente unità di misura. Permette comunque di eseguire e simulare il modello.

ERROR: errore sintattico o semantico. Il modello non può essere simulato.

Anche un warning è un errore da correggere! Altrimenti i risultati della simulazione non saranno esatti.

Page 37: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Link al Repository CellML

Page 38: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Simulazione modello

Page 39: Un Software per la Modellistica Computazionale C3MIG 18 Dicembre 2008 Celllular Open Resource.

Formato di testo conciso COR vs formato CellML