course layout • introduction • molecular biology • biotechnology • bioMEMS • bioinformatics • bio-modeling • cells and e-cells • transcription and regulation • cell communication • neural networks • dna computing • fractals and patterns • the birds and the bees ….. and ants
computer scientists and biological systems Some limitations of today’s computers • Computers crash! (OS usually to blame) • The complexity of computer programmes is limited. The biggest programmes are less complicated than the simplest biological cell. • Computers don’t self-replicate. • They don’t self-organise. • They don’t fix themselves. • Computers are always right, but don’t always give the answers we want to know. Computers are unforgiving.
potential implications • Pretty soon computers will miniaturise to molecular scales. This transition will require • noise/defect-tolerance • self-assembly/self-organisation at the hardware level • Software will need to cope with ever-increasing complexity. Can software self-organise? Self-evolving software is already in use both in traditional computing & robotics. • Computer systems are networked in massive complex and dynamic architectures. Distributed approaches to managing networks/grids are being implemented. Specifically, ant algorithms are used in re-organising internet connectivity in the face of node failures.
biological systems How do biological systems deal with these issues? Biological performance is • dynamic • flexible, adaptive • robust, noise/defect tolerant
the slime mould • Is no more than a collective manifestation of ameoba • It self-organised in the face of duress (food deprivation, pressure for self-preservation/self-replication). • It is completely decentralised/distributed: There is no leader. • Each amoeba follows simple rules. • Individual amoebas are not reliable. • The amoeba is adaptive; its function is context-dependent. • Interactions among different levels of organisation • The solution is defined in terms of the system at large (slime mould and its survival, not individual amoeba).
where are fractals found? • star distribution in the galaxy • rings of Saturn • weather patterns • trees • geological formations • vascular networks • bioelectrical activity • dendritic branching patterns
fractals in biology • Time series - EMG, ECG, EEG • Codes - DNA • Population distribution / Urban expansion • Gait analysis • Vessel distribution • Diabetic retinopathy, lung bronchioli • Pathology • Classification of images • Neurophysiology
Lorenz studiedthe weather • John von Neumann built thefirst computer to control the weather. • Von Neuman had overlooked the possibility of chaos, with instability at every point. • Edward Lorenz saw a fine geometrical structure, order masquerading as randomness. • Lorenz looked for a link between a-periodicity and unpredictability.
lorenz attractor A snapshot of a chaotic process
Lorenz’sButterfly effect • Lorenz submitted a paper in 1972, titled, “Predictability: Does the Flap of a Butterfly’s Wings in Brazil set off a Tornado in Texas?” • In other words, sensitive dependence on initial conditions.
definition of fractals Mandelbrot’s definition • A fractal set is a metric space for which the Hausdorff-Besicovitch dimension D is greater than the topological dimension DT Fractals for the layperson • Non Euclidean forms that are not easily described by Euclidean geometry • A fractal set is characterised by an unlimited process of repeated transformations of an invariant geometrical form.
fractal neuron Purkinje cell construction using recursive growth rule with fractal scaling
brief history of fractals • Although fractals were imagined over a century ago, they were not easily seen until decades age when high speed digital computers were readily available. It was not until the late 1970’s that the word fractal came into existence, coined by Benoit Mandelbrot.
history continued • Benoit Mandelbrot was born in Warsaw, Poland, on November 20, 1924. His family was Jewish and had originally come from Lithuania. In 1936, the growth of Nazi power led the Mandelbrot family to move to France. 1944 brought brought the liberation of France and the beginning of Mandelbrot’s university education by Gaston Julia and others. Mandelbrot worked at an IBM research center studying chaotic data in economics. He coined the term “fractal”.
history continued • As a child in France, Mandelbrot wondered how to use the smooth regularities of Euclidean shapes to model the complexity of the world he saw around him. Where were the circles in nature? Where were the parallel lines and infinite planes? He concluded “clouds are not spheres, mountains are not cones, coastlines are not circles, and bark is not smooth...” (quoted in Briggs, 1992, p. 157)
features of fractals • Self similarity (part is similar to the whole) • Fractional dimension • The result of infinite iterations • Too irregular to be described in traditional geometric language
self similarity • Ferns seen previously • Sierpenski triangle • Koch snowflake • Julia set • Others
other fractals Julia Set Mandelbrot Set
fractals are... self-similar structures
Koch snowflake • von Koch (1905) • start with 2 shapes • an initiator and a generator • replace each straight line with a copy of the generator • that copy should be reduced in size and displaced to have the same end points as the line being replaced
Koch snowflake http://ecademy.agnesscott.edu/~lriddle/ifs/ksnow/ksnow.htm
properties of biological systems • collective behaviour • self-organisation, self-assembly and self-repair • self-replication/reproduction • Emergence: Organisation of structure & function is achieved by the system as a coherent, organic and autonomous entity, even though this whole consists of components which are themselves autonomous. • The whole is greater than the sum of the parts.
from pattern formation to computing? Conjecture • If principles of pattern formation underlie the development of a fetus, why not the development of program or an electronic circuit? • Computers need not be as complex as biological machines. Maybe by incorporating key principles from biology we can already achieve much improved functionality. First baby steps • Pattern formation could be useful if… • We can extract minimal principles to mimic it. • We can harness the patterns for useful computation.
Notice: early strings are sub-components of later strings. Also, strings are self similar at all levels. Lindenmayer systems L-systems define sets of local rules for making patterns. Requirements: an initial term and a set of rules. Adding rule B BA, gives: A … AB … ABBA … ABBA BAAB … ABBA BAAB BAAB ABBA … ABBA BAAB BAAB ABBA BAAB ABBA ABBA BAAB … ABBA BAAB BAAB ABBA BAAB ABBA ABBA BAAB BAAB ABBA ABBA BAAB ABBA BAAB BAAB ABBA … A simple rewriting system: Rule: A AB would develop as follows: A … AB … ABB … ABBB…
geometric rewriting systems Replace letters w/ geometries Grow pictures, not sentences…
Example rewrite rule: F F-F+F+FF-F-F+F (The resulting patterns will be examples of quadratic Koch islands) geometric rewriting systems • Turtle graphics approach: Imagine a turtle that can only understand three commands: F (move forward a distance d, drawing a line); + (turn left through ao), - (turn right through ao). • Set d=1, a=90. Give turtle initial string of commands (say F-F-F-F). Then, apply set of rewrite rules again and again and again…
from lines to trees To generate more life-like shapes • First, we need a way of representing branches. To do this, Lindenmayer employs a bracketing notation: • [ Before carrying on, push the current state of the turtle onto a the top of a pushdown stack (i.e., remember the current position and orientation of the turtle for later). ] Before carrying on, pop the state from the top of the stack and make it the current state of the turtle. This will often move the turtle to a different (earlier) part of the shape, or rotate it, or perhaps alter its state in some other way. How does stack system affect L-system’s behaviour?
1: F[+F][-F]F 2: F[+F][-F]F [+F[+F]-F]F] [-F[+F]-F]F] F[+F][-F]F 3: etc. Recursion + branching = tree-like structures branching structures & self-similarity • Imagine a simple L-System featuring brackets • Initiator:F Rewrite Rules:F F [+F] [-F] F ; a=30o 0: F
branching structures & self-similarity Tree-like structures and other shapes that look the same on every scale, are called self-similar systems. These self-similar structures are simple examples of fractals.