InSilica Labs, Inc.
Optimizers, Simulators, UIs.
Model development. Done right.
We create powerful and intuitive tools for you to build and
explore mathematical models. Our tools enable you to increase
productivity by reducing time spent on mundane, tedious, and complex tasks.
These tools can also open up new possibilities in your work flow; possibilities
that perhaps, you never even imagined.
Our tools are custom built based on your needs.
Contact us for a quote.
Optimizers
Let the computer do the search.
We can give you easy access to powerful optimization tools for
parameter identification, parameter estimation, and parameter
optimization. Whether you need to perform a local or global
parameter search, we can find the right algorithm for you. Or
maybe you know the algorithm you want. We can implement a
specific algorithm at your request.
- direct algorithms (Direct, VTDirect)
- gradient based algorithms (Levenburg-Marquardt, ODRPACK95)
- hybrid algorithms
- genetic algorithms / evolutionary algorithms
- other non-deterministic algorithms (simulated annealing, particle swarm)
Simulators
Fast. Faster. Fastest.
Our custom simulators leave generic simulation tools in the dust
(see the benchmarks). Stiff systems
of ordinary differential equations (ODEs), stochastic systems, and
systems of partial differential equations are a few of the mathematics
we can simulate. At the heart of our simulators are two speed
demons: a numerical solver and a mathematical interpreter. We
custom build mathematical interpreters
to calculate the right hand side of your mathematical model. Then,
we use a tried and trusted numerical algorithm, such as CVODE or
ODEPACK, to solve the system. These numerical solvers use proven
techniques such as Adams-Moutlon and the backward differentiation
formula (BDF).
If performance isn't enough, we also incorporate discrete events. Discrete events allow your simulations to mimic a change in a control variable at a specific time, a sudden change in the system when a threshold is reached, or switching behavior.
Interpreters
Did we mention fast?
At the heart of our simulators are our interpreters. Our
interpreters take a proprietary bytecode designed specifically for
repeated fast mathematical computations, just like those necessary
when calculating a numerical solution to a system of ODEs.
You'll never see our interpreters, but they are hard at work behind
the scenes reducing the time you have to wait for your computer.
Parsers
We understand your models.
You undestand the biology, the physics, and the chemistry, we
understand the file format. However your models are stored in the
computer, we can read them and turn them into something our
interpreters, simulators, and optimizers
can use for blazing
fast calculations. Whether your models are in SBML1,
Maddonna, XPP, Matlab, or a
proprietary format, we can read that format with a parser built for
your needs.
Integration
Have an existing tool?
We are wizards at integration. We'll take your existing tools and
connect them with our tools. Seamlessly. You can work from the
environment you already have, you can leverage the power of the
tools you already have, and you'll have new power and flexibility
from the tools we build for you.
Plotting
Instant plots.
We integrate plotters tightly in the work flow so you can see
simulation results immediately while changing parameters.
Empirical data and simulations from multiple parameter values can
all be plotted on the same graph so you can easily compare how well
different parameter values fit your data.
Plots can be exported to image files, exported to PDFs, or copied to
a document or presentation in applications like Microsoft Word or Powerpoint.
Model builders
Build your model. In your terms.
Some model development processes require manual construction of the
mathematical equations that represent a model. This can be a
tedious and error prone process, especially since you think about
your model in terms specific to your field. Whether your terms are
chemical kinetic equations, network diagrams, probabilities of
interaction or something else, we can build a tool that allows you
to think... in your own terms.
Model evaluation
Quickly see the validity of your model.
The most simple form of model evaluation can be done by viewing the
simulation results and empirical data together on plots for all
variables of interest. We take that two steps further by creating
automatic model evaluators that can instantly tell you how well your
model fits empirical data. These same evaluators can then be used
in optimizers to automatically
discover parameter values.
Undo
Modern.
No modern application is complete without undoable actions. Yet
this feature is not present on many existing tools for simulation
and model building. We can create tools for you with this modern
feature that we've come to expect of all our software. Accidentally
deleted components of the model are not lost, just undo the delete.
Renaming, reordering, and adding new components can be undone -
and redone - as much as you need so you can be free from worry and
allow your creative energy to flow into your work.
High performance computing
How about a Petaflop.
If the performance of our custom built
simulators isn't enough, we
can open up the power of your multicore computer or even take these
algorithms to a super computer. All modern desktop and laptop
computers have many cores, yet very few tools take advantage of this
processing power already sitting on your desk. We can parallelize
most algorithms to take advantage of this existing power.
We can increase performance by a few times to a few thousand
times2.
Parameter exploration
Our specialty.
Tying all our experience and tools together you get a powerful
environment for exploring parameter space and seeing a comprehensive
overview of your model's behavior. We reduce or remove every delay
we can so that you don't have to wait on the computer, you can see
results quickly or instantly, and focus on one thing: your model.
You can quickly and easily switch between adjusting parameter values
by hand to performing automatic parameter optimization. You can see
plots of
simulations and empirical data
quickly or in real time
while you adjust parameters or even during optimization. For tough
problems you need all the power and tools at your disposal. We
bring the tools to you and make model development engaging and
exciting.