How to Draw a Straight Line Using a GP

meanchildlikeΜηχανική

31 Οκτ 2013 (πριν από 3 χρόνια και 9 μήνες)

89 εμφανίσεις

How to Draw a Straight Line
Using a GP

Benchmarking Evolutionary Design Against
19th Century Kinematic Synthesis

Hod Lipson

Computational Synthesis Lab

Mechanical & Aerospace Engineering and Computing & Information Science,
Cornell University

Kinematic Synthesis is a Challenge


Kinematics
: Science of pure motion


Concerned with geometric displacement of connected rigid links
without regard to forces or physical embodiment


Kinematic analysis
: Predict motions of given mechanism


Well understood


Kinematic Synthesis
: Assemble of a mechanism that
achieves a prespecified motion


Poorly understood


Analytical methods
: exist for some special cases
(Chebychev)


Evolutionary Methods
: Primarily in robotics


Only tree
-
structures
(Sims 1994, Komosinski 2000, Hornby & Lipson, 2002)


Compound mechanisms (kinematic loops)
(Lipson & Pollack, 2000)



Background: Long standing problem

“[A rational approach to synthesis is needed] to obtain, by direct and certain
methods, all the forms and arrangements that are applicable to the desired
purpose. At present, questions of this kind can only be solved by that
species of intuition that which long familiarity with the subject usually
confers upon experienced persons, but which they are totally unable to
communicate to others. When the mind of a mechanician is occupied with
the contrivance of a machine, he must wait until, in the midst of his
meditations, some happy combination presents itself to his mind which
may answer his purpose.”


Robert Willis, The Principles of Mechanism, 1841

One of the first synthesis challenges to be posed:

Background: Degrees of Freedom


Degrees of freedom (DoF)


Number of independent parameters needed to describe
the state of a mechanism


For 2D Structure, DoF =
2n
-
m
-
3


n
=nodes
m
=links
3
=rigid body DoF removed by ground


Not applicable under singularities and degeneracies


1=curve

2=area

N/A (overconstrained)

Mechanism Representation


A mechanism could be represented as a graph


Many graph encodings

(Luke & Spector, 1996)


Cellular encoding (Gruau, 1994)


Parse trees


L
-
Systems


Suitable for computational networks
, not mechanical
networks


Highly connected graphs


Vanishingly small number of them have one DoF


Need a representation suitable mechanisms


Retains DoF across variation


Tree
-
based (hierarchical, for GP)


Evolvable (less coupled, effective crossover)




Background: Top
-
down and Bottom
-
up
Tree Encodings

Top down
: Embryo +
variation operators. E.g.
Circuit

Bottom up
: Composition of
terminals, e.g. Symbolic
expression

Top down encoding of a
mechanism

Start with Embryo with desired #
of DoF, e.g. a four
-
bar
mechanism (1 DoF)

Two variation operators
maintain DoF

E.g. Transform dyad into tryad

Example: A tree that constructs
this 1
-
DoF compound mechanism

Operators provably DoF invariant

Bottom
-
up encoding of a 1
-
DoF
mechanism

Operators provably DoF invariant

1
-
DoF terminals

Join substructures hierarchically at
exactly two nodes (maintains DoF)

Example: A tree that constructs
this 1
-
DoF compound mechanism

Intermediate Conclusions


Proposed two new DoF
-
invariant
representations for kinematic mechanisms


top
-
down and bottom
-
up tree encodings

But wait, there’s more…

A hard test problem


The straight line problem


Devise a mechanism that traces a straight line without a
reference to an existing straight line


Human
-
competitive problem


Of great practical importance in the 18
th

and 19
th

century.


has baffled the world’s greatest kinematic inventors for a
century, many solutions put forward.


Now forgotten


with advent of precision manufacturing


The Straight Line Problem

It is easy to think of a mechanism that traces an exact
circle without having a circle built in: A

compass
.

Can you think of a linkage mechanism that will trace a
straight line without reference to an existing straight line?

?

The Straight Line Problem

It is easy to think of a mechanism that traces an exact
circle without having a circle built in: A

compass
.

One solution: The Peaucellier (1873)

The straightness of the links themselves does not matter

The Straight
-
Line problem


Needed to guide the piston of the steam
engine.


The

breakthrough that made steam engines a
success

(b)


James Watt’s original patents used racks and
sectors, and many other cumbersome solutions

Watt’s first straight line
mechanism (1784)


“Though I am not over anxious
after fame, yet I am more proud of
the parallel motion than of any
other mechanical invention I have
ever made”



James Watt, cf. 1810
[15]

More established solutions

Peaucelier

(1873)

Silverster
-
Kempe’s

(1877)

Robert

(1841)

Chebyshev

(1867)

Chebyshev
-
Evans

(1907)

Chebyshev

(1867)

Source: Kempe A.
B., (1877),
How To
Draw A Straight
Line
, London

See

http://kmoddl.library.cornell.edu


Considered fundamental technology









Cornell University acquired in 1882 about 40 straight
-
line mechanism models and used them in the early
engineering curriculum.


See videos at

Cornell University Digital Library of Kinematic Models

http://kmoddl.library.cornell.edu


Background: Kinematic simulation


Propagate motion using relaxation of
elastic linkages


Linkages stiffened to approximate rigid
motion


Good: Simple, accurate and robust,
handles singularities well


Bad: No dynamics (no accelerations,
masses); slow


Background: Comparing Mechanisms


Comparison of mechanisms can be difficult


Equivalent mechanisms may appear very different


Masked by excess and redundant topology


Two transformations allow moving in “neutral
pathways” of mechanisms


Rigid diagonal swap


Redundant dyad removal/addition


Evolving Straight line mechanisms


Used GP with Top
-
down tree encoding
and 2
-
bar or 4
-
bar embryo


Population size: 100


Crossover 90%


Mutation 10%
(Node positions, Operator types)


Selection: SUS


Fitness: Straightness


Aspect ratio of tight




bounding box of





node traces


Evolving Straight line mechanisms

Some results

Linearity 1:4979

Some results

Linearity 1:5300

Infringes on Robert’s Linkage (1841)

Published: Kempe A. B., (1877),
How To Draw A Straight Line
, London

Some results

Linearity 1:12819

Some results

Linearity 1:28340

Many more solutions were produced

Conclusions


Open
-
ended Kinematics synthesis


Long standing problem


Many applications, e.g. Robotics


Synthesis for computational networks inadequate


Proposed two new representations for kinematic mechanisms


Top
-
down and bottom
-
up tree encodings


DoF
-
invariant operators


Neutral
-
pathway operators


Benchmarked against human
-
competitive problem


Extensive documentation for a century of attempts


Results infringe and outperform known solutions


Next Step


Improve search process, and


Apply to contemporary challenges





(multi DoF robotics)