March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Simulation: Software Methods and Biological Processes Marco Antoniotti NYU Courant Bioinformatics.

Slides:



Advertisements
Similar presentations
Stochastic algebraic models SAMSI Transition Workshop June 18, 2009 Reinhard Laubenbacher Virginia Bioinformatics Institute and Mathematics Department.
Advertisements

Modeling and Simulation By Lecturer: Nada Ahmed. Introduction to simulation and Modeling.
Intro to modeling April Part of the course: Introduction to biological modeling 1.Intro to modeling 2.Intro to biological modeling (Floor) 3.Modeling.
Simulation executable (simv)
1 Using Octave to Introduce Programming to Technical Science Students Nuno C. Marques Francisco Azevedo CENTRIA, DI-
François Fages MPRI Bio-info 2007 Formal Biology of the Cell Modeling, Computing and Reasoning with Constraints François Fages, Constraint Programming.
Introduction to Graph “theory”
CS 367: Model-Based Reasoning Lecture 2 (01/15/2002)
Timed Automata.
Supervisory Control of Hybrid Systems Written by X. D. Koutsoukos et al. Presented by Wu, Jian 04/16/2002.
Some foundations of Cellular Simulation Nathan Addy Scientific Programmer The Molecular Sciences Institute November 19, 2007.
Åbo Akademi University & TUCS, Turku, Finland Ion PETRE Andrzej MIZERA COPASI Complex Pathway Simulator.
Petri net modeling of biological networks Claudine Chaouiya.
XML Documentation of Biopathways and Their Simulations in Genomic Object Net Speaker : Hungwei chen.
Computational Biology, Part 17 Biochemical Kinetics I Robert F. Murphy Copyright  1996, All rights reserved.
Esterel Overview Roberto Passerone ee249 discussion section.
Behavioral Design Outline –Design Specification –Behavioral Design –Behavioral Specification –Hardware Description Languages –Behavioral Simulation –Behavioral.
Discrete Event Simulation How to generate RV according to a specified distribution? geometric Poisson etc. Example of a DEVS: repair problem.
Automata theory and formal languages Andrej Bogdanov The Chinese University of Hong Kong Fall 2008.
Simulation.
EECE Hybrid and Embedded Systems: Computation T. John Koo, Ph.D. Institute for Software Integrated Systems Department of Electrical Engineering and.
Mixing Models of Computation Jie Liu Palo Alto Research Center (PARC) 3333 Coyote Hill Rd., Palo Alto, CA joint work with Prof. Edward.
Models of Computation for Embedded System Design Alvise Bonivento.
Queueing Models: Data Collection and Hand Simulation from Prof. Goldsman’s lecture notes.
EECE Hybrid and Embedded Systems: Computation T. John Koo, Ph.D. Institute for Software Integrated Systems Department of Electrical Engineering and.
MOBIES Project Progress Report Engine Throttle Controller Design Using Multiple Models of Computation Edward Lee Haiyang Zheng with thanks to Ptolemy Group.
Lab 01 Fundamentals SE 405 Discrete Event Simulation
Differential Equations
Solving ODEs UC Berkeley Fall 2004, E77 Copyright 2005, Andy Packard. This work is licensed under the Creative.
Applications of Differential Equations in Synthetic Biology
Introduction to Mathematical Computing © Francis J. Wright, 2010 Goldsmiths' Company Mathematics Course 2010.
Modeling and Simulation
ECE 8443 – Pattern Recognition EE 3512 – Signals: Continuous and Discrete Objectives: Definition of a System Examples Causality Linearity Time Invariance.
Chapter 1 Introduction to Simulation
1 Validation & Verification Chapter VALIDATION & VERIFICATION Very Difficult Very Important Conceptually distinct, but performed simultaneously.
ECE 720T5 Winter 2014 Cyber-Physical Systems Rodolfo Pellizzoni.
1 Performance Evaluation of Computer Networks: Part II Objectives r Simulation Modeling r Classification of Simulation Modeling r Discrete-Event Simulation.
Designing a Discrete Event Simulation Tool Peter L. Jackson School of Operations Research and Industrial Engineering March 15, 2003 Cornell University.
Benjamin Gamble. What is Time?  Can mean many different things to a computer Dynamic Equation Variable System State 2.
Transformation of Timed Automata into Mixed Integer Linear Programs Sebastian Panek.
1 Unit 1: Automata Theory and Formal Languages Readings 1, 2.2, 2.3.
Lecture 1 - Introduction June 3, 2002 CVEN 302. Lecture’s Goals General Introduction to CVEN Computer Applications in Engineering and Construction.
Computational Methods for Design Lecture 4 – Introduction to Sensitivities John A. Burns C enter for O ptimal D esign A nd C ontrol I nterdisciplinary.
Fourier Series. Introduction Decompose a periodic input signal into primitive periodic components. A periodic sequence T2T3T t f(t)f(t)
Conceptual Modelling and Hypothesis Formation Research Methods CPE 401 / 6002 / 6003 Professor Will Zimmerman.
ECE 8443 – Pattern Recognition ECE 3163 – Signals and Systems Objectives: Definition of a System Examples Causality Linearity Time Invariance Resources:
ETM 607 – Input Modeling General Idea of Input Modeling Data Collection Identifying Distributions Parameter estimation Goodness of Fit tests Selecting.
Modeling and Simulation Discrete-Event Simulation
Submodule construction in logics 1 Gregor v. Bochmann, University of Ottawa Using First-Order Logic to Reason about Submodule Construction Gregor v. Bochmann.
SIMULINK-Tutorial 1 Class ECES-304 Presented by : Shubham Bhat.
MA354 An Introduction to Math Models (more or less corresponding to 1.0 in your book)
Recap Cubic Spline Interpolation Multidimensional Interpolation Curve Fitting Linear Regression Polynomial Regression The Polyval Function The Interactive.
Chapter 7 The Laplace Transform
Advanced Engineering Mathematics, 7 th Edition Peter V. O’Neil © 2012 Cengage Learning Engineering. All Rights Reserved. CHAPTER 4 Series Solutions.
MA354 Math Modeling Introduction. Outline A. Three Course Objectives 1. Model literacy: understanding a typical model description 2. Model Analysis 3.
From Natural Language to LTL: Difficulties Capturing Natural Language Specification in Formal Languages for Automatic Analysis Elsa L Gunter NJIT.
Science and Engineering Practices K–2 Condensed Practices3–5 Condensed Practices6–8 Condensed Practices9–12 Condensed Practices Developing and Using Models.
Vertical Integration Across Biological Scales A New Framework for the Systematic Integration of Models in Systems Biology University College London CoMPLEX.
Simulation. Types of simulation Discrete-event simulation – Used for modeling of a system as it evolves over time by a representation in which the state.
Modelling Complex Systems Video 4: A simple example in a complex way.
Example application – Finite Volume Discretization Numerical Methods for PDEs Spring 2007 Jim E. Jones.
Traffic Simulation L2 – Introduction to simulation Ing. Ondřej Přibyl, Ph.D.
Finite State Machines Dr K R Bond 2009
G. Pullaiah College of Engineering and Technology
UNIT II Analysis of Continuous Time signal
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTES
Lecture One: Automata Theory Amjad Ali
Formal Languages and Automata Theory BODDEDA HARITHA LAKSHMI,
Automata theory and formal languages COS 3112 – AUTOMATA THEORY PRELIM PERIOD WEEK 1 AND 2.
Presentation transcript:

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Simulation: Software Methods and Biological Processes Marco Antoniotti NYU Courant Bioinformatics Group

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Outline ➢ Simulation fundamentals ➢ Modeling ➢ Modeling Tools ➢ Mathematical Tools (Differential Equations, Timed Systems) ➢ Languages ➢ Software infrastructure and implementations ➢ Models of computations ➢ Numerics

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Outline (continued) ➢ Tools ➢ General ➢ Matlab, Mathematica, Maple, Macsyma ➢ Specialized ➢ Discrete Event with Extensions ➢ Hybrid System Simulators ➢ Biological Simulations ➢ E-CELL, VirtualCell

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Modeling ➢ There are several frameworks that can be used for modeling ➢ Differential Equations (continuous) ➢ Discrete Systems ➢ Finite State Automata ➢ Petri Nets ➢ Dataflow Diagrams

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Time ➢ The main issue behind all of these modeling frameworks is Time ➢ Consequences ➢ What constitues progress ➢ How do we implement simulators for systems that assume a different notion of `time'

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Differential Equations ➢ Ordinary Differential Equations (ODE's) are a standard tool used to model physical, biological and engineering systems y'(t) = F(y(t), t) y(0) = k ➢ Time t is `continuous'

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Discrete Models ➢ Finite State Machines ➢ Petri Nets ➢ Discrete Event Systems ➢ A queue of `events' generated by some `sources' and processed by `components' ➢ Time is a usually a derived notion (e.g. by observing the sequence of events or a Wall Clock)

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 ODE Repressilator System ➢ The repressilator system (Elowizt, Leibler 2000) comprises three proteins, LacI, CI, and TetR controlling each other. TetR CILacI

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 ODE Repressilator System ➢ The repressilator system (Elowizt, Leibler 2000) is simply described as an ODE system (deterministic version): (i,j) = (lacI,cI) or (tetR,lacI) or (cI,tetR)

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Stem Cell Population Model ➢ There are different kinds of (Adult) Stem Cells ➢ Hematopoietic, Neuronal, Muscle, Epithelial ➢ A Stem Cell differentiates into Committed Progenitor Cells, which in turn differentiate into Regular Cells (T-cells, Red Blood Cells, Skin Cells)

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Stem Cell Differentiation and Proliferation ➢ Stem Cell Division/Proliferation ➢ Asymmetric ➢ Symmetric ➢ Environmentally Asymmetric

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Stem Cell FSA Ns = n. of Stem Cells Np = n. of Progenitor Cells Symmetric Division 2S Asymmetric Division die Symmetric Division 2P quiescent Ns = Ns + 1 Np = Np + 1 Np = Np + 2 Ns = Ns -1

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Stem Cells Population ODE Model

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Simulation Traces ➢ Running a simulation (numerically solving a set of differential equations) produces a trace ➢ A trace is a sequence of vectors of values, possibly symbolic ➢ E.g. for the FSA Stem Cell Model we have

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Discrete Event Systems ➢ The notion of trace gives rise to a more low level notion of system. ➢ Discrete Event Simulators are defined in terms of the underlying timed traces and of their generators

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Simulator Template Architecture System Specification Simulation Engine Simulation Results (Traces) Trace Inspection Synchronous GUI Plotter Math Analysis

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Implementing a Simulator ➢ The engine of a simulator is essentially a loop loop for i from start to finish do (evaluate next(i)) ➢ The nature of (evaluate next(i)) determines the type of simulator we are using

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Simulator Runtime ➢ The simulator runtime can be ➢ stopped ➢ when stopped, one or more individual components can be instantiated (or retrieved) and activated ➢ restarted ➢ when restarted, the simulation will proceed with the individual components behaving as if part of the overall simulation (this may be considered as a lens effect)

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Implementing a Discrete Event Simulator ➢ Specification Sources, Computing Units and Sinks ➢ Sources: square wave generators ➢ Units: down samplers, logical operation ➢ Engine ➢ A queue of pairs ➢ Evaluators for the units ➢ Each unit can sense if it has inputs

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Implementing a FSA Simulator ➢ Specification ➢ A set of Finite Automata ➢ Two possibilities ➢ Construct a product automata and then simulate ➢ Keep Automata separate and make simulation slightly more complex ➢ Engine ➢ check the set of all enabled transitions from the current state and produce the next state

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Implementing an ODE Simulator/Solver ➢ Specification ➢ A set of ODE's ➢ Engine ➢ Evaluate at discrete time steps the value of the function and of its derivative ➢ Several different methods are available ➢ Euler ➢ Runke-Kutta

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Implementing an ODE Simulator/Solver (contd) ➢ Euler Method (unrecommended) ➢ Runge-Kutta 4

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Implementing an ODE Simulator (contd.) ➢ Complete formulation of midpoint computations in Runge-Kutta 4

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Stem Cell Population Octave (Matlab) Code ➢ The ODE formulation is function dn = f(N, t) alphap= 0.01; alphas= 0.01; beta = 5; gamma = 0.2; theta = 0.2; kappa = 0.5; Ks = 1000; Kp = 10000; dn(1) = (beta * (Ks - N(1))/Ks - theta * (Kp - N(2))/Kp - alphas) * N(1); dn(2) = (Kp - N(2))/Kp * ((gamma + 2 * theta) * N(1) + kappa * N(2)) - alphap * N(2); endfunction N0 = [50; 1000]; t = linspace(0, 15, 100)'; N = lsode("f", N0, t);

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Running the code

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 A Finite Automata Language: Esterel ➢ Consider the following example ?A ?B!O ?R ?B ?A!O ?A?B!O

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Esterel Rendition ➢ The previous automata is rendered as module ABRO: input A, B; output O; loop [await A; await B]; emit O each R end ➢ Each transition happens at each tick

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Putting it all together ➢ How do we reconcile a high level modeling view with a low level continuous time based simulation? ➢ Hybrid Systems are one of the latest developments mixing Finite State Automata and Continuous Systems

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Hybrid Systems ➢ A Hybrid System is a computational tool that switches among different sets of ODE's accoding to a some conditions y < k2 y > k1 k1 > k2 dy/dt = 3dy/dt = -1.5

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 A Hybrid System Implementation ➢ The main loop of a Hybrid System simulation engine becomes let h = loop for i from start to finish doevaluate the current set of ODE's for one step h if (any transition becomes enabled) doswitch ODE set

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Stem Cells Population Hybrid System Formulation ➢ The Stem Cell ODE formulation is a deterministic and continuous approximation of the real (?!?) model ➢ An Hybrid System formulation can be made closer to the discrete and stochastic counting nature of the model

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Stem Cells Population Hybrid System (contd) ➢ We model the Stem Cell Population as a Hybrid System with only one differential (continuous) variable: time (time) ➢ Our system will therefore integrate d time / dt = 1

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Stem Cells Population Hybrid System (contd) ➢ We associate to each transition an exponential decay rate ➢ The exponential decay rate represents the `rate' of an event in the population model (asymmetric division, apoptosis) Ns = Ns -1 quiescent die d(time)/dt = 1 r(die) = random() - ln(r(die)) < alpha * Ns * time

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Stem Cells Population Hybrid System (contd) ➢ One language that can be used to this end is -Shift (Simsek 2000, UC Berkeley) (defhybrid SC-behavior ()... (:discrete ('quiescent :flow ((d/dt time) (random 1.0)))) (:transitions ('quiescent 'die :when (<= (- (log r) (* alpha n_s time))) :do ((time 0) (n_s (decf n_s)))) ))

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Problems with HS ➢ There are several Numerical problems ➢ Guard Crossings y(t) t time step (0, 0) guard: y(t) < 0

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Conclusions ➢ Simulations are a good tool for Modeling several systems, hence Biological Systems as well ➢ We saw different kinds of simulation paradigms ➢ continous ➢ discrete ➢ hybrid

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 Conclusions (2) ➢ A simulation tool must be fitted to the problem at hand ➢ Proper modeling is always a prerequisite to produce data that can be analyzed by matching it with laboratory experimental results

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 The Model Cell Differentiation ➢ Cell Differention (e.g. multipotent HSCs, Metcalfe et al. 1997) C V G1G1 R S G2G2 M G0G0 Apoptosis

March 19, 2002Marco Antoniotti NYU Bioinformatics Group1 The Model Cell Differentiation ➢ Cell Differention (e.g. multipotent HSCs, Metcalfe et al. 1997) GM-Progenitors Macrophages Granulocytes