Didier Verna, EPITA Research Lab.
Biological Realms in
Computer Science
@didierverna!
facebook/didier.verna!
www.didierverna.info!
ACCU 2014, Friday April 11th
Prologue
Part I: Origins
1. Transversality
Understanding
Unification
“ It is a requirement to the human brain to put order in the
universe. […] One may disagree with explanatory systems
offered by myths or magic, but one cannot deny them
coherence. ”
—François Jacob
1. Transversality
Understanding
Unification
“ The heart of the problem is always to explain the
complicated visible by some simple invisible. ”
—Jean Perrin
1. Transversality
Understanding
Unification
Science Religions or Myths!
Experimentation: confront the possible with the actual!
Parceling: experimentation on small problems
1. Transversality
Understanding
Unification
“ The beginning of modern science can be dated from the
time when such general questions as ‘How was the
universe created?’ […] were replaced by such limited
questions as ‘How does a stone fall?’. Scientific knowledge
thus appears to consist of isolated islands. ”
—François Jacob
1. Transversality
Understanding
Unification
“ In the history of sciences, important advances often
come from bridging the gaps. They result from the
recognition that two hitherto separate observations can be
viewed from a new angle and seen to represent nothing
but different facets of one phenomenon. ”
—François Jacob
1. Transversality
Understanding
Unification
“As Science progresses, there is a steady decrease in the
number of postulates on which it has to rely for its
development. ”
—Antoine Danchin
1. Transversality
Understanding Unification
Myths, Religions etc.
Parceling
Science
progress
2. Transversal Models
Beyond Science
“ We were all so excited we literally rushed to the book
store. When I arrived there, the queue already extended
outside the store, up to the pavement. ”
— Lida Rising on the GoF book
2. Transversal Models
Beyond Consciousness
“ Many of the concepts and techniques presented in this
paper could find wide applications outside the specific
area of software systems, in other industries, and to the
social and economic systems. ”
— Lehman on software evolution
2. Transversal Models
Networks and Complex Systems
“ The greatest challenge today, not just in cellular biology
and ecology but in all of science, is the accurate and
complete description of complex systems. ”
— Edward O. Wilson
2. Transversal Models
Networks and Complex Systems
“ In the longer run, network thinking will become
essential to all branches of science, as we struggle to
interpret the data pouring in from neurobiology,
genomics, finance and the World Wide Web. ”
— Steven H. Strogatz
“ […] fundamental scientific challenge: understanding the
laws of nature that unite evolved and engineered
systems. ”
—Uri Alon
Networks and Complex Systems
2. Transversal Models
3. From Computer Science to Biology
Turing machine metaphor / macrocellular complexity
(Carl Woese, 1972)!
!
«#in-silico#» experiments / protein functions study
(Lakshminarayan M. Iyer, 2001)!
Graph theories / transcriptional regulatory networks
(Uri Alon, 2007)
4. From Biology to Computer Science
Object-Oriented Programming
“ It was probably in 1967 when someone asked me what I
was doing, and I said: «#It’s object-oriented
programming.#» […] I thought of objects being like
biological cells and/or individual computers on a
network, only able to communicate with messages. ”
— Alan Kay
4. From Biology to Computer Science
Object-Oriented Programming
Artifical Intelligence in General!
Neural Networks!
Genetic Algorithms!
Computer Viruses
5. Discovery vs. Invention
Genetic Program (1960)
Distinct from the cell (Cf. Turing & Von Neumann)
Genome transplantation
Cellular computers
Genetic engineering!
Biological Networks (2003)
Good engineering principles such as Modularity,
Robustness, Redundancy.
6. Tinkerers vs. Engineers
“ [Natural selection] works like a tinkerer — a tinkerer
who does not know exactly what he is going to produce.
[…] Evolution behaves like a tinkerer who, during eons
upon eons would slowly modify his work […] to adapt it
progressively to its new use. ”
— François Jacob
6. Tinkerers vs. Engineers
“ Evolution is far from perfection. This is a point which
was repeatedly stressed by Darwin who had to fight
against the argument of perfect creation. In Origin of
Species (1859), Darwin emphasises over and over again
the structural or functional imperfections of the living
world. ”
— François Jacob
6. Tinkerers vs. Engineers
“ The action of natural selection has often been compared
to that of an engineer. This, however, does not seem to be a
suitable comparison […] because the engineer works
according to a pre-conceived plan [and] because the
objects produced by the engineer, at least by the good
engineer, approach the level of perfection made possible
by the technology of the time. ”
— François Jacob
7. The trigger
“ [LaTeX] is a wildly inconsistent mishmash and
hotchpotch of ad-hoc primitives and algorithmic solutions
without noticeable streamlining and general concepts. A
thing like a pervasive design or elegance is conspicuously
absent. You can beat it around to make it fit most
purposes, and even some typesetting purposes, but that is
not perfection. ”
— David Kastrup
7. The trigger
Sometimes, we are much more tinkerers than we are engineers
Part II: Ascension
8. The Engineer as a Tinkerer
Nature works by tinkering, as opposed to engineering
(François Jacob, 1977)!
There are engineering principles in biological systems
(Uri Alon, 2003)!
Genetic code software program
(Antoine Danchin, 2009)
8. The Engineer as a Tinkerer
“ The program of molecular biology is reverse-engineering
on a grand scale. ”!
— Uri Alon
There is a lot of tinkering in what we do!
“ The program of computer science should be reverse-
tinkering on a grand scale. ”!
— My Self
8. The Engineer as a Tinkerer
As programmers, we like to think of software as the
product of our intelligent design, carefully crafted to meet
well-specified goals. In reality, software evolves
inadvertently through the actions of many individual
programmers, often leading to unanticipated
consequences. Large complex software systems are subject
to constraints similar to those faced by evolving biological
systems, and we have much to gain by viewing software
through the lens of evolutionary biology. ”!
— Stephanie Forrest
9. Determinism vs. Predictability
9. Determinism vs. Predictability
Deterministic Chaos / Butterfly Effect (Lorentz)
“ In the last few decades, physicists have become aware
that even the systems studied by classical mechanics can
behave in an intrinsically unpredictable manner. Although
such a system may be perfectly deterministic in principle,
its behavior is completely unpredictable in practice.
— Francis P. Heylighen
9. Determinism vs. Predictability
Deterministic Molecular Biology vs. Reductionism!
Adaptive Mutations vs. Randomness
Behavioral Intercession / Reflexivity
10. Predictability vs. Control
“ We feel we are in control of our current software
applications because they are the result of a conscious
design process based on explicit specifications and they
undergo rigorous testing. ”!
— Gabriel / Goldman
10. Predictability vs. Control
“ The programmer moves in a world entirely of his own
making. [. . . ] [His] excitement rises to a fevered pitch
when he is on the trail of a most recalcitrant error […]. It is
then that the system the programmer has created gives
every evidence of having taken on a life of its own, and
certainly, of having slipped from his control. [. . . ] For,
under such circumstances, the misbehaving artifact is, in
fact, the programmer’s own creation. ”
— Weizenbaum
11. Rise of the Machines
11. Rise of the Machines
11. Rise of the Machines
11. Rise of the Machines
11. Rise of the Machines
“ The paleome includes a set of genes that are not essential
for life under laboratory growth conditions. Many of these
genes code for maintenance and repair, and may be
involved in perpetuating life by restoring accuracy and
even creating information during the reproduction
process. ”!
— Antoine Danchin
Autopoiesis (Maturana)
12. Darwin’s Radio
12. Darwin’s Radio
Meta-System Transitions (Valentin Turchin)
S’
S1
S2
S3
S4
C
12. Darwin’s Radio
“ Most of the time this complexity increase, and evolution
in general, occurs rather slowly or continuously, but
during certain periods evolution accelerates spectacularly.
This results in changes which from a long term
perspective may be viewed as momentous events,
separating discrete types of organization. ”!
12. Darwin’s Radio
Epilogue
Nature is engineered as much as software is tinkered!
Computer Science may be a discovery, not an invention!
The Great Paradox™
Facts
Epilogue
Do we really want
to let go of control ?!
What do we put in
there ?
Questions
S’
S1
S2
S3
S4
???
Thank You!
References
!
Biological Realms in Computer Science
Verna, D. (2011). In Onward!'11: the ACM International
Symposium on New Ideas, New Paradigms, and Reflections
on Programming and Software Proceedings!
Classes, Styles, Conflicts: the Biological Realm of
LaTeX
Verna, D. (2010). In TUGboat 31:2 2010, Proceedings of
TUG 2010, the TeX Users Group conference