2013 - A Direct Variational Method For Planning Monotonically Optimal Paths For Redundant Manipulators in Constrained Workspaces - Shukla
2013 - A Direct Variational Method For Planning Monotonically Optimal Paths For Redundant Manipulators in Constrained Workspaces - Shukla
∗ Corresponding author. Tel.: +91 512 259 7995; fax: +91 512 259 7408. 1 An algorithm is called complete if it either finds a solution or reports the non-
E-mail address: [email protected] (B. Dasgupta). existence of the same.
0921-8890/$ – see front matter © 2012 Elsevier B.V. All rights reserved.
doi:10.1016/j.robot.2012.08.012
210 A. Shukla et al. / Robotics and Autonomous Systems 61 (2013) 209–220
the path can be expressed as a vector function of a scalar variable, 3. Collision detection and quantification
viz. q(t ) as,
The problem of collision detection in path planning for physical
q(t ) = [q1 (t ) q2 (t ) · · · qN (t )]T . (1) objects is central to any model-based manipulation system. In this
section, we present a scheme to calculate a measure of infringe-
In order to numerically minimize the energy functional (refer to
ment/proximity between the manipulator and the workspace,
Section 4) over the function space of all paths, it is first required
which is used to generate a penalty function in the variational for-
to choose an appropriate function model for approximating the
mulation (Section 4) for collision avoidance.
above vector function and identify a set of variables governing
At a given configuration, the manipulator is tested against the
the shape of each of its component function curves. Developing
workspace obstacles and among its own links for collisions. If
such a model requires a set of basis functions, the weighted sum
a collision is reported, the algorithm computes the approximate
of which would give the function value at any point. Candidate
volume of infringement and derives from it a normalized measure
basis functions which can be used are {1, x, x2 , . . .}, Chebychev
of infringement, which is reported as a negative value. On the
polynomials, Bessel functions, B-spline basis functions, etc. (refer
other hand, if no collision is reported, a normalized shortest
to [41]). We use the B-spline function model in this work. Following
distance between the manipulator and obstacles is reported as a
considerations arising from the inherent properties of B-splines positive value. The detailed discussion is divided into three steps,
(refer to [43]) make them particularly useful in the current context viz. modeling of the workspace and the manipulator, collision
and hence justify the choice. detection and penetration volume calculation.
1. For a k-th order B-spline curve, each point on the curve is
affected only by the nearest k control points. This provides local 3.1. Object modeling
control over the path to be modeled and, in the current context,
leads to effective collision avoidance while maintaining smaller For proximity analysis of the manipulator with the given
path lengths. workspace obstacles, we use their triangularized surface meshes.
2. The function is defined piecewise. Therefore, it is possible to Any solid modeling software can be used to generate the surface
track complicated paths even with low degree B-splines. mesh in the form of a stereolithographic file (.STL). To conform
3. Start and end points can be interpolated by using open- with the data structures used in the application, each of the objects
uniform2 knot vectors. This ensures effective handling of the present in the workspace must be introduced in the form of
kinematic constraints (refer to Section 5). separate components placed appropriately. A convenient way to
4. B-splines lie within the convex hull created by the correspond- do this is by making an assembly of all the obstacles, placed at their
ing control polygons3 . This simplifies the evaluation of joint intended positions. We use the Solid-Works Assembly (.SLDASM)
limit constraints of the manipulator (detailed in Section 5). format for this purpose. Zhang et al. [44] have presented and
discussed their work on penetration depth computation for convex
We use the de Boor recursive formula [43] to calculate the and non-convex objects. However, no comparison is presented as
basis functions for a B-spline of k-th order. If pi ∈ ℜN , for a part of this paper.
n + 1 control points (p0 , p1 , . . . , pn ) and n + 1 basis functions The manipulator links are assumed to be rectangular blocks.
(B0,k , B1,k , . . . , Bn,k ), the B-spline curve is given by No external information is needed for their modeling except
n
the D–H parameters and width of the links as input to the
application. Links are meshed as collections of bounding cuboids
C(t ) = pi Bi,k (t ). (2)
and nodal coordinates, whenever required, are transformed using
i=0
manipulator kinematics.
It is to be noted that each of the control points pi ∈ ℜN repre-
sents one control configuration of the manipulator with its com- 3.2. Collision detection
ponents giving the corresponding joint variable values. We choose
‘n + 1’ such configurations defining the complete path. Continuous To detect if there is a collision between the manipulator and
representation of the path for all joints is obtained by using Eq. (2) the obstacles or within the manipulator links, we use a library
with these ‘N (n + 1)’ values as control points. called the Proximity Query Package (PQP). This library performs
However, we recognize the fact that time is a scalable quantity. fast proximity queries on a pair of surface triangularized solid
The same path when traversed in a different span of time results models using OBB-Trees and swept sphere bounding volumes (BV)
in a different set of functions qi (t ). Hence, an infinite number as introduced by Gottschalk et al. [45] and Larsen et al. [46]. The
of function definitions exist for the same path. To avoid such available queries in this package are collision detection, separation
redundancy, we choose a constant range parameter t ∈ [0, 1]. distance computation and tolerance limit verification. We first use
It is to be noted here that one may choose different functions the collision detection query which reports whether there is a
τ (t ) mapping the parameterization from the chosen parameter to collision between the input models. If no collision is reported,
time, so as to keep the joint velocities and accelerations within we invoke the separation distance query which gives the shortest
permissible limits. The representation of the manipulator path in distance ds between the input solid models. This process is
joint space is now complete and can be expressed as repeated for all links and obstacle pairs and the reported minimum
distances for all links are added after normalization with respect to
x ≡ [pT0 pT1 pT2 · · · pTn ]T where pi ∈ ℜN , x ∈ ℜN (n+1) . (3) the link lengths. If N is the number of links and Lj denotes the length
of link j, proximity measure d is obtained as
N
ds,j
2 Open-uniform knot vectors are the ones with uniform knot spans and k equal d= .
knot values at each end. This ensures that the resulting B-spline passes through the j =1
Lj
first and the last control points.
3 More specifically, if t ∈ [t , t ), then the point corresponding to t on the curve Normalization with respect to link length avoids scaling variations
i i+1
lies inside the convex hull of control points (pi−k+1 , pi−k+2 , . . . , pi ). due to a change in the units.
212 A. Shukla et al. / Robotics and Autonomous Systems 61 (2013) 209–220
3.3. Penetration volume calculation P (q(t )), we first calculate the infringement measure d correspond-
ing to configuration q(t ) as explained in Section 3. Now, for some
If collision is reported between the manipulator and the t ∈ [0, 1], P (q(t )) is defined as
obstacles or within the links, we calculate the infringement volume
to quantify the amount of collision. We use the 3-dimensional P (q(t )) = −c1 (1 − e−d/c2 ) (5)
version of the point-in-polygon technique given by Nordbeck and ∂ P (q(t )) c1
Rystedt [47] to classify a given point in space as inside or outside ⇒ = − e−d/c2 . (6)
∂d c2
a general polyhedron. This technique, also known as the sum of
angles method, involves computing the signed sum of solid angles Here, c1 and c2 are respectively associated with the overall scale
subtended by the faces of a polyhedron at the point of interest. If of the problem and steep rise of the potential curve with respect to
the sum equals 4π or −4π , the point is reported to be lying inside the infringement measure d. Although the gradient of this function
the polyhedron, if it equals 0, the point is reported outside. If any is governed by c1 to some extent, in order to exercise independent
value other than these is obtained, the polyhedron is not closed control over both properties of the curve, a separate variable c2 is
and hence the problem is ill-posed. A robust and generalized 3- introduced. Variations of the potential function with c1 and c2 are
D implementation is given by Carvalho and Cavalcanti [48]. Using shown in Fig. 1. In this work we have used c1 = 100 and c2 = 5.
this method, the approximate penetration volume is computed as Complete definition of the functional is now obtained by inte-
follows: grating the above formulated Lagrangian function over the com-
plete path, thereby obtaining a scalar quantity A, which is a
1. Discretize each link into a number of cells in transverse and measure of the total path length in joint space:
axial directions. 1
2. For each cell, find out the number of its vertices lying inside the
A = Ldt
obstacle polyhedron. 0
3. If n vertices are found inside, report n/8 of the cell volume as 1
1
the collision volume. = q̇T Wq̇ dt . (7)
4. Repeat Steps 1–3 for all cells and keep adding the collision 0 2
volumes. The above definition is closely related to Hamilton’s principle of
5. Normalize the total infringement volume obtained with respect least action with a Lagrangian as defined in Eq. (4). According to
to the total link volume and sum for all links as this principle, a dynamic system of one or more bodies evolves
from one time instant to another in such a way that the action
N collision remains stationary. Hence, for such systems, invoking first order
Vj
d=−
3
. optimality conditions on the action A provides a convenient way
Vjtotal
j =1 to formulate the differential equations of the path function q(t ) in
the form of Euler’s equations [31]. However, the solution of such
An error analysis is presented in the Appendix, to examine the error
a system of differential equations requires the knowledge of the
in the penetration quantification, done using the methodology
boundary conditions, i.e. in this case, the initial and final configu-
used above. The variations in the error with respect to the change
rations. These end configurations fixed arbitrarily by the user imply
in the penetration represents the conservative nature of the
certain drawbacks as explained earlier. In this work, instead of gen-
approach.
erating the Euler equations, we minimize the action numerically,
not insisting on fixed end configurations, by directly formulating
4. Variational formulation an optimization problem as explained in the next section.
The variational approach involves formulating the path plan- 5. Optimization scheme
ning problem as minimization of a functional. We define the
functional using different terms representing path length and As explained in the previous section, the path planning problem
penalty due to the manipulator’s proximity or infringement with is reduced to the minimization of action A, which is formulated as
workspace obstacles. The final path is obtained as a local minimizer a function of the manipulator path. In Section 2, it is shown that
of this functional. The functional is based on the Lagrangian (L) and a manipulator path can be represented completely by ‘N (n + 1)’
is defined as explained below. variables. Hence, the problem can now be treated as a multivariate
At a particular value of the parameter s = s∗ ∈ [0, 1], we have optimization problem with basic elements of the objective func-
q(s∗ ) ∈ ℜN and the Lagrangian tion and the corresponding solution space completely defined. The
1 following discussion describes the complete optimization formu-
L= q̇T Wq̇ (4) lation and the solution procedure.
2
We define the problem in a constrained optimization frame-
tends to keep the path short. A symmetric positive definite weight work as
matrix W can be used to counter the scaling variations among
minimize f (x)
different components of the vector q̇ arising from differences in
subject to gl (x) ≤ 0 for l = 1, 2, 3, . . . , L;
units or types of joints. Moreover, W can also be used to assign a
and hm (x) = 0 for m = 1, 2, 3, . . . , M .
higher weightage to some joints in the process of joint movement
minimization to account for different inertia experienced by Here, f (x) is the objective function to be minimized, subject to
different joints. In this implementation, we have used W = I, i.e. all the inequality constraints gl (x) and equality constraints hm (x). This
joint values are kept at the same scale and priority. section define the formulation in detail.
The issue of obstacle avoidance is addressed in the form of
a penalty function P (q) introduced as a constraint in the opti- 5.1. Objective function
mization formulation (Section 5). It is derived from the infringe-
ment/proximity measure described in Section 3 which ensures that The objective function f (x) to be minimized is the action
the path remains within the free regions of the C -space. To define (Eq. (7)) combined with a mild penalty term. To justify the need
A. Shukla et al. / Robotics and Autonomous Systems 61 (2013) 209–220 213
Fig. 1. Potential curves for different parameter values (a) c1 = 1, c2 = 5, (b) c1 = 100, c2 = 5, (c) c1 = 1, c2 = 1, (d) c1 = 1, c2 = 20.
N 1
of this term, it is first required to introduce the concept and
significance of monotonically optimal manipulator paths. Of all the ∆= δj (t )dt ,
j=1 0
possible paths between the given start and end configurations,
a path with monotonic motion on all the joints corresponds where
to a minimum amount of joint movement. We call such paths
|qj (t + tstep ) − qj (t )|,
monotonically optimal. A schematic representation in Fig. 2(a)
δj (t ) = if SGN[{qj (t + tstep ) − qj (t )}{qj (1) − qj (0)}] < 0
explains how a monotonic path, represented by the dotted line,
0 otherwise.
incurs a net joint movement which is 2∆q less compared to its
non-monotonic counterpart. These paths are of high significance as However, this scheme fails to penalize cases where qj (t ) exhibits
they correspond to the least amount of energy expenditure among near-horizontal slopes, i.e., qj (t + tstep ) − qj (t ) ≈ 0. An illustration
all possible paths between the two fixed configurations. Based of such a case is provided symbolically in Fig. 2(b), where the
on this heuristic, any deviation from non-monotonicity should be deviation from monotonicity is extremely small for the part BC
penalized proportionally by the amount of deviation. of the curve. Moreover, any small change in the joint motion
If qj (t ) represents the motion of the j-th joint with respect to represented by the dotted curve, intended to proceed towards
the path parameter t ∈ [0, 1], then the amount of deviation from a monotonic path, will not be allowed since both path length
monotonicity is defined as and the deviation ∆ increase locally. Therefore, we propose a
214 A. Shukla et al. / Robotics and Autonomous Systems 61 (2013) 209–220
much stronger requirement on the joint movement, i.e. linearity where (Xlocal , Ylocal , Zlocal ) gives the position of the hand in the end-
with a specific slope. We penalize any deviations from a desired effector link. Based on this relation, for the start and end configu-
slope, which is equal to the slope of the line joining (0, qj (0)) rations qstart and qend , we formulate the six equality constraints.
and (1, qj (1)). This scheme imposes considerable penalty on all
regions of the curve, including regions of zero slope. Moreover, this 5.3. Inequality constraints
renders the joint movement close to linear with respect to the path
parameter and hence ensures smaller joint accelerations and less Inequality constraints arise due to two reasons: bounds over
overall torque requirement. The amount of penalty associated with the joint variables and the need of collision avoidance. Higher and
slope deviation can be defined as
lower limits for each joint are prescribed and obtained as input
N
1 to the optimization routine. For the j-th joint, these limits can be
∆s = δjs (t )dt , (8) written as qlj ≤ qj ≤ quj where qlj and quj represent the lower and
j =1 0 upper bounds respectively, giving rise to the inequality constraints
where as
qj (t + tstep ) − qj (t ) qj (1) − qj (0)
qj (t ) − quj ≤ 0 ∀t ∈ [0, 1]
δ (t ) =
s
j
− .
t 1
qlj − qj (t ) ≤ 0 ∀t ∈ [0, 1],
step
and
After inclusion of the above penalty term to improve the smooth-
ness of the path, we define the objective function as for j = 1, 2, 3, . . . , N where ‘N’ is the number of joints.
1 However, this scheme requires monitoring of the joint variables
1 continuously over the complete path, which is impractical and
f (x) = q̇T Wq̇ dt + Ψ ∆s , (9)
0 2 highly inefficient. Instead, we use the convex hull property of
B-splines and monitor only the control values corresponding to
where ∆ is given by Eq. (8) and Ψ is a user-defined scaling pa-
s
each joint. Since a B-spline curve lies completely inside the convex
rameter ensuring a mild slope deviation penalty. It is to be noted
that the requirement of linearity inherently imposes the require- hull of its control points, forcing the control values of a particular
ment of monotonicity, which ensures smaller path lengths. Hence, joint to be inside the bounds is sufficient to render the complete
incorporation of only ∆s in the objective function is sufficient. path feasible with respect to these inequality constraints. It is to
be noted that the control values for each joint can be directly
5.2. Equality constraints extracted from the solution vector as explained in Section 2. If
[pT0 pT1 · · · pTn ]T represents the solution vector at the current
In path planning, equality constraints arise due to the require- iteration and ‘n + 1’ is the number of control points, then the
ments to be fulfilled by the start and end configurations. In most inequality constraints due to joint limits are given as
of the previous work in this field, including all classes of roadmap (pi )j − quj ≤ 0 i = 0, 1, . . . , n
and potential methods, fixed configurations are assigned at both (10)
extremes of the trajectory. However, this turns out to be a much qlj − (pi )j ≤ 0 i = 0 , 1 , . . . , n,
stronger constraint than what is required. The real physical con- for j = 1, 2, 3, . . . , N where ‘N’ is the number of joints.
straint in most applications is for the end-effector to reach a par- The other inequality constraint arises due to the requirement
ticular Cartesian location, which is possible with a large number of non-colliding paths. It is observed that a point in the solution
of configurations, in fact, infinitely many for redundant manipula- space which is a local minimum with respect to the action A, may
tors. Hence, we formulate the equality constraint functions in such not correspond to a non-colliding path. To enforce such a condition,
a manner, that instead of penalizing a change in the configuration, we introduce another inequality constraint as
they penalize the movement of the end-effector away from the gobs = max {P (q(t ))} ≤ 0, (11)
prescribed start and end locations. Since our solution space is de- t
rived from the joint space of the manipulator (refer to Section 2), i.e., the maximum potential energy associated with any configura-
we must define a transformation, mapping the joint space to the tion over the complete path should be less than the colliding limit.
Cartesian space. The transformation between the coordinate sys-
tems attached to links j and j + 1 in terms of the D–H parame- 5.4. Augmented Lagrangian method
ters [49] is given by
cos(θj ) − sin(θj ) cos(αj ) sin(θj ) sin(αj ) aj cos(θj )
We now present the solution scheme using the augmented
sin(θj ) cos(θj ) cos(αj ) − cos(θj ) sin(αj ) aj sin(θj ) Lagrangian method [50,51]. In a highly constrained problem such
j+1 .
Tj = as the one presented in this work, it is difficult for any algorithm
0 sin(αj ) cos(αj ) dj
to maneuver through the feasible regions of the solution space.
0 0 0 1
However, the augmented Lagrangian method allows non-feasible
Assuming frame 0 to be attached with the base of the manipulator, iterates in the intermediate iterations, and slowly converges over
coincident with the world coordinate system and N as the num- a feasible and optimal solution. Moreover, there is no need to find
ber of links, the transformation from the base to the end-effector a feasible initial guess and hence the choice of this method is
coordinate frame is given by justified.
T0N = T01 T12 T23 · · · TNN−1 . In this method, the constrained problem is reduced to uncon-
strained minimization of the augmented Lagrangian function de-
Hence, at a configuration q4 ∈ ℜN , the generalized coordinates of fined as
the end-effector in a Cartesian system are given by
L M
T
Xtip , Ytip , Ztip , 1 = T0N (q) {Xlocal , Ylocal , Zlocal , 1}T , F (x) = f (x) + µl gl (x) + λm hm (x)
l =1 m=1
L M
1 1 2
4 Where q represents θ or d corresponding to the type of the j-th joint as
j j j + D [max(0, gl (x))]2 + D hm (x), (12)
revolute or prismatic, respectively. 2 l =1
2 m=1
A. Shukla et al. / Robotics and Autonomous Systems 61 (2013) 209–220 215
Fig. 3. 2-D workspace with 3 obstacles. (a) 2-D path. (b) Variation of minimum distance of approach between manipulator and workspace obstacles along the path. (c) Joint
curvature comparison. (d) Joint motion using Method I. (e) Joint motion using Method II.
where µl and λm are the Lagrange multipliers corresponding to 2. optimizing the path completely between the chosen configura-
the l-th inequality and m-th equality constraints respectively. D tions, i.e. achieving monotonic optimality.
is the penalty parameter specified by the user, large enough to
render the augmented Lagrangian function convex through the
6.1. 2-D workspace
iterations. At each step, the augmented Lagrangian function F (x)
is minimized with respect to the primal variables x, at the end of
which the multipliers µl and λm (dual variables) are updated. Upon We present the first case study with a planar 8-DOF manipula-
convergence of the iterations with respect to the primal as well tor working in a 2-D workspace consisting of 3 obstacles as shown
as dual variables, a feasible and optimal solution is obtained. For in Fig. 3. The link lengths of the manipulator are [8, 8, 7, 7, 6, 6,
details of the method, refer to [41,42]. 6, 6] units with base point at (0, 0, 0). A path is planned between
the Cartesian points (40, 30, 0) and (30, 10, 0) using the presented
planner (Method I). This is one of the tasks planned in Dasgupta
6. Results and comparisons
et al. [31] (Method II).
In order to compare the quality of the paths obtained from the
The path planning scheme presented in this paper is imple-
two methods, path length and smoothness comparisons have been
mented in C++ and tested with various workspaces, so that effec-
made. In the following discussion, a decrease in path length from
tive comparisons and conclusions can be made with respect to the
Method II to Method I due to the two aforementioned factors has
desired properties of the path. The comparisons suggest a two-way
been identified separately. Here, the optimal path length refers to
decrease in the path length mainly due to
the path length of a monotonically optimal path having the same
1. the algorithm choosing better initial and final configurations as start and end configurations as the actual path. It has been used to
against the imposed user defined configurations, and calculate the contribution of monotonic optimality in decreasing
216 A. Shukla et al. / Robotics and Autonomous Systems 61 (2013) 209–220
Table 1
Path length analysis for 2-D workspace.
Path length Optimal path length %Decrease
Method I (rad) Method II (rad) Method I (rad) Method II (rad) Choice of end configurations (%) Monotonic optimality (%) Total (%)
Table 2
Path length analysis for staggered obstacles.
Path length Optimal path length %Decrease
Method I (rad) Method II (rad) Method I (rad) Method II (rad) Choice of end configurations (%) Monotonic optimality (%) Total (%)
Table 3
Path length analysis for shelves.
Path length Optimal path length %Decrease
Method I (rad) Method II (rad) Method I (rad) Method II (rad) Choice of end configurations (%) Monotonic optimality (%) Total (%)
the path length. To compare the smoothness of the paths we obtained is given in Fig. 4, as earlier. Fig. 4(a) shows the workspace
present the variation of curvature κ in joint space, defined as, and the path obtained. The variation of minimum distance between
the manipulator and obstacles with the path parameter t is pre-
q (t ) − û · q′′ (t ) û
′′
sented in Fig. 4(b), which clearly shows that there is no collision
κ(t ) = , (13)
||q′ (t )||2 between the manipulator and the workspace obstacles anywhere
along the path. It is evident from Fig. 4(d) that the path given by the
where û is the unit vector in the direction of q′ (t ) (refer to [41]). To presented planner is monotonically optimal. A comparative anal-
establish the feasibility of the paths obtained in each case, a plot of ysis with respect to path length is given in Table 2, according to
the minimum distance d between the manipulator and workspace which the total joint movement incurred in the path obtained from
obstacles with respect to path parameter t is shown. A positive Method I is 63.57% less than that obtained from Method II.
value of d confirms the non-infringement at all configurations
along the path. Fig. 3(a) shows the set of configurations obtained by 6.2.2. Shelves
the presented path planner and the path traced by the end-effector The next test workspace consists of an array of shelves as shown
in Cartesian space. The configurations shown in bold represent the in Fig. 5(a). The start and end points are chosen in such a way that a
control configurations for the B-spline interpolation. typical pick and place operation between two shelves is simulated.
Fig. 3(b) shows the variation of minimum distance of the Fig. 5(b) shows the minimum distance plot along the path. Fig. 5(c)
manipulator from the obstacles minj {ds,j }, with the path parameter clearly shows that the curvature of the joint paths obtained from
t. Clearly, the value is positive all along the path which confirms Method I are considerably lower than those obtained using Method
that the path is devoid of any collision. Fig. 3(c) shows a comparison II. The joint paths shown in Fig. 5(d)–(e) show that the path
of curvature of the path in joint space. The solid line represents the obtained from the presented method is monotonically optimal as
variation of κ with path parameter t for the path obtained from against the path obtained from Method II, which is highly deviated
Method I, whereas the dashed line represents the same for Method from the same. Detailed path length analysis is given in Table 3
II. It is clear from the plot that the path obtained from the presented which shows an overall decrease of 64.45% in the path length.
planner corresponds to a smaller value of curvature in joint space
and hence lesser joint accelerations and torques. The motion of
6.2.3. Bars
each joint obtained by using Methods I and II is plotted in Fig. 3(d)
This workspace is specially designed to test the algorithm’s per-
and (e) respectively.
formance in maneuvering through highly constrained workspaces.
It is clear from Fig. 3(d) that the path given by the presented
It is a network of crossing bars making a hair-comb like struc-
planner is monotonically optimal. Moreover, for the path obtained
ture. The 6-DOF manipulator is required to start from the point
by using fixed end configurations, the optimal path length between
(1.2, −0.5, 2.5) on one side of the structure and pass to the
the chosen fixed configurations (2.603 rad) is still larger than the
other side to reach the goal point (6, −5, 2.5). Fig. 6(a) shows
path length obtained from the presented algorithm (1.040 rad).
the workspace and the final path that was obtained. Clearly, the
Hence, a part of the total decrease registered (75.55%) in the path
manipulator navigates through the network of bars without col-
length is due to the choice of end configurations (37.56%) and the
liding as depicted by the plot in Fig. 6(b). Fig. 6(c) shows the curva-
rest is due to monotonic optimality of the path between those
ture plot and Fig. 6(d) shows the joint motion corresponding to all
configurations (37.99%), as depicted in Table 1.
joints.
6.2.1. Staggered obstacles A variational calculus based global path planner for spatially
We present another case study with an 8-DOF spatial manip- redundant manipulators is presented in this paper. The approach
ulator working in a 3-D workspace composed of 10 cubical boxes involves defining an energy based functional in the form of a path
placed randomly in space. The path is planned between the Carte- integral, representing the total joint movement. The augmented
sian points (4, −4, 3) and (5, 0, −5). A similar analysis of the path Lagrangian technique has been used for constrained minimization
A. Shukla et al. / Robotics and Autonomous Systems 61 (2013) 209–220 217
Fig. 4. Staggered obstacles with an 8-link manipulator. (a) 3-D path. (b) Variation of minimum distance of approach between manipulator and workspace obstacles along
the path. (c) Joint curvature comparison. (d) Joint motion using Method I. (e) Joint motion using Method II.
of this functional, resulting in good quality manipulator paths. A representing a link of the robot, and a sphere, representing an
B-spline function model has been used for the representation of obstacle. Such a case makes it possible to calculate the penetration
paths. This provided local control over the trajectory, proved to volume in closed form without making it trivial. To recall, the
be efficient in constraint handling and resulted in smoother joint penetration distance is positive when there is no collision, it is zero
movement. Use of semi-fixed boundary conditions and insisting on when the surfaces are in contact and negative in collision.
monotonically optimal paths provided better quality paths with We use the actual penetration distance dact as the independent
respect to path length. An improved collision detection scheme variable and calculate its estimate dest using the infringement
using tools of proximity and infringement volume calculation volume. The setup is shown in Fig. 7(a) where a cuboid of size
has been introduced in order to avoid using numerically large w ×w × h penetrates into a sphere of radius R (with 2R > h > w in
penalty values. Results for several 2-D and 3-D workspaces have this case) along the Z axis. The infringement volume for different
been presented which demonstrate the efficiency of the approach. penetration values can be calculated as the piecewise continuous
Comparisons with an earlier variational approach have been made function
which suggest a two-way decrease in path length due to semi-fixed
V1 if |dact |< R − R2 − w 2 /4,
boundary conditions and monotonic optimality of paths.
− w /4 ≤ |dact | ≤ R − R2 − w2 /2,
if R − R2 2
V
2
if R − R2 − w 2 /2 < |d act | < h,
V3
Appendix. Error analysis
Vinfringe =
V4 | ≤ h + R − R2 − w 2 /4,
if h ≤ |dact
V5 if h + R − R2 − w 2 /4
We use a simple illustrative example to calculate the error
between the actual and estimated penetration distance between < |dact | < h + R − R2 − w2 /2,
two objects. We choose the two intersecting bodies as a cuboid, V6 otherwise;
218 A. Shukla et al. / Robotics and Autonomous Systems 61 (2013) 209–220
Fig. 5. Shelves with a 9-link manipulator. (a) 3-D path. (b) Variation of minimum distance of approach between manipulator and workspace obstacles along the path. (c)
Joint curvature comparison. (d) Joint motion using Method I. (e) Joint motion using Method II.
w/2 w/2
where
V5 = R2 − x2 − y2 − R + |dact | dydx
√ √k−x2 −w/2 −w/2
k
√k′ −(w/2)2
w/2
V1 = √ R2 − x2 − y2 − R + |dact | dydx,
− k
√
− k−x2 − √ R2 − x2 − y2 − R + |dact | − h dydx,
√k−(w/2)2 w/2
− k′ −(w/2)2 −w/2
√k′ −x2
V2 = R2 − x2 − y2 − R + |dact | dydx w/2
√
− k−(w/2)2 −w/2 −2 √ √ R2 − x2 − y2
w/2 √k−x2
k′ −(w/2)2 − k′ −x2
+2 √ √ R2 − x2 − y2 − R + |dact | dydx, − R + |dact | − h dy dx
k−(w/2)2 − k−x2
w/2 w/2 V6 = w 2 h;
V3 = R2 − x2 − y2 − R + |dact | dydx, and k = R2 −(R −|dact |)2 , k′ = R2 −(R −|dact |+ h)2
. The estimated
−w/2 −w/2
w/2 w/2 penetration distance is then calculated as dest = − 3 Vinfringe .
V4 = R2 − x2 − y2 − R + |dact | dydx Fig. 7(b) shows the variation of dest with dact . At the onset
−w/2 −w/2 of collision, the above estimation scheme gives a value that is
√ √ larger in magnitude than the actual penetration. Note that such
k′ k′ −x2
an over-estimate is crucial to our methodology in that it creates
− √ √ R2 − x2 − y2 − R + |dact | − h dydx,
− k′ − k′ −x2
a steeper penalty function which in turn inhibits the augmented
A. Shukla et al. / Robotics and Autonomous Systems 61 (2013) 209–220 219
Fig. 6. Bars with a 6-link manipulator. (a) 3-D path. (b) Variation of minimum distance of approach between manipulator and workspace obstacles along the path. (c) Joint
motion using Method I. (d) Joint curvature plot.
Fig. 7. (a) 3-D illustrative example for error analysis of the penetration distance estimation. (b) Relationship between estimated and actual penetration distances, dest and
dact .
Lagrangian iterations from going into the obstacles. However, the [3] J. Wilson, U. Mahajan, The mechanics and positioning of highly flexible
computationally cheap estimate that is being used here does not manipulator limbs, Journal of Mechanisms, Transmissions, and Automation in
Design 111 (2) (1989) 232–237.
remain conservative at higher depths of penetration as can be [4] E. Conkur, Path planning using potential fields for highly redundant
noticed from the segment of the plot above the diagonal. Since manipulators, Robotics and Autonomous Systems 52 (2–3) (2005) 209–228.
the current paper is concerned with lower extents of penetration [5] P. Isto, M. Saha, A slicing connection strategy for constructing PRMs in high-
and the main algorithm itself is designed to avoid penetration, this dimensional C -spaces, in: IEEE International Conference on Robotics and
Automation, pp. 1249–1254, 2006.
estimate is sufficient for the purposes of this paper. [6] J. Barraquand, P. Ferbach, Path planning through variational dynamic
programming, in: IEEE International Conference on Robotics and Automation,
pp. 1839–1846, 1994.
References [7] J. Schwartz, M. Sharir, J. Hopcroft, Planning, Geometry, and Complexity of
Robot Motion, Intellect Books, 1987.
[8] C. Yap, Algorithmic motion planning, Advances in Robotics 1 (1987) 95–143.
[1] G. Chirikjian, J. Burdick, Kinematically optimal hyper-redundant manipulator [9] J. Latombe, Robot Motion Planning, Kluwer Academic Publishers, 1991.
configurations, IEEE Transactions on Robotics and Automation 11 (1995) [10] L. Kavraki, J. Latombe, R. Motwani, P. Raghavan, Randomized query processing
794–806. in robot path planning, in: Proceedings of the Twenty-Seventh Annual ACM
[2] G. Chirikjian, J. Burdick, A hyper-redundant manipulator, IEEE Robotics & Symposium on Theory of Computing, ACM, New York, NY, USA, 1995,
Automation Magazine 1 (4) (1994) 22–29. pp. 353–362.
220 A. Shukla et al. / Robotics and Autonomous Systems 61 (2013) 209–220
[11] T. Lozano-Perez, Automatic planning of manipulator transfer movements, IEEE [40] D. Bertram, J. Kuffner, R. Dillmann, T. Asfour, An integrated approach to
Transactions on Systems, Man and Cybernetics 11 (1981) 681–698. inverse kinematics and path planning for redundant manipulators, in: IEEE
[12] T. Lozano-Perez, Spatial planning: a configuration space approach, IEEE International Conference on Robotics and Automation, pp. 1874–1879, 2006.
Transactions on Computers 32 (2) (1983) 108–120. [41] B. Dasgupta, Applied Mathematical Methods, Pearson Education, 2006.
[13] M. Garber, M. Lin, Constraint-based motion planning using voronoi diagrams, [42] K. Deb, Optimization for Engineering Design: Algorithms and Examples,
Algorithmic Foundations of Robotics V (2004) 541–558. Prentice Hall of India, 1998.
[14] R. Gayle, S. Redon, A. Sud, M. Lin, D. Manocha, Efficient motion planning [43] C. De Boor, A Practical Guide to Splines, Springer, 2001.
of highly articulated chains using physics-based sampling, 2007 IEEE [44] L. Zhang, Y. Kim, D. Manocha, A fast and practical algorithm for generalized
International Conference on Robotics and Automation (2007) 3319–3326. penetration depth computation, in: Robotics: Science and Systems Confer-
IEEE. ence, RSS07, 2007.
[15] B. Donald, A search algorithm for motion planning with six degrees of freedom, [45] S. Gottschalk, M. Lin, D. Manocha, OBBTree: a hierarchical structure for rapid
Artificial Intelligence 31 (3) (1987) 295–353. interference detection, in: Proceedings of the 23rd Annual Conference on
[16] O. Khatib, Real-time obstacle avoidance for manipulators and mobile robots, Computer Graphics and Interactive Techniques, ACM, New York, NY, USA,
The International Journal of Robotics Research 5 (1) (1986) 90–98. 1996, pp. 171–180.
[17] P. Khosla, R. Volpe, Superquadric artificial potentials for obstacle avoidance [46] E. Larsen, S. Gottschalk, M.L. Lin, D. Manocha, Fast Proximity Queries with
and approach, in: IEEE International Conference on Robotics and Automation, Swept Sphere Volumes, Citeseer, 1999.
Philadelphia, pp. 1778–1784, 1988. [47] S. Nordbeck, B. Rystedt, Computer cartography point in polygon problems, BIT
[18] D. Koditschek, Robot Planning and Control Via Potential Functions, MIT Press, 7 (1967) 39–64.
Cambridge, MA, USA, 1989. [48] P. Carvalho, P. Cavalcanti, Point in Polyhedron Testing Using Spherical
[19] J. Barraquand, J. Latombe, Robot motion planning: a distributed representation Polygons, in: Graphics Gems V, Morgan Kaufmann, 1995.
approach, The International Journal of Robotics Research 10 (6) (1991) [49] J. Craig, Introduction to Robotics, Addison-Wesley, Reading, Mass, 1989.
628–649. [50] M. Powell, A Method for Nonlinear Constraints in Minimization Problems,
[20] B. Daachi, A. Benallegue, A neural network adaptive controller for end-effector UKAEA, 1967.
tracking of redundant robot manipulators, Journal of Intelligent & Robotic [51] M. Hestenes, Multiplier and gradient methods, Journal of Optimization Theory
Systems 46 (3) (2006) 245–262. and Applications 4 (5) (1969) 303–320.
[21] B. Daachi, T. Madani, A. Benallegue, Adaptive neural controller for redundant
robot manipulators and collision avoidance with mobile obstacles, Neurocom-
puting (2011).
Ashwini Shukla received his bachelor’s and master’s
[22] V. Perdereau, C. Passi, M. Drouin, Real-time control of redundant robotic
degrees in Mech. Engg. from IIT Kanpur, India in 2009.
manipulators for mobile obstacle avoidance, Robotics and Autonomous
He is currently pursuing his Ph.D. at EPFL, Lausanne,
Systems 41 (1) (2002) 41–59.
Switzerland. His research interests include robotics,
[23] L. Kavraki, P. Svestka, J. Latombe, M. Overmars, Probabilistic roadmaps for
dynamical systems, etc.
path planning in high-dimensional configuration spaces, IEEE Transactions on
Robotics and Automation 12 (4) (1996) 566–580.
[24] L. Kavraki, M. Kolountzakis, J. Latombe, Analysis of probabilistic roadmaps for
path planning, IEEE Transactions on Robotics and Automation 14 (1) (1998)
166–171.
[25] F. Avnaim, J. Boissonnat, B. Faverjon, V. Inria, A practical exact motion
planning algorithm for polygonal objects amidst polygonal obstacles, in: IEEE
International Conference on Robotics and Automation, pp. 1656–1661, 1988.
[26] F. Lingelbach, Path planning using probabilistic cell decomposition, IEEE
International Conference on Robotics and Automation, vol. 1, pp. 467–472, Ekta Singla is currently working as Assistant Professor
2004. at the Indian Institute of Technology Ropar, India. She
[27] C. O’Dunlaing, M. Sharir, C. Yap, Retraction: a new approach to motion- received her Masters of Engineering degree in January,
planning, in: Annual ACM Symposium on Theory of Computing: Proceedings 2002, from Thapar University, Patiala, India and her Ph.D.
of the Fifteenth Annual ACM Symposium on Theory of Computing, vol. 1983, degree from IIT Kanpur, India in September 2010. She
pp. 207–220, 1983. worked as a lecturer at Thapar University, Patiala from
[28] J. Canny, The Complexity of Robot Motion Planning, MIT Press, 1988. January 2002 to July 2004 and as a post-doctoral fellow
[29] T. Cecil, D. Marthaler, A Variational Approach to Search and Path Planning at Université Pierre et Marie Curie, Paris from July 2009 to
Using Level Set Methods, Texas Univ at Austin, 2004. June 2010. Her areas of interest are robotic design, robot
[30] T. Cecil, D. Marthaler, A variational approach to path planning in three path planning, optimization techniques and computer
dimensions using level set methods, Journal of Chemical Physics 211 (1) (2006) aided design.
179–197.
[31] B. Dasgupta, A. Gupta, E. Singla, A variational approach to path planning for
hyper-redundant manipulators, Robotics and Autonomous Systems 57 (2) Pankaj Wahi received his bachelor’s degree in Mech.
(2009) 194–201. Engg. from Guru Ghasidas University, Bilaspur, India in
[32] B. Krogh, C. Thorpe, Integrated path planning and dynamic steering control 2001 and his Ph.D. degree from the Indian Institute
for autonomous vehicles, in: IEEE International Conference on Robotics and of Science, Bangalore, India in 2006. He pursued post-
Automation, vol. 3, pp. 1664–1669, 1986. doctoral fellowships at TU Berlin during Feb 2005–May
[33] P. Tournassoud, A strategy for obstacle avoidance and its application to multi- 2006 and at Texas A&M University during Nov 2006–June
robot systems, in: IEEE International Conference on Robotics and Automation, 2007. Since Sept 2007 he is working as an assistant
vol. 3, pp. 1224–1229, 1986. professor at the Indian Institute of Technology, Kanpur,
[34] C. Warren, Global path planning using artificial potential fields, in: IEEE India. His teaching and research interests include robotics,
International Conference on Robotics and Automation, pp. 316–321, 1989. nonlinear dynamics, control systems, etc.
[35] J. Kim, P. Khosla, Real-time obstacle avoidance using harmonic potential
functions, IEEE Transactions on Robotics and Automation 8 (3) (1992)
338–349.
[36] E. Rimon, D. Koditschek, The construction of analytic diffeomorphisms for Bhaskar Dasgupta received his bachelor’s degree in
exact robot navigation on star worlds, in: IEEE International Conference on Mech. Engg. from Patna University, Patna, India (1991),
Robotics and Automation, pp. 21–26, 1989. his master’s degree in Mech. Engg. from the Indian
[37] S. Ge, Y. Cui, New potential functions for mobile robot path planning, IEEE Institute of Science, Bangalore, India (1993) and his Ph.D.
Transactions on Robotics and Automation 16 (5) (2000) 615–620. from the Indian Institute of Science, Bangalore, India
[38] H. Voruganti, B. Dasgupta, G. Hommel, Harmonic function based domain (1997). Since 1997, he is teaching at the Indian Institute
mapping method for general domains, WSEAS Transactions on Computers 5 of Technology, Kanpur, India in the Department of
(10) (2006) 2495–2502. Mechanical Engineering, where currently he is holding the
[39] M. Kalakrishnan, S. Chitta, E. Theodorou, P. Pastor, S. Schaal, Stomp: Stochastic position of Professor. His teaching and research interests
trajectory optimization for motion planning, in: 2011 IEEE International include robotics, CAD, optimization, applied mathematics
Conference on Robotics and Automation, ICRA, IEEE, 2011, pp. 4569–4574. and computational biology.