Biological Programming Models for Robustness and

advertisement
Biological
Programming
Models for
Robustness and
Scalability
Dynamic Data-driven
Application Systems
Panel
ACM International Conference
on Supercomputing
23 June 2003
David Evans
University of Virginia, Department
of Computer Science
(Really) Brief History of Computing
1950
1960
1970
1980
1990 2000-
Monolithic Computers
in guarded, airconditioned rooms
Fixed Networks of
PCs
Billions of small,
cheap unreliable
devices
No interactions
Data interactions with
other computers, but
most computing done
locally
Computing
organized through
local interactions
Narrow interface to
operator (punch cards,
teletype), no interface
to environment
Rich interface to user,
limited interface to
environment
Fundamentally
integrated into
physical
environment
DDDAS - 23 June 2003
swarm.cs.virginia.edu
2
Challenges and Opportunities
• Embedded in physical environment
– Challenges: unpredictable, energy-limited
– Opportunities: physical laws, continuous
• Scale
– Challenges: billions of independent
components
– Opportunities: redundant to failures
• Demands new programming
approaches and reasoning techniques
DDDAS - 23 June 2003
swarm.cs.virginia.edu
3
Swarm Computing:
Long-Range Goal
Cement
10 TFlop
DDDAS - 23 June 2003
swarm.cs.virginia.edu
4
Existing Systems
• Trillions of unreliable,
inexpensive
components
• No significant
performance
degradation when
billions fail
• Small programs
produce complex
behavior
DDDAS - 23 June 2003
• ~70 Trillion Cells in adult
human
• ~ 3 Billion of your cells
have died since I started
talking
• Program (3B
nucleotides) is shorter
than Windows XP,
difference between 2
humans on 1 floppy
swarm.cs.virginia.edu
5
Swarm Programming
Behavioral
Description
Environment
Model
Behavior and primitives
defined over groups
Swarm
Program
Generator
Device
Model
Device
Units
Device
Programs
Programmed
Device
Units
Primitives
Library
DDDAS - 23 June 2003
swarm.cs.virginia.edu
6
Observations About
Nature’s Programs
• Responsive
– Aware of state of
self and surroundings
• Localized
– Communication through chemical diffusion
• Redundant
– Millions of cells can die without compromising
function
• Remarkably Expressive
• Human genome ~250MB
DDDAS - 23 June 2003
swarm.cs.virginia.edu
7
Biological Complexity
Molecular map of colon cancer cell
from http://www.gnsbiotech.com/applications.shtml
DDDAS - 23 June 2003
swarm.cs.virginia.edu
8
Foundations
Current Research
• Amorphous Computing
[Abelson, Nagpal,
Sussman]
Cellular Automata
• Paintable Computing
von Neumann [1940s]
[Butera]
Conway’s Game of Life [1970]
• Embryonics [Mange,
Wolfram [2002]
Sipper]
Reaction-Diffusion
Turing [1952] • Ant Colony
Optimization, Swarm
Intelligence
DDDAS - 23 June 2003
swarm.cs.virginia.edu
9
Simplified Cell Model
• Awareness of Environment
– Sense chemicals on cell walls
– Sense chemicals in environment
• Cell Actions
– Cell Division (asymmetric)
– State Change
– Communicate: emit (directional, neighboring
walls), diffuse (omnidirectional)
• Simple physical forces
– Two cells cannot overlap in space
DDDAS - 23 June 2003
swarm.cs.virginia.edu
10
A
alive < 0.5
B
alive < .5
& inner > .5
state A { color red
emits (alive, 1)
diffuses (inner, 12), (outer, 14)
transitions
(alive < 0.5) from dir -> (A, B) in dir; }
Example
state B { color green
emits (alive, 1)
transitions
(alive < 0.5) from dir & (inner > 0.5)
inner < .1
-> (B, B) in dir;
& outer > .5
(inner < 0.1) & (outer > 0.5) -> C; }
C
alive < .5
& outer > .5
DDDAS - 23 June 2003
state C { color yellow
emits (alive, 1)
transitions
(alive < 0.5) from dir & (outer > 0.5)
-> (C, C) in dir; }
swarm.cs.virginia.edu
11
Step 24
5071 cells
Step 25
Catastrophic event
kills 75% of cells
DDDAS - 23 June 2003
swarm.cs.virginia.edu
13
Robustness of Sphere Program
DDDAS - 23 June 2003
swarm.cs.virginia.edu
14
state corner { color red
emits (length, 8), (alive, 1)
transitions
(alive < 1) from dir
-> (corner, segment) in dir;
-> (corner); }
Network Mesh
state segment { color cyan
emits (alive, 1)
forwards (length - 1)
transitions
(length > 1.5) from dir
& (alive < 0.5) from opposite (dir)
-> (segment, segment)
in opposite (dir);
(length > 0.1) -> (corner);
(length < 0.1) -> die; }
DDDAS - 23 June 2003
swarm.cs.virginia.edu
15
Composing Primitives
• Cells can follow multiple programs
simultaneously (vector of independent
states)
• Cells can combine primitives through
shared chemicals
– Chemicals secreted by one primitive can
induce changes in other primitives
• Goal: predict properties of composition
based on properties of primitives
DDDAS - 23 June 2003
swarm.cs.virginia.edu
16
Mickey Mouse Program
• 20 states
• 50 transition rules
• Starts from one cell,
combines lines, spheres
Real Mouse Program
• 3B base pairs
• 98% same as human DNA
• Starts from one cell,
combines complex proteins
DDDAS - 23 June 2003
swarm.cs.virginia.edu
17
Towards Real Systems
• Cells
– Sensor Devices, MEMS, Internet Nodes
• Division
– Processes
– Find new hosts
• Communication
– Point-to-point emissions
– Wireless multicast (can be multi-hop) diffusions
• Example: distributed file system running on
simulated wireless nodes
DDDAS - 23 June 2003
swarm.cs.virginia.edu
18
Distributed Wireless File Service
File Distribution and Update
Server
DDDAS - 23 June 2003
inhibit
swarm.cs.virginia.edu
19
Distributed Wireless File Service
File Distribution and Update
replicate
DDDAS - 23 June 2003
swarm.cs.virginia.edu
20
Robustness to Node Failures
80% of
requests
satisfied
DDDAS - 23 June 2003
swarm.cs.virginia.edu
21
Summary
• Trillions of creatures have died to evolve the
extremely robust programs that survive today
• Robustness and scalability require:
– Decentralization
– Awareness of surroundings: Dynamic, Data-Driven
• Swarm Programming
– Develop high level behaviors from local interactions
– Use communication through environment to coordinate
locally
– Produce complex behaviors by combining primitives
defined over groups
DDDAS - 23 June 2003
swarm.cs.virginia.edu
22
Acknowledgements
Sponsor:
National Science Foundation
Contributors:
Lance Davidson (UVa Biology)
Selvin George (Cell Simulator)
Steven Marchette
Qi Wang
Brian Zhang
http://swarm.cs.virginia.edu
DDDAS - 23 June 2003
swarm.cs.virginia.edu
23
Download