PottersWheel is a
MATLAB
MATLAB (an abbreviation of "MATrix LABoratory") is a proprietary multi-paradigm programming language and numeric computing environment developed by MathWorks. MATLAB allows matrix manipulations, plotting of functions and data, implementa ...
toolbox for mathematical modeling of time-dependent
dynamical system
In mathematics, a dynamical system is a system in which a function describes the time dependence of a point in an ambient space. Examples include the mathematical models that describe the swinging of a clock pendulum, the flow of water i ...
s that can be expressed as
chemical reaction network
Chemical reaction network theory is an area of applied mathematics that attempts to model the behaviour of real-world chemical systems. Since its foundation in the 1960s, it has attracted a growing research community, mainly due to its applicati ...
s or
ordinary differential equations
In mathematics, an ordinary differential equation (ODE) is a differential equation whose unknown(s) consists of one (or more) function(s) of one variable and involves the derivatives of those functions. The term ''ordinary'' is used in contras ...
(ODEs). It allows the automatic calibration of model parameters by fitting the model to experimental measurements. CPU-intensive functions are written or – in case of model dependent functions – dynamically generated in C. Modeling can be done interactively using graphical user interfaces or based on MATLAB scripts using the PottersWheel function library. The software is intended to support the work of a mathematical modeler as a real
potter's wheel
In pottery, a potter's wheel is a machine used in the shaping (known as throwing) of clay into round ceramic ware. The wheel may also be used during the process of trimming excess clay from leather-hard dried ware that is stiff but malleable, ...
eases the modeling of pottery.
Seven modeling phases
The basic use of PottersWheel covers seven phases from model creation to the prediction of new
experiments.
Model creation
The dynamical system is formalized into a set of reactions or differential equations using a visual model designer or a text editor. The model is stored as a MATLAB *.m ASCII file. Modifications can therefore be tracked using a version control system like
subversion
Subversion () refers to a process by which the values and principles of a system in place are contradicted or reversed in an attempt to transform the established social order and its structures of power, authority, hierarchy, and social norms. Sub ...
or
git
Git () is a distributed version control system: tracking changes in any set of files, usually used for coordinating work among programmers collaboratively developing source code during software development. Its goals include speed, data integ ...
. Model import and export is supported for
SBML
The Systems Biology Markup Language (SBML) is a representation format, based on XML, for communicating and storing computational models of biological processes. It is a free and open standard with widespread software support and a community of use ...
. Custom import-templates may be used to import custom model structures.
Rule-based modeling is also supported, where a pattern represents a set of automatically generated reactions.
Example for a simple model definition file for a reaction network A → B → C → A with observed species A and C:
function m = getModel();
% Starting with an empty model
m = pwGetEmtptyModel();
% Adding reactions
m = pwAddR(m, 'A', 'B');
m = pwAddR(m, 'B', 'C');
m = pwAddR(m, 'C', 'A');
% Adding observables
m = pwAddY(m, 'A');
m = pwAddY(m, 'C');
Data import
External data saved in *.xls or *.txt files can be added to a model creating a ''model-data-couple''. A mapping dialog allows to connect data column names to observed species names. Meta information in the data files comprise information about the experimental setting. Measurement errors are either stored in the data files, will be calculated using an error model, or are estimated automatically.
Parameter calibration
To fit a model to one or more data sets, the corresponding model-data-couples are combined into a ''fitting-assembly''. Parameters like initial values, rate constants, and scaling factors can be fitted in an experiment-wise or global fashion. The user may select from several numerical integrators, optimization algorithms, and calibration strategies like fitting in normal or logarithmic parameter space.
Interpretation of the goodness-of-fit
The quality of a fit is characterized by its ''chi-squared'' value. As a rule of thumb, for
''N'' fitted data points and ''p'' calibrated parameters, the chi-squared value should have a similar value
as ''N'' − ''p'' or at least ''N''. Statistically, this is expressed using a
chi-squared test
A chi-squared test (also chi-square or test) is a statistical hypothesis test used in the analysis of contingency tables
In statistics, a contingency table (also known as a cross tabulation or crosstab) is a type of table in a matrix format ...
resulting in a
p-value
In null-hypothesis significance testing, the ''p''-value is the probability of obtaining test results at least as extreme as the result actually observed, under the assumption that the null hypothesis is correct. A very small ''p''-value means ...
above a significance threshold of e.g. 0.05. For lower p-values, the model is
* either not able to explain the data and has to be refined,
* the standard deviation of the data points is actually larger than specified,
* or the used fitting strategy was not successful and the fit was trapped in a local minimum.
Apart from further chi-squared based characteristics like
AIC and
BIC, data-model-residual analyses exist, e.g. to investigate whether the
residuals follow a
Gaussian distribution
In statistics, a normal distribution or Gaussian distribution is a type of continuous probability distribution for a real-valued random variable. The general form of its probability density function is
:
f(x) = \frac e^
The parameter \mu i ...
. Finally, parameter
confidence intervals
In frequentist statistics, a confidence interval (CI) is a range of estimates for an unknown parameter. A confidence interval is computed at a designated ''confidence level''; the 95% confidence level is most common, but other levels, such as ...
may be estimated using either the
Fisher information matrix
In mathematical statistics, the Fisher information (sometimes simply called information) is a way of measuring the amount of information that an observable random variable ''X'' carries about an unknown parameter ''θ'' of a distribution that model ...
approximation or based on the
profile-likelihood function, if parameters are not unambiguously identifiable.
If the fit is not acceptable, the model has to be refined and the procedure continues with step 2. Else, the dynamic model properties can be examined and predictions calculated.
Model refinement
If the model structure is not able to explain the experimental measurements, a set of physiologically reasonable alternative models should be created. In order to avoid redundant model paragraphs and copy-and-paste errors, this can be done using a common core-model which is the same for all variants. Then, ''daughter''-models are created and fitted to the data, preferably using batch processing strategies based on MATLAB scripts. As a starting point to envision suitable model variants, the PottersWheel ''equalizer'' may be used to understand the dynamic behavior of the original system.
Model analysis and prediction
A mathematical model may serve to display the concentration time-profile of unobserved species, to determine sensitive parameters representing potential targets within a clinical setting, or to calculate model characteristics like the half-life of a species.
Each analysis step may be stored into a modeling report, which may be exported as a Latex-based PDF.
Experimental design
An experimental setting corresponds to specific characteristics of ''driving input functions'' and
initial concentrations. In a signal transduction pathway model the concentration of a ligand
like EGF may be controlled experimentally. The driving input designer allows investigating the effect of a continuous, ramp, or pulse stimulation in combination with varying initial concentrations using the equalizer. In order to discriminate competing model hypotheses, the designed experiment should have as different observable time-profiles as possible.
Parameter identifiability
Many dynamical systems can only be observed partially, i.e. not all system species are accessible experimentally. For biological applications the amount and quality of experimental data is often limited. In this setting parameters can be structurally or practically non-identifiable. Then, parameters may compensate each other and fitted parameter values strongly depend on initial guesses. In PottersWheel non-identifiability can be detected using the
Profile Likelihood Approach. For characterizing functional relationships between the non-identifiable parameters PottersWheel applies random and systematic fit sequences.
[''Data-based identifiability analysis of non-linear dynamical models'', S. Hengl, C. Kreutz, J. Timmer and T. Maiwald, Bioinformatics 2007 23(19):2612–2618]
References
External links
*
Profile Likelihood Approach
{{Numerical analysis software
Applied mathematics
Cross-platform software
Mathematical modeling
Numerical software
Pharmacokinetics
Visual programming languages
Statistical software
Simulation software