Professional Documents
Culture Documents
Optimum Path Planning For - Mechanical Manipulators
Optimum Path Planning For - Mechanical Manipulators
Mechanical Manipulators1
To assure a successful completion of an assigned task without interruption, such as
the collision with fixtures, the hand of a mechanical manipulator often travels along
a preplanned path. An advantage of requiring the path to be composed of straight-
line segments in Cartesian coordinates is to provide a capability for controlled
J.Y. S. Luh interaction with objects on a moving conveyor. This paper presents a method of
Professor. obtaining a time schedule of velocities and accelerations along the path that the
manipulator may adopt to obtain a minimum traveling time, under the constraints
C. S. Lin of composite Cartesian limit on linear and angular velocities and accelerations.
School of Electrical Engineering,
Because of the involvement of a linear performance index and a large number of
Purdue University, nonlinear inequality constraints, which are generated from physical limitations, the
West Lafayette, Ind. 47907 "method of approximate programming (MAP)" is applied. Depending on the
initial choice of a feasible solution, the iterated feasible solution, however, does not
converge to the optimum feasible point, but is often entrapped at some other point
of the boundary of the constraint set. To overcome the obstacle, MAP is modified
so that the feasible solution of each of the iterated linear programming problems is
shifted to the boundaries corresponding to the original, linear inequality con-
straints. To reduce the computing time, a "direct approximate programming
algorithm (DAPA)" is developed, implemented and shown to converge to op-
timum feasible solution for the path planning problem. Programs in FORTRAN
language have been written for both the modified MAP and DAPA, and are
illustrated by a numerical example for the purpose of comparison.
I Introduction
The advancement of technology makes it possible for a reduced. A preliminary investigation of this problem has been
computer to perform on-line control of mechanical reported earlier [6].
manipulators [1,2]. However, the path traveled by the hand of The real, physical constraints on the manipulator are the
a manipulator is still preplanned to assure a successful applied torques/forces at the joints. Because a serial link
completion of a mission, such as getting in and out of a manipulator is a highly nonlinear system and all its joints are
fixture, and avoiding the collision with obstacles. To facilitate coupled, it is very difficult to convert the bounds on
the controlled interaction with objects on a moving conveyor torques/forces into one on accelerations and velocities of each
[3,4,5], the preplanned, traveled path is composed of straight- joint [7,8]. In the references, bounds on joint velocities and
line segments in Cartesian coordinates connected by smooth accelerations are assigned based on experimental data for a
arcs. The manipulator rests at its initial location before it specific manipulator. It seems that this assignment does not
moves, and stops at its final location. The joints of the have an advantage of accuracy and efficiency over the
manipulator are driven by electical motors and controlled by assignment of the bounds on hand velocities and accelerations
servo systems which are designed for the worst case. In actual using experimental data. In addition, there are constraints
operation, the manipulator thus performs below its which are naturally specified in Cartesian coordinates, such as
capability. In addition, some conventional controls are interaction between the manipulator and objects on a moving
designed in such a way that the manipulator stops at the end conveyor, transportation of liquid in open containers, etc.
of each line segment of the path. Consequently, the time One may suggest that the Cartesian path could be trans-
interval of the entire execution of the manipulator is not formed into joint coordinates and then the constraints on
efficiently utilized. It is seen that the elimination of the stop at joint velocities and accelerations could be imposed since
the end of each line segment and the use of the maximum Jacobian transformations are well developed [2,3,4,7].
velocity under physics', constraints will allow the manipulator However, the transformations are valid on a point-to-point
to move more rapidly and hence the total execution time is basis. No transformations of functions of time between the
two coordinates are known. An attempt has been made to
approximate the Cartesian path of the hand in joint coor-
1
Supported by NSF Grants ENG 76-18567 and APR 77-14533. dinates by means of spline functions and least square error fit
Contributed by the Dynamics Systems and Control Division for publication [9], but the approximation error overshadows the merit of the
in the JOURNAL OF DYNAMIC SYSTEMS, MEASUREMENT, AND CONTROL.
minization of traveling time.
Manuscript received by the Dynamic Systems and Control Division, June 5,
1980. Based on the reasons indicated above, the velocities and
sin/3 COS7
n°(t)
sina sin/3 Px
(a) (b)
Fig. 1 (a) Position and orientation vectors of the hand - cosa sin/3 , P = Py (2)
(b) Eufer angles of orientation
cos/3 Pz
accelerations are constrained in Cartesian path of the hand in since (x 0 , y 0 , z 0 ) will coincide with (n, s, a) if: (1) first x0 is
this paper. The position and orientation errors on the arc of rotated a radians about z0 so that x 0 aligns with n° where n°
the actual path from the corner of two adjacent straight-line is a vector lying in the (x 0 , y 0 )-plane and being normal to a;
segments must be kept sufficiently small so that the actual (2) next z 0 is rotated /3 radians about n° to align with a; (3)
path does not significantly deviate from the preplanned path. finally n° is rotated 7 radians about a to align with n. For
Otherwise it may have a risk of running into obstacles. These convenience, let
requirements can be expressed by a set of linear and nonlinear 0' p'
inequalities. As a result, one may formulate the minimum H' = (3)
traveling time problem as a nonlinear programming problem. 0 0 0 1
Because of the involvement of a large number of the nonlinear
where
inequality constraints, a feasible approach is to apply the
"method of approximate programming (MAP)" [10,11,12] 0' = [ n ' s ' a ' ] = [ n ( / , ) s ( / , ) B ( f , ) ] (4)
which reformulates and solves a sequence of linear and
programming problems with all the nonlinearities being
iteratively linearized. Although MAP has been successfully P' = P('/) (5)
applied to a large class of nonlinear programming problems For / = 0,1,. . .,m, H' are given. They specify the corners of
[11,12], no proof of convergence has ever been published in the desired path traveled by the hand, as shown in Fig. 2.
literature. For the path planning problem, however, it is
observed that the iterated feasible solution, which depends on
the choice of initial feasible solution, is often entrapped at I l l P a t h Traveled by the H a n d
different points on the boundary of the constraint set. To The path traveled by the hand consists of a sequence of
overcome this difficulty, the "lines of indifference" are in- straight-line segments connected by smooth arcs. Let m be the
troduced along which the feasible solution from each iteration total number of segments. The (m — 1) intersection points of
may be moved away from the trap and toward the boundaries every two adjacent segments are denoted by hand matrices H'
corresponding to the original, linear inequality constraints. for / = 1,2, . . .,m — \. Accordingly H° and H m denote the
By extending the method of large-step-gradient [12], a initial and final points, respectively. During the execution of
"direct approximate programming algorithm (DAPA)" has segment /, the position and orientation of the hand can be
been developed and implemented. The technique differs from either in transition from segment / — 1, or on segment /, or in
MAP in that the restrictions on the distances between com- transition to segment / + 1 . Figure 2 depicts the situations. The
ponents of two consecutively iterated feasible solutions are changes of the position and orientation of the hand are related
not imposed in DAPA. The feasibility is, however, achieved to, respectively, the linear velocity v' and angular velocity u'
by adjusting the iterated solution along the direction of its of the hand with respect to base coordinates. In the middle
evolution. Thus each iteration produces a feasible solution. portion of segment /, v1 and a>' are assigned to be constants.
As a result, the average computing time for implementing The nonzero constant accelerations V and u>' are only applied
DAPA is approximately 60 percent of that for MAP. Because in transition from segment / to segment i + l . For the con-
of the geometrical property of the constraint set, DAPA is venience of discussion, let
shown to be convergent for the path planning problem.
v*=0, a)*=0forA:<l,Ar>OT, (6)
II Position and Orientation of the H a n d to indicate that the hand rests at its initial position and
The position and orientation of the hand are briefly orientation before it moves, and stops at its final position and
sketched in Fig. 1(a), and can be represented by a 4 x 4 matrix orientation. The condition for v* in (6) can also be expressed
[13]: by
r
"n(0 s(0 a ( / ) p(f) p°, whenever k< 1,
H(0 (1) p* = (7)
0 0 0 1 jp m , whenever k>m.
where, as indicated in Fig. 1(a), p is the position vector of the Because of the basic difference between the descriptions of
hand; n, s and a are the unit normal, unit slide, and unit changes in position and in orientation, it is convenient to
approach vectors of the hand, respectively. The last three discuss the translation and rotation separately. As shown in
orthonormal vectors specify the orientation of the hand. If Fig. 2, Tj is the amount of time required to move the hand
the orientation is defined in terms of Euler angles of rotation through segment /, and 2T,- is the amount of time required to
[14] with respect to the base coordinates (x 0 , y 0 , z 0 ), then [2], transit from segment / to segment j + 1. Thus, if the zero-
Journal of Dynamic Systems, Measurement, and Control JUNE 1981, Vol. 102/143
Segment i + t
Segment
Segment m
1 1 £ - £(t )
non-zero constant constant v_ , o>
.0 .0 ,, J are applled
are applled
L1*L
0 I I I -0,1,
reference time is set at the initial point (i.e. at t = 0, the hand where ( )' = transpose of ( ). The angular velocity of the
starts to leave position p°), the velocity and acceleration are hand, to' with respect to the hand coordinates, is assigned to
chosen as be constant in the middle portion of segment i. Thus
i-l
+ Er*-T„ (8) + En
Li*!*-* (12)
*=1 k=\
j for / = 1,2, . . ,,m. For / = 0 and m, second half of (7)
VJ=(yJ+* -1/J)/2Tj, for T0 + E Tk-Tj<t<T0 applies, i.e.
k=\
j (o*=0, or^=0forA-<l,A:>w. (13)
+ Ln + rj (9) During the transition phase between /th and f+ 1st line
k=\ segments, the angular velocity of the hand must change from
for (=1,2, . . .,m, and 7 = 0,1,2, . . .,m. During the entire o)' to &)'+1 in 2T, seconds. Thus the required angular ac-
time interval of travel, either one of the two equations is celeration with respect to the hand coordinates is
effective, but not both. Note the vJ will assure the hand to
j
reach both its required velocity and position after it exits +l J T
from the transition phase. wJ=(oii - to )/2TJ, for T 0 + E k-Tj<t<TQ
1 *=1
The orientation changes from fi'" to fl' as the joints of the
manipulator move through segment ;'. To express the change j
of orientation linearly in terms of a rotational variable, a unit (14)
vector p' with respect to the coordinates [n s a] is introduced k=\
(Fig. 3) such that the change from fl'-1 to 0' can be achieved fory = 0,1, . . .,m. Again, either (12) or (14), but not both, is
by rotating n' (or s' or a') an angle of 6, radians about p'. effective during the entire traveling time interval of the hand.
Thus p' is fixed while the hand coordinates rotate. In terms of
[n s a], 0, and />, can be computed from [15]: IV Problem of Optimum Path Planning Subject to
, / 1
0 / =cos- {[(n )'n''- +(s )'s''-/ 1 Inequality Constraints
1 Because of physical limitations, the magnitude of velocity
+ (a')'a'- -l]/2j (10) of the hand, v (/), has an upper bound Kv, and the magnitude
and of its acceleration, v(t), is bounded by Ka. That is, for all?,
0<llv(Oll=£A'„ (15)
1 1
(a')'s'- - (s')'a'- §<\\y{t)\<Ka (16)
1
(n')'a'- - (a')'n''- 1
(11)
Likewise the angular velocity and angular acceleration of the
Isindi hand are bounded by Ka and Ka, respectively:
(s ; )' n'"' - (n')'s'- 1 0<=llctf(/)ll<tf u (17)
Journal of Dynamic Systems, Measurement, and Control JUNE 1981, Vol. 102/145
/ k
y_ . x. = mm Crf/K, t f + ,/K)
(T +
i ' • T!> /
f
k
;
<Ti i' «/f^Z • J
* / neignboring j
yP/ boundary 1
/y/ po i n t ,* 2
k + 2,
p., \ \
(
\, V Ti'' sf <V *i>
\ 1 p.
1
Fig. 4 Geometrical interpretation of iterations for MAP
boundary of A, as depicted in Fig. 5. Let r/ be the unit inward secutively iterated solutions is almost tangent to the
gradient vector of, and Pt the hyperplane tangent to, the boundary. If the curvature of the boundary in that neigh-
boundary of A at t*. Then for every f ePtl. borhood is small, then the contraction of the iterated solution
ET(t")=ET(t*) (52) may be repeated many times to satisfy the feasibility test.
Consequently the distance between two feasible solutions
According to the discussions in Section V, t* may lie only on from two consecutive iterations is small. As a result, the
the darkened section of the curved boundary (Fig. 5). Thus Pt computational process may terminate with a relatively large
is a supporting hyperplane, i.e. A is at one side of Pt only, value for the performance index ET. To avoid this problem,
and A n P ( = t*. Therefore (51) becomes the algorithm is modified to include the use of the line of
ET(t°)>ET(t')> . . . >ET(t*)>ET(t* + 1 )^ET(t*) (53) indifference which was introduced in Section VI. This
modification requires a change in Step 5 only as follows:
It is seen, then, the distance from Pt to t* decreases
monotonically as k increases. Since, by (53), t* ^ t * + l and Step 5' Compute the new value of ET of (21) and test
(t*+i _ (*) cannot be normal to r/. Then the projection of whether the improvement on the value of ET is
(t*+i _ t*) onto i/is significant. If yes, set Tf+i = Th T§ + 1 = Tx/K,
0 > ( t * + l - t * ) ' 17 ' m = Tm/K, and *jjt+i mm(Tj/K, Tj+l/K) for
(54)
;=1,2, . . .,m, and y'=l,2, . . . , / w - l . Then set
where ( ) ' = transpose of ( ). Since (t* +l - t*) = (t* + 1 k = k +1 and return to Step 3. If not, continue.
- t*) - (t* - t*), then (54) implies
(t*-t*)')/>(t A r + 1 - t * ) ' r, (55) X An Illustrative Example
+I
Butt* eA, t* = A PIP,,. Thus Program in FORTRAN language have been writtten for
(t *+i _ t * ) ' , > o
solving the minimum traveling time problem of path planning
(56)
+1
by all three algorithms discussed in preceeding sections. The
and the equality holds only when t* t* If the same programs are applied to the following numerical example for
reason is applied to all the iterations, then one obtains. comparison. To implement the programs, the constant K in
the path error constraints, (19) and (20), must be reasonably
( t ° - t * ) ' » , > ( t l -t*)'ti> . . . >(tk~t*)'v assigned. From Fig. 2, it is seen that rj+] + r,- < Tt which can
> . . . >(tr-t*)'i,>0 (57) be satisfied by the choice of T, < r , / 2 and T,- < TJ+l/2 for i
for some integer r > k+l, and the equality in (57) holds only = 1,2, . . .,/nandy = 0,1, . . .,m — 1. By a comparison with
when tr = t*. Therefore the iterated solutions in DAPA (19) and (20), one conlcudes that for practical purpose, K >
converge for the path planning problem. 2. For this example, K = 4 is chosen. This value must be
increased if the simulation of the movement of the mechanical
IX D A P A with Reset on r's manipulator indicates an unsatisfactory path error.
DAPA has been written in FORTRAN for the path Consider a traveled path that consists of five straight-line
planning problem, and numerical examples have been segments, m = 5. This problem consists of eleven variables
executed with different initial feasible solutions. It is observed and forty-two inequality constraints. The path is specified by
that the iterated feasible solutions drift towards the boundary six hand matices H', / = 0,1, . . .,5. For simplicity, the
of the constraint set so that the direction between two con- orientation submatrices 0' in H' have already been converted
Is)
i = 0 1 3 4 5 unit
P\ = 0 30 30 40 40 -15 cm
P\ = -40 -40 -20 5 65 30 cm
P\ = 30 30 20 4 4 15 cm
P\ = - 1 0 0 0 0.5547 cm
P'y = - 0 1 1 1 0.8321 cm
P\ = - 0 0 0 0 0 cm
= - 90 30 60 0 54.038 degrees
o,
The given initial feasible solution and the given bounds on the optimum ET is 3.1 percent higher than that by the modified
movement of solutions for each iteration for MAP are listed MAP.
together with the iterated solutions in Table 1, with the
distance bound 5* halved whenever the &th iterated solution is XI Conclusion
infeasible. It has been shown that by introducing the "lines of in-
For DAPA schemes, the same input data are used except difference," MAP may be modified to solve the optimum
that X = 2/3 and no bounds on the movement of solutions for path planning problem. In this problem, the physical con-
each iteration are needed. The criterion for terminating the straints on velocities, accelerations, and the error constraints
computations in all the schemes is that whenever the im- on the traveling path form a nonconvex constraint set. It has
provement on the performance index ET over the preceding also been shown, however, that the optimum feasible solution
iteration is no more than 1 percent of the difference between is restricted on certain sections of the boundaries of the set.
the values of ET of the very first two iterations that produce By taking advantage of this restriction, a direct approximate
feasible solutions. The computed results by using DAPA with programming algorithm (DAPA) has been developed and
no reset and with reset on r's are listed in, respectively, Tables shown to be convergent. Because every iteration results in a
2 and 3. feasible solution, DAPA requires less computing time on a
Table 4 shows a comparison along the three schemes based digital computer than the modified MAP does.
on the same numerical example. As far as this example is
concerned, the modified MAP yields a smallest value of
optimum ET but requires a longer time on CDC 6500 to References
compute the results. However, DAPA with the values of r's 1 Luh, J. Y. S., Walker, M. W., and Paul, R. P. C , "On-Line Corn-
* i 11 12
\ 0 3 4 5 6 7 8 9 10
8.0 8.n 8.(1 8.0 8.0 4.0 2.0 1.0 0.5 0.5 0.25 U.25
*1 2 1 I 1 1 4.0 2.0 1.0 i.n 1.0 0.5 0.5
(sec) 3 1 I 1 1 8.0 8.n 8.0 8.0 8.0
a.o
T.( + ) 5 t t t t t • t t t t
1.0 1.0 1.0 1.0 1.0 0.5 0.25 0.125 UJ1625 0.0625 0.03125 0.03125
1 1 I 1 1 0.5 0.25 0-125 0.125 0.125 (I.H625 0.0625
(sec) 2 [ I 1 1 1.0 1.0 1.0 1.0 1.0 1.0 1.0
for
..<•)
3 1 I ( I I I I 1 1 I
5 t V t
* t
* t t
* •
3.0 8.0 8.0 8.0 8.1) 4.0 2.0 1.0 1.0 1.0 0.5 0.5
*1
1 8.0 8.0
(II
2 B.n 8.0 8.0
(sec) 1 1 8.0 8.0
for
3
i 1 1 I 1 1 1 I
4 1 1 I
T.(-) 5
0
1
t
1.0
t
1.0
1
V
1.0 1.0
*
1.0
t
I
0.5
1
t
0.25
1
*
IT. 125 0.0625 U. 1)625
t t
«5 2
I t
I
1
1
I
I
0.5
1.0
0.25 0.125
1.0
0.125
1.0
u.125
1.0
0.0625
1.0
0.0625
1.0
(sec) I 1.0
for I I 1 1 1 1 I I I
4 I I 1 1 1 1 I I I
5 t t • t t V t t t
1 8.0 5.H41 4.352 3.880 3.631 4.696 4.696 4.305 3.805 3.562 3.619 3.557 3.557
2 1 5.041 4.352 3.880 3.631 2.683 2.683 2.986 3.373 3.562 3.506 3.557 3.557
(sec) 3 1 5.011 4.210 3. .77 i. 124 2.886 2.886 2.886 2.886 2.886 2.331 2.828
1 5.031 4.306 3.780 3.463 3.339 3.339 3.339 5.339 3.339 3.322 3.322 3.322
S * 5.031 4.306 3.780 3.463 3.339 3.339 3.339 3.339 3.339 3.322 3.322 3.322
1.0 0.745*1.260 0.76?-1.0B8 0.807-0.970 0.835*0.908 0.560 0.560 0.658 0.783 0.845-0.890 0.828 0.859-0.889 0.858
1 1 1.260 1.088 0.97U 0.908 0.671 0.671 0.747 0.843 0.890 0.R76 0-«89 0.889
2 1 1.2*46*1.253 1.053 0.823*0.894 0-781 0.671 0.671 U.722 0.722 U.722 0.708 0.708 0.707
*i 0.707
3 1 1.253 1.053 0.894 0.781 0.722 0.722 0.722 0.722 0.722 0.708 U.708
Uec) 4 1 1.258 1.076 0.945 0.866 O.R35 0.835 0.835 0.835 U.335 0.831 U.831 0.830
0.540-1.076 0.550*0.945 0.556*0.866 0.552 0.552 0.552 0.552 0.552*0.835 0.544 0.544*0.331 U.543
5 • 0.597*1.258
ET
Q)
42 26.495 22.832 20.254 18.703
" " ' " 18.085
" 17.991 17.985
SMutic
of Gwen
n i t i a l Feasible-Reset Feasit>Le*Reset feasible-Reset „..,„.-.« FeasioLe*Reset Feasible-Reset
Optimum
Feasible
i I 0, otherwise.
V-'M k
^-[Tj - T":, otherwise.
X 0 1 2 3 4 5 6 7 8 9
Tk 1 8.0 5.041 4.352 3.880-4.142 3.757-3.971 3.671-3.911 3.644+3.-858 3.623+3.849 3.619-3.843 3.617-3.839
2 1 5.041 4.352 3.880+4.142 3.757+3.971 3.671+3.911 3.644+3.858 3.623+3.849 3.619+3.843 3.617+3.839
(sec) 1 1 5.011 4.210 3.577*3.928 3.367-3.678 3.192+3.582 3.129+3.493 3.074+3.476 3.064*3.465 3.058+3.458
4 1 5.031 4.306 3.780+4.072 3.628+3.874 3.512+3.803 3-474+3.738 3.442-3.726 3.436*3.719 3.433+5.714
5 t 5.031 4.306 3.780-4.072 3.628+3.874 3.512+3.803 3.474+3.738 3-442+3.726 3.436-3.719 3.433*3.714
k
0 1.0 0.745 0.A97 0.765+0.727 0.792+0.756 0.813*0.767 0.819-0.778 0.825*0.779 0.826*0.781 0.827-0.781
1 1 1.260 1.088 0.970+1.036 0.939+0.993 0.918+0.978 0.911*0.965 0.906-0.962 0.905*0.961 0.904+0.960
(sec) 2 1 1.253 1.010 0.894+0.959 0.739-0.861 0.798+0.849 0.641+0.808 0.609*0.800 0.603+0.795 0.599+0.791
3 1 1.253 1.053 0.894+0.982 0.842+0.920 0.798+0.896 0.782+0.873 0.768+0.R69 0.766+0.866 0.764-0.865
4 1 1.258 1.076 0.945+1.018 0.907+0.969 0.878+0.951 0.869*0.934 0.860-0.932 0.859+0.930 0.858+0.928
5 t 0.59? 0.444 0.473+0.457 0.493*0.473 0.510+0.480 0.516*0.487 0-571+11.488 0.522+0.489 0.522+0.490
0 1 2 3 4 5 6 7
\
Tk 1 8.0 5.041 4.352 3.880 3.631 4.696-4.105 3.517-3.843 3.545-3.784
1 2 5.041 4.352 3.880 3.631 2.683-3.209 3.517-3.346 3.545-3.385
(sec) 3 5.011 4.210 3.577 3.124 2.886-3.018 2.854-2.945 2.838-2.924
4 5.031 4.306 3.780 3.463 3.339-3.408 3.329-3.373 3.324-3.363
5 5.031 4.306 3.780 3.463 3.339-3.408 3.329-3.373 3.324-3.363
t
0 1.0 0.745-1.260 0.767-1.088 0.807-0.970 0.835-0.908 0.560-0.753-1.026 0.878-0.960-0.961 0.855-0.940
1 1.260 1.088 0.970 0.908 0.671-0.802 0.879-0.837 0.886-0.846
2 1.253 1.010-1.053 0.823-0.894 0.781 0.671-0.732-0.755 0.465-0.626-0.736 0.710-0.731
Z 1.253 1.053 0.894 0.781 0.722-0.755 0.713-0.736 0.710-0.731
4 1.258 1.076 0.945 0.866 U.835-0.852 0.832-0.843 0.831-0.841
5 Y 0.597*1.258 0.540-1.076 0.550-0.945 0.556-0.866 0.552-0.726-0.852 0.549-0.717-0.843 0.547-0.785
Table 4 Comparison of algorithms based on an example 12 Zoutendijk, G., "Nonlinear Programming: A Numerical Survey," J.
SIAMon Control, Vol. 4, No. 1, 1966, pp. 194-210.
13 Markiewicz, B. R., "Analysis of the Computed Torque Drive Method
Algorithm Number o f Optimum Computing Time on
Iterations Value o f ET CDC 6500 w i t h FORTRAh and Comparison with Conventional Position Servo for Computer-Controlled
Manipulator," Technical Memorandum 33-601, Jet Propulsion Laboratory,
Mar. 1973.
M o d i f i e d MAP 12 17.985 s e c . 9.925 s e c .
14 Goldstein, H., Classical Mechanics, Addison-Wesley, 1959, pp. 14-22.
15 Paul, R., "The Mathematics of Computer Controlled Manipulators,"
DAPA U i t h o u t Proceedings of the 1977 Joint Automatic Control Conference, 77CH-1220-
Reset on T ' S 9 19.835 s e c . 6.554 sec.
3CS, Vol. l , p p . 124-131.
16 Cooper, L., and Steinberg, D., Introduction to Methods of Optimization,
DAPA With W.B.Saunders Co., 1970, pp. 311-318.
Reset on t ' s 7 18.543 s e c . 5.114 s e c .
APPENDIX
putational Scheme for Mechanical Manipulators," ASME JOURNAL OF
DYNAMIC SYSTEMS, MEASOREMENT, AND CONTROL, Vol. 102, No. 2, June 1980, Inequality Constraints for Path Planning Problem
pp.69-76.
2 Luh, J. Y. S., Walker, M. W., and Paul, R. P. C , "Resolved- The (8/M+2) inequality constraints for the path planning
Acceleration Control of Mechanical Manipulators," IEEE Transactions on problem may be divided into four groups:
Automatic Control, Vol. 25, No. 3, June 1980, pp. 468-474. (a) 0 < a,' < T,. This group consists of (25) and (35) which
3 Taylor, R. H., "Planning and Execution of Straight-Line Manipulator
Trajectories," Research Report RC 6657 (# 28633), IBM Thomas J. Watson
specifies the positive bounds for Tt.
Research Center, July 1977. (b) 0 < b,' T; < T,, 0 < b,'. This group consists of (19)
4 Paul, R., "Manipulator Cartesian Path Control," IEEE Transactions on and (20) which has a straight line in the (T,, T,) plane as a
Systems, Man, and Cybernetics, Vol. SMC-9, No. 11, Nov. 1979, pp. 702-711. boundary.
5 Snyder, W. W., "Microcomputer Based Path Control," Robotics Age,
Vol. 2, No. 1, Spring 1980, pp. 6-15.
(c) 0 < d< TjT,. This group consists of (31), (32), (39), and
6 Luh, J. Y. S., Walker, M. W., "Minimum-time Along the Path for a (40). Since 0 < T, and 0 < Th the boundary d = T,r, repre-
Mechanical Arm," Proceedings of the 1977 IEEE Conference on Decision and sents a hyperbola in the first quadrant whose asymptotes are
Control, Vol. 1, 77CH1269-OCS, Dec. 7-9, 1977, New Orleans, pp. 755-759. T,-and T,-axis. The set ((r l ,7 , / ) 1777} > d] is the collection of
7 Paul, R., "Modeling Trajectory Calculations and Serving of a Computer all the elements on the hyperbola and the inside the cup.
Controlled A r m , " Memo AIM-177, Stanford Artificial Intelligence
Laboratory, Stanford University, Nov. 1972. (d)0> Va7? + bTf+i - cTiTi+] < T,TiTi+i with 0 < c2
8 Finkel, R. A., "Constructing and Debugging Manipulator Programs," < 4ab. This group consists of (30) and (38). For convenience,
Memo AIM-284, ibid, Aug. 1976.
9 Lin, C. S., and Luh, J. Y. S., "Control and Computation for Mechanical
the analysis is divided into three parts:
Manipulators," Technical Report TR EE 80-25, School of Electrical (i) Constraint set at every fixed level of Ti+l, i.e. Ti+l = N
Engineering, Purdue University, July 1980. >0.
10 Griffith, R. E., and Stewart, R. A., "Nonliner Programming Technique
for the Optimization of Continuous Processing Systems," Management
Science, Vol. 7,1961, pp. 379-392.
^aTf+bW-cNTi < /W,- 7, (A.l)
11 Jacoby, S. L. S., Kowalik, J. S., Pizzo, J. T „ Iterative Methods for
Nonlinear Optimization Problems, Prentice-Hall, 1972, pp. 201-203. with c 2 < Aab. The equality of (A. 1) can be reduced to