1 / 37

Evolving Virtual Creatures by Karl Sims (1995) Adelein Rodriguez

Evolving Virtual Creatures by Karl Sims (1995) Adelein Rodriguez. Outline. Goal & Perspective Motivation Creatures Morphology Control Evolution Coevolution Demo Comments Other Work. Goal. Automatically create creatures by evolving its morphology and behaviour.

toddl
Download Presentation

Evolving Virtual Creatures by Karl Sims (1995) Adelein Rodriguez

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. Evolving Virtual Creaturesby Karl Sims (1995)Adelein Rodriguez

  2. Outline Goal & Perspective Motivation Creatures Morphology Control Evolution Coevolution Demo Comments Other Work

  3. Goal Automatically create creatures by evolving its morphology and behaviour. Creatures will be optimized for specific tasks such as walking, jumping, and swimming. Perspective: Karl Sims had previously evolved expressions for creating virtual plants, particle effects, and others. Genetic Programming recently invented (1992), evolving of variable length genomes. MIT Media Lab This work has been referenced 440 times.

  4. Motivation Tedious coding process for creating behaviours that look realistic. Entertainment industry: Creating film effects Creating characters Need specific behaviours, thus optimization technique such as evolution can help bias. Previous work evolved either the morphology, or the control structure, but not both. Here we want to evolve a control for a structure, and a structure for the control.

  5. The big picture Genotype Directed graphs of nodes and connections. Graphs provide instructions for building a creature and cycles for repeating same part. Phenotype Body parts are made by starting at the root node of the directed graph and following the connections.

  6. Morphology Node Dimensions Joint type: Defines degrees of freedom & type of movement relative to parent part. Revolute Rigid Twist Universal Etc... Joint Limits: Point at which need to exert string forces.

  7. Node (cont) Recursive Limit: No. of times it can generate a part from a cycle. Neurons: Given an input perform a function to produce and output. Connections to other nodes (parts) Position, orientation, scale, and reflection, terminal only flag.

  8. Example Hand Designed Topologies

  9. Control

  10. Sensors Connected to: Effector Neuron “Embedded” in body parts: Joint angle sensors: monitors values of degrees of freedom. Contact Sensors: Positive activation (1,0) if contact. Negative activation (-1,0) if no contact. Present on all surfaces. Photosensors: 3 sensors combined to get coordinates of global light source. Sensors enabled depending on environment. (Manually?)

  11. Neurons Functions: sum, product, threshold, min, max, if, sigmoid, oscillate-wave, etc. Two types of functions: Operate on input and give output directly Recurrence, output depends on time step. Can give different output even if inputs is constant. Memory.

  12. Effectors Connected to: Sensor Neuron Value is exerted as a joint force Maximum strength proportional to the max cross sectional area of the 2 parts it joins. Force scales with area.

  13. Going from genotype to phenotype Iterate over directed graph to create body parts: Blocks of neural circuitry can be replicated together with morphological nodes. There can be connections between adjacent parts . Sensors, neurons and effectors from one part can connect to sensors, neurons and effectors from other part. Allows coordination. There is a separate graph of neurons not tied to any part. Phenotype has only one copy of this graph. Brain ? Can allow centralized control

  14. How it all comes together Nodes contain sensors, neurons (graphs), and effectors. Connections allow flow of signals between nodes.

  15. The idea Similar to Nervous System: Localized distributed control (neurons for every part) Central control (separate groups of neurons)

  16. Phenotype Brain Phenotype Morphology

  17. This creature swims by making paddling motions with the flippers

  18. Evolution Initial population: random genotypes and previous evolution genotypes. Population size: 300 Selection: Top fit 1/5 of population survives to next generation. Fitness evaluation: place creature in a simulated environment, goal is to optimize for specific task or behaviour (e.g. jumping). Pre-screening process.

  19. Fitness Evaluation 4 Different Evolutions, each with different tasks: Swimming Walking Jumping Following

  20. Swimming Simulated environment has no gravity. Viscosity effect. Faster it swims, higher fitness. Straight swimming gets higher fitness than circling. Continuous movement gets higher fitness than initial drastic jumps.

  21. Walking Walking = kind of moving on land. Gravity and friction. Faster it moves, better. Vertical movement is ignored. Environment could have other objects.

  22. Jumping Measure vertical movement.

  23. Following Task is to follow a light source Many trials with light source at different positions Faster it moves towards light source better. Land and water environments.

  24. Evolution (Cont) Get surviving creatures, mate and/or mutate them. Reproduction: Only highest fit can reproduce, higher fit reproduce more. To create an offspring you can mutate a parent, or mate two parents by either one of two crossover types.

  25. Mutation Graph mutation steps: 1) Node's internal parameters Boolean values change from true to false and vice versa. Scalar values change according to a Gaussian scale (Small adjustments are more likely than drastic ones) 2) Add a new node to graph Must be followed by a mutation that adds a connection to it in order to have effect.

  26. Mutation (Cont) Graph mutation steps (cont): 3) Connection's internal parameters 4) Add/Remove a connection (can only happen in morphological graphs, nor neural ones) 5) Remove unconnected nodes and neurons. Morphology graphs mutated first, then inner graphs.

  27. Mating Combines structures from two parent genotypes to make an offspring. Used two mating types: Crossover: Graft

  28. Evolution (Cont) Some creatures from one evolution were used as seeds for other evolutions. A creature from one medium could be used for evolution in another medium.

  29. Co Evolution Evolving 3D Morphology and Behaviour by Competition (1994) Place pairs of creatures in an arena to compete for a common resource. Taller creatures start further back.

  30. How to pair individuals Each to all Very expensive Each to some Might not get correct idea of fitness relative to others. Species intrabreeding Species interbreeding

  31. Interesting results Interspecie competition was observed where both species developed different techniques for grabbing the cube, then tried to add techniques to stop the other from grabbing it. Push cube from opponent, then follow it.

  32. Demo

  33. Additional Comments Genotype-Phenotype encoding allows to specify the structure and behaviour in a compact way. Indirect encoding. Only need to specify a few building blocks and the rules for how to combine the building blocks Information reuse, modularity. Avoids hardships of hand coded designs. Very useful for automatic content creation (Games) Use of evolutionary search allows for parallel search over many possible structures and behaviours. Neural structure is added as needed and tightly connected to the morphological structure. Co-adapation.

  34. Additional Comments (Cont) Evolution attempts to find (“learn”) the best mapping of sensors and effectors by being exposed to the environment. Downside: Fitness function and genotype language encoding need a lot of hand design.

  35. Other Related Work http://sodarace.net/ http://www.frams.alife.pl/a/al_pict.html

More Related