SBMLWebApp: Web-Based Simulation, Steady-State Analysis, and Parameter Estimation of Systems Biology Models

: In systems biology, biological phenomena are often modeled by Ordinary Differential Equations (ODEs) and distributed in the de facto standard ﬁle format SBML. The primary analyses performed with such models are dynamic simulation, steady-state analysis, and parameter estimation. These methodologies are mathematically formalized, and libraries for such analyses have been published. Several tools exist to create, simulate, or visualize models encoded in SBML. However, setting up and establishing analysis environments is a crucial hurdle for non-modelers. Therefore, easy access to perform fundamental analyses of ODE models is a signiﬁcant challenge. We developed SBMLWebApp, a web-based service to execute SBML-based simulation, steady-state analysis, and parameter estimation directly in the browser without the need for any setup or prior knowledge to address this issue. SBMLWebApp visualizes the result and numerical table of each analysis and provides a download of the results. SBMLWebApp allows users to select and analyze SBML models directly from the BioModels Database. Taken together, SBMLWebApp provides barrier-free access to an SBML analysis environment for simulation, steady-state analysis, and parameter estimation for SBML models. SBMLWebApp is implemented in Java™ based on an Apache Tomcat ® web server using COPASI, the Systems Biology Simulation Core Library (SBSCL), and LibSBMLSim as simulation engines. SBMLWebApp is licensed under MIT with source code freely available. At the end of this article, the Data Availability Statement gives the internet links to the two websites to ﬁnd the source code and run the program online.


Introduction
An enormous intrinsic complexity characterizes biological systems from their smallest independently functioning unit, the individual cell, to entire organ systems and beyond. This complexity can be attributed to emergent characteristics of the individual components of biological systems and their interactions [1]. Consequently, any attempt to fully grasp the functions and simultaneously operating processes within a living organism nowadays heavily relies on computational tools and simulation. Building computer models in biology has already demonstrated its potential in many application areas, such as the contextualization and visualization of high-throughput data, e.g., [2], guiding metabolic engineering in biotechnology, e.g., [3], the directed search for potential antiviral targets, e.g., [4,5], or to mathematically describe measures to effectively control the spread of infections, e.g., [6]. Since computational modeling of biological systems remains a challenging task, several different approaches exist to derive model representations with varying simplifying assumptions, each of which tackles the underlying complexities in many ways. Examples of popular modeling strategies include: 1.
agent-based models, e.g., [7] which prove fruitful for non-linear interactions among entities of a biological system [8].
constraint-based models, e.g., [14] that predict metabolic and adjoint cellular functions based on the distribution of metabolic fluxes. 5.
stochastic kinetic models [15], which take random fluctuations of the amounts of individual molecules into account. 6. deterministic kinetic models, e.g., [16], which will be explained in detail below. 7.
multi-paradigm models that try to bridge two or more of these approaches, e.g., [17].
The present study focuses on kinetic models. Kinetic models allow capturing the complex relationships of biological systems, e.g., between enzyme expression, metabolite levels, reaction fluxes, and regulatory processes [18]. Kinetic models are of particular interest when exploring dynamic effects [19]. The mathematical description of kinetic models can be formalized using a system of coupled nonlinear Ordinary Differential Equations (ODEs) [20], which defines the state variables of the model and their possible evolution. These ODEs quantitatively describe the dynamics of kinetic systems and facilitate predicting the response of the model state to various perturbations, i.e., different inputs, altered kinetic parameters, or changing initial conditions [21]. The theory of creating kinetic models is generally established, and simplifying assumptions for the choice of particular equations have been proposed [22]. Their predictive power has turned kinetic models into a valuable resource for understanding biological systems. This, in turn, helped to excel advances in, e.g., biotechnological fields such as improving microbial strain design [23].
Kinetic modeling typically comprises the following three primary kinds of analyses: 1. time-course simulation. 2.
The objective behind the time-course simulation is to mathematically describe the evolution of the investigated ODE system from given initial conditions. Thereby, the dynamics of the biological system can be investigated, e.g., the model's behavior in response to varying inputs or other perturbations. Biological systems often reach a steady state after a long enough time, i.e., a state in which the metabolic concentrations remain constant. For some systems, multiple steady states may exist, and transitions between them may take place. Steady-state analysis numerically calculates possible steady states and evaluates likely transitions into a particular system's state under the given conditions. Parameter estimation is a method to determine plausible values of the model's parameters based on experimental data, e.g., reaction rate constants. For this reason, this procedure is sometimes called model calibration because data from laboratory experiments are compared to the output of model simulations aiming to fit the model to the data. Consequently, parameter estimation is often a prerequisite step for subsequent analyses, and it uses repeated timecourse simulations. In other words, parameter estimation uses an optimization method whose objective is to identify the most plausible parameter values that calibrate a model towards the experimentally observed behavior of the corresponding biological system [24]. SBML is the de facto standard file format for computational models of biological systems [25,26]. For the analysis of kinetic models in SBML, several tools are available, e.g., the COmplex PAthway SImulator (COPASI) [27], the Systems Biology Toolbox for Mat-lab™ [28], libRoadRunner [29], or SBMLsimulator [30]. Many of these tools may cause difficulties to inexperienced users during installation or use of their algorithms and conventions. Some tools focus on a limited set of highly specialized functions, while others overwhelm their users with a large variety of features. Often, the users are indirectly assumed to understand the internal structures of systems biology model formats. In addition, many scientific software tools require a profound computational background or even coding skills to interact with the software. Installing these applications may not always be allowable if it requires administrator rights which are not always granted to every user in a research environment. These points might represent a considerable challenge for novice modelers or collaborators with an experimental background. A practical solution to these problems is to provide user-friendly and barrier-free access to a web application that can execute all the above mentioned analyses without requiring coding skills or admin setup rights.
A few freely available web applications for working with models in SBML format exist. APMonitor [31] supports simulation and parameter estimation but does not support steady-state analysis. One of the available standalone tools for simulation and parameter estimation is SBMLsimulator [30], which can be used via command-line or its Java™-based Graphical User Interface (GUI), but does not run online. Cycsim [32] supports visualization and time-course simulation of metabolic networks but not parameter estimation. The Systems Biology Workbench (SBW) [33] supports time course simulation and steady-state analysis but not parameter estimation. JWS Online [34] supports time course simulation and steady-state analysis but does not support parameter estimation. The tool suite RunBioSimulations [35] offers time course simulation and steady-state analysis but lacks support for parameter estimation. Additionally, RunBioSimulations offers many thirdparty analysis tools with many options and is hence most suitable for experienced users.
This article presents the user-friendly web application SBMLWebApp which allows the integrated analysis of kinetic models using time-course simulation, steady-state analysis, and parameter estimation. To the authors' best knowledge, currently, no other web application exists besides the SBMLWebApp, with which novice users can effortlessly conduct all three analysis steps described above within a single framework. The SBMLWebApp, therefore, drastically expedites a profound and detailed analysis of kinetic models since all three steps are deeply intertwined, and the knowledge gained from a previous analysis step is often essential for following analyses. For example, time-course simulations with varying inputs are often executed after an initial system steady-state has been reached, i.e., first, a steady-state analysis is performed following by time-course simulations with varying inputs. For example, parameters determined via its parameter estimation features are subsequently used in time course and steady-state simulations to analyze the system's behavior.
Providing a directly accessible web application with an intuitive user interface that combines services for time-course simulation, steady-state analysis, and parameter estimation makes a large portion of typical analyses within systems biology research accessible to less experienced users. In this way, the SBMLWebApp supports interdisciplinary collaboration as it allows experimentalists to effortlessly try out in-silico models from their dry-lab collaborators, which may help to accelerate the iterative cycles of alternating model development and wet-lab experimentation towards scientific progress.

Implementation
SBMLWebApp is implemented in Apache Tomcat ® (https://tomcat.apache.org, accessed on 13 October 2021), and all servlets were written in Java™. The app uses the Bootstrap framework and is deployed on a Java application server using JQuery. SBML-WebApp uses AJAX software within the communication configuration between frontend and backend (GWT, http://www.gwtproject.org, accessed on 13 October 2021). The time course simulation servlet is executed using COPASI [27], Systems Biology Simulation Core Library (SBSCL) [36,37] with JSBML [38] as its internal data structure, and LibSBMLSim [39] that is based on libSBML [40]. The steady-state analysis servlet and parameter estimation servlet use COPASI [27]. The SBMLWebApp is accessible at http://simulate-biology.org. Our app uses the standard file format for computational models, SBML [25,26], and is compatible with SBML Level 3 Version 1 core [41].

Using the SBMLWebApp
Either a local SBML model or models from the BioModels Database [42] can be selected on the front page. BioModels is a highly curated database for computational biological models, currently containing 1017 manually curated SBML models (August 2021).
After selecting the SBML model, the relationships between species and reactions (stoichiometric network) are visualized (Figure 1) based on cytoscape.js [43]. To run a time course simulation with the model, the user can specify the end time, the number of time points, the absolute tolerance, and the simulation library to use as a solver backend. After setting these parameters and pressing the execute button, the simulation result is visualized as a graph (Figure 2), and the numerical results are provided in a table. Via the window on the right side, the initial amount of each species, the size of compartments, and values of kinetic parameters in the model can be edited. The respective simulation is executed on the fly. To run a steady-state analysis with the model, the available parameters that the user can specify include the resolution, derivation factor, and iteration limit to search steady states. After steady-state analysis, a single steady-state point of given initial expression for each species and the corresponding Jacobian matrix of this point is visualized as a numerical table (Figure 3). To run a parameter estimation with the model, the algorithm, iteration limit to search fitted parameters, and fitting tolerance can be set. Available algorithms include the Levenberg-Marquardt algorithm [44,45], the Nelder Mead-algorithm [46], the particle swarm optimization method [47], and the differential evolution method [48]. The two latter optimization methods had been found to be particularly promising for the task of dynamic model calibration in systems biology applications [49]. The execution of a parameter estimation leads to a visualization of the simulation result with calibrated parameters and experimental results in Figure 4 and fitted parameters as a numerical table. The range of search parameters can be set in the window on the right side, and an analysis based on it can be executed after pressing return. All result data can be downloaded via the "Download" tab. The graphs and tables are downloaded as PNG and CSV file, respectively. In parameter estimation, the model with calibrated parameters can be downloaded in SBML format.

Real-World Example and Applications
In the following section, one working example is provided, which demonstrates the functionality of the SBMLWebApp. This example is based on the work by Perelson et al. [50] and can be found on the BioModels database https://identifiers.org/ biomodels.db/BIOMD0000000874, accessed on 13 October 2021. The SBMLWebApp provides three different methods for further analyses of kinetic models (time-course simulation, steady-state analysis, and parameter estimation). First, we have shown that the SBMLWeb-App can reproduce the results of the simulations performed by Perelson et al. [50] Figures S1-S4). We have also shown that their theoretically derived unstable fixed points, stable fixed points, and unstable fixed points with oscillations for these populations can be analyzed numerically equivalent by the SBMLWebApp (Supplementary Figures S5-S7). Furthermore, in the parameter estimation for the time-series change of free virus in 10 HIV-infected patients by Stafford et al. [51], we showed that the SBMLWebApp could estimate parameters in good agreement with the measured results (Supplementary Figure S8). Table 1 provides an overview of the model and compares the outcomes of their analyses based on the model created as part of the study at hand.

Limitations of the Application
The app is developed using the most recent standards from the systems biology community, see also [52]. It currently only supports models in the format SBML Level 3 Version 1 [53]. Model calibration was performed using CellDesigner [54,55]. As such, the SBMLWebApp is bound by the features of CellDesigner. Some features of the SBMLWeb-App are based on COPASI [27], which belongs to the leading simulation tools in the field of computational biology. However, this dependency also brings with it the application's limitation to the features of this third-party software, see also [56]. This is also the reason why the SBMLWebApp is not able to estimate parameters using log-transformed loss functions. Kinetic models in biology often grow in size and thus in complexity. It is recommendable to use small or medium-sized models to allow the best possible functionality of the features provided by the SBMLWebApp. As such, computation times for individual analysis steps will differ, depending upon the size of the model. For data security reasons, the application does not store any user information. As such, any data that is not downloaded after running the analysis steps will be lost. At the moment, the SBMLWebApp is restricted to a selection of fundamental analyses in kinetic modeling. Future versions of SBMLWebApp will also include an easily accessible flux balance analysis tool because of the growing importance of this method.

Conclusions
SBMLWebApp is a user-friendly, web-based and freely available application to execute time course simulation, steady-state analysis, and parameter estimation for models in SBML. As open-source software, SBMLWebApp can be used as an example implementation of such a service and allows contributions and feature requests from the scientific community. It was developed to provide novice modelers and other non-specialist intuitive access to the core analyses for kinetic SBML models.

Acknowledgments:
The authors are grateful to Theresa Anisja Harbig and Martin Lang for their support in administrating the compute server.

Conflicts of Interest:
The authors declare no conflict of interest.

Abbreviations
The following abbreviations are used in this manuscript: