52
Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology http://virgil.gr [email protected] Google Tech Talk - 2007

Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology [email protected] Google Tech

Embed Size (px)

Citation preview

Page 1: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

Using Artificial Life to evolve Artificial

Intelligence

Virgil GriffithCalifornia Institute of Technology

http://[email protected]

Google Tech Talk - 2007

Page 2: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

2

What is Artificial Life?

Origin of Life

Today

Life, and might have beenas it is…

Page 3: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

Evolution: an abbrev intro

Evolution is an algorithm

Given only: Variable population Selection Reproduction with occasional errors

Regardless of substrate, you get evolution!

Page 4: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

Forming body plans with evolution

Node specifies part type, joint, and range of movement

Edges specify the joints between parts

Population? Graphs of nodes and edges

Selection? Ability to perform some task

(walking, jumping, etc.) Mutation?

Node types change/new nodes grafted on

Page 5: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

[Blocky Creatures Movie]

Page 6: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

Using Artificial Lifeto evolve

Artificial Intelligence

Page 7: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

How to model Intelligence?

Marionettes (ancient Greeks) Hydraulics (Descartes) Pulleys and gears (Industrial

Revolution) Telephone switchboard (1930’s) Boolean logic (1940’s) Digital computer (1960’s) Neural networks (1980’s - ?)

Page 8: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

Nervous Systems

Evolution found and stuck with nervous systems across all levels of complexity Provide all behaviors—including anything that might

be considered intelligence—in all organisms more complex than plants

Some behaviors are innate, so the wiring diagram (the connections) must matter

But some behaviors are learned, so learning—phenotypic plasticity—must also matter

Page 9: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

PolyworldPolyworld

Page 10: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

10

Not to be confused with:

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

Page 11: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

What Polyworld is Making artificial intelligence the way

Nature made natural intelligence: The evolution of nervous systems in an ecology

Working our way up the intelligence spectrum

Research tool for evolutionary biology, behavioral ecology, cognitive science

Page 12: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

What Polyworld is not Fully open ended

Accurate model of microbiology

Accurate model of any particular ecology though could be done

Accurate model of any animal’s brain though could be done

Page 13: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

Polyworld Overview Organisms have:

evolving genes, and mate sexually a body and metabolism neural network brains

initial neural wiring is genetic At birth, all neural weights are random Hebbian learning refines synapse weights throughout lifetime

1-dimensional vision (like Flatland)

No fitness function Fitness is determined by natural selection alone

Critter Colors Red = current aggression Blue = current horniness

Page 14: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

[Movie - Sample]

QuickTime™ and aH.264 decompressor

are needed to see this picture.

Page 15: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

Body Genes Size Strength Max speed Max lifespan Fraction of energy given to offspring Greenness Point-mutation rate Number of crossover points

Page 16: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

Brain Genes Vision

# of neurons for seeing red # of neurons for seeing green # of neurons for seeing blue

# of internal neural groups

For each neural group… # of excitatory neurons # of inhibitory neurons Initial bias of neurons Bias learning rate

For each pair of neural groups… Connection density for excitatory neurons Connection density for inhibitory neurons Learning rate for excitatory neurons Learning rate for inhibitory neurons

Page 17: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

Polyworldian brain map

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

Random

Energy Level

Move

Turn

Eat

Mate

Fight

Light

Focus

Input Units Processing Units

Page 18: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

18

Polyworld Brain Map (actual)

Page 19: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

All about Energy (Health) Get Energy by:

eating food pellets eating other Polyworldians

Lose Energy by: mating, moving, existing having large size or strength

but get benefits in max-energy and fighting brain activity

for computational reasons and parsimonious brain size

Page 20: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

Behavior sample: Eating

QuickTime™ and aH.264 decompressor

are needed to see this picture.

Page 21: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

Behavior sample: Killing & Eating

QuickTime™ and aH.264 decompressor

are needed to see this picture.

Page 22: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

Behavior sample: Mating

QuickTime™ and aH.264 decompressor

are needed to see this picture.

Page 23: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

Behavior sample: Lighting

QuickTime™ and aH.264 decompressor

are needed to see this picture.

Page 24: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

New Species: Joggers

QuickTime™ and aH.264 decompressor

are needed to see this picture.

Page 25: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

New Species: Indolent Cannibals

QuickTime™ and aH.264 decompressor

are needed to see this picture.

Page 26: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

Emergent Behavior: Visual Response

QuickTime™ and aH.264 decompressor

are needed to see this picture.

Page 27: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

Emergent Behavior: Fleeing Attack

QuickTime™ and aH.264 decompressor

are needed to see this picture.

Page 28: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

Foraging, Grazing, Swarming

QuickTime™ and aH.264 decompressor

are needed to see this picture.

Page 29: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

29

Observations from Polyworld

Evolution generates a wide range brain wirings

Selection for use of vision

Evolution of emergent behaviors

Page 30: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

Ideal Free Distributionin agents with

evolved neural architectures

Early

Middle

Late

Page 31: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

31

Predator-Prey Cycles

Page 32: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

Cat

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

Polyworldian

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

Random

Page 33: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

33

But is it Alive? Ask Farmer & Belin…

“Life is a pattern in space-time, rather than a specific material object”

“Self-reproduction” “Information storage of a self-

representation” “A metabolism” “Functional interactions with the

environment” “The ability to evolve”

Farmer, Belin (1992)

Page 34: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

34

But is it Intelligent?

No obvious way to measure intelligence (aka: We don’t know) even biologists have a hard time on this

But we’re in a simulation, that means we can use techniques not available to biology! Information theory Complexity theory

Page 35: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

35

Neural Functional Complexity

Page 36: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

Is there an evolutionary “arrow of complexity”? Yes – Darwin, Lamarck, Huxley, Valentine No – Lewontin, Levins, Gould

Gould (1994)Carroll (2001)

Page 37: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

37

Evolution drives complexity?

Page 38: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

38

Genetic complexity over time

Page 39: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

39

Neural Complexity: Room to grow

Page 40: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

40

Future Directions More…

measures of complexity complex environment food types agent senses (touch, smell)

Behavioral Ecology Optimal foraging (profit vs. predation risk)

Evolutionary Biology Speciation = ƒ (population isolation) Altruism = ƒ (genetic similarity)

Classical conditioning, animal intelligence experiments

Page 41: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

41

Source Code

Source code is available! Runs on Mac/Linux (via Qt)

http://www.sf.net/projects/polyworld/

Page 42: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

But is this a good idea?

Page 43: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

43

Special Thanks

Larry Yaeger Chris Adami

Page 44: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

Plasticity in Neural Function

Mriganka Sur, et alScience 1988, Nature 2001

Function mapsThe redirect

Page 45: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

Plasticity in Wiring

Patterns of long-range connections in V1, normal A1, and rewired A1

Mriganka Sur, et al. Nature 2001

Page 46: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

Hebbian Learning: Structure from Randomness

John Pearson, Gerald Edelman

Page 47: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

Real and Artificial Brain Maps

Monkey Cortex, Blasdel and Salama Simulated Cortex, Ralph Linsker

Distribution of orientation-selective cells in visual cortex

Page 48: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

Intelligence is based in brains Useful brain functions are created by a:

suitable initial neural wiring general purpose learning mechanism

Artificial neural networks capture key features of biological neural networks

Thus, we could make useful artificial neural systems with: An evolving population of wiring diagrams Hebbian learning

Neuroscience Recap

Page 49: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

49

Thanks to

Larry Yaeger Chris Adami

Page 50: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

What can Evolution do?

Optimization Traffic Lights Air Foil Shape

Fuzzy Problems Sonar response from sunken ships versus live

submarines Good for management tasks, such as timetables and

resource scheduling Even good for evolving learning algorithms and

simulated organisms and behaviors

Page 51: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

51

Neural Group Mutual Information

Page 52: Using Artificial Life to evolve Artificial Intelligence Virgil Griffith California Institute of Technology  virgil@caltech.edu Google Tech

52

Evolution drives max complexity?