software for sbml today
DESCRIPTION
Presentation given by Michael Hucka at HARMONY 2012, May 21-25, Department of Bioinformatics - BiGCaT, University of Maastricht, The Netherlands.TRANSCRIPT
Software for SBML Today
Michael Hucka, Ph.D.
Department of Computing + Mathematical SciencesCalifornia Institute of Technology
Pasadena, CA, USA
Email: [email protected] Twitter: @mhucka
HARMONY 2012, Maastricht, The Netherlands2
Format for representing computational models of biological processes
• Data structures + usage principles + serialization to XML
Neutral with respect to modeling framework
• E.g., ODE, stochastic systems, etc.
SBML = Systems Biology Markup LanguageSBML = Systems Biology Markup Language
3
SBML is a lingua franca for
software (not humans)
4
The process is central
• Called a “reaction” in SBML
• Participants are pools of entities (species)
Models can further include:
• Other constants & variables
• Compartments
• Explicit math
• Discontinuous events
Basic SBML concepts are fairly simple
• Unit definitions
• Annotations
5
Well-stirred compartments
Some basics of SBML core model encoding
c
n
6
c
n
protein A protein B
gene mRNAn mRNAc
Species pools are located in compartments
7
Reactions can involve any species anywhere
c
n
protein A protein B
gene mRNAn mRNAc
8
Reactions can cross compartment boundaries
c
n
protein A protein B
gene mRNAn mRNAc
9
Reaction/process rates can be (almost) arbitrary formulas
c
n
protein A protein B
gene mRNAn mRNAc
f1(x)
f2(x)
f3(x)f4(x)
f5(x)
10
“Rules”: equations expressing relationships in addition to reaction sys.
c
n
protein A protein B
gene mRNAn mRNAc
f1(x)
f2(x)
f3(x)
g1(x)g2(x)
.
.
.
f4(x)
f5(x)
11
“Events”: discontinuous actions triggered by system conditions
c
n
protein A protein B
gene mRNAn mRNAc
f1(x)
f2(x)
f3(x)
g1(x)g2(x)
.
.
.
Event1: when (...condition...), do (...assignments...)
Event2: when (...condition...), do (...assignments...)
...
f4(x)
f5(x)
12
Annotations: machine-readable semantics and links to other resources
Event1: when (...condition...), do (...assignments...)
Event2: when (...condition...), do (...assignments...)
...
c
n
protein A protein B
gene mRNAn mRNAc
f1(x)
f2(x)
f3(x)
g1(x)g2(x)...
f4(x)
f5(x)
“This event represents ...”
“This is identified by GO id # ...”
“This is an enzymatic reaction with EC # ...”
“This is a transport into the nucleus ...” “This compartment
represents the nucleus ...”
13
Scope of SBML encompasses many types of models14
Today: spatially homogeneous models
• Metabolic network models
• Signaling pathway models
• Conductance-based models
• Neural models
• Pharmacokinetic/dynamics models
• Infectious diseases
Scope of SBML encompasses many types of models14
Today: spatially homogeneous models
• Metabolic network models
• Signaling pathway models
• Conductance-based models
• Neural models
• Pharmacokinetic/dynamics models
• Infectious diseases
Scope of SBML encompasses many types of models
Find examples inBioModels Databasehttp://biomodels.net/biomodels
14
Today: spatially homogeneous models
• Metabolic network models
• Signaling pathway models
• Conductance-based models
• Neural models
• Pharmacokinetic/dynamics models
• Infectious diseases
Coming: SBML Level 3 packages to support other types
• E.g.: Spatially inhomogeneous models, also qualitative/logical
Scope of SBML encompasses many types of models
Find examples inBioModels Databasehttp://biomodels.net/biomodels
14
Where to learn more: SBML.org—the SBML portal
15
Find SBML software
Where to learn more: SBML.org—the SBML portal
15
SBML Software Guide, with different views (same data)16
How did we gather data on the software tools?
Historically (until mid-2000’s):
• Word of mouth at workshops & conferences
• Direct contact
Mid/late-2000’s to ~2010:
• Created electronic survey
• Citation alerts (e.g., Web of Science)
2011:
• Expanded survey
- Basis of this talk
17
New version of the SBML software survey
18
General features of the survey
Online, implemented using commercial survey website
28 questions
• Mix of multiple choice and fill-in-the-blank
85 responses by July 2011
• Removed incomplete responses
• 81 software tools left
Avoided “corrections” to data
19
Question: Which of the following categories best describe your software? (Check all that apply.)
Purposes of the software systems
Total number of software tools
Simulation software
Analysis s/w (in addition, or instead of, simulation)
Creation/model development software
Visualization/display/formatting software
Utility software (e.g., format conversion)
Data integration and management software
Repository or database
Framework or library (for use in developing s/w)
S/w for interactive env. (e.g., MATLAB, R, ...)
Annotation software0 20 40 60 80
11
13
13
14
16
23
31
31
40
42
20
Question: Which of the following categories best describe your software? (Check all that apply.)
Purposes of the software systems
Total number of software tools
Simulation software
Analysis s/w (in addition, or instead of, simulation)
Creation/model development software
Visualization/display/formatting software
Utility software (e.g., format conversion)
Data integration and management software
Repository or database
Framework or library (for use in developing s/w)
S/w for interactive env. (e.g., MATLAB, R, ...)
Annotation software0 20 40 60 80
11
13
13
14
16
23
31
31
40
42
20
Question: Which of the following categories best describe your software? (Check all that apply.)
Purposes of the software systems
Total number of software tools
Simulation software
Analysis s/w (in addition, or instead of, simulation)
Creation/model development software
Visualization/display/formatting software
Utility software (e.g., format conversion)
Data integration and management software
Repository or database
Framework or library (for use in developing s/w)
S/w for interactive env. (e.g., MATLAB, R, ...)
Annotation software0 20 40 60 80
11
13
13
14
16
23
31
31
40
42
1/4 1/2 3/4
20
Question: Which of the following categories best describe your software? (Check all that apply.)
Purposes of the software systems
Total number of software tools
Simulation software
Analysis s/w (in addition, or instead of, simulation)
Creation/model development software
Visualization/display/formatting software
Utility software (e.g., format conversion)
Data integration and management software
Repository or database
Framework or library (for use in developing s/w)
S/w for interactive env. (e.g., MATLAB, R, ...)
Annotation software0 20 40 60 80
11
13
13
14
16
23
31
31
40
42
21
Question: Which of the following categories best describe your software? (Check all that apply.)
Purposes of the software systems
Total number of software tools
Simulation software
Analysis s/w (in addition, or instead of, simulation)
Creation/model development software
Visualization/display/formatting software
Utility software (e.g., format conversion)
Data integration and management software
Repository or database
Framework or library (for use in developing s/w)
S/w for interactive env. (e.g., MATLAB, R, ...)
Annotation software0 20 40 60 80
11
13
13
14
16
23
31
31
40
42
?
21
Question: Which of the following categories best describe your software? (Check all that apply.)
Purposes of the software systems
Total number of software tools
Simulation software
Analysis s/w (in addition, or instead of, simulation)
Creation/model development software
Visualization/display/formatting software
Utility software (e.g., format conversion)
Data integration and management software
Repository or database
Framework or library (for use in developing s/w)
S/w for interactive env. (e.g., MATLAB, R, ...)
Annotation software0 20 40 60 80
11
13
13
14
16
23
31
31
40
42
?
Low
21
Question: Regardless of whether your software provides simulation capabilities, what modeling frameworks does the package support when working with SBML files?
Mathematical frameworks
Ordinary differential equations (ODE)
Discrete stochastic simulation
Discontinuous event handling
Differential-algebraic equations (DAE)
Logical/Boolean networks
Delay-differential equations (DDE)
Partial differential equations (PDE)
None of the above, or other framework0 20 40 60 80
20
8
9
11
17
25
28
54
Total number of software tools
22
Question: Regardless of whether your software provides simulation capabilities, what modeling frameworks does the package support when working with SBML files?
Mathematical frameworks
Ordinary differential equations (ODE)
Discrete stochastic simulation
Discontinuous event handling
Differential-algebraic equations (DAE)
Logical/Boolean networks
Delay-differential equations (DDE)
Partial differential equations (PDE)
None of the above, or other framework0 20 40 60 80
20
8
9
11
17
25
28
54
Total number of software tools
E.g.: FBA
22
Question: Which features of SBML can your software recognize and act on?
Specific SBML-specific characteristics
Species, reactions, parameters, and/or compartments
Work with reaction kinetics
Work with stoichiometric relationships/maps
Work with other mathematical relationships
Work with conditional discontinuous events
Work with time delays
Other, or not applicable
0 20 40 60 80
14
10
27
32
46
48
65
Total number of software tools
23
Other supported standards
MIRIAMSBO
SBGNBioPAXCellML
SED-MLMFAML
PNMLSBOL
0 5 10 15 20
111
33
613
1416
Total # software tools supporting other standards
(Warning: different scale)
Question: Which other standards does your software support?
24
Operating systems supported by the 81 tools
Microsoft Windows
Apple Mac OS
Linux
Web browser
0 20 40 60 807
0
0
8
26
58
64
69
Total Only this
25
Operating systems supported by the 81 tools
Microsoft Windows
Apple Mac OS
Linux
Web browser
0 20 40 60 807
0
0
8
26
58
64
69
Total Only this
!
25
Availability of software
Fee-based2%
Free98%
Fees for academics
Fee-based10%
Free90%
Fees for non-academics
Notavail.21%
Codeavailable
79%
Is source code available?
26
Final impressions
Some pleasing results
• Large variety, including tools with features SBML can’t yet represent
- Hopefully stands as testament to SBML’s utility
• Nearly 80% are open source
Some disappointing results
• Low response turnout: 85 vs 230 tools in matrix
• Low support for MIRIAM
27
National Institute of General Medical Sciences (USA) European Molecular Biology Laboratory (EMBL)ELIXIR (UK)Beckman Institute, Caltech (USA)Keio University (Japan)JST ERATO Kitano Symbiotic Systems Project (Japan) (to 2003)JST ERATO-SORST Program (Japan)International Joint Research Program of NEDO (Japan)Japanese Ministry of AgricultureJapanese Ministry of Educ., Culture, Sports, Science and Tech.
BBSRC (UK)National Science Foundation (USA)DARPA IPTO Bio-SPICE Bio-Computation Program (USA)Air Force Office of Scientific Research (USA)STRI, University of Hertfordshire (UK)Molecular Sciences Institute (USA)
Fund
ing a
ckno
wled
gmen
ts
28
A huge thank you to the community
Attendees at SBML 10th Anniversary Symposium, Edinburgh, 2010
29