Biologist 50’ talk - University of Idaho

Download Report

Transcript Biologist 50’ talk - University of Idaho

Evolution in Computation
James A. Foster
Initiative for Bioinformatics
And Evolutionary Studies (IBEST),
MRCI, CSDS, and Computer Science
University of Idaho
1
Outline of Talk

Evolutionary computation (EC)



Applications




Overview
History
Optimization
Automatic programming
Hardware design
Problems and promise




Code bloat: survival of the fattest
Robustness: why do evolved things endure?
Hardness: when is EC not efficient?
Randomness
2
Two Abstractions
Evolution and computation are abstractions,
which can be: studied independently of their
implementations, implemented in new ways
Evolution: population based process in which individuals
reproduce, inherit information via a noisy
transmission process, interact with an environment
which defines a fitness gradient on which selection
operates.
Computation: information transformations induced by
finite algorithms in discrete, well-defined steps.
3
EC Overview
Translate
Individual solutions
Evolve:
- Mate parents
- Recombine
- Mutate
- Replace
Evaluate
fitness
Solutions
Design challenges:
- representation
- fitness function
- mutation operators
- recombination
details
- selecting parents
- replication details
- when to stop
4
EC History





’50 A. Turing
’66 I. Rechenberg, H.P. Schwefel, P. Bienert:
fluid dynammics
’66 L. Fogel, A. Owens, M. Walsh: machine
intelligence
’75 J. Holland: modeling natural evolution
’85 J. Koza (and others): genetic
programming
5
Optimization Problems
Minimize sorting network error
 Maximize “locomotion”*
 Optimizing a stock market portfolio
 Fuel optimal two stroke engine
 Drug design
 Disease diagnosis
*Not done in my lab, but sweet stuff

6
Case Study: Sorting Networks
Robustness: an apparent intrinsic property of evolved
systems - ability to degrade gracefully with the
presence of local failures. (Robustness for free)
 Is this effect real, and how strong is it?
 What representations are best for developing
robustness in circuits?
 How does redundancy influence the robustness of
evolved circuits? How much is enough?
Method: evolve sorting networks, measure performance
degradation with point failures in circuits
7
Sorting Nets: Example
Inputs
Output
0
0
1
1
1
0
0
1
0
1
8
Sorting Nets: Example
Inputs
1
Output
10
01
1
0
0
0
0
0
01
1
10
1
0
1
1
1
1
9
SN: Linear Individuals
CE (1,4) CE (0,3) CE (1,3) CE (1,2) CE (2,4) CE (0,2) CE (3,4) CE (0,4)
001 100 000 011 001 011 001 010 010 100 000 010 011 100 000 100
10
SN: Crossover in Arrays
CE (1,4) CE (0,3) CE (1,3) CE (2,4) CE (0,4) CE (2,3) CE (1,4) CE (1,2)
CE (0,3) CE (3,4) CE (0,2) CE (1,3) CE (2,3) CE (1,2) CE (0,3) CE (0,1)
CE (1,4) CE (0,3) CE (0,2) CE (1,3) CE (2,3) CE (2,3) CE (1,4) CE (1,2)
CE (0,3) CE (3,4) CE (1,3) CE (2,4) CE (0,4) CE (1,2) CE (0,3) CE (0,1)
11
SN: Fitness
Number of bits correctly sorted, biased exponentially
toward low order bits:
f ( x) 
k 1
2 C ( x)


i
x
k
i
 N ( x)i 
i 0
Where C(x)i and N(x)i are outputs of wire i from
correct circuit C and evolved circuit N (resp.) on input x,
and k is all k bit inputs.
12
SN: Robustness



Bitwise stability (bs): percentage of
correctly sorted bits over all single point
circuit failures
BS higher in evolved circuits than handdesigned ones
BS low for minimal circuits, high for
circuits 5-10% larger than minimum,
and decreases for larger circuits
13
SN: Robustness Size Data
Here is some data
14
Case Study: Locomotion
Karl Sims, Thinking Machines Inc., evolved
“organism” descriptions and behaviors.
15
Evolving Software & Hardware




Sorting circuits
Robot control
Machine code
Growing chips


Image convolutions
Feature extraction
16
SN: Tree Representation
CE (1,4)
CE (0,3)
CE (1,3)
CE (0,4)
CE (1,2)
CE (2,4)
CE (0,2)
CE (3,4)
17
SN: Tree Crossover
1. Randomly select one node on each tree
2. Swap Nodes and subtrees
18
SN: Representation Effects
Pass Through Stuck on Zero Stuck on
One
MSN
Tree
Linear
*
***
**
*
***
**
*
**
***
All errors
*
***
**
19
SN: Evolving Physical Circuits
0
0
1
1
Cells ….. 64
0
1
1
0
Cells ….. 64
20
Evolving Circuits: More Results





17 electrical circuits evolved to date
which infringe on patents or rediscover
prior best known designs
Filters, thermometers, amplifiers
Arithmetic circuits
Controllers (Higuchi’s prosthetic arm,
missile guidance)
Image convolutions and classification
21
Case Study: Image
Convolutions
We evolved FPGA circuits to produce
convolutions on laser diffraction patterns,
pre-computed on special hardware.
22
Case Study: Regression
Problem: given target function, evolve
symbolic functional representation to
approximate it.
Fitness: square of errors on several
points.
GP Demo by Hans U. Gerber, Swiss
Federal Inst. Of Tech.
23
EC: Limitations & Advantages




Robustness: inherent advantage of
evolution
Survival of the fattest
Hardness: limitations from complexity
theory, VLSI design, information theory
(Pseudo) randomness
24
Survival of the Fattest

Variable size genomes grow without
correlation to fitness




Given insufficient selective pressure for
parsimony



Protective neutral code
Removal bias
Combinatorics (in trees)
Only parsimony pressure helps
“Liposuction” does not
Trees converge toward a fixed shape
25
Concluding Thoughts

Bring more biology into engineering and
Computer Science—it works
Bring more engineers and computer
scientists into biology—it works
There are soooooo many interesting
questions, and soooooo much data
And so very many interesting people

Gee, this is fun!



26
Acknowledgements







John Dickinson
Jim Frenzel
Deb Frincke
Larry & Millie Johnston
Steve McGrew
Holly Wichman
IBEST










BMDO
DOD/OST
NIH/NIGMS


John Cavalieri
Bill Danielson
Joe Dumoulin
Brad Harvey
Kosuke Imamura
Jason Masner
Mark Meysenburg
Bart Rylander
Jackie Shoaf
27