1 / 52

Modeling with the Systems Biology Workbench

Modeling with the Systems Biology Workbench. Herbert M Sauro Frank Bergmann University of Washington Department of Bioengineering Seattle, WA. Why Develop Software?.

satin
Télécharger la présentation

Modeling with the Systems Biology Workbench

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Modeling with the Systems Biology Workbench Herbert M Sauro Frank Bergmann University of Washington Department of Bioengineering Seattle, WA

  2. Why Develop Software? Basic simulation software can now be purchased off the self, a much cheaper option that developing equivalent solutions in house. Reasons for Academia to development software: New algorithms New visualization techniques New biological applications. Pushing the envelope on software provision in Systems Biology. SimBiology – Matlab (30+ man hours)

  3. Topics Modeling Architecture Using the software

  4. Differential Equation Models Basic System Equations v = reaction rate Let S be a molecular species in a cellular map Molecule S then the rate at which S changes in time is given by the equation:

  5. Differential Equation Models Simple example:

  6. Model Definition Stoichiometry Matrix Species Vector Rate Vector Parameter Vector

  7. What we Actually Use: = Independent Species = Reduced Stoichiometry Matrix = Dependent Species = Part of the ‘Link’ Matrix = Conservation Vector Totals

  8. An Example:

  9. An Example:

  10. An Example:

  11. Why is Reduction Important? Because it permits us to compute a non-singular Jacobian Reduced Stoichiometry Matrix Elasticity Matrix

  12. Transfer Function Transfer Function

  13. Why is the Jacobian Important? Steady-State Time Course Stochastic Jacobian Elasticities Kinetic Laws (N N L K C) r Model Stoichiometry SBML SBW

  14. Choosing Appropriate Rate Laws • Different kinds of rate laws for continuous modeling: • Mass-action • Aggregate Rate laws, e.g. Michaelis-Menten • Power Laws – S Systems • LinLog Joseph Heijnen and Diana Visser Delft University of Technology, The Netherlands

  15. Choosing Appropriate Rate Laws

  16. SBW Architecture Module 1 Module 3 Module 2 SBW is a lightweight framework that allows different applications written in different languages and on different platforms to communicate. SBW C++ Binding SBW C# Binding SBW Java Binding SBW Broker 16

  17. SBW Architecture Module 2 Module 1 Module 3 Module 3 Module 1 Module 2 Remote Communication SBW C# Binding SBW C++ Binding SBW Java Binding SBW C# Binding SBW C++ Binding SBW Java Binding SBW Broker SBW Broker 17

  18. SBW Architecture Module 1 Module 3 Module 2 Module 1 Module 3 Module 2 Remote Communication SBW C# Binding SBW C++ Binding SBW Java Binding SBW C++ Binding SBW C# Binding SBW Java Binding SBW Broker SBW Broker Web Service 18

  19. SBW Architecture Module 2 Module 3 Module 2 Module 1 Module 1 Module 3 Remote Communication SBW C# Binding SBW C++ Binding SBW Java Binding SBW C# Binding SBW C++ Binding SBW Java Binding SBW Broker SBW Broker Web Service Web Applications 19

  20. Perspectives – Developer Windows, Linux and Mac OSX 20

  21. SBW Broker Programmer’s Perspective • Small application programming interface (API) • Minimize the amount of work necessary to implement • - Libraries implement inter-program communications • - A registry of services for applications to query • - XML-based model representation (SBML) - Modular, distributed, broker-based architecture Uses a simple lightweight binary TCP/IP communication protocol

  22. Message Structure - Messages are passed as binary streams via TCP/IP - Blocking and non-blocking calls - Exception handling built-in Supported types in the payload: Byte, Boolean, int, double, string, complex, arrays, lists Details on SBW’s internal architecture can be found at: Sauro HM, Hucka M, Finney A, Wellock C, Bolouri H, Doyle J and Kitano H. (2003) Next generation simulation tools: the Systems Biology Workbench and BioSPICE integration. OMICS. 2003 Winter;7(4):355-72.

  23. Resource Structure mathModule Module Level …… log trig … Service Level log10 sin … ln cos … Method Level exp tan … Demo Inspector

  24. Exposing methods public class sbwInterface { [Help("Returns the Sine of a value")] public double Sin(double value) { return Math.Sin (value); } }

  25. Using Other Modules – VS Addon C,C++,C# Module Lib File

  26. Example - Matlab Building Matlab Services function y = myAdd (a, b) %SBW module SBWMath %SBW service myService %SBW method myAdd service myService sig=“double myAdd(double,double)” y = a + b Calling SBW from Matlab CLI sbwconnect; getSBML = sbwGetMethod (‘JDesigner’, ‘model’, ‘string getSBML()’); sbwStr = sbwCall (getSBML);

  27. Web Services from SBW/BioSPICE A Web Application is provided that allows every SBW Module to be wrapped up in a Web Service: Web Service Generator web page available at http://134.173.97.95/sbwwebservicecreatorinterface/webform1.aspx

  28. Web Interface Example http://134.173.97.95/simulation/webform1.aspx

  29. Dynamically locate services in a given category Categories • Categories permit SBW applications to recognize standard interfaces • in other SBW applications. We currently have three defined categories: • Translation • Analysis • Simulation

  30. Categories Translation SBW applications that define the translation category are capable of translating SBML into some other format (eg Matlab, XPP) and returning the translation to the caller. Analysis SBW applications that define the analysis category are capable of accepting an SBML model and by implication are capable of doing ‘something’ with the model. Simulation SBW applications that define the simulation category mean they support the simulation API.

  31. Categories permit users to ‘move’ seamlessly from one application to another taking with them the model under study User Experience

  32. SBW Menu 32

  33. Perspectives – User 33

  34. Available SBW Simulators 34

  35. Available SBW Modules 35

  36. Examples – Model Editors JDesigner cellDesigner http://www.sys-bio.org/ http://celldesigner.org/

  37. Discovering Qualitative Behavior Discovery Tool Used to search for possible oscillators and bistable switches in stoichiometric networks. The tool uses a search technique based on a genetic algorithm.

  38. Discovery Tool

  39. Specialist Modules:Emery Conrad’s Oscill8 Interface Implements the Analysis category so that models can be accessed from SBW.

  40. Specialist Modules: Structural Analysis Tool Implements the analysis category.

  41. Specialist Modules: Frequency Analysis Tool Implements the Analysis category and permits the frequency response of a model to be determined.

  42. Specialist Modules: Stochastic Simulators Implements the analysis category and permits models to be simulated using a stochastic solver. Supports additional analysis such as PDF generation, Power Spectra, autocorrelation, population metrics. The GUI implements a callback to the Gillespie simulators to support the progress bar.

  43. Auto layout of SBML models We use this tool to take raw SBML and generate SBML containing the layout standard that is being developed by the SBML community. Uses a spring and mass model to determine layout. Has specific rules for determining Bezier orientation and Includes a gravity field to main cohesion of disconnected sub-graphs. Anastasia Deckard

  44. 3D Visualization of Simulation Runs Based on OpenGL, currently an installer is available for Windows but the source is portable to the Mac and Linux. Requires a decent graphics card for maximum gratification! ( http://public.kgi.edu/~fbergman )

  45. 3D Visualization of Simulation Runs Based on OpenGL, currently an installer is available for Windows but the source is portable to the Mac and Linux. Requires a decent graphics card for maximum gratification! (http://public.kgi.edu/~fbergman )

  46. 3D Visualization of Simulation Runs QT Based version

  47. SBW Workflow for 3D Tool Structural Analysis Module Model Editor SBML Module Simulator 3D Interface

  48. Availability

  49. Example Usage

  50. Acknowledgments Frank Bergmann (SBW) Ravi Rao (Structural Analysis) Vijay Chickarmane (Bif Discovery Tool) Anastasia Deckard (Docs, layout tool) Sri Paladugu (libSBML intregration) Mike Hucka and Ben Bornstein (libSBML) Alan Hindmarsh (CVODE) Nowak and Weimann (NLEQ) LAPACK (NSF/DOE) Availability: GTL www.sys-bio.org http://public.kgi.edu/~fbergman BioSPICE

More Related