evolutionary design - university of calgary

51
Evolutionary Design By: Dianna Fox and Dan Morris

Upload: others

Post on 03-Feb-2022

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Evolutionary Design - University of Calgary

Evolutionary Design

By: Dianna Fox

and

Dan Morris

Page 2: Evolutionary Design - University of Calgary
Page 3: Evolutionary Design - University of Calgary

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

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

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

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

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

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

General Idea of Evolutionary Algorithms

Page 10: Evolutionary Design - University of Calgary

Evolutionary Art

Computer Evolution of BuildableObjects

Page 11: Evolutionary Design - University of Calgary

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
Page 13: Evolutionary Design - University of Calgary
Page 14: Evolutionary Design - University of Calgary
Page 15: Evolutionary Design - University of Calgary
Page 16: Evolutionary Design - University of Calgary
Page 17: Evolutionary Design - University of Calgary
Page 18: Evolutionary Design - University of Calgary
Page 19: Evolutionary Design - University of Calgary
Page 20: Evolutionary Design - University of Calgary
Page 21: Evolutionary Design - University of Calgary
Page 22: Evolutionary Design - University of Calgary
Page 23: Evolutionary Design - University of Calgary
Page 24: Evolutionary Design - University of Calgary
Page 25: Evolutionary Design - University of Calgary
Page 26: Evolutionary Design - University of Calgary
Page 27: Evolutionary Design - University of Calgary

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

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

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

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

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
Page 33: Evolutionary Design - University of Calgary

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

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

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

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

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

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

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

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

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

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

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

Bridge

• An example successful run

• The target fitness was reached after133,000 generations

Page 45: Evolutionary Design - University of Calgary

Example Run

Page 46: Evolutionary Design - University of Calgary

Scaffold

• Evolved in 40,000generations

Page 47: Evolutionary Design - University of Calgary

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

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

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

Fitness: 24.002913

Fitness: 24.004095

Page 51: Evolutionary Design - University of Calgary

Limitations

• Noise

• Safety concerns

• No complete algorithm has been found

results in a conservative model