Evolutionary Design By: Dianna Fox and Dan Morris Review 4 main - - PowerPoint PPT Presentation

evolutionary design
SMART_READER_LITE
LIVE PREVIEW

Evolutionary Design By: Dianna Fox and Dan Morris Review 4 main - - PowerPoint PPT Presentation

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


slide-1
SLIDE 1

Evolutionary Design

By: Dianna Fox and Dan Morris

slide-2
SLIDE 2
slide-3
SLIDE 3

Review

4 main types of Evolutionary Algorithms

  • Genetic Algorithm - John Holland
  • Genetic Programming - John Koza
  • Evolutionary Programming - Lawerence

Fogel

  • Evolutionary Strategies - Ingo Rechenberg
slide-4
SLIDE 4

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 phenotypes

before the quality or fitness of each solution can be evaluated

slide-5
SLIDE 5

Genetic Programming

  • 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.

slide-6
SLIDE 6

Evolutionary Strategies

  • 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
slide-7
SLIDE 7

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

slide-8
SLIDE 8

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
  • nly
  • 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.

slide-9
SLIDE 9

General Idea of Evolutionary Algorithms

slide-10
SLIDE 10

Evolutionary Art Computer Evolution of Buildable Objects

slide-11
SLIDE 11

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

slide-12
SLIDE 12
slide-13
SLIDE 13
slide-14
SLIDE 14
slide-15
SLIDE 15
slide-16
SLIDE 16
slide-17
SLIDE 17
slide-18
SLIDE 18
slide-19
SLIDE 19
slide-20
SLIDE 20
slide-21
SLIDE 21
slide-22
SLIDE 22
slide-23
SLIDE 23
slide-24
SLIDE 24
slide-25
SLIDE 25
slide-26
SLIDE 26
slide-27
SLIDE 27

Computer Evolution of Buildable 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

slide-28
SLIDE 28

Project Details

  • Used computers to generate 2-D and 3-D
  • bjects in simulation that would perform

correctly in the real world.

  • Used miniature plastic

bricks (commonly known as Lego) to build and test the designs

slide-29
SLIDE 29

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.”

slide-30
SLIDE 30

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.

slide-31
SLIDE 31

Minimal Torque Capacities

Joint Size (knobs) Approximate Torque Capacity (N-m * 10-6) 1 2 3 4 5 6 7 10.4 50.2 89.6 157.3 281.6 339.2 364.5

slide-32
SLIDE 32
slide-33
SLIDE 33

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
slide-34
SLIDE 34

Greedy Algorithm

  • Does not guarantee that all solutions will be

found

  • Each joint j can support a certain fraction a
  • f 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.

slide-35
SLIDE 35

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.

slide-36
SLIDE 36

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

slide-37
SLIDE 37

Encoding for 2-D structure

  • This join was encoded as:

(10 nil (2 (6 nil nil nil)) nil nil)

slide-38
SLIDE 38

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)
slide-39
SLIDE 39

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

  • ffspring generated has the first subtree

removed and replaced by the second.

slide-40
SLIDE 40

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

slide-41
SLIDE 41

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)

slide-42
SLIDE 42

Practical Examples

  • Reaching a target point:
  • Bridges and Scaffolds
  • External Loads:
  • Horizontal Crane Arm
  • Constraining the space:
  • Diagonal Crane Arm
slide-43
SLIDE 43

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

slide-44
SLIDE 44

Bridge

  • An example successful run
  • The target fitness was reached after

133,000 generations

slide-45
SLIDE 45

Example Run

slide-46
SLIDE 46

Scaffold

  • Evolved in 40,000

generations

slide-47
SLIDE 47

External Loads

  • Uses a two-step fitness function
  • Weight is added in small increments to see

how much the structure can hold

slide-48
SLIDE 48

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

slide-49
SLIDE 49

Optimization

  • Usually don’t reward or punish for the

number of bricks used

  • Leads to unused bricks
  • Can add a little reward for

lightness

slide-50
SLIDE 50

Fitness: 24.002913 Fitness: 24.004095

slide-51
SLIDE 51

Limitations

  • Noise
  • Safety concerns
  • No complete algorithm has been found

results in a conservative model