Calgary Web Design and Web Development company | SEO Calgary | Instalogic Inc.
Evolutionary Design - University of Calgary
Transcript of Evolutionary Design - University of Calgary
![Page 1: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/1.jpg)
Evolutionary Design
By: Dianna Fox
and
Dan Morris
![Page 2: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/2.jpg)
![Page 3: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/3.jpg)
Review4 main types of Evolutionary
Algorithms
• Genetic Algorithm - John Holland
• Genetic Programming - John Koza
• Evolutionary Programming - LawerenceFogel
• Evolutionary Strategies - Ingo Rechenberg
![Page 4: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/4.jpg)
Genetic Algorithms
• Most widely used
• Robust
• uses 2 separate spaces– search space - coded solution (genotype)
– solution space - actual solutions (phenotypes)
• Genotypes must be mapped to phenotypesbefore the quality or fitness of each solutioncan be evaluated
![Page 5: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/5.jpg)
Genetic Programming
• Specialized form of GA
• Manipulates a very specific type ofsolution using modified genetic operators
• Original application was to designcomputer program
• Now applied in alternative areas eg.Analog Circuits
• Does not make distinction betweensearch and solution space.
• Solution represented in very specifichierarchical manner.
![Page 6: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/6.jpg)
Evolutionary Strategies
• Like GP no distinction between search andsolution space
• Individuals are represented as real-valuedvectors.
• Simple ES– one parent and one child
– Child solution generated by randomly mutating theproblem parameters of the parent.
• Susceptible to stagnation at local optima
![Page 7: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/7.jpg)
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
![Page 8: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/8.jpg)
Evolutionary Programming
• Resembles ES, developed independently
• Early versions of EP applied to the evolution of transitiontable of finite state machines
• One population of solutions, reproduction is by mutationonly
• Like ES operates on the decision variable of the problemdirectly (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 fitnessdeleted.
![Page 9: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/9.jpg)
General Idea of Evolutionary Algorithms
![Page 10: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/10.jpg)
Evolutionary Art
Computer Evolution of BuildableObjects
![Page 11: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/11.jpg)
Evolutionary Art
Stephen Todd and William Latham
built artistic system called “Mutator”
• Computer program based on mutation andnatural selection to help an artist explore theworld of three dimensional art forms.
• Produces horns, pumpkins, shells,mathematical shapes and many other shapes
![Page 12: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/12.jpg)
![Page 13: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/13.jpg)
![Page 14: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/14.jpg)
![Page 15: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/15.jpg)
![Page 16: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/16.jpg)
![Page 17: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/17.jpg)
![Page 18: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/18.jpg)
![Page 19: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/19.jpg)
![Page 20: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/20.jpg)
![Page 21: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/21.jpg)
![Page 22: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/22.jpg)
![Page 23: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/23.jpg)
![Page 24: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/24.jpg)
![Page 25: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/25.jpg)
![Page 26: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/26.jpg)
![Page 27: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/27.jpg)
Computer Evolution ofBuildable Objects
• Project of Pablo Funes and Jordan Pollack
Taken from http://www.cs.brandeis.edu/~pollack/Taken from http://www.cs.brandeis.edu/~pablo/indexe.html
![Page 28: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/28.jpg)
Project Details
• Used computers to generate 2-D and 3-Dobjects in simulation that would performcorrectly in the real world.
• Used miniature plasticbricks (commonlyknown as Lego) tobuild and test thedesigns
![Page 29: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/29.jpg)
Why use Lego?
• Can easily build cheap and handy structures
• Have a property which simplifies theexperiment and eases design consideration
• What property? “The resistance of Legoblocks far surpasses the force necessary toeither join two of them together or breaktheir unions.”
![Page 30: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/30.jpg)
Simplification of Model
• To simplify the model, only the ‘fulcrum’effect acting on a pair of Lego blocks wasconsidered.
• It was assumed that radial forces (such asvertical pulls) would not occur.
![Page 31: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/31.jpg)
Minimal Torque Capacities
Joint Size(knobs)
Approximate Torque Capacity(N-m * 10-6)
1234567
10.450.289.6
157.3281.6339.2364.5
![Page 32: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/32.jpg)
![Page 33: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/33.jpg)
Operating Heuristic
“As long as there is a way to distribute theweights among the network of bricks suchthat no joint is stressed beyond itsmaximum capacity the structure will notbreak.”
• No complete algorithm has been found
![Page 34: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/34.jpg)
Greedy Algorithm
• Does not guarantee that all solutions will befound
• Each joint j can support a certain fraction aof a force on the network. This fraction isgiven by:
Where Kj is the maximum capacity of the joint, d(j,F) is thedistance between the line generated by the force vector andthe joint, and f is the magnitude of the force.
![Page 35: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/35.jpg)
Greedy Algorithm (cont.)
• Once a solution for the distribution of thefirst mass has been found, it is fixed and theremaining capacity for each joint iscomputed.
• This will give a reduced network that mustsupport the next force.
![Page 36: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/36.jpg)
Evolutionary Algorithm?
• A steady-state, genetic algorithm was usedto solve the problem
• Initialized with a population of a singlebrick
• Through mutation and crossover, apopulation of 1000 individuals wasgenerated
![Page 37: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/37.jpg)
Encoding for 2-D structure
• This join was encoded as:
(10 nil (2 (6 nil nil nil)) nil nil)
![Page 38: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/38.jpg)
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)
![Page 39: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/39.jpg)
Mutation and Crossover
• Mutation operates by either randommodification of a brick’s parameters (size,position, orientation) or addition of arandom brick.
• Crossover involves two parent trees out ofwhich random subtrees are selected. Theoffspring generated has the first subtreeremoved and replaced by the second.
![Page 40: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/40.jpg)
Fitness Function
• Doesn’t presuppose any knowledge aboutgood design or common engineeringpractices that would bias the results
• Provides measures of feasibility andfunctionality
![Page 41: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/41.jpg)
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)
![Page 42: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/42.jpg)
Practical Examples
• Reaching a target point:• Bridges and Scaffolds
• External Loads:• Horizontal Crane Arm
• Constraining the space:• Diagonal Crane Arm
![Page 43: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/43.jpg)
Reaching a Target Point
• Fitness Function:• Normalized distance to the target:
Where S is the structure, T is the targetpoint and d is the Euclidean distance
![Page 44: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/44.jpg)
Bridge
• An example successful run
• The target fitness was reached after133,000 generations
![Page 45: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/45.jpg)
Example Run
![Page 46: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/46.jpg)
Scaffold
• Evolved in 40,000generations
![Page 47: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/47.jpg)
External Loads
• Uses a two-step fitness function
• Weight is added in small increments to seehow much the structure can hold
![Page 48: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/48.jpg)
Constraining the Space
• Bricks could only be placedabove the diagonal
• Fitness Function:
fraction of weight supported *
length of the arm along the x axis
![Page 49: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/49.jpg)
Optimization
• Usually don’t reward or punish for thenumber of bricks used
• Leads to unused bricks
• Can add a little reward for lightness
![Page 50: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/50.jpg)
Fitness: 24.002913
Fitness: 24.004095
![Page 51: Evolutionary Design - University of Calgary](https://reader031.fdocuments.in/reader031/viewer/2022020705/61fb73ff2e268c58cd5e57fd/html5/thumbnails/51.jpg)
Limitations
• Noise
• Safety concerns
• No complete algorithm has been found
results in a conservative model