Nikhil Swamy
CSC274b Spring '98

Statement of the problem


A polygonal chain is defined to be a graph of vertices and edges such that each of the edges has associated with it a 'weight' which symbolizes the distance between the vertices to which it is adjacent. The vertices are thought of as joints which permit the rotation of the edges about them. The length of the edges is fixed. Formally, a chain C(V,E) consists of a set of vertices V={v0, v1, v2, ..., vn} and a set of edges E={e1, e2, e3... en-1}. Each edge "ej" has a length 'lj' which is the euclidean distance between vj-1 and vj. The chain is closed if vn equals v0.

Given two configurations, C1 and C2, of a closed polygonal chain, Q, the task at hand is to determine whether C1 and C2 are 'equivalent'. This statement of course requires a definition of the property of equivalence which is as follows:

C1 and C2, configurations of a polygonal chain, are equivalent if and only if there exists a continuous movement between the two. Furthermore, a configuration C of a polygonal chain is said to be invertible if it is equivalent to its reflection in an arbitrary hyperplane.

The basis for my final project is in a paper by Lenhart and Whitesides 1995. In this paper the authors prove that in dimension 3 or greater all configurations of polygonal chains are equivalent and it is possible to move between these confirgurations using a finite number of simple well defined motions. In dimension 2 however, it is deduced that there exists a certain constraint that determines whether or not a given chain allows for the equivalence of all configurations. In the case where this equivalence is not permitted, there exist only two equivalence classes, the translation between instances of which is not possible by simple continuous motions.

Before proceeding any further it becomes necessary to define the concept of a simple motion with regards to this problem. Given a polygonal chain Q(V,E), a simple motion of the chain is one in which the angles at each of the vertices change monotonically to allow for the translation of each of the vertices from one location to another.

In this process it is permissible for the chain to intersect itself an arbitrary number of times

. A given motion of the chain may require for the angle at some vertex to first increase and then decrease, in which case the motion is broken up into two simple motions. The paper defines the concept of an elbow to be a set of three vertices and two edges such that one extreme vertex is fixed and rotations about the centre vertex and fixed vertex is permissible. Given a set of five successive vertices and four edges connecting them, it is possible to think of this set as two elbows sharing a common free vertex at the third vertex. The two elbows collaborate to allow the free vertex f to move along a straight line within the reachable region of the polygonal chain. Such a motion is a line tracking motion.

Standard Triangular Form

The crux of the argument lies in the formulation of the standard triangular form of a given closed chain Q(V,E). This formulation requires the specification of certain special vertices. Let 'i' be the index such that Ei has maximum length. Let j be the index such that the sum of the edge length from i to j-1 is less than half the total length of the edges but the same sum upto j exceeds half the total length of the edges in the chain. We define the vertex x to be vi-1, vertex y to be vj-1 and z to be vj.

Having specified x,y, and z, we are now in a position to describe unambiguouslythe standard triangular form of a chain Q. It is the configuration such that the sum of the angles at x, y and z is pi radians while all other angles in the chain are identically pi radians.

The paper presents an algorithm which given a configuration of a chain computes the standard triangular form in linear time with respect to the number of vertices in the chain. Through this algorithmic technique it is observed that in dimension 3 or greater all the standard triangular forms are degenerate and moving between any two triangular configuration merely requires a rotation. However in dimension 2 the standard triangular form of a given chain may permit two orientations which are not equivalent. In that case, this divides the infinite set of possible configurations of the chain into two unique classes, each determined by the specific triangular form to which they are reducible.

Contribution to this project

My contribution to this project consists of implementing the algorithm referred to above as a java applet. This applet will be an extension of the interface provided by Ileana Streinu for the CSC274b class at Smith College. The applet will allow the user to specify visually a specific closed polygonal chain. A computation will determine and display the standard triangular form of this chain. From this it will be deduced whether or not there is more than one equivalence class for this chain. In the case that there are two classes, an instance of each of the classes will be generated along with their defining standard triangular form.

This problem is a variant of the problem presented by J. O'Rourke in his talk on open problems in computational geometry. If a constraint is placed on the motion of the chain such that intersections between the edges of the chain is not permitted then it is not known if it is possible to move from an arbitrary configuration to another. In this case the chain need not be closed.


Reconfiguring Closed Polygonal Chains in Euclidean d-Space 
W.J. Lenhart and S.H. Whitesides
Discrete and Computational Geometry v13 1995
Springer Verlag New York c.1995.

Stay tuned to this page in the coming weeks to experience the marvels of polygonal chains in the plane!