Simulation environment and graphical visualization environment: a COPD use-case
© Huertas-Migueláñez et al.; licensee BioMed Central Ltd. 2014
Published: 28 November 2014
Today, many different tools are developed to execute and visualize physiological models that represent the human physiology. Most of these tools run models written in very specific programming languages which in turn simplify the communication among models. Nevertheless, not all of these tools are able to run models written in different programming languages. In addition, interoperability between such models remains an unresolved issue.
In this paper we present a simulation environment that allows, first, the execution of models developed in different programming languages and second the communication of parameters to interconnect these models. This simulation environment, developed within the Synergy-COPD project, aims at helping and supporting bio-researchers and medical students understand the internal mechanisms of the human body through the use of physiological models. This tool is composed of a graphical visualization environment, which is a web interface through which the user can interact with the models, and a simulation workflow management system composed of a control module and a data warehouse manager. The control module monitors the correct functioning of the whole system. The data warehouse manager is responsible for managing the stored information and supporting its flow among the different modules.
This simulation environment has been validated with the integration of three models: two deterministic, i.e. based on linear and differential equations, and one probabilistic, i.e., based on probability theory. These models have been selected based on the disease under study in this project, i.e., chronic obstructive pulmonary disease.
It has been proved that the simulation environment presented here allows the user to research and study the internal mechanisms of the human physiology by the use of models via a graphical visualization environment. A new tool for bio-researchers is ready for deployment in various use cases scenarios.
In the framework of systems medicine, data comes from different biological or medical levels . The aim of researchers is to understand the causes of different processes in the human body, with the support of mathematical and computational models.
A model may be defined as a simplified representation of the real world. Models describe systems employing parameter description and parameter interaction . In this work, we have considered two modelling paradigms: a deterministic one, based on linear and ordinary differential equations, and a probabilistic one, based on probability theory.
This SE has been developed within the Synergy-COPD project under the 7th Framework Program [2–4]. The objectives of the project are to integrate five existing computer models and develop a simulation environment (SE) which will allow and facilitate the development, implementation and deployment of systems medicine. A graphical visualisation environment (GVE) will allow users to access the knowledge base (KB) where all the information about the models is stored, interact with them and carry out simulations in a more intuitive way with respect to the state of the art.
After a revision of the state of the art in the area of simulation tools for physiological models (see Section state of the art), considering the kind of knowledge  and the models included in the project [1, 6–8], we developed this SE. The SE is able to run models written in different programming languages and communicate parameters among models.
The paper is organized as follows. The state of the art section contains a review of existing tools considering their capability to run physiology models. The architecture of the simulation environment section describes the structure and functionalities of the two main modules that compose the SE. The interoperability section describes how the interoperability among modules is reached. The workflow section describes the sequence of actions to be carried out to run a simulation. The validation section describes how this SE was validated by the use of physiological models related to COPD, and the conclusions and future work section adds concluding remarks and the direction of future work.
State of the art
Comparision of existing simulation tools.
Integration of models in different compiled programming languages
JSim  is a tool developed within the National Simulation Resource Physiome project to run models written mainly in mathematical modelling language (MML), systems biology markup language (SBML) and CellML markup language. The connection of models written in Java or C++ requires the use of a specific library developed in MML. JSim has its own data base to store models but there is no support of parameter communication between the models.
PhysioDesigner  is a platform developed by the University of Osaka. Models are developed in physiological markup language (PHML). Flint is the simulation tool developed within PhysioDesigner to run models written in PHML/ISML, CellML and SBML. This simulation environment does not run models in other programming languages than PHML/ISML, CellML and SBML.
Cytosolve  is a system that integrates dynamically the computations of smaller models that can be run in different machines. Models are mainly written in SBML and CellML. The web services parse and detect naming conflicts and common reaction pathways among models. This information is stored in the ontology of the data base. Once the user has specified the models and the conflicts are solved, the integration of the models can start. Cytosolve connects computational results after model execution using a messaging passing system based on XML across the collaborative models. This tool runs models mainly written in SMBL and CellML.
The Cancer, Heart and Soft Tissue Environment (Chaste)  supports the simulation of spatial models. It allows the visualization and post-processing of simulation results. Chaste is only supported in Linux/Unix platforms. Chaste supports models developed in C++. It does not store data and there is no support of parameter communication between the models.
HumMod  is a simulation and modelling tool. Models description is represented in XML. HumMod is composed of two modules: model documentation, which contains the XML files that correspond to models description, and model navigator, which displays the relationships between variables. The knowledge base contains 5000 variables obtained from peer reviewed physiological papers. HumMod does not support models developed in other programming languages.
MoBi  is a tool to model biological processes and drug actions. MoBi works by using PK-Sim another package for physiologically-based pharmacokinetic (PBPK) modelling. This tool allows building and simulating physiology models, export and import to other modelling languages and visualization of results. MoBi can be integrated into MATLAB and R for sensitivity and complex analysis. Models can only be defined in a specific XML format.
As presented in Table 1 some of the tools reviewed here do not support some of the evaluation aspects stated in the beginning of the section. The contributions of our SE to the SoA are based on its capability to run models programmed in different compiled programming languages allowing the exchange of parameters values between models. This SE is able to request and retrieve information from a complex knowledge base (KB), where all the information about the models is stored. The SE processes that information to present it to the user via a web-based interface which allows him to carry out simulations in a more intuitive way with respect to the state of the art. Our SE has also a data base to register and keep track on user's activity while logged in.
Architecture of the simulation environment
Considering the complexity of the models included in the Synergy-COPD project, the complexity of the knowledge involved and the necessity to communicate parameters among models, the simulation environment was developed to satisfy these requirements.
The SE interacts with an external module, the (KB) , which stores all the information related to models and cases. A case in the SE is defined as the necessary information to accurately describe the (real or hypothetical) status of a human being. This information also corresponds to a set of variables included in the models. Cases can correspond to patients or can correspond to the result of simulations in which the values of certain variables have been modified. Variables can be represented differently in different models and the KB includes the mappings among these different representations, which include the conversion of units. While details of the mapping are described elsewhere , we will briefly summarise the KB status to facilitate the understanding of the following sections. The KB represents knowledge as a network and we applied this concept to explicitly state our knowledge about a model, the model purpose, the model parameters visible to the outside (input/output parameters) as well as patient related parameters such as age or blood pressure. We structure knowledge into objects and their relations. These formal concepts enables the use of controlled vocabularies to unambigously describe the meaning and purpose of a parameter, creating a semantic description. Based on these it is possible to detect similarity between the described parameters and, after manual verification, store the connection explicitly. We can search for patient related data that is relevant as input parameter value of a computational model. We can validate simulation outputs against individual or aggregated clinical data.
The entire system is based in the model-view-controller (MVC) architecture for web applications  and in the following subsections we will describe the functionalities and structure of the main modules of the SE.
The simulation workflow management system (SWoMS)
The SWoMS monitors the correct functioning of the system and it is composed of two modules: The data warehouse manager and the control module.
The data warehouse manager is responsible for executing all the requests to the SE Data-base or to the KB, ensuring the correct and consistent information flow among modules. This module requests and retrieves information from the KB using a web service. Information retrieved from the KB, or sent to the KB or models, is codified under the communication language specified in the interoperability section.
Every simulation object has a complexity associated. This complexity is calculated considering the number of case simulation to execute by a model and the number of models to run. The complexity tends to be higher as the number of models and case simulation increase.
The batch processor is composed of two different queues: the fast queue contains simulation objects whose complexity is under a specific limit and the slow queue contains those simulation objects whose complexity is over a specific limit. For instance, the simulation object presented in Figure 3 will be directed to the fast queue.
When the execution of a simulation object has finished a finalization event is sent to the web-socket controller which will send the appropriate notification to the GVE.
The graphical visualization environment (GVE)
Administrator is the only profile that has full access to all the possible actions that can be performed in the SE.
Modeller is able to see pre-existing models, simulate them and map models if they have a mapping parameter. He will be able to upload and publish his own models following the standard described in Synergy-COPD to keep consistency with the different modules that are part of the Synergy-COPD project.
Doctor is able to see pre-existing or public models included in the Synergy-COPD simulation environment, map models, if they have a mapping parameter, and run simulations modifying data in the cases.
actions and permission related to each user profile, where 'Y' stands for Yes and 'N' stands for No.
Create a user
Assign a profile
Modify user data
View a model
Run pre-existing and public models
Run pre-existing and own models
Make a model available to the public
For a live demo please visit the youtube channel of the Synergy-COPD Simulation Environment (https://www.youtube.com/watch?v=dZQO8qRYMac).
Interoperability in the SE is defined as the capability of exchanging parameters between the SE, the KB and the models in a consistent manner. This communication needs to be done in a simplified way to allow model creators to integrate the models descriptions in the KB facilitating the communication of parameter values. To formalize such communication, a communication language denominated SE-TAB was defined.
This communication language has been developed after reviewing existing model description languages and standards for minimum information reporting. Following the success of simple tab-delimited formats for gene expression  and other omics data  we generated SE-TAB which allows model creators to generate very simple wrappers for their model parameter input/output values. To add models description and model parameters to the KB we can use the SE-TAB language or other formats. Therefore the absolute minimum SE-TAB support for integration into the SE is the parameter value file which any model needs to be able to read and produce.
Example of SE-TAB format.
Value (;delimited array)
Spatio temporal index
Table of definitions.
Capability of exchanging parameters between models in the SE
It is a way of storing information based on the relations of the different entities included in an ontology
Those parameters that have different representation in different models, although they are the same.
Description of a concept by meaning
It is a communication method to exchange data or information between applications
Makes possible the communication between a client application (web browser) and a server (remote machine). In this type of communication a channel is open to send and receive data from both parts.
Piece of code that works as intermediary between two source codes written in different programming languages.
The SE was validated by utilizing COPD-relevant physiological models. The capabilities to execute models in different programming languages, to store cases and the communication capabilities with the previously described communication standard were extensively tested.
The models utilized belong to two different paradigms: deterministic and probabilistic. The first of the two deterministic mathematical models considered in the Synergy-COPD project have been recently extended from a prior model describing O2 transport from air to mitochondria as an integrated system limiting maximal oxygen uptake [6, 20] to also include the contribution to overall impedance to O2 flow from the above-zero mitochondrial oxygenation levels required to drive mitochondrial respiration . This has enabled the prediction of as a balance between the capacities for muscle O2 transport and utilization . This model has been recently expanded to allow functional heterogeneity in both lungs and muscle. This was done to enable application to disease states. This model, called M6 Oxygen Transport, is currently programmed using Java programming language.
The second deterministic model considered in Synergy-COPD provides a conceptual basis for the abnormally high reactive oxygen species (ROS) production observed both in hyperoxia [21, 22] and hypoxia [23–26] and has the ability to predict the quantitative relationship between ROS generation and . Recent modeling and experimental studies on mitochondrial ROS production under hypoxia and re-oxygenation [8, 27, 28] have proposed an inherent bi-stability of Complex III, i.e. coexistence of two different steady states at the same external conditions: one state corresponding to low ROS production, and a second potentially dangerous state with high ROS production. Temporary deprivation of oxygen could switch the system from low to high ROS production, thus explaining the damaging effects of hypoxia-re-oxygenation. This model, called M7 Cell bioenergetics, mitochondrial respiration and ROS generation, was developed in the C++ programming language.
With the aim to offer the researcher a more COPD and patient specific approach, a Bayesian network was developed  to approach parameter specification. The creation of a Bayesian network requires a lot of data in order to validate it. Due to the lack of data to validate this network, we have proposed a Bayesian network for those researchers who want to apply expert knowledge or new data. The Bayesian network was developed in the C++ programming language.
Conclusions and future work
In this work we have presented a web-based simulation environment composed of two main modules: a user interface and a simulation engine responsible for controlling the correct functioning and flow of information among the different actors included in the system. These actors are: the user, the KB and the physiology models. The SE was validated with physiology models related to COPD.
In the current status of the SE the integration among static models was achieved although it does not allow running models with different temporal dimensions therefore we plan to extend the SE to support this feature.
An objective that was originally planned was the personalization of the results thanks to the use of the probabilistic model that could use patient specific data. However, this personalization was not achieved due to the lack of evidences that could allow the connection among the probabilistic model and the deterministic models in a consistent manner.
A feature added recently to the SE is the possibility to upload new models in the system turning the SE into a collaborative platform. A user with modeler permissions can upload a model and test it. By making it public other modelers registered in the system could use it and build other models if there are existing mappings between models. Making the SE available to the general public will allow users to share results and models.
The specialization of the tool to be employed as an educational tool is also under consideration so that the SE can be utilized by medicine students who have a clear interest in research about the respiratory chain.
A co-operation is planned with related projects that may benefit from this SE. A specific case is the AirPROM FP7 project  which is developing VPH models for lungs at cell and organ levels. Those models might be a great extension of those developed in the Synergy-COPD project and a co-operation between both projects has been initiated. This is an opportunity to allow the SE to continue its evolution in the framework of AirPROM.
The source code for the SE is available under Lesser General Public License in a public repository. 
We would like to thank all the members of the Synergy-COPD consortium for their support. Special thanks to Luigi Ceccaroni who supported the design and development of the SE in the early stages and the team in Barcelona Digital for their support and excellent work along the project. The opnions expressed in this manuscript are those of the authors and are not necessarily those of Synergy-COPD project's partners or European Commission.
The research described in this manuscript is supported by the Synergy-COPD European project (FP7-ICT-270086). The opinions expressed in this manuscript are those of the authors and are not necessarily those of Synergy-COPD project's partners or European Commission.
This article has been published as part of Journal of Translational Medicine Volume 12 Supplement 2, 2014: Systems medicine in chronic diseases: COPD as a use case. The full contents of the supplement are available online at http://www.translational-medicine.com/supplements/12/S2.
- Gomez-Cabrero D, Menche J, Cano I, Abugessaisa I, Roca J, Selivano V, Cascante M, Barabasi B, Tegnér J: Systems medicine: modeling frameworks and their interactions in copd. 2014, Manuscript submitted for publicationGoogle Scholar
- Cecaroni L, Miralles F, Velickovski F: Synergy-copd: modelling and simulation for systems medicine. Virtual Physiological Human Network of Excellence. 2012, 7: 23-24.Google Scholar
- The Synergy-COPD Project. [http://www.synergy-copd.eu/]
- Gomez-Cabrero D: Synergy-copd: a multidisciplinary approach for understanding and managing a chronic non-communicable disease. 2014, Manuscript submitted for publicationGoogle Scholar
- Cano I, Tenyj A, Schueller C, Kalus W, Huertas M, Gomez-Cabrero D, Antczak P, Roca J, Cascante M, Falicani F, Maier D: The copd knowledge base: enabling data analysis and computational simulation in translational copd research. 2014, Manuscript submitted for publicationGoogle Scholar
- Wagner PD: Algebraic analysis of the determinants of v¡ sub¿ o2, max¡/sub¿. Respiration physiology. 1993, 93 (2): 221-237. 10.1016/0034-5687(93)90007-W.View ArticlePubMedGoogle Scholar
- Cano I, Mickael M, Gomez-Cabrero D, Tegnér J, Roca J, Wagner P: Importance of mitochondrial po2 in maximal o2 transport and utilization: A theoretical analysis. Respir Physiol Neurobiol. 2013, 189 (3): 477-483. 10.1016/j.resp.2013.08.020.View ArticlePubMedGoogle Scholar
- Selivanov VA, Votyakova TV, Pivtoraiko VN, Zeak J, Sukhomlin T, Trucco M, Roca J, Cascante M: Reactive oxygen species production by forward and reverse electron fluxes in the mitochondrial respiratory chain. PLoS computational biology. 2011, 7 (3): 1001115-10.1371/journal.pcbi.1001115.View ArticleGoogle Scholar
- JSim, a Simulation Analysis Platform. [http://www.physiome.org/jsim/]
- PhysioDesigner a Modelling Tool for Multilevel Physiological. [http://physiodesigner.org/phml/index.html]
- Ayyadurai VS, Dewey CF: Cytosolve: A scalable computational method for dynamic integration of multiple molecular pathway models. Cellular and molecular bioengineering. 2011, 4 (1): 28-45. 10.1007/s12195-010-0143-x.PubMed CentralView ArticlePubMedGoogle Scholar
- Pitt-Francis J, Pathmanathan P, Bernabeu MO, Bordas R, Cooper J, Fletcher AG, Mirams GR, Murray P, Osborne JM, Walter A: Chaste: a test-driven approach to software development for biological modelling. Computer Physics Communications. 2009, 180 (12): 2452-2471. 10.1016/j.cpc.2009.07.019.View ArticleGoogle Scholar
- Hester RL, Brown AJ, Husband L, Iliescu R, Pruett D, Summers R, Coleman TG: Hummod: a modeling environment for the simulation of integrative human physiology. Frontiers in physiology. 2011, 2:Google Scholar
- Eissing T, Kuepfer L, Becker C, Block M, Coboeken K, Gaub T, Goerlitz L, Jaeger J, Loosen R, Ludewig B: A computational systems biology software platform for multiscale modeling and simulation: integrating whole-body physiology, disease biology, and molecular reaction networks. Frontiers in Physiology. 2011, 2:Google Scholar
- Maier D, Kalus W, Wolff M, Kalko SG, Roca J, de Mas IM, Turan N, Cascante M, Falciani F, Hernandez M: Knowledge management for systems biology a general and visually driven framework applied to translational medicine. BMC systems biology. 2011, 5 (1): 38-10.1186/1752-0509-5-38.PubMed CentralView ArticlePubMedGoogle Scholar
- Leff A, Rayfield JT: Web-application development using the model/view/controller design pattern. Enterprise Distributed Object Computing Conference 2001 EDOC'01 ProceedingsFifth IEEE International. 2001, IEEE, 118-127.Google Scholar
- Fette I, Melnikov A: The websocket protocol. 2011View ArticleGoogle Scholar
- Rayner T, Rocca-Serra P, Spellman P, Causton H, Farne A, Holloway E, Irizarry R, Liu J, Maier D, Miller M: A simple spreadsheet-based, miame-supportive format for microarray data: Mage-tab. Bmc Bioinformatics. 2006, 7 (1): 489-10.1186/1471-2105-7-489.PubMed CentralView ArticlePubMedGoogle Scholar
- Isatools. [http://isatab.sourceforge.net/format.html]
- Wagner PD: Determinants of maximal oxygen transport and utilization. Annual review of physiology. 1996, 58 (1): 21-50. 10.1146/annurev.ph.58.030196.000321.View ArticlePubMedGoogle Scholar
- Berkelhamer SK, Kim GA, Radder JE, Wedgwood S, Czech L, Steinhorn RH, Schumacker PT: Developmental differences in hyperoxia-induced oxidative stress and cellular responses in the murine lung. Free Radical Biology and Medicine. 2013Google Scholar
- Gore A, Muralidhar M, Espey MG, Degenhardt K, Mantell LL: Hyperoxia sensing: from molecular mechanisms to significance in disease. Journal of immunotoxicology. 2010, 7 (4): 239-254. 10.3109/1547691X.2010.492254.View ArticlePubMedGoogle Scholar
- Waypa GB, Marks JD, Guzy R, Mungai PT, Schriewer J, Dokic D, Schumacker PT: Hypoxia triggers subcellular compartmental redox signaling in vascular smooth muscle cells. Circulation research. 2010, 106 (3): 526-535. 10.1161/CIRCRESAHA.109.206334.PubMed CentralView ArticlePubMedGoogle Scholar
- Bailey DM, Young IS, McEneny J, Lawrenson L, Kim J, Barden J, Richardson RS: Regulation of free radical outflow from an isolated muscle bed in exercising humans. American Journal of Physiology-Heart and Circulatory Physiology. 2004, 287 (4): 1689-1699. 10.1152/ajpheart.00148.2004.View ArticleGoogle Scholar
- Koechlin C, Maltais F, Saey D, Michaud A, Leblanc P, Hayot M, Préfaut C: Hypoxaemia enhances peripheral muscle oxidative stress in chronic obstructive pulmonary disease. Thorax. 2005, 60 (10): 834-841. 10.1136/thx.2004.037531.PubMed CentralView ArticlePubMedGoogle Scholar
- Cherniack NS: Oxygen sensing: applications in humans. Journal of Applied Physiology. 2004, 96 (1): 352-358.View ArticlePubMedGoogle Scholar
- Selivanov VA, Votyakova TV, Zeak JA, Trucco M, Roca J, Cascante M: Bistability of mitochondrial respiration underlies paradoxical reactive oxygen species generation induced by anoxia. PLoS computational biology. 2009, 5 (12): 1000619-10.1371/journal.pcbi.1000619.View ArticleGoogle Scholar
- Selivanov VA, Cascante M, Friedman M, Schumaker MF, Trucco M, Votyakova TV: Multistationary and oscillatory modes of free radicals generation by the mitochondrial respiratory chain revealed by a bifurcation analysis. PLoS computational biology. 2012, 8 (9): 1002700-10.1371/journal.pcbi.1002700.View ArticleGoogle Scholar
- AirPROM, Airway Disease Predicting Outcomes Through Patient Specific Computational Modelling. [http://www.europeanlung.org/en/projects-and-research/projects/airprom/home]
- SourceForge. [https://sourceforge.net/projects/openhealthpractice/?source=directory]
This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/4.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. The Creative Commons Public Domain Dedication waiver (http://creativecommons.org/publicdomain/zero/1.0/) applies to the data made available in this article, unless otherwise stated.