Linear Programming and The Carpenter’s Ruler Presentation by Perouz Taslakian COMP566 – Fall 2004
2 Presented Paper “Straightening Polygonal Arcs and Convexifying Polygonal Cycles” by Robert Connelly Erik D. Demaine Günter Rote Discrete & Computational Geometry, volume 30, number 2, September 2003, pages
3 The Carpenter’s Rule Problem 1. Each edge remains a fixed length 2. No self intersection during motion 3. The chain lies in a straight line Is it possible to continuously move a polygonal chain in such a way that:
4 History of the Problem The name comes from a real carpenter’s ruler First posed by Stephen Schanuel early 1970’s In computational geometry community, it was first posed by Sue Whitesides in 1991
5 Applications Protein Folding in Molecular Biology
6 Applications Robot arm motion planning Canadarm at the International Space Station
7 Definitions A linkage G(p) is a graph G = (V,E) P = (p 1, p 2, …, p n ) are n distinct points in the plane A motion of G(p) is a set of continuous functions p(t) = (p 1 (t), …, p n (t))
8 Main Theorem For any linkage, there exists a continuous motion that avoids self intersection and straightens an open chain or convexifies a closed one.
9 Expansive Motion Need to find a motion of G(p) which is strictly expansive Expansive motion: a motion where the distance between all pairs of points in G(p) that do not define bars gets larger. No self-intersections
10 Modifications to G(p) 1. Add struts 2. Remove straight vertices
11 Expansive Motion in G(p) GOAL: Find a motion such that: all bars maintain their length while all struts strictly increase in length.
12 Infinitesimal Motion A strict infinitesimal motion assigns a velocity vector v i to each vertex p i so that to the first order it : preserves the length of the bars, and strictly increases the length of the struts. vivi pipi
13 Constraints A strict infinitesimal motion must satisfy: (v j – v i ).(p j – p i ) = 0 for {i,j} B, (v j – v i ).(p j – p i ) > 0 for {i,j} S vjvj vivi p j – p i pjpj pipi
14 Local Motion Rewrite in standard form : Minimize 0.v (v j – v i ).(p j – p i ) = 0 for {i,j} B, (v j – v i ).(p j – p i ) ≥ 1 for {i,j} S We need to show that this LP has a feasible solution, i.e. an optimal solution of value 0 By LP duality, it suffices to show that the dual has an optimal solution of value 0
15 Local Motion The dual reads: Show that every w ij =0 for all {i,j} S
16 Equilibrium Stress Dual variable w ij represents the stress exerted on each edge Stress can be positive, negative, zero Equilibrium stress is when the stresses sum up to zero at each vertex
17 Proof of Zero-Stress Use a tool in rigidity theory called the Maxwell-Cremona Theorem Basic idea: Lift the planar bar-struts framework into 3-dimensions by assigning a z- coordinate to each vertex. Show that every edge {i,j} B S maps to a flat surface in 3D (this corresponds to w ij = 0)
18 Putting Things Together We know where to go at every position. We are given a bunch of arrows (directions) and we need to follow them continuously or smoothly
19 Smoothness of Global Motion Insert a convex objective function
20 Global Motion For a given configuration p(t) at time t 1. Apply the modifications (add struts) 2. Solve the LP for the given p i ’s 3. Set p i = p i + ε v i for small ε 4. Repeat
21 Thank You