SlideShare a Scribd company logo
Facoltà di IngegneriaLAUREA SPECIALISTICA IN INGEGNERIA INFORMATICAIMPLEMENTAZIONE IN .NET DI UN FRAMEWORK PER L'ANALISI DI SISTEMI BIOLOGICI BASATO SULLA PROGRAMMAZIONE CONCORRENTE CON VINCOLI.Studente: Diego BANOVAZRelatore: Prof. Luca BORTOLUSSI
Prima analisi dell’obbiettivoSi vuole ottenere un framework per la simulazione di modelliIl framework deve essere interfacciabile con programmi esterniDeve essere utilizzabile da utenti non esperti in programmazioneDeve avere prestazioni accettabili
sCCP: StochasticConcurrentConstraintProgrammingEvoluzione di CCP
Linguaggio per la descrizione di modelli
Modello ad agenti interagenti
Interazioni di tipo concorrente
Sistema ad evoluzione probabilisticaLotka-Volterra
Lotka-Volterra: Codice SCCPPredatore :- [X > 0 -> Y = Y + 1; X = X - 1]@{Km * X * Y}.Predatore()   + [Y > 0 -> Y = Y - 1]@{Kd * Y}.Predatore();Preda:- [X > 0 -> X = X + 1]@{Kr * X}.Preda();
Lotka-Volterra: Codice SCCPNomi degli AgentiPredatore :- [X > 0 -> Y = Y + 1; X = X - 1]@{Km * X * Y}.Predatore()   + [Y > 0 -> Y = Y - 1]@{Kd * Y}.Predatore();Preda:- [X > 0 -> X = X + 1]@{Kr * X}.Preda();
Lotka-Volterra: Codice SCCPNomi degli AgentiPredatore :- [X > 0 -> Y = Y + 1; X = X - 1]@{Km * X * Y}.Predatore() + [Y > 0 -> Y = Y - 1]@{Kd * Y}.Predatore();Preda:- [X > 0 -> X = X + 1]@{Kr * X}.Preda();Scelta
Lotka-Volterra: Codice SCCPNomi degli AgentiPredatore :- [X > 0 -> Y = Y + 1; X = X - 1]@{Km * X * Y}.Predatore() + [Y > 0 -> Y = Y - 1]@{Kd * Y}.Predatore();Preda:- [X > 0 -> X = X + 1]@{Kr * X}.Preda();SceltaChiamate di Agenti
Lotka-Volterra: Codice SCCPGuardieNomi degli AgentiPredatore :- [X > 0 -> Y = Y + 1; X = X - 1]@{Km * X * Y}.Predatore() +[Y > 0 -> Y = Y - 1]@{Kd * Y}.Predatore();Preda:- [X > 0 -> X = X + 1]@{Kr * X}.Preda();SceltaChiamate di Agenti
Lotka-Volterra: Codice SCCPasktellif (ask) {tell}ratePredatore :- [X > 0 -> Y = Y + 1; X = X - 1]@{Km * X * Y}.Predatore()   + [Y > 0 -> Y = Y - 1]@{Kd * Y}.Predatore();Preda:- [X > 0 -> X = X + 1]@{Kr * X}.Preda();Tra tutti gli agenti attivi, l’azione da eseguire viene scelta tramite una Race Condition tra le azioni con asktrue.La probabilità che un’azione venga eseguita è proporzionale al proprio rate.
Semantica per sCCPPredaPredatoreAgentiX > 0 -> X = X + 1X > 0 -> Y = Y + 1; X = X - 1Y > 0 -> Y = Y - 1AzionisCCP istanzia dal sorgente un ambiente fatto da agenti.Il sistema è descritto completamente dagli agenti in vita e dallo stato delle variabili.
Semantica per ITSX > 0SVPreda > 0  && X > 0GuardiaX = X + 1X = X + 1; SVPreda--; SVPreda++UpdateKr * XSVPreda * Kr * XRateLo stato del sistema è dato dalle definizioni degli Agenti, dalle variabili globali e dalle State Variables. Le State Variables vengono associate ad ogni agente e rappresentano il Numero di agenti attivi di quel particolare tipo.
Semantica per ODELa modifica alle variabili avviene proporzionalmente alla state variables dell’agente e al rate dell’azione stessa.
Questa simulazione completamente deterministica.
Le equazioni e cui si arriva sono le stesse equazioni matematiche che definiscono il sistema.Risultati SemanticheSCCPITSODE
AnalisiDerivare dal codice SCCP le tre semanticheFornire un’interfaccia utenteInput standardizzatoOutput standardizzatoOutput graficoCustom MemorySemanticPerformance
ProgettazioneSCCPOther SWInputXMLCompilerComputazioneSimulatorGraphCSVOutput
Schema Macro ClassiConversione tra sCCPe XMLInterfacciaProgrammazioneInterfaccia SimulazioneCompilatore e Simulatore
Conversione tra sCCP e XMLUtilizzato un compilatore di compilatori (COCO)
In grado di generare documenti XML che rispettino un determinato DTD
Efficace segnalazione degli errori di ParsingConversione tra sCCPe XMLInterfacciaProgrammazioneInterfaccia SimulazioneCompilatore e Simulatore
Interfaccia ProgrammazioneScrivere codice sCCP
CommonsFunctions (Save, Load..)
Compilazione
Selezione Compilatore
Selezione ConstraintStore
Start GraphicSimulation
Start BatchSimulationConversione tra sCCPe XMLInterfacciaProgrammazioneInterfaccia SimulazioneCompilatore e Simulatore

More Related Content

PPT
Introduzione al Test Driven Development
PPS
PPTX
Il cuore delle donne
PPTX
Presentazione jane yau_2014_inglese
PDF
Presentazione: uno studio sull'efficacia di checker automatici per la moderni...
PPT
Thesis Magnone Slides IT
PPTX
Telegraph Cq Italian
PPT
Thesis Amicucci Slides IT
Introduzione al Test Driven Development
Il cuore delle donne
Presentazione jane yau_2014_inglese
Presentazione: uno studio sull'efficacia di checker automatici per la moderni...
Thesis Magnone Slides IT
Telegraph Cq Italian
Thesis Amicucci Slides IT

Similar to BanovazDiego-Slides Prelaurea (20)

PPT
3DD 1e Reconfig
PDF
Continuous Integration e High Quality Code
PPTX
Design Pattern Comportamentali
PPT
Java lezione 14
PPTX
Rx - ReactiveX
PDF
Presentazione understand
PDF
Maria Grazia Maffucci- programmazione presentazione
PPT
Configurazione automatica di ambienti di testing per reti di calcolatori - te...
PPT
3DD 1e Salomone
PDF
Progetto e realizzazione di uno strumento per la modifica sistematica di codi...
ODP
Javaday 2006: Java 5
PDF
Continous Delivery & HQ Code
PPTX
Design pattern architetturali Model View Controller, MVP e MVVM
PPTX
Progetti di tesi Automation Motion Control
PPTX
ASP.NET MVC
PDF
Android Test Driven Development
PDF
Android Test Driven Development
PDF
Automi probabilistici temporali e loro verifica formale
PPTX
Presentazione: Sviluppo di un hub di comunicazione in una applicazione per po...
PPT
Semi-Active Replication Protocol
3DD 1e Reconfig
Continuous Integration e High Quality Code
Design Pattern Comportamentali
Java lezione 14
Rx - ReactiveX
Presentazione understand
Maria Grazia Maffucci- programmazione presentazione
Configurazione automatica di ambienti di testing per reti di calcolatori - te...
3DD 1e Salomone
Progetto e realizzazione di uno strumento per la modifica sistematica di codi...
Javaday 2006: Java 5
Continous Delivery & HQ Code
Design pattern architetturali Model View Controller, MVP e MVVM
Progetti di tesi Automation Motion Control
ASP.NET MVC
Android Test Driven Development
Android Test Driven Development
Automi probabilistici temporali e loro verifica formale
Presentazione: Sviluppo di un hub di comunicazione in una applicazione per po...
Semi-Active Replication Protocol
Ad

BanovazDiego-Slides Prelaurea