Content uploaded by Federico Thomas
Author content
All content in this area was uploaded by Federico Thomas on Dec 10, 2018
Content may be subject to copyright.
Closure Polynomials for Strips of Tetrahedra
Federico Thomas and Josep M. Porta
Abstract A tetrahedral strip is a tetrahedron-tetrahedron truss where any tetrahedron
has two neighbors except those in the extremes which have only one. Unless any of
the tetrahedra degenerate, such a truss is rigid. In this case, if the distance between
the strip endpoints is imposed, any rod length in the truss is constrained by all the
others to attain discrete values. In this paper, it is shown how to characterize these
values as the roots of a closure polynomial whose derivation requires surprisingly
no other tools than elementary algebraic manipulations. As an application of this
result, the forward kinematics of two parallel platforms with closure polynomials of
degree 16 and 12 is straightforwardly solved.
Key words: Position analysis, closed-form solutions, Distance Geometry, spatial
linkages.
1 Introduction
Let us consider the strip of tetrahedra in Fig. 1. Any such strip has two endpoints. In
this case, P
aand P
b. If the distance between these two points is imposed, the length
of any rod cannot be freely chosen. This paper is essentially devoted to obtain a
closed-form solution for the length of any rod in a strip of tetrahedra, once the
distance between its endpoints and the lengths of all other rods are known.
Although closure polynomials have been typically obtained on a case-by-case
analysis, a common pattern can be identified for most cases. First, a set of loop equa-
tions involving both translation and orientation variables is derived. Then, transla-
tion variables are eliminated resulting in a system of trigonometric equations that is
algebraized using the tangent half-angle substitution. Finally, elimination theory is
Federico Thomas ·Josep M. Porta
Institut de Rob`
otica i Inform`
atica Industrial, CSIC-UPC, Barcelona, Spain
e-mail: {fthomas,porta}@iri.upc.edu
1
2 F. Thomas and J. M. Porta
P
a
P
b
Fig. 1 A strip of eight tetrahedra whose endpoints are P
aand P
b. Observe that no triangular face is
shared by more than two tetrahedra.
used to obtain a univariate closure polynomial. Here we solve this problem departing
from this standard approach. The proposed method can be summarized as follows.
The distance between the strip endpoints is first derived by iterating a basic opera-
tion involving only two neighboring tetrahedra over the whole strip. This leads to a
scalar equation containing radical terms. We will see how clearing these radicals is a
trivial task, and how the resulting polynomial contains, in general, factor terms that
correspond to singularities of the formulation that depend on the chosen variable
length. Since these terms can be easily spotted beforehand, their elimination is just
a matter of iterative polynomial division until a no null remainder is obtained. The
result is the sought-after univariate closure polynomial obtained without variable
eliminations or trigonometric substitutions.
Next, we detail this procedure and then we apply it to derive the minimal degree
closure polynomial for two widely studied parallel platforms: the decoupled parallel
platform, and a 4-4 platform with planar base and moving platform.
2 Obtaining the Closure Polynomials
Given a set of points, the valid distances between them can be characterized us-
ing the theory of Cayley-Menger determinants [1, 6, 8]. The Cayley-Menger bi-
determinant of the two sets of points P
i1,...,P
inand Pj1,...,Pjnis defined as
D(i1,...,in;j1,..., jn)=21
2n
01... 1
1si1,j1... si1,jn
1.
.
.....
.
.
1sin,j1... sin,jn
,(1)
where si,jstands for the squared distance between P
iand Pj.
Closure Polynomials for Strips of Tetrahedra 3
If the two sets of points are the same, then D(i1,...,in)=D(i1,...,in;i1,...,in)
is called the Cayley-Menger determinant of the involved set of points. The Cayley-
Menger determinant D(i1,...,in)is proportional to the squared volume of the sim-
plex spanned by P
i1,...,P
inin Rn1.
P
iPj
Pj
P
k
P
k
P
l
P
l
P
m
P
m
ψ
l,i,j,k,m
Fig. 2 Substitution rule.
Now, let us suppose the two neighboring tetrahedra in Fig. 2-left belong to a strip
of tetrahedra in R3. The squared distance between P
land P
mcan be expressed as
(see [7] for details):
sl,m=2
D(i,j,k) D(i,j,k,l;i,j,k,m)sl,m=0±pD(i,j,k,l)D(i,j,k,m)!.(2)
where the ±sign accounts for the two possible solutions depending on the relative
orientation between the two tetrahedra. To lighten the notation, (2) will be simply
written as sl,m=Y
l,i,j,k,m. If some of the distances involved in Y
l,i,j,k,mare taken as
variables, they will be made explicit in parenthesis. For example, if si,jand si,kare
variables, we will write sl,m=Y
l,i,j,k,m(si,j,si,k).
If one of the points in the set {P
i,Pj,P
k}does not belong to any other tetrahedron
in the strip, it can be removed from the strip provided that a rod connecting P
land P
m
is introduced with the double-valued length given by (2) [Fig. 2-right]. This reduces
the number of tetrahedra in the strip by one. Then, by repeating this operation until
the strip contains only two tetrahedra, the distance between the tetrahedral strip
endpoints is finally obtained as a 2n2valued function, where nis the number of
tetrahedra in the strip.
To obtain the closure condition as a polynomial in terms of a given rod length,
the first step consists in taking the numerator of the rational form of the obtained
function and then clearing radicals. As radicals will appear nested, they are cleared
using an iterative process starting from the outer one. At each step of this process,
the expressions involving a radical will have the general form
a0+a1pr+a2(pr)2+a3(pr)3+···=0,(3)
4 F. Thomas and J. M. Porta
which can be rewritten as
(a0+a2r+a4r2+...)+pr(a1+a3r+a5r2+...)=0.(4)
This equation can be unfolded into two equations, one for each sign of pr. Since
we are interested in the roots of both equations, we obtain their product, which can
be written as
(a0+a2r+a4r2+...)2r(a1+a3r+a5r2+...)2=0.(5)
While clearing radicals as explained above introduces no extraneous roots, one
cannot expect for the obtained polynomial to be of minimal degree. This is due
to the presence of singularities of the formulation. Indeed, let us suppose that the
closure polynomial is expressed in terms of the squared rod length si,j. If a rod
with variable length belongs to a shared face, this face degenerates for some values
of si,j. When this happens, the three points defining the face get aligned and the
tetrahedral strip can be decomposed into two parts so that one can freely rotate
with respect the other about the axis defined by these three aligned points. As we
will see, terms corresponding to these degenerate configurations will appear in the
closure polynomial. They can be easily removed by iteratively dividing the closure
polynomial by them until the remainder is not null.
3 Examples
Next, we apply the technique explained above to solve the foward kinematics of
a decoupled platform and a 4-4 platform with planar base and platform (see Fig. 3
and Fig. 5, respectively). The decoupled platform owes its name to the fact that three
legs permit the rotation of the platform about a point whose location is controlled
by the other three. Since the forward kinematics for the translational part is trivial,
the interest of this linkage lies in the spherical part for which a minimal closing
polynomial of degree 8 on a squared variable was first derived in [2]. In [7], this
derivation is simplified by using the closure polynomial of the so-called double
banana. Despite the simpler derivation, variable eliminations were still necessary.
For the chosen 4-4 platform with planar base and platform, a minimal 12th-degree
closure polynomial was first derived in [3]. The derivation was far from trivial and
applicable only to this particular platform. To properly compare our results with
those reported in [7] and [3], we use the same numerical examples.
First, let us consider the decoupled platform defined by the squared distance
matrix Sappearing in Fig. 3, where si,j=S(i,j). It can be topologically described
as the strip of tetrahedra shown in Fig. 4-left. Applying the substitution presented in
the previous section three times (see Fig. 4), we have
Closure Polynomials for Strips of Tetrahedra 5
P
1
P
2
P
3
P
4
P
5
P
6
P
7
S=
0
B
B
B
B
B
B
B
@
0 34 49 62 ? ? 108
34 0 41 58 108 ? ?
49 41 0 68 ? 126 ?
62 58 68 0 38 91 34
? 108 ? 38 0 85 74
? ? 126 91 85 0 197
108 ? ? 34 74 197 0
1
C
C
C
C
C
C
C
A
Fig. 3 Decoupled parallel manipulator, with non-planar moving platform, used as example.
P
1P
1
P
1
P
2P
2
P
2
P
3P
3
P
3
P
4P
4
P
4
P
5P
5
P
6
P
7P
7
P
7
Ψ
3,4,5,6,7(s3,5)
Ψ
3,4,5,6,7(s3,5)
Ψ
2,3,4,5,7(s3,7,s3,5)
Fig. 4 The decoupled parallel platform in Fig. 3 can be topologically described as the strip of
four tetrahedra in which the distance between P
3and P
5is variable and the distance between its
endpoints, P
1and P
7, is known. The application of the substitution rule presented in Section 2 to
this strip (left) permits to sequentially eliminate P
6(center) and P
5(right).
s3,7=Y
3,4,5,6,7(s3,5),(6)
s2,7=Y
2,3,4,5,7(s3,7,s3,5),(7)
s1,7=Y
1,2,3,4,7(s2,7,s3,7).(8)
The numerator of the rational form resulting from substituting (6) in (7), and the
result in (8), can be written as:
R11346.0R2+7899650R3+24942632734s3,5+1402R3s3,52
323070338s3,52+741658s3,53208500R3s3,5+528767086008 =0,
where
R1=q2027718R22+4695768R2R3s2
3,5729124704R2R3s3,5+... ,
R2=q100464R2
3s2
3,519847712R2
3s3,5+115799664R2
3... ,
R3=q3481450s2
3,5+806976100s3,527440188650 .
The full expressions for R1and R2are not included here due to space limitations.
6 F. Thomas and J. M. Porta
Now, clearing the radicals as described in Section 2, we obtain a polynomial
of 24th-degree. It is not of minimal degree because the rod connecting P
3and P
5
belongs to the shared face defined by P
3,P
4, and P
5which is singular when
D(3,4,5)=0, that is, when s2
3,5214s3,5+961 =0. By iteratively dividing the
obtained polynomial by this singular factor until the remainder is not null, we get
s16
3,51.6652 ·104s15
3,5+1.2722 ·106s14
3,55.8952 ·108s13
3,5+1.8487 ·1011 s12
3,5
4.1525 ·1013 s11
3,5+6.9146 ·1015 s10
3,58.7384 ·1017 s9
3,5+8.5338 ·1019 s8
3,5
6.5533 ·1021 s7
3,5+4.0715 ·1023 s6
3,52.1848 ·1025 s5
3,5+1.1165 ·1027 s4
3,5
5.4256 ·1028 s3
3,5+2.0923 ·1030 s2
3,55.0066 ·1031 s3,5+5.2479 ·1032
,
which coincides with the closure polynomial reported in [7], but obtained in a much
simpler way.
P
1
P
2
P
3
P
4
P
5
P
6
P
7P
8
0
B
B
B
B
B
B
B
B
B
@
0 10.198219.7992182? ? ? 15.16572
10.19820 16.49242s2,414.29172???
19.799216.492420 14.5602211.8770210.85452??
182s2,414.560220 ? 15.1719215.79072?
? 14.2917211.87702?06
2s5,74.47212
? ? 10.8545215.171926204.472125.65692
? ? ? 15.79072s5,74.4721202
2
15.16572???4.472125.65692220
1
C
C
C
C
C
C
C
C
C
A
Fig. 5 4-4 parallel manipulator used as example. Since the base and the moving platform are con-
vex planar quadrilaterals, s2,4and s5,7are unambiguously determined by the other known distances.
As a second example, let us consider the 4-4 parallel platform appearing in Fig. 5.
Its forward kinematics is known to have 24 solutions [3]. However, they can be split
in two sets that are symmetric with respect to the base. Since the distance-based
formulation is invariant to this symmetry, we will get a 12th-degree closure poly-
nomial. The two sets of configurations are obtained in the coordinatization process
using trilateration [4, 5, 8].
Applying the substitution presented in the previous section four times (see
Fig. 6), we have that
s4,8=Y
4,5,6,7,8(s4,5),
s3,8=Y
3,4,5,6,8(s4,8,s4,5),
s2,8=Y
2,3,4,5,8(s3,8,s4,8),
s1,8=Y
1,2,3,4,8(s2,8,s3,8,s4,8).
After a proper sequence of forward substitutions in the above four equations, s1,8
can be expressed only in terms of s4,5. Since this parallel platform has planar base
and platform, Y
4,5,6,7,8and Y
1,2,3,4,8are single-valued functions. Only Y
3,4,5,6,8and
Y
2,3,4,5,8contribute with square roots to the obtained closure condition. Eliminating
them as explained leads to a 52nd-degree polynomial in s4,5. In this case, the rod
connecting P
4and P
5belongs to two shared faces (the ones defined by P
4P
5P
6and
P
3P
4P
5), whose associated singular terms are s2
4,5706.1251s4,5+5031.9580, and
Closure Polynomials for Strips of Tetrahedra 7
P
1
P
1
P
1
P
1
P
2
P
2
P
2
P
2
P
3
P
3
P
3
P
3
P
4
P
4
P
4
P
4
P
5
P
5
P
5
P
6P
6
P
7
P
8
P
8
P
8
P
8
Ψ
4,5,6,7,8(s4,5)
Ψ
4,5,6,7,8(s4,5)
Ψ
4,5,6,7,8(s4,5)
Ψ
3,4,5,6,8(s4,8,s4,5)
Ψ
3,4,5,6,8(s4,8,s4,5)
Ψ
2,3,4,5,8(s3,8,s4,8)
Fig. 6 The 4-4 parallel manipulator in Fig. 5 can be topologically described as the strip of five
tetrahedra in which the distance between P
4and P
5is variable and the distance between its end-
points, P
1and P
8, is known. The application of the substitution rule to this strip (top left) permits
to sequentially eliminate P
7(top right), P
6(bottom left), and P
5(bottom right).
s4,52532.3731s4,5+37708.4160. After iteratively dividing the obtained polyno-
mial by these two factors until the remainder is not null, the following 12th-degree
polynomial is obtained
s12
4,50.676 ·103s11
4,53.873 ·106s10
4,5+5.400 ·109s9
4,59.858 ·1012 s8
4,5
2.327 ·1015 s7
4,5+1.967 ·1018 s6
4,57.316 ·1020 s5
4,5+1.518 ·1023 s4
4,5
1.834 ·1025 s3
4,5+1.257 ·1027 s2
4,54.432 ·1028 S45+6.171 ·1029
.
This polynomial has six roots that lead to real configurations of the moving platform
obtained by coordinatization via trilaterations [5,8]. These roots and the correspond-
ing configurations appear in Fig. 7. They coincide with the solutions reported in [3]
obtained using an ad hoc intricate method.
4 Conclusions
It has been explained how to obtain closure polynomials for tetrahedral strips in
terms of the involved rod lengths and the distance between the strip endpoints, and
how this technique can be applied to solve some position analysis problems. How-
ever, this technique cannot incorporate orientation constraints between tetrahedra
at different parts of the strip. As a consequence, if applied to a case in which such
8 F. Thomas and J. M. Porta
P2
P5
P8
P1
P7
P6
P3
P4
x
y
z
0
0
0
2
4
5
5
−5
6
8
10
10
15
15
20
P2
P5
P1
P8
P7
P3
P6
P4
x
y
z
0
0
0
2
4
5
5
−5
6
8
10
10
15
15
20
s4,5=420.405 s4,5=388.143
P2
P1
P5
P6
P8
P7
P3
P4
x
y
z
0
0
0
2
4
5
5
−5
6
8
10
10
15
15
20
P2
P1
P8
P7
P3
P5
P6
P4
x
y
z
0
0
0
2
4
5
5
−5
6
8
10
10
15
15
20
s4,5=339.179 s4,5=171.428
P2
P1
P3
P6
P7
P8
P5
P4
x
y
z
0
0
0
2
4
5
5
−5
6
8
10
10
15
15
20
P2
P1
P6
P7
P8
P3
P5
P4
x
y
z
0
0
0
2
4
5
5
−5
6
8
10
10
15
15
20
s4,5=136.826 s4,5=136.300
Fig. 7 Forward kinematics solutions of the 4-4 manipulator used as example. The mirror configu-
rations with respect to the base are also solutions, but they are not represented.
constraints are necessary, the obtained closure polynomial would not be of minimal-
degree as some of its roots would violate these constraints. Despite this important
limitation, it supersedes the method presented in [7] in scope and simplicity, thus
providing a better starting point for a complete generalization to three dimensions
of the techniques developed for the position analysis of planar linkages using Dis-
tance Geometry.
Closure Polynomials for Strips of Tetrahedra 9
References
1. Havel, T.: Some examples of the use of distances as coordinates for Euclidean geometry. Journal
of Symbolic Computation 11(5-6), 579–593 (1991)
2. Innocenti, C., Parenti-Castelli, V.: Echelon form solution of direct kinematics for the general
fully-parallel spherical wrist. Mechanism and Machine Theory 28, 553–561 (1993)
3. Lin, W., Griffis, M., Duffy, J.: Forward displacement analyses of the 4-4 Stewart platforms.
ASME Journal of Mechanical Design 114(3), 444–450 (1992)
4. Porta, J.M., Ros, L., Thomas, F.: Inverse kinematics by distance matrix completion. In: Inter-
national Workshop on Computational Kinematics (2005)
5. Porta, J.M., Ros, L., Thomas, F.: On the trilaterable six-degree-of-freedom parallel and serial
manipulators. In: IEEE International Conference on Robotics and Automation, pp. 960–967
(2005)
6. Porta, J.M., Ros, L., Thomas, F., Torras, C.: A branch-and-prune algorithm for solving systems
of distance constraints. In: IEEE International Conference on Robotics and Automation, pp.
342–348 (2003)
7. Rojas, N., Thomas, F.: The closure condition of the double banana and its application to robot
position analysis. In: International Conference on Robotics and Automation, pp. 4641–4646
(2013)
8. Thomas, F., Ros, L.: Revisiting trilateration for robot localization. IEEE Transactions on
Robotics 21(1), 93–101 (2005)