Title: Institut de Robtica i Informtica Industrial
1A branch-and-prune solver for systems of
distance constraints
J.M. Porta, L. Ros, F. Thomas, and C. Torras
Institut de Robòtica i Informàtica
Industrial Barcelona - Catalonia
2Outline
- The problem
- Classical approaches in Robotics
- Formulation with multilinear constraints
- Solving multilinear constraints
- Some solved robots and molecules
3Problem
Given a mechanism
With several loops
With any type of joints
Find
All configurations of the mechanism lying within
given ranges for its degrees of freedom
4This statement generalizes...
... the inverse kinematics of serial robots
... the direct kinematics of parallel robots
5Open problem
Central problem in Computational Kinematics
There only exist ad-hoc solutions for specific
mechanisms
No general efficient algorithm has been found
"General"
All kinds of joints
Amount of loops
Shape of the solution space
6A complete algorithm is wanted
?j
?j
?i
?i
Isolated points
Whole continua of solutions
7Outline
- The problem
- Classical approaches in Robotics
- Formulation with multilinear constraints
- Solving systems of multilinear constraints
- Some solved robots and molecules
8Classical formulationUsing a constraints graph
plataform
base
9Matrix equationsdeducible from the constraints
graph
The closure equations that correspond to a cycle
basis yield a system with trigonometric terms
whose solutions are the valid configurations of
the mechanism
10Algebraizationof the equations
Each scalar equation involves trigonometric terms
f(sin ?i, cos ?i, ..., di) 0
But the system can be algebraized using
The tangent-of-the-half angle (?i / 2)
substitution, or
The change of variables xi sin ?i yi
cos ?i xi2 yi2 1
11Polynomial system
In any case, we end up with a system of
polynomial equations that must be solved
12Classical methods
Elimination-based
Homotopy-based
13Classical methodsShortcomings
Elimination-based
Require the solution of a high degree polynomial.
Need special data structures to represent reals
with many significant digits
Homotopy-based
Large systems of complex initial value problems
must be solved
14But
Not only a good resolution technique is needed
We seek a good combination of algebraization
resolution technique
15Outline
- The problem
- Classical approaches in Robotics
- Formulation with multilinear constraints
- Solving systems of multilinear constraints
- Some solved robots and molecules
16How can we obtain a system of multilinear
equations?
17First stepTranslate the mechanism into an
equivalent bar-and-joint framework
Rigid bars
Spherical joints
18Translating rotational pairs
One-to-one correspondence of configurations
19Translating a 6R loop(Must be solved in the
inverse kinematics of a 6R robot)
6R Loop
20Advantages of the translation
The mobility of the mechanism can be deduced
using Rigidity Theory
The valid configurations of a bar-and-joint
framework satisfy a system of multilinear
equations (thus, without trigonometric terms)
The multilinearity allows applying a simple
branch-and-prune algorithm.
21Second stepUse Cayley-Menger equations
Cayley-Menger determinant of four points
0 r12 r13 r14 1
p4
r12 0 r23 r24 1
r13 r23 0 r34 1
p1
p3
r14 r24 r34 0 1
p2
1 1 1 1 0
rij squared distance from pi to pj
22Second stepUse Cayley-Menger equations
Of three points
0 r12 r13 1
r12 0 r23 1
16 A2
r13 r23 0 1
1 1 1 0
23Second stepUse Cayley-Menger equations
Conditions that the distances between n points
must satisfy so that these points are embeddable
in R3
24Outline
- The problem
- Classical approaches in Robotics
- Formulation with multilinear constraints
- Solving systems of multilinear constraints
- Some solved robots and molecules
25Algorithm prunning bisection
Prunning
Bisection
26Prunning
Thanks to the convex hull property of
multilinear functions
27Outline
- The problem
- Classical approaches in Robotics
- Formulation with multilinear constraints
- Solving systems of multilinear constraints
- Some solved robots and molecules
28Example 1Octahedral manipulator
Direct kinematics
Find all platform poses, given the lengths of
the actuated lengths
29Octahedral manipulator In a non-singular
configuration
30Stewart-Gough platform In a singular
configuration
Jacobian, almost null
31Octahedral cyclohexane
32Octahedral cyclohexane
33Octahedral cyclohexane
34Octahedral cyclohexane
35Octahedral cyclohexane
C
C
C
C
C
C
36Cyclohexane
50 miliseconds
37Whole conformational space of theCycloheptane
28 equations
25 inequations
10 minutes
7 variables
38One slice of theCyclooctane
84 equations
69 inequations
1'5 hours
11 variables
39Conformational space of the cycloctaneSeveral
slices of the 2-dim variety
40Future work
To develop algorithms able to solve problems
involving many degrees of freedom in reasonable
times To exectue the algorithms in parallel
computers or inclusters of computers