Comprehensive model for formalized description, visualization and simulation of biological systems

1
Comprehensive model for formalized description, visualization and simulation of biological systems http://www.biouml.org Fedor A. Kolpakov Biosoft.Ru, Novosibirsk, Russia. Design Technological Institute of Digital Techniques, Novosibirsk, Russia. Sydney Brenner, 2002 Nobel Prize winner said: "We now have unprecedented ability to collect data about nature but there is now a crisis developing in biology, in that completely unstructured information does not enhance understanding. We need a framework to put all of this knowledge and data into — that is going to be the problem in biology. We've reached the stage where we can't talk to each other — we've all become highly specialized. We need a framework, a framework where people can come back to us and say, 'Yes, I understand.' Driving toward that framework is really the big challenge." BioUML – Biological Universal Modeling Language – is a step in this direction. It is imagined as a language to write a “book of life” i.e. model of the world in biological terms. BioUML – Biological Universal Modeling Language – is open source extensible Java workbench for modeling biological and other complex systems. It spans the comprehensive range of capabilities including access to databases with experimental data, tools for formalized description of biological systems structure and functioning, as well as tools for their visualization and simulations. Meta model The core of BioUML workbench is meta model. It provides an abstract layer for comprehensive formal description of wide range of biological and other complex systems. Content of databases on biological pathways or SBML models are expressed in terms of meta model and then can be used by other workbench plug-ins. Meta model is problem domain neutral and splits the system description into three interconnected levels: 1. graph structure - the system structure is described as compartmentalized graph; 2. database level - each graph element can contain reference to some database object; 3. executable model - any graph element can be element of executable (mathematical) model, for example it can be variable or equation. BioUML workbench is a plugin-based application framework that provides its extensibility and possibility of seamless integration of other tools for systems biology. It consists from a Eclipse platform runtime kernel (http://www.eclipse.org ) that supports 'plug- ins' and a set of plug-ins that support database access, diagram editing, and biological systems simulation. A plug-in is the smallest unit of BioUML workbench function that can be developed and delivered separately into BioUML workbench. Extension points are well-defined function points in the system where other plug-ins can contribute functionality. An extension is a specific contribution to an extension point. Plug-ins can define their own extension points, so that other plug-ins can integrate tightly with them. Plug-ins are coded in Java. A typical plug-in consists of Java code in a JAR library, some read-only files, and other resources such as images, message catalogs, native code libraries, etc. BioUML workbench installation includes a plugins folder where individual plug-ins are deployed. Each plug-in is installed in its own folder under the plugins folder. A plug-in is described in an XML manifest file, called plugin.xml, residing in the plug-in's folder. The parsed contents of plug-in manifest files are made available programmatically through a plug-in registry API provided by Eclipse runtime. Architecture overview M eta m odel Executable m odel G raph structure Standard m odule D atabase D atabase adapter Java objects G ene Protein D iagram types -Sem antic m ap -Pathw ay -Pathw ay sim ulation Eclipse platform runtim e W orkbench U I D iagram editor A nalysis tools Sim ulation tools O ther tools View s, editors M enus, toolbars,etc. G eneN etm odule KEG G /pathw ays module TRANSPATH module SBM L m odule Perspectives D iagram view part D iagram editorpart D iagram Type - sem antic controller - diagram view builder - diagram filter M oduleType - diagram types - data categories - query engine Q uery engine Diagram type concept To take into account different diagram types and problem domain specificity we have introduced the diagram type concept. Diagram type defines: · what system components can be shown in the diagram; · diagram view builder - it allows to build graph view that take into account problem domain peculiarity, for example biological pathway diagram view builder uses specific views for different pathway elements: proteins are shown as circles, genes as rectangles, substances as squares, etc.; · semantic controller - provides semantic integrity of the diagram during its editing. It takes into account problem domain constraints, for example if some specie is removed on biological pathway diagram, all related reactions should be removed too; · filters – hide or highlight diagram elements according to some selection criteria, for example to according gene expression specificity or expression level. Module concept The module concept allows to developer define new diagram types and incorporate other databases on biological pathways into BioUML framework. The module defines mapping of database content into diagram elements and diagram types that can be used with the database.Module also provides query engine that can be used by BioUML framework ti find interactiong components of the system. Search results can be shown as graph and edited by user. Modules: · standard BioUML module for biological pathways; · module for models in SBML format; · module for GeneNet database; · module for KEGG/Pathways datbase; · module for TRANSPATH database. BioUML diagram view. GeneNet database was incorporated into BioUML as GeneNet module; central pane shows “Antiviral response” diagram; right top pane shows filters that are applied to the diagram. The data are taken from the publicly available version of GeneNet database. Standard BioUML module for biological pathways BioUML workbench provides standard module for modeling metabolic pathways, signal transduction pathways and gene networks. The module defines most common biological data types (gene, protein, RNA, substance, reaction, etc.), they mapping into simple text database, query engine and three diagram types for description of biological pathways on several semantic levels: 1. Semantic network - this diagram type is used to describe semantic relationships between system components, system states, and related problem domain concepts. This diagram type is also convenient as overview. 2. Pathway diagram type is used for formalized description of biological pathway structure. 3. Pathway simulation diagram type is extension of pathway structure diagram, where variables are associated with graph nodes and differential equations with graph edges. This allows to BioUML workbench automatically generate mathematical model of the system and simulate its dynamics. Example of seach using GenNet module query engine and results visulisation by BioUML workbench. Diagram markup language Special BioUML diagrams markup language (DML) is developed to store BioUML meta model instance in XML format. Diagram structure description is divided into two parts: 1) diagram structure model - it describes the graph structure, location of diagram elements and database objects ('kernels') that are associated with diagram elements. 2) executable model - stores mathematical model associated with graph. It is detailed description is available at: http://www.biouml.org/dml.shtml Availability BioUML workbench (including source code) is freely available at http://www.biouml.org There is special forum dedicated to BioUML workbench where you can post your questions and suggestions. We really needs in your feedback. http://groups.yahoo.com/group/biouml/ Acknowledgments Part of this work was partially supported by the grant of Volkswagen-Stiftung (I/75941). Author is grateful to Alexander Kel and Sergey Zhatchenko for useful comments and discussions, as well as to Igor Tyazhev, Vlad Zhvaleev and Oleg Onegov for technical support. A B -k1[A] k1[A] R1 C -k2[B] K2[B] R2 100 0 0 System structure is described as a graph Mathem aticalm odel ofthe system D escription ofsystem com ponents in the database ID A CC .. ... // ID R1 A->B ... // ID B CC .. ... // ID R2 B->C ... // ID C CC .. ... // A B -k1[A] k1[A] R1 C -k2[B] K2[B] R2 100 0 0 Exam ple of form alized description ofsystem from tw o chem icalreactions

description

Comprehensive model for formalized description, visualization and simulation of biological systems http://www.biouml.org Fedor A. Kolpakov Biosoft.Ru, Novosibirsk, Russia. Design Technological Institute of Digital Techniques, Novosibirsk, Russia. Sydney Brenner, 2002 Nobel Prize winner said: - PowerPoint PPT Presentation

Transcript of Comprehensive model for formalized description, visualization and simulation of biological systems

Page 1: Comprehensive model for formalized description, visualization and simulation of biological systems

Comprehensive model for formalized description, visualization and simulation of biological systems

http://www.biouml.orgFedor A. Kolpakov

Biosoft.Ru, Novosibirsk, Russia.Design Technological Institute of Digital Techniques, Novosibirsk, Russia.

Sydney Brenner, 2002 Nobel Prize winner said:

"We now have unprecedented ability to collect data about nature but there is now a crisis developing in biology, in that completely unstructured information does not enhance understanding. We need a framework to put all of this knowledge and data into — that is going to be the problem in biology. We've reached the stage where we can't talk to each other — we've all become highly specialized. We need a framework, a framework where people can come back to us and say, 'Yes, I understand.' Driving toward that framework is really the big challenge."

BioUML – Biological Universal Modeling Language – is a step in this direction. It is imagined as a language to write a “book of life” i.e. model of the world in biological terms.

BioUML – Biological Universal Modeling Language – is open source extensible Java workbench for modeling biological and other complex systems. It spans the comprehensive range of capabilities including access to databases with experimental data, tools for formalized description of biological systems structure and functioning, as well as tools for their visualization and simulations.

Meta modelThe core of BioUML workbench is meta model. It provides an abstract layer for comprehensive formal description of wide range of biological and other complex systems. Content of databases on biological pathways or SBML models are expressed in terms of meta model and then can be used by other workbench plug-ins.

Meta model is problem domain neutral and splits the system description into three interconnected levels: 1. graph structure - the system structure is described as compartmentalized graph; 2. database level - each graph element can contain reference to some database object; 3. executable model - any graph element can be element of executable (mathematical) model, for example it can be variable or equation.

BioUML workbench is a plugin-based application framework that provides its extensibility and possibility of seamless integration of other tools for systems biology. It consists from a Eclipse platform runtime kernel (http://www.eclipse.org) that supports 'plug-ins' and a set of plug-ins that support database access, diagram editing, and biological systems simulation.

A plug-in is the smallest unit of BioUML workbench function that can be developed and delivered separately into BioUML workbench. Extension points are well-defined function points in the system where other plug-ins can contribute functionality. An extension is a specific contribution to an extension point. Plug-ins can define their own extension points, so that other plug-ins can integrate tightly with them.

Plug-ins are coded in Java. A typical plug-in consists of Java code in a JAR library, some read-only files, and other resources such as images, message catalogs, native code libraries, etc. BioUML workbench installation includes a plugins folder where individual plug-ins are deployed. Each plug-in is installed in its own folder under the plugins folder. A plug-in is described in an XML manifest file, called plugin.xml, residing in the plug-in's folder. The parsed contents of plug-in manifest files are made available programmatically through a plug-in registry API provided by Eclipse runtime.

Architecture overview

Meta model

Executable model

Graph structure

Standard module

Database

Database adapter

Java objects

Gene Protein …

Diagram types- Semantic map- Pathway- Pathway simulation

Eclipse platform runtime Workbench UI

Diagram editor

Analysistools

Simulation tools

Other tools

Views, editors

Menus, toolbars, etc.

GeneNet module

KEGG/pathwaysmodule

TRANSPATHmodule

SBML module

Perspectives

Diagram view part

Diagram editor part

DiagramType-semantic controller-diagram view builder-diagram filter

ModuleType-diagram types-data categories-query engine

Query engine

Diagram type conceptTo take into account different diagram types and problem domain specificity we have introduced the diagram type concept. Diagram type defines:

·  what system components can be shown in the diagram;

·  diagram view builder - it allows to build graph view that take into account problem domain peculiarity, for example biological pathway diagram view builder uses specific views for different pathway elements: proteins are shown as circles, genes as rectangles, substances as squares, etc.;

· semantic controller - provides semantic integrity of the diagram during its editing. It takes into account problem domain constraints, for example if some specie is removed on biological pathway diagram, all related reactions should be removed too;

· filters – hide or highlight diagram elements according to some selection criteria, for example to according gene expression specificity or expression level.

Module conceptThe module concept allows to developer define new diagram types and incorporate other databases on biological pathways into BioUML framework.

The module defines mapping of database content into diagram elements and diagram types that can be used with the database.Module also provides query engine that can be used by BioUML framework ti find interactiong components of the system. Search results can be shown as graph and edited by user.

Modules:· standard BioUML module for biological pathways;· module for models in SBML format; · module for GeneNet database;· module for KEGG/Pathways datbase; · module for TRANSPATH database.

BioUML diagram view. GeneNet database was incorporated into BioUML as GeneNet module; central pane shows “Antiviral response” diagram; right top pane shows filters that are applied to the diagram. The data are taken from the publicly available version of GeneNet database.

Standard BioUML module for biological pathways

BioUML workbench provides standard module for modeling metabolic pathways, signal transduction pathways and gene networks. The module defines most common biological data types (gene, protein, RNA, substance, reaction, etc.), they mapping into simple text database, query engine and three diagram types for description of biological pathways on several semantic levels:

1. Semantic network - this diagram type is used to describe semantic relationships between system components, system states, and related problem domain concepts. This diagram type is also convenient as overview.

2.  Pathway diagram type is used for formalized description of biological pathway structure.

3. Pathway simulation diagram type is extension of pathway structure diagram, where variables are associated with graph nodes and differential equations with graph edges. This allows to BioUML workbench automatically generate mathematical model of the system and simulate its dynamics.

Example of seach using GenNet module query engine and results visulisation by BioUML workbench.

Diagram markup language

Special BioUML diagrams markup language (DML) is developed to store BioUML meta model instance in XML format.

Diagram structure description is divided into two parts:

1)  diagram structure model - it describes the graph structure, location of diagram elements and database objects ('kernels') that are associated with diagram elements.

2)  executable model - stores mathematical model associated with graph.

It is detailed description is available at: http://www.biouml.org/dml.shtml

AvailabilityBioUML workbench (including source code) is freely available at

http://www.biouml.org

There is special forum dedicated to BioUML workbench where you can post your questions and suggestions. We really needs in your feedback.

http://groups.yahoo.com/group/biouml/

AcknowledgmentsPart of this work was partially supported by the grant of Volkswagen-Stiftung (I/75941).

Author is grateful to Alexander Kel and Sergey Zhatchenko for useful comments and discussions, as well as to Igor Tyazhev, Vlad Zhvaleev and Oleg Onegov for technical support.

A B

-k1[A] k1[A]

R1 C

-k2[B] K2[B]

R2

100 0 0

System structure is described as a graph

Mathematical modelof the system

Description of system components in the database

ID ACC .....//

ID R1A->B

...//

ID BCC .....//

ID R2B->C

...//

ID CCC .....//

A B-k1[A] k1[A]

R1C

-k2[B] K2[B]

R2100 0 0

Example of formalized description of system from two chemical reactions