that address real biological problems.
Hence the techniques and prototypes
developed and tested on proof-of-con-cept examples must scale smoothly to
real-life case studies. Scalability is not
a new issue in computing; it was first
raised several decades ago when computers started to become connected
over dispersed geographical regions
and the first high-performance architectures were emerging. 39 Algorithmic
systems biology can build on the large
set of successfully defined and novel
techniques that subsequently were
developed—particularly in the areas
of programming languages, operating
systems, and software-development
environments—to address the scalable
specification and implementation of
large distributed systems.
Consider the exploitation, at user
level, of the Internet. The dynamics
(evolution and use) of the Internet have
no centralized point of control and are
based both on the interaction between
nodes and on the unpredictable birth
and death of new nodes—
characteristics similar to the simultaneously active
threads of interactions in living systems.
Yet although biological processes share
many similarities with the dynamics of
large computer networks, they still have
some unique features. These include
self-reproduction of components (
dating back to von Neumann’s self-reproducing automata in computing and to
Rosen’s systems, closed under efficient
causality, in biology), auto-adaptation
to different environments, and self-repair. Therefore it seems natural to
check whether the programming and
analysis techniques developed for computer networks and their formal theories could shed light on biology when
suitably adapted.
Such innovation should be facilitated
in the life sciences community by presenting computers as high-throughput
tools for quantitatively analyzing information processes and systems—tools
that can be made greatly customized
through software to work with specific
processes or systems. In other words,
software may be used to plan and control information experiments to serve a
myriad of purposes.
The topic of simulation in particular
needs some consideration. Simulation
has evolved since the early days of computing into a more quantitative algorith-
algorithmic
systems biology
completely adopts
the main assets
of our computing
discipline:
hierarchical,
systems, and
algorithmic thinking
in modeling,
programming and
innovating.
mic discipline: the rules of interaction
between components are used to build
programs, as opposed to abstracting
overall behavior through equations. The
execution of algorithmic simulations relies on deep computing theories, while
mathematical simulations are solved
with the support of computer programs
(where computing is just a service). Ex-
22
ecution of algorithms therefore exhibits
emergent behavior produced at system
level, through the set of local interactions between components, without
the need to specify that behavior from
the beginning. This property is crucial
to the predictive power of the simulation approach, especially for biological
applications. The complex interactions
of species, the sensitivity of their interactions (expressed through stochastic
parameters), and the localization of the
components in a three-dimensional hierarchical space make it impossible to
understand the dynamic evolution of
a biological system without a computational execution of the models. The
algorithms that are executed on top of
stochastic engines and governed by the
quantities described here are fundamental to discovering new organismic
behavior and thus to creating new biological hypotheses.
Algorithmic systems biology can also
be easily integrated with bioinformatics. An example that would benefit from
such integration is the modeling of the
immune system, because the dynamics
of an immune response involve a genomic resolution scale in addition to the
dimensions of time and space. Inserting genomic sequences of viruses into
models is quite easy for an algorithmic
modeling approach, but it is extremely
difficult in a classic mathematical model, which suffers from generalization
45
because a population of heterogeneous
agents is usually abstracted into a single
continuous variable. 8 Deepening our
understanding of the immune system
through computing models is fundamental to properly attacking infectious
illnesses such as malaria or HIV as well
as autoimmune diseases that include
rheumatoid arthritis and type I diabetes. Also, computer science can exploit
such models to further propel research
on artificial immune systems in the
field of security. 23
Design principles of large software
systems can help in developing an algo-