programming the way biology programs david evans university of virginia, department of computer...

12
Programming the Way Biology Programs David Evans University of Virginia, Department of Computer Science NSF Advanced Computation Inspired by Biological Processes Conference, Arlington, VA 7-8 April 2003

Upload: linda-webster

Post on 17-Jan-2016

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Programming the Way Biology Programs David Evans University of Virginia, Department of Computer Science NSF Advanced Computation Inspired by Biological

Programming the Way Biology Programs

David EvansUniversity of Virginia, Department of Computer Science

NSF Advanced Computation Inspired by Biological Processes Conference, Arlington, VA 7-8 April 2003

Page 2: Programming the Way Biology Programs David Evans University of Virginia, Department of Computer Science NSF Advanced Computation Inspired by Biological

NSF Biologically Inspired Computation swarm.cs.virginia.edu 2

Copying How Nature Programs

• Mimic the Process– Evolutionary programming, genetic

algorithms, genetic programming

• Mimic the Results (this talk)– Take advantage of the trillions of

organisms that have died already to lead nature towards good programs

Page 3: Programming the Way Biology Programs David Evans University of Virginia, Department of Computer Science NSF Advanced Computation Inspired by Biological

NSF Biologically Inspired Computation swarm.cs.virginia.edu 3

Observations About Nature’s Programs

• Responsive– Aware of state of self and surroundings

• Localized– Communication through chemical diffusion

• Redundant– Millions of cells die every second, but humans

keep working• Remarkably Expressive

• Human genome – 3B base pairs (~250MB)• Two human programs differ by about 500KB

Page 4: Programming the Way Biology Programs David Evans University of Virginia, Department of Computer Science NSF Advanced Computation Inspired by Biological

NSF Biologically Inspired Computation swarm.cs.virginia.edu 4

Research Goal

• Build robust, survivable systems from unreliable components– Learn from biological systems that do this

• Learn about biology by building biological programs (speculative)

Page 5: Programming the Way Biology Programs David Evans University of Virginia, Department of Computer Science NSF Advanced Computation Inspired by Biological

NSF Biologically Inspired Computation swarm.cs.virginia.edu 5

Cell-Based Programming Model

• Correspondence to biological cells– Genes turn on and off state changes– Emit different chemicals depending on state,

sense chemicals in surroundings– Cells can divide asymmetrically

• Lots of simplifications: not simulating reality– Mass conservation optional– No chemical interactions– No physical forces (except collisions)

Page 6: Programming the Way Biology Programs David Evans University of Virginia, Department of Computer Science NSF Advanced Computation Inspired by Biological

NSF Biologically Inspired Computation swarm.cs.virginia.edu 6

state center emits (radius, 6), (alive, 1) transitions (alive < 1) from d (center, fill) d

state fill emits (alive, 1) diffuses radius transitions (alive < 1) from d and (radius > 1) (fill, fill) d

Building a Sphere

Selvin Georgehttp://swarm.cs.virginia.edu/cellsim

Page 7: Programming the Way Biology Programs David Evans University of Virginia, Department of Computer Science NSF Advanced Computation Inspired by Biological

NSF Biologically Inspired Computation swarm.cs.virginia.edu 7

Radius 7 “sphere” (1200 cells)

Page 8: Programming the Way Biology Programs David Evans University of Virginia, Department of Computer Science NSF Advanced Computation Inspired by Biological

NSF Biologically Inspired Computation swarm.cs.virginia.edu 8

Distributed Wireless File ServiceFile Distribution and Update

Server

replicate

inhibit

Page 9: Programming the Way Biology Programs David Evans University of Virginia, Department of Computer Science NSF Advanced Computation Inspired by Biological

NSF Biologically Inspired Computation swarm.cs.virginia.edu 9

Distributed Wireless File Service

File Distribution and Update

Page 10: Programming the Way Biology Programs David Evans University of Virginia, Department of Computer Science NSF Advanced Computation Inspired by Biological

NSF Biologically Inspired Computation swarm.cs.virginia.edu 10

Amorphous Computing• MIT AI/LCS Research Project

• Growing Point Language (Daniel Coore)– Botanical model of programming– Able to make complex topologies using

gradients

• Origami Shape Language (Radhika Nagpal)

Page 11: Programming the Way Biology Programs David Evans University of Virginia, Department of Computer Science NSF Advanced Computation Inspired by Biological

NSF Biologically Inspired Computation swarm.cs.virginia.edu 11

Education• “Education across the Biological,

Mathematical, and Computer Sciences” (last month)

• Work toward curricula that require all CS students to learn biology, and all biology majors to learn computer science– Requires CS courses that teach computer

science to non-majors– Requires Biology courses that don’t require 4

semesters of Chemistry

Page 12: Programming the Way Biology Programs David Evans University of Virginia, Department of Computer Science NSF Advanced Computation Inspired by Biological

NSF Biologically Inspired Computation swarm.cs.virginia.edu 12

Summary• Biology has killed trillions of organisms

to solve complex engineering problems– We should be able to learn from both the process and the solutions nature found

• Fifty years ago, biology and computer science became deeply intertwined– Academia still hasn’t caught up