Software Development for Systems Biology - PowerPoint PPT Presentation

1 / 31
About This Presentation
Title:

Software Development for Systems Biology

Description:

Bioengineering. Seattle. BioSPICE/SBW Systems Biology Workbench. SBW is a lightweight framework that allows different applications written in ... – PowerPoint PPT presentation

Number of Views:42
Avg rating:3.0/5.0
Slides: 32
Provided by: Priv209
Learn more at: http://ww25.imagwiki.org
Category:

less

Transcript and Presenter's Notes

Title: Software Development for Systems Biology


1
Software Development for Systems Biology
  • Herbert M Sauro
  • Frank Bergmann
  • University of Washington
  • Bioengineering
  • Seattle

2
BioSPICE/SBW Systems Biology Workbench
SBW is a lightweight framework that allows
different applications written in different
languages and on different platforms to
communicate.
Basic Simulation Capability
Model Editors
Broker
SBML Support
?
3
Message Passing Architecture
4
Programmers 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 protocal
5
Programmers Perspective
  • Language Independent
  • C/C, Java, Delphi, .NET (C etc.),
    Matlab, Perl, Python.
  • Broker is Platform Independent
  • Windows, Linux and Mac OSX

6
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 Language Independent C/C, Java, Delphi,
.NET (C etc.), Matlab, Perl, Python.
7
Resource Structure
mathModule
Module Level

log
trig

Service Level
log10

sin
ln

cos
Method Level
exp

tan
Demo Inspector
8
Exposing methods
public class sbwInterface Help("Returns
the Sine of a value") public double Sin(double
value) return Math.Sin (value)

9
Using Other Modules
Module Lib File
10
Example - Matlab
Building Matlab Services
function y myAdd (a, b) SBW module
SBWMath SBW service myService SBW
method myAdd service myService sigdouble
myAdd(double,double) y a b
Calling SBW from Matlab CLI
sbwconnect getSBML sbwGetMethod (JDesigner,
model, string getSBML()) sbwStr sbwCall
(getSBML)
11
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/sbwwebservicecreatorinterf
ace/webform1.aspx
12
Web Interface Example
http//134.173.97.95/simulation/webform1.aspx
13
Categories
Dynamically locate services in a given category
  • Categories permit SBW applications to recognize
    standard interfaces
  • in other SBW applications. We currently have
    three defined categories
  • Translation
  • Analysis
  • Simulation

14
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.
15
User Experience
Categories permit users to move seamlessly from
one application to another taking with them the
model under study
16
Examples Model Editors
JDesigner
cellDesigner
http//www.sys-bio.org/
http//celldesigner.org/
17
Examples SBML
libSBML
http//www.sbml.org
18
Examples Simulators
Oscill8
Klaus Meier
Java (Linux,Win.Mac), Good Gillespie,Langevin, ODE
C (Linux,Win,Mac), ODEs, Events, Emery Conrad/
Stuttgart
Gillespie.NET
Jarnac
c (Linux, Win, Mac),
Delphi (Win), ODE, Well tested
www.sys-bio.org
www.sys-bio.org
roadRunner
Dizzy
Java (Linux, Win, Mac), stochastic
C (Linux,Win.Mac), designed for SBML compliance
(local and global) www,sys-bio.org
www.isb.org/
19
Specialist Modules Bifurcation Analysis Tool
Implements the analysis category. The tool is
used to discover whether a particular model has
the potential to display oscillatory or
bistability.
20
Specialist ModulesEmery Conrads Oscill8
Interface
Bifurcation tool begin developed here at VT can
interface to SBW. Implements the Analysis
category so that models can be accessed from SBW.
21
Specialist Modules Structural Analysis Tool
Implements the analysis category.
22
Specialist Modules Frequency Analysis Tool
Implements the Analysis category and permits
the frequency response of a model to be
determined.
23
Specialist Modules Stochastic Simulators
Implements the Analysis category and permits
models to be simulated using a stochastic
solver. Support additional analysis such as PDF
generation, Power Spectra, autocorrelation, popula
tion metrics
24
Generic Simulation Interface
Any simulator that implements the Sim API (even
level 1) will automatically be able to use the
interface via this generic simulation interface.
Those API methods that are not supported are
disabled in the interface.
25
Non-GUI Modules
  • LAPACK
  • CVODE
  • NLEQ
  • Structural Analysis Algorithms
  • Metabolic Control Analysis including Frequency
    Analysis
  • libSBML
  • Translators
  • Autolayout
  • Basic Optimizers of time series data to models

26
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
Download from http//public.kgi.edu/fbergman
27
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 )
28
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 )
29
Acknowledgments
Frank Bergmann (SBW) Ravi Rao (Structural
Analysis) Vijay Chickarmane (Bif Discovery
Tool) Sri Paladugu (libSBML intregration) Mike
Hucka and Ben Bornstein (libSBML) Alan Hindmarsh
(CVODE) Nowak and Weimann (NLEQ) LAPACK
(NSF/DOE) Availability
www.sys-bio.org http//public.kgi.edu/fbergman
GTL
30
Layout Tool
31
Exposing methods
// create a new service sbwInterface oService
new sbwInterface() // create SBW
module ModuleImplementation oModule new
ModuleImplementation( "edu.kgi.trig", Tri
g Module", LowLevel.ModuleManagementType.Uniqu
eModule, "Provides Trig Functions") // add
the service to it oModule.addService( trig",
Trig Module", "plugin/math/trig", Provides
Trig Functions", ref oService)
oModule.run(args)
Write a Comment
User Comments (0)
About PowerShow.com