Biomorphic Computing - PowerPoint PPT Presentation

About This Presentation
Title:

Biomorphic Computing

Description:

The central process by which the abundance of life forms have come to exist. ... Finches. Origin of Species - 1859. Expression of Emotion in Man and Animals - 1872 ... – PowerPoint PPT presentation

Number of Views:94
Avg rating:3.0/5.0
Slides: 58
Provided by: billtom
Learn more at: https://ics.uci.edu
Category:

less

Transcript and Presenter's Notes

Title: Biomorphic Computing


1
Biomorphic Computing
  • Professor Bill Tomlinson
  • Tuesday 200-450pm
  • Winter 2004
  • CS 189

2
Week 2 Genetic Algorithms
  • News
  • Last Weeks assignment
  • Natural Evolution
  • Synthetic Evolution ( Sims reading)
  • Assignment 2
  • Lab Time

3
Go over Game of Life assignment
  • Problems?

4
Go over Sims reading
  • fixed-length bit strings vs. lisp expressions
  • parameter spaces
  • mutating and mating symbolic expressions

5
Natural Evolution
  • Descent with modification
  • The central process by which the abundance of
    life forms have come to exist.

6
Linnaean Classification
  • Carolus Linnaeus, 1707-1787
  • Initially based on visible, behavioral and other
    obvious characteristics.
  • Kingdom, Phylum, Class, Order, Family, Genus,
    Species (pick your favorite mnemonic device)

7
Defining the species
  • How do you tell whether two things are from the
    same species?

8
Defining the species
  • Reproductive isolation (produce viable offspring)
  • Morphological similarity
  • Genetic similarity
  • Ecological similarity

9
Questioning the species concept
  • DNA studies are calling some of these
    classifications into question.
  • Organisms that reproduce asexually - self-cloning
    bacteria
  • Ring species
  • Species over time
  • Based on human decisions about classification
  • A conceptually useful mechanism to work with the
    uneven genotypic/phenotypic distribution

10
Charles Darwin
  • 1809-1882
  • Voyage of the Beagle to the Galapagos
  • Finches
  • Origin of Species - 1859
  • Expression of Emotion in Man and Animals - 1872

11
Darwin vs. Lamarck
  • How does a giraffe get its long neck?
  • Lamarck (1744-1829)

12
Mendelian Genetics
  • Gregor Mendel
  • 1822-1884
  • Dominant vs. recessive
  • Genotype vs. phenotype
  • (expression)

13
Punctuated Equilibria
  • Niles Eldredge
  • Stephen Jay Gould (1941-2002)
  • long periods of stability with abrupt periods of
    change and appearances of new species
  • splitting off of daughter species (cladogenesis),
    rather than transformation of species as a whole
    (anagenesis)
  • Founder effects

14
Mitosis vs. Meiosis
  • Mitosis one cell
  • becomes two cells
  • with the same DNA
  • Meiosis one cell
  • becomes four cells
  • with one strand each

15
Crossing Over
  • Meiosis -gt production of germ cells
  • Parts of two
  • chromosomes
  • get swapped.
  • Also called recombination

16
Mutation
  • Occasional misfirings of the replication process.
  • Almost always harmful.
  • On occasion,
  • very successful.

17
Differential Survival
  • Once there is variability (through sexual
    reproduction, crossover and mutation) in a
    population, the environment culls some while
    others survive.
  • Natural selection.

18
Biological Diversity
  • Simple mechanism
  • of natural selection
  • enables the propagation
  • of vastly different
  • organisms.

19
Convergent Evolution
  • Same selection pressures cause similar
    morphology/behavior/etc. in different species.
  • Other examples?

20
From Biology to Computation
  • From natural selection to evolutionary computation

21
Simulating evolution
  • Descent with modification
  • Fitness landscape determines differential survival

22
Different Branches of Evolutionary Computation
  • Genetic Algorithms
  • Genetic Programming
  • Evolutionary Strategies
  • Evolutionary Programming
  • etc.

23
Evolved Virtual Creatures
  • Karl Sims

24
What problems are evolutionary techniques good
for?
  • Discuss

25
What problems are evolutionary techniques good
for?
  • Problems in which the solution can be
    characterized in terms of variables (or human
    feedback)
  • Overcoming fitness landscapes with many local
    optima (i.e., where gradient descent wont work).

26
Shortcomings
  • Computationally expensive

27
Applications Artificial Life
  • Tierra
  • Synthetic
  • organisms
  • compete
  • for time
  • and
  • computer
  • memory.

28
Applications Biocomputing
  • Protein Folding
  • RNA Folding
  • Sequence alignment

29
Applications Evolvable Hardware
  • Golem Project _at_ Brandeis (movie)

30
Applications Coordinating Groups of Robots
  • Evolving teams for reconnaissance, terrain
    mapping, etc. - UCF/GMU

31
Applications Game Theory
  • Prisoners Dilemma - Axelrod

32
Applications Art
  • Karl Sims

33
Genetic Algorithms
  • Project ideas?

34
Break
35
Assignment 2
  • Implement a genetic algorithm to evolve a
    creature that can go as fast as possible to a
    point where you click.

36
Representation of a Creature
  • Ability to sense and take action
  • Conditional bits - perception
  • Action bits - motor

37
Conditional Bits
  • How are conditional bits hooked up to the sensory
    world?
  • Dot product and cross product offer one way to
    slice perceptual world into chunks.

38
Sensor radius
  • How far around them can they see?
  • How do they detect the target?

39
Action Bits
  • How do action bits allow the creature to move
    around or otherwise affect its world?

40
How a rule works.
  • Rule 010010
  • First four bits are perception
  • e.g., front-left, back-left, back-right,
    front-right
  • Last two bits are action
  • go-straight-or-turn, if-turn-which-direction
  • So this bitstring might mean If I sense
    something in back left quadrant, turn left.

41
Number of rules
  • How many do you need?
  • How many is too many?

42
The Bitstring Genome
  • all the bits of all the rules
  • equivalent of DNA
  • Total length bits/rule rules.

43
Populations
  • Genetically Diverse
  • Provide the raw materials for survival of the
    fittest.

44
Initialize population
  • Random
  • Seeded

45
Evolving the creatures
  • Initialize population
  • Evaluate population
  • Generate new population
  • Loop between evaluating population and generating
    new one.

46
Population size
  • Large enough for genetic diversity
  • Small enough for computational speed

47
Evaluate Population
  • Load population into simulated world (reset)
  • Fitness criteria?

48
number of creatures loaded in
  • can just be one, or can be several (take average
    of fitness)

49
Generate new population
  • Find best (mom) and second best (dad) (or some
    other combination of top performers)
  • Crossing over
  • Mutation

50
Crossover rate
  • How much recombination?

51
Mutation rate
  • How often to change a random bit?

52
Number of time steps
  • Too short and its hard to learn
  • Too long and success is trivial

53
Number of generations
  • Genetic change occurs in small stages over many
    generations.

54
Assignment 2
  • Distribute Assignment sheet
  • Distribute source code

55
The Files
  • GAMain
  • Creature
  • Evolver
  • TestWorld
  • GridWorld
  • Vec2

56
What needs to be written?
  • Evolver. generateNewPopulation()
  • Creature.sense()
  • Creature.chooseAction()
  • Creature.takeAction()
  • TestWorld. testFitness()

57
Lab Time
  • All please log into a computer
  • If you dont have an account, please get one
Write a Comment
User Comments (0)
About PowerShow.com