1 / 51

Evolutionary Design

Evolutionary Design. By: Dianna Fox and Dan Morris. Review 4 main types of Evolutionary Algorithms. Genetic Algorithm - John Holland Genetic Programming - John Koza Evolutionary Programming - Lawerence Fogel Evolutionary Strategies - Ingo Rechenberg. Most widely used Robust

delora
Download Presentation

Evolutionary Design

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. Evolutionary Design By: Dianna Fox and Dan Morris

  2. Review4 main types of Evolutionary Algorithms • Genetic Algorithm - John Holland • Genetic Programming - John Koza • Evolutionary Programming - Lawerence Fogel • Evolutionary Strategies - Ingo Rechenberg

  3. Most widely used Robust uses 2 separate spaces search space - coded solution (genotype) solution space - actual solutions (phenotypes) Genotypes must be mapped to phenotypes before the quality or fitness of each solution can be evaluated Genetic Algorithms

  4. Specialized form of GA Manipulates a very specific type of solution using modified genetic operators Original application was to design computer program Now applied in alternative areas eg. Analog Circuits Does not make distinction between search and solution space. Solution represented in very specific hierarchical manner. Genetic Programming

  5. Like GP no distinction between search and solution space Individuals are represented as real-valued vectors. Simple ES one parent and one child Child solution generated by randomly mutating the problem parameters of the parent. Susceptible to stagnation at local optima Evolutionary Strategies

  6. Evolutionary Strategies (cont’d) • Slow to converge to optimal solution • More advanced ES • have pools of parents and children • Unlike GA and GP, ES • Separates parent individuals from child individuals • Selects its parent solutions deterministically

  7. Evolutionary Programming • Resembles ES, developed independently • Early versions of EP applied to the evolution of transition table of finite state machines • One population of solutions, reproduction is by mutation only • Like ES operates on the decision variable of the problem directly (ie Genotype = Phenotype) • Tournament selection of parents • better fitness more likely a parent • children generated until population doubled in size • everyone evaluated and the half of population with lowest fitness deleted.

  8. General Idea of Evolutionary Algorithms

  9. Evolutionary Art Computer Evolution of Buildable Objects

  10. Evolutionary Art Stephen Todd and William Latham built artistic system called “Mutator” • Computer program based on mutation and natural selection to help an artist explore the world of three dimensional art forms. • Produces horns, pumpkins, shells, mathematical shapes and many other shapes

  11. Computer Evolution of Buildable Objects • Project of Pablo Funes and Jordan Pollack Taken from http://www.cs.brandeis.edu/~pablo/indexe.html Taken from http://www.cs.brandeis.edu/~pollack/

  12. Project Details • Used computers to generate 2-D and 3-D objects in simulation that would perform correctly in the real world. • Used miniature plastic bricks (commonly known as Lego) to build and test the designs

  13. Why use Lego? • Can easily build cheap and handy structures • Have a property which simplifies the experiment and eases design consideration • What property? “The resistance of Lego blocks far surpasses the force necessary to either join two of them together or break their unions.”

  14. Simplification of Model • To simplify the model, only the ‘fulcrum’ effect acting on a pair of Lego blocks was considered. • It was assumed that radial forces (such as vertical pulls) would not occur.

  15. Minimal Torque Capacities

  16. Operating Heuristic “As long as there is a way to distribute the weights among the network of bricks such that no joint is stressed beyond its maximum capacity the structure will not break.” • No complete algorithm has been found

  17. Greedy Algorithm • Does not guarantee that all solutions will be found • Each joint j can support a certain fraction a of a force on the network. This fraction is given by: Where Kj is the maximum capacity of the joint, d(j,F) is the distance between the line generated by the force vector and the joint, and f is the magnitude of the force.

  18. Greedy Algorithm (cont.) • Once a solution for the distribution of the first mass has been found, it is fixed and the remaining capacity for each joint is computed. • This will give a reduced network that must support the next force.

  19. Evolutionary Algorithm? • A steady-state, genetic algorithm was used to solve the problem • Initialized with a population of a single brick • Through mutation and crossover, a population of 1000 individuals was generated

  20. Encoding for 2-D structure • This join was encoded as: (10 nil (2 (6 nil nil nil)) nil nil)

  21. Encoding Explained • Uses pseudo-Lisp notation • Individual brick: • (10 nil nil nil nil) • Joined by two knobs: • (10 nil (2 ()) nil nil) • With a 6 knob brick: • (10 nil (2 (6 nil nil nil)) nil nil)

  22. Mutation and Crossover • Mutation operates by either random modification of a brick’s parameters (size, position, orientation) or addition of a random brick. • Crossover involves two parent trees out of which random subtrees are selected. The offspring generated has the first subtree removed and replaced by the second.

  23. Fitness Function • Doesn’t presuppose any knowledge about good design or common engineering practices that would bias the results • Provides measures of feasibility and functionality

  24. Algorithm While maximum fitness < Target fitness Do Randomly select mutation or crossover Select 1 (for mutation) or 2 (for crossover) random individual(s) with fitness proportional probability Apply mutation or crossover operator Generate physical model and test for gravitational load. If the new model will support its own weight Then replace a random individual with it (chosen with inverse fitness proportional probability)

  25. Practical Examples • Reaching a target point: • Bridges and Scaffolds • External Loads: • Horizontal Crane Arm • Constraining the space: • Diagonal Crane Arm

  26. Reaching a Target Point • Fitness Function: • Normalized distance to the target: Where S is the structure, T is the target point and d is the Euclidean distance

  27. Bridge • An example successful run • The target fitness was reached after 133,000 generations

  28. Example Run

  29. Scaffold • Evolved in 40,000 generations

  30. External Loads • Uses a two-step fitness function • Weight is added in small increments to see how much the structure can hold

  31. Constraining the Space • Bricks could only be placed above the diagonal • Fitness Function: fraction of weight supported * length of the arm along the x axis

  32. Optimization • Usually don’t reward or punish for the number of bricks used • Leads to unused bricks • Can add a little reward for lightness

  33. Fitness: 24.002913 Fitness: 24.004095

More Related