BioUML - SOFTWARE FRAMEWORK FOR SYSTEMS
Download
Report
Transcript BioUML - SOFTWARE FRAMEWORK FOR SYSTEMS
BioUML
SOFTWARE FRAMEWORK
FOR SYSTEMS BIOLOGY
Overview
2004 - 2011 ITC Software All rights reserved.
Motivation
Systems Biology requires an integrated
software environment that spans the
comprehensive range of capabilities
including:
• access to databases with experimental
data
• tools to formalize descriptions of
biological systems’ structure and function
• tools to simulate and visualize biological
systems
Results
BioUML is designed as a common purpose
framework for systems biology providing
formalized graphic notation to describe the
structure and function of biological systems,
their visualization and simulation as well as
access to databases with relevant
experimental
data.
Architecture
•
•
•
•
•
•
Meta model
Database modules
Diagram viewer
Diagram editor
Database search engine
Visual modeling and simulation tools
Meta model
Meta model provides an abstract layer to
present the structure of any biological
system as a clustered graph that further
can be visualized as a diagram or be
stored as XML files.
Database module: concept
We introduce the concept of a module that
serves to incorporate different databases
on biological pathways into the BioUML
framework.
If we use a metaphor, then BioUML can be
imagined as an operating system (for
example Windows), and modules are the
concrete programs (for example MS Word).
Database modules
We have developed modules for the
following databases on biological
pathways:
• GeneNet (IC&G, SB RAS, Russia)
http://wwwmgs.bionet.nsc.ru
• TRANSPATH (BIOBASE GmbH, Germany)
http://transpath.gbf.de
• KEGG pathways (Kyoto University, Japan)
http://www.kegg.com
Diagram viewer
•Information from different databases on
biological pathways can be mapped into
objects from BioUML meta model.
•Thereafter
the diagram
viewer can
visualize the
structure of
biological
systems as
diagrams.
Diagram viewer
Main features:
• Seamless integration with databases on
biological pathways:
– clickable diagram nodes.
– hyperlinks support
• Powerful system of filters allowing user to
highlight components with the specified
properties.
• Print and print preview support.
• Saving diagram as GIF images.
• Zoom.
This is “Hs:IRF2” gene
description from the GeneNet
database.
Clicking on any diagram node you
can get the object description from
the corresponding database.
Experimental data for “Antiviral response” diagram
has been got from three species :
- chicken (Gallus gallus)
- human (Homo sapiens)
- mouse (Mus musculus).
Using filters user can select (highlight) only those
components which are specific for the selected
species, for example for Mus musculus.
Similarly user can select only those components whose
expression was experimentally proven in the specified
cell types, for example in human T-lymphocytes.
Diagram editor
• Visual editing of diagrams.
• Allows associate arbitrary image with
diagram node.
.
• Seamless integration with databases
on
biological pathways.
• Powerful editor for database records
associated with diagram elements.
• Powerful search engine allowing a user to
find all components interacted with
selected one.
• Undo/redo support.
Components toolbar allows
user to add into diagram
component of specified type.
By clicking on any diagram node user can
edit corresponding database record using
powerful component editor.
Search engine allows a user to
search database to find all
components interacted with
selected one and add them into
the diagram.
Database search engine
Database search engine allows user to find
database records with the specified
properties.
Features:
• Unified interface for all database modules
and database tables.
• User can use any component property
(database field) for searching.
• Possibility to use regular expression (Perl5
regular expressions).
• Possibility to use many fields for search
simultaneously.
• Searched results are presented in tabular
forms.
• User can edit database records from result
set.
First user should specify database module
and database table for further searching.
Here it is “GeneNet” module and “Protein”
table.
Specifying filter values for database fields user
can select the needed records.
Here we would like to select proteins:
• regulated by interferons (we can use regular
expression /.*IFN.*/ for this purpose)
After pressing “Start” button we will get a
table containing all database records
specifying the give condition.
Further you can select any record to view
its description or edit it.
Graph search engine
• Graph search engine allows user to query
database, find interconnected components
and present result as a graph
• A predefined set of graph layout
algorithms allows to arrange graph nodes
• The resulted graph can be extended and
edited using BioUML editor
Results of search of components
interconnected with “Hs:HSF-1-p” protein.
BioUML modeler
• BioUML modeler allows a user to model
continuous dynamics systems that can be
represented by system of ordinary differential
equations (ODEs).
• A simulated biological system is presented as a
pathway simulation diagram:
– variables are associated with graph nodes
– differential equations are associated with graph
edges
• To specify the right side of a differential equation
the MATLAB language is used. Additionally, some
conventions are used for variable names.
• After such a diagram is built, the BioUML modeler
allows the user to automatically generate
executable models as MATLAB M-files and start a
powerful MATLAB ODE suite for model
simulations.
BioUML modeler: an example
The example below demonstrates the application
of BioUML modeler for simulations of a simple
pharmacokinetic model.
• Here 100 units of some drug A were injected
intravenously. This drug can be break up by some
enzyme E in the liver giving the metabolite B.
• We suggest that drug flow from blood to liver is
proportional to the drag amount in the blood. The
same is true for drug flow from the liver to the
blood, however, the constant is different (k_1 in
the first case and k_2 in the second case). We
also assume that the enzyme concentration in the
liver is E0 and the dynamics of the reaction can be
described using Michaelis-Menten equation.
100 units of some drug
A were injected
intravenously.
This drug is
transferred from blood
to liver.
This drug can be broken
up by some enzyme E in
liver giving the metabolite
B.
We suggest that drug flow
from blood to liver is
proportional to drag amount
of in the blood with constant
k_1.
The same is true for drug flow
from liver to blood, however the
constant is other: k_2.
Enzyme concentration in liver is
E0 and unchangeable.
Dynamics of break up reaction
can be described using
Michaelis-Menten equation.
Using this table user can specify initial
values for all variables.
Similarly user can specify initial values
for all constants.
The “Start” tab allows user to specify
ODE solver and time interval.
When “Start” button is pressed BioUML
automatically generates mathematical
model and invokes MATLAB to solve this
model and present results graphically.
BioUML modeler: generated Mfiles
For the model simulation using MATLAB
BioUML modeler generates two M-files:
• script file for the model simulation and
graphical presentation of results.
• function to calculate dy/dt for the model.
BioUML modeler
•script file for model simulation and
graphic result presentations
%constants declaration
global k_1 k_2 k_3 k_E0 k_Km v_blood v_liver
k_1 = 0.1
k_2 = 0.05
k_3 = 0.01
k_E0 = 1.0
k_Km = 0.1
v_blood = 100.0
v_liver = 100.0
%Model variables and their initial values
y = []
y(1) = 100.0
% y(1) - $blood.A
y(2) = 0.0
% y(2) - $liver.A
y(3) = 0.0
% y(3) - $liver.B
y(4) = 1.0
% y(4) - $liver.E
%numeric equation solving
[t,y] = ode23('pharmo_simple_dy',[0 200],y)
%plot the solver output
plot(t, y(:,1),'-',t, y(:,2),'-',t, y(:,3),'-',t, y(:,4),'')
title ('Solving pharmo_simple problem')
ylabel ('y(t)')
xlabel ('x(t)')
legend('$blood.A','$liver.A','$liver.B','$liver.E');
BioUML modeler
• Function to calculate dy/dt for the model.
function dy = pharmo_simple_dy(t, y)
% Calculates dy/dt for 'pharmo_simple' model.
%constants declaration
global k_1 k_2 k_3 k_E0 k_Km v_blood v_liver
% calculates dy/dt for 'pharmo_simple' model
dy = [ -k_1*y(1)+k_2*y(2)
-k_3*k_E0*y(2)/(k_Km+y(2)/v_liver)-k_2*y(2)+k_1*y(1)
k_3*k_E0*y(2)/(k_Km+y(2)/v_liver)
0]
Features for BioUML 2.0
• Import/export SBML models
• Similar to UML formalized visual language
for systems biology
• Adding other computational models:
– Discrete events
– Hybrid models
– FSM
• Providing a set of standard reactions to
simplify creation of complex diagrams
• Graphical layout of improvements
• Modules for other databases on biological
pathways
Availability
• First public release: July 19, 2002
• BioUML 1.0 planned to be free for non
profit organizations
• BioUML sources (meta model, database
modules and some other) will be publicly
available.
ITC Software is an advanced information technology solutions provider, focused on the
global commercial and scientific markets.
With over 4047 software engineers in the Americas, Europe, Russia and Asia, and a host of
world-renowned scientists at, inter alia, Harvard and MIT, ITC Software’s services range from
research & development in finance, bioinformatics and FEA engineering, to cutting-edge custom
software development and maintenance services in most industry verticals, to the turnkey
establishment of Offshore IT Centers.
ITC Software has won numerous international awards and its centers are ISO 9001:2000
certified and CMMI level 4 pre-certified. Pricing is extremely competitive for both complex
scientific applications such as bioinformatics and biomechanics, and commercial software
development projects.
We hope you enjoyed our presentation !
Please call or email us, if you have any questions, need more information, would like to
embark on a research project, or require software development services
Tel. +1 978 287 4855
[email protected]
Become a high performance enterprise with Strategic Outsourcing, visit www.itcsoftware.com
Thank you!