1 / 57

Biomorphic Computing

Biomorphic Computing. Professor: Bill Tomlinson Tuesday 2:00-4:50pm Winter 2004 CS 189. Week 2: Genetic Algorithms. News Last Week’s assignment Natural Evolution Synthetic Evolution (& Sims reading) Assignment 2 Lab Time. Go over Game of Life assignment. Problems?.

wooda
Download Presentation

Biomorphic Computing

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Biomorphic Computing Professor: Bill Tomlinson Tuesday 2:00-4:50pm Winter 2004 CS 189

  2. Week 2: Genetic Algorithms • News • Last Week’s 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 -> 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 won’t 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 @ Brandeis (movie)

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

  31. Applications: Game Theory • Prisoner’s 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?

More Related