Computing Inspired by Biology David Evans

advertisement
Computing
Inspired by
Biology
CS851: Biologically-Inspired Computing
David Evans
University of Virginia
http://www.cs.virginia.edu/evans
Computer Science
Menu
• Computing with Biology
• Project Presentations
• Report on the NSF Advanced Computation
Inspired by Biological Processes
Workshop
15 April 2003
CS 851 Spring 2003
2
Computing with DNA
Leonard Adleman
– 2002 Turing
Award Winner
(for RSA)
– Mathematical
Consultant for
Sneakers
15 April 2003
CS 851 Spring 2003
3
DNA
• Sequence of
nucleotides: adenine
(A), guanine (G),
cytosine (C), and
thymine (T)
• Two strands, A must
attach to T and G must
attach to C
15 April 2003
CS 851 Spring 2003
G
C
T
A
4
Hamiltonian Path Problem
• Input: a graph, start vertex and end vertex
• Output: either a path from start to end that
touches each vertex in the graph exactly
once, or false indicating no such path
exists
RIC
start: CHO
end: BWI
BWI
CHO
IAD
15 April 2003
CS 851 Spring 2003
Hamiltonian Path
is NP-Complete
5
Encoding The Graph
• Make up a two random 4-nucleotide
sequences for each city:
CHO:
RIC:
IAD:
BWI:
CHO1 = ACTT
RIC1 = TCGG
IAD1 = GGCT
BWI1 = GATC
CHO2 = gcag
RIC2 = actg
IAD2 = atgt
BWI2 = tcca
• If there is a link between two cities (AB),
create a nucleotide sequence: A2B1
CHORIC
RICCHO
gcagTCGG
actgACTT
Based on Fred Hapgood’s notes
on Adelman’s talk
http://www.mitre.org/research/nanotech/hapgood_on_dna.html
15 April 2003
CS 851 Spring 2003
6
Encoding The Problem
• Each city nucleotide sequence binds with
its complement (A  T, G  C) :
CHO: CHO1 = ACTT
CHO2 = gcag
CHO’:
TGAA
cgtc
RIC:
TCGGactg
RIC’: AGCCtgac
IAD:
GGCTatgt IAD’ = CCGAtaca
BWI: GATCtcca BWI’ = CTAGaggt
• Mix up all the link and complement DNA
strands – they will bind to show a path!
15 April 2003
CS 851 Spring 2003
7
Path Binding
BWI’
RIC’
IAD’
CHO’
TGAAcgtcCCGAtacaAGCCtgacCTAGaggt
gcagGGCTatgtTCGG actgGATC
CHOIAD IADRIC RICBWI
TCGGactg
RIC
BWI
GATCtcca
CHO
ACTTgcag
IAD
GGCTatgt
15 April 2003
CS 851 Spring 2003
8
Getting the Solution
• Extract DNA strands starting with CHO
and ending with BWI
– Easy way is to remove all strands that do not
start with CHO, and then remove all strands
that do not end with BWI
• Measure remaining strands to find ones
with the right weight (7 * 8 nucleotides)
• Read the sequence from one of these
strands
15 April 2003
CS 851 Spring 2003
9
Why don’t we solve NPComplete problems this way?
• Speed: shaking up the DNA strands does
1014 operations per second ($400M
supercomputer does 1010)
• Memory: we can store information in DNA
at 1 bit per cubic nanometer
• How much DNA would you need?
– Volume of DNA needed grows exponentially
with input size
– To solve ~45 vertices, you need ~20M gallons
15 April 2003
CS 851 Spring 2003
10
DNA-Enhanced PC
15 April 2003
CS 851 Spring 2003
11
Project Presentations
Tell a story, don’t read a list.
15 April 2003
CS 851 Spring 2003
12
All Good Talks Tell a Story
• Introduce characters (rabbit, fox)
• Describe an important problem (fox
wants to eat rabbit)
• Relate events that resolve the problem
(rabbit tells fox about thesis)
• A few examples (rabbit tells wolf, ...)
• Draw a general conclusion that is
supported by your story (thesis doesn’t
matter, only advisor)
15 April 2003
CS 851 Spring 2003
13
Introduction
• Introduce characters: motivate your work
– Why the problem is interesting and important
– Place your work in context:
how is it different from what others have
done
• Teaser for your results – why should we
listen to the rest of the talk?
– Don’t need a full outline, but let audience
know enough so they want to stay
– Unlike Rabbit story, suspense is not good
15 April 2003
CS 851 Spring 2003
14
Guts
• Explain what you did
– Don’t be comprehensive – big picture
– Use pictures, 1-2 examples, etc.
• Convey one technical nugget
– Show one neat concrete thing that came out
of your work
• Analysis
– Did your work solve the problem?
– What are the important results of your work
15 April 2003
CS 851 Spring 2003
15
Conclusion
Summarize your project with one key point.
Something your audience didn’t
know or believe before your
presentation
If your audience remembers one thing from
your talk, you have succeeded.
15 April 2003
CS 851 Spring 2003
16
Can you do all this in 20 minutes?
• Advertisers pay $2.5M for 30 seconds
during Superbowl – they must be pretty
sure they can tell a compelling story in
that time
• Seinfeld episode is 22 minutes long
• Make your points directly, avoid
unnecessary details
• Organize your presentation
15 April 2003
CS 851 Spring 2003
17
Some Specific Advice
• Average around 2 minutes per slide
– No more than 15 slides total
• Your target audience is the other students in
the class
• Use Pictures
• Use Humor (but only if its relevant)
• Don’t put more text than this on any of
your slides!
15 April 2003
CS 851 Spring 2003
18
Practice!
• Don’t just make up your slides, think about
what you will say with them
• Without an audience
• In front of friends not familiar with your
project
• With classmates
15 April 2003
CS 851 Spring 2003
19
Project Presentations
• Sign up for a time slot today
• If your presentation and course
contributions are enough to merit an “A” in
the course already, you will not need to
write a project report
• If not, you will have a second chance:
project report
15 April 2003
CS 851 Spring 2003
20
NSF Advanced Computation
Inspired by Biological Processes
Conference
Arlington, VA 7-8 April 2003
Now, I’m going to give an unpracticed, list talk… 
15 April 2003
CS 851 Spring 2003
21
NSF Bio-Inspired Computing
• Robust Cognitive Computation
• Development and Self-Organization
• Protection and Immunity
– Stephanie Forrest, Computer Immunology
• Social Interaction
– Eric Bonabeau, Science of “Prey”
15 April 2003
CS 851 Spring 2003
22
Michale Fee, Bell Labs
Zebra Finch Singing
• Electrodes can measure individual neurons
• Temporal firing of neurons corresponds to
sections in song
– Errors are localized
• Redundantly encoded
– 20 000 HVC neurons, 600ms song, each
neuron is active only 6ms of the song
– 200 neurons scattered through HVC know each
part of song
15 April 2003
CS 851 Spring 2003
23
Alan Gelperin,
Monell Chemical Senses Center
• Two types of olfactory systems:
– Specialist (moth – male moth can only smell
female moth, but very sensitive to it)
– Generalist (dog)
• Olfaction is 5% of mouse brain, 0.2% of
human brain
• No noticeable degradation when all of one
bulb and 80% of the other is removed!
15 April 2003
CS 851 Spring 2003
24
Theimo Krink
University of Aarhus, Denmark
• Mass extinction in evolutionary algorithms
• End of Permian era (250M years): 96% of
all species became extinct
• Experiment with mass random extinctions
in evolutionary algorithms
• Better results
without extinction
(for toy problems)
with extinction
15 April 2003
CS 851 Spring 2003
25
Computer Immunology
Stephanie Forrest
15 April 2003
CS 851 Spring 2003
26
Traditional CS vs. Bio-Inspired CS
• Traditional Computer Science
– Decomposability and Modularity
– Explicit management of interactions and
exceptions
– Focus on performance and correctness
• Biology
– Survivability and adaptability more important
than performance and correctness
15 April 2003
CS 851 Spring 2003
27
Biological Inspiration
• Biological systems are incredibly resilient
• Most humans survive ~80 years
• Before medical advances, most still would
survive ~30 years
• Operate in a hostile, unpredictable
environment
• No way to reboot, reinstall operating
system, upgrade software, etc.
15 April 2003
CS 851 Spring 2003
28
Immune Systems
Lymphocytes
recognize pathogens
by binding. Proteins
have distinctive
shapes.
Binding is approximate.
Sometimes match
wrong things (this is
why organ transplants
get rejected).
An Overview of the Immune System.
© 1997 Steven A Hofmeyr
http://www.cs.unm.edu/~immsec/html-imm/introduction.html
15 April 2003
CS 851 Spring 2003
29
Receptor Diversity
• Need to recognize all foreign intruders, but
DNA can’t know about all possible intruders
– 1016 intruder patterns, 106 self patterns
• Gene segments are randomly combined to
form different receptors
– Can make up to 1015 different receptors (usually
have about 108 – 1012 at one time)
• How is that enough?
– Matching is approximate
– Create 100M new lymphocytes every day
15 April 2003
CS 851 Spring 2003
30
How You Make Them
15 April 2003
CS 851 Spring 2003
31
Better Not Kill Yourself
Clonal Deletion
15 April 2003
CS 851 Spring 2003
32
Affinity
Maturation
• The ones that match
intruders are
produced in quantity
• B-cells in bone
marrow – most
effective cells
reproduce more
quickly
15 April 2003
An Overview of the Immune System.
© 1997 Steven A Hofmeyr
CS 851 Spring 2003
33
Can computers do this?
• Programs identified by sequences of
system calls
• Build a database of normal patterns
(how?)
• Receptors recognize unusual patterns
• Enough unusual patterns is considered
an intrusion
15 April 2003
CS 851 Spring 2003
34
False Positives
• Sequence of system calls not recognized
as a normal pattern generated by nonintrusive execution
• Do biological immune systems have false
positives?
Yes – that is what auto-immune diseases are:
Multiple Sclerosis – motor nerve cells are non-self
Grave’s Disease – thyroid gland is non-self
Rhematoid Arthritis – connective tissue is non-self
15 April 2003
CS 851 Spring 2003
35
Fatal Flaw of Intrusion Detection
• Might work okay if no one important is
using it
• Will it work if an attacker knows about it
and is deliberately constructing an attack
to avoid detection?
– Do biological viruses evolve to mimic host
proteins?
15 April 2003
CS 851 Spring 2003
36
Social Interaction
Eric Bonabeau
Swarm Intelligence
(The Science of “Prey”)
Social Interaction
• Swarm Intelligence is a mindset, not a
technology
– bottom-up approach to controlling and
optimizing distributed systems
• Optimization isn’t so interesting – think
about doing new things
15 April 2003
CS 851 Spring 2003
38
Self-Assembly: Game
Game 1: pick a protector
and aggressor, keep
protector between
yourself and aggressor
Game 2: pick a protectee
and aggressor, keep
yourself between
aggressor and protectee
15 April 2003
Aggressor
Aggressor
CS 851 Spring 2003
Protector
You
You
Protectee
39
Charge
• Presentations Thursday and next week
– Make them story talks not list talks!
15 April 2003
CS 851 Spring 2003
40
Download