Abstract
This paper proposes a piecewise acceleration-optimal and smooth-jerk trajectory planning method of robot manipulator. The optimal objective function is given by the weighted sum of two terms having opposite effects: the maximal acceleration and the minimal jerk. Some computing techniques are proposed to determine the optimal solution. These techniques take both the time intervals between two interpolation points and the control points of B-spline function as optimal variables, redefine the kinematic constraints as the constraints of optimal variables, and reformulate the objective function in matrix form. The feasibility of the optimal method is illustrated by simulation and experimental results with pan mechanism for cooking robot.
Introduction
Optimal trajectory planning is an active research field in robot manipulator. Most researches about the optimal trajectory planning aim at minimizing the execution time [1, 2], energy consumed [3, 4], and jerk [5, 6], under different conditions of several geometric, kinematic and dynamic constraints. Robot manipulators with high acceleration are urgently demanded in advanced manufacture fields, such as packaging and assembly of micro-electronic manufactures [7]. High acceleration means that robot manipulator completes pick-and-place operation in the shortest possible cycle time. On the other hand, high acceleration also will generate non-smooth jerk trajectories. High acceleration and non-smooth jerk is one pair of sharp contradiction. In addition, different segments of the path in some engineering applications will have different purposes, for example, shaping machine requires a smooth trajectory at the stage of slow cutting stroke, while a high velocity at the stage of quick return. In order to increase the efficiency of robot manipulator, the path should be divided into different segments based on the task of robot manipulator. Little research has been conducted to a piecewise acceleration-optimal and smooth jerk trajectory planning method.
The trajectory planning not only deals with the determination of the path, but also provides the velocity/acceleration profiles (or the time history of the robot's joints) [8]. Another less explored aspect of optimal trajectory planning is the determination of the velocity/acceleration profiles for the predefined path. Under such condition of the unchangeable path, the trajectory planner can only determine the velocity/acceleration values in the predefined path in order to improve the performance of robot manipulator. Such an aspect of optimal trajectory planning can be much more worthwhile in many robotic applications. For example, in machining applications, the velocity of the workpiece in the predefined path may have influences on the processing quality of the components.
Several researchers have investigated the optimal trajectory planning methods in recent years. Boryga etc. [9] put forward an optimal trajectory planning mode with higher-degree polynomials. The linear acceleration profiles of end-effectors were planned through the polynomials of degree 9, 7 and 5, and the minimal jerk was taken as an objective function. Gallina etc. [10] proposed a new technique for the optimal trajectory planning of a mobile robot. The trajectory was represented by a parametric curve consisting in sums of harmonics. Gasparetto etc. [11] proposed an optimal trajectory planning method, where the objective function containing a term proportional to the integral of the squared jerk and a second term proportional to the total execution time is considered. The proposed method did not consider the path in segments based on the task of robot manipulator. In order to generate a smooth jerk, Olabi etc. [12] presented a federate optimal trajectory planning method based on a parametric interpolation of the geometry in the operational space. Van Dijk etc. [13] developed a method for determining time-optimal trajectories for industrial manipulators along a predefined path, which accounts for actuator velocity, acceleration and jerk limits. Constantinescu etc. [14] discussed a method for determining smooth, time-optimal and path-constrained trajectory. The desired smoothness of the trajectory is imposed through limits on the actuator jerks. The time-optimal control objective is cast as an optimization problem by using cubic splines. Verscheure etc. [15] focused on time-optimal and time-energy optimal trajectory planning. Lou etc. [16] investigated and implemented three optimal trajectory planning methods based on dynamics limits. Saravanan etc. [17] applied a new general methodology to the optimal trajectory planning of industrial robot manipulator, which took the control points of the B-spline as the optimal variables and a multi-criterion cost function as the objective function. However, they ignored the importance of the time interval between two interpolation points. Vaz etc. [18] formulated robot trajectory planning as a semi-infinite programming problem and took the control points of B-spline as the optimal variables.
With a general literature survey, it come out that although more emphases have been laid on the multi-objective function in the whole path, the piecewise optimal method having multi-objective function is rarely applied in these researches. Another less explored but important objective function is the acceleration and jerk values in the predefined path. In addition, some of them only regard the control points of B-spline function as the optimal variables. Accordingly, the main goal of this paper is to propose a piecewise acceleration-optimal and smooth-jerk trajectory planning method, which takes both the time interval between two interpolation points and the control points of B-spline function as the optimal variables.
The remainder of the paper is organized in the following manner. In Section 2, the mathematical formulation of the optimal trajectory planning problem is developed. In Section 3, solution techniques for the formulated optimization problem are proposed to determine the optimal solution. Section 4 includes an illustrative example that demonstrates the utility of the optimal problem formulation and the feasible of applying these solution techniques for determining solutions. A few of cuisine experiments are carried out to verify the effectiveness of the optimal results. Some concluding remarks are included in the final section.
Optimal problem formulation
High acceleration and non-smooth is one pair of sharp contradiction in some engineering applications [7]. For purpose of solving the contradiction, trajectory will be divided into the “acceleration/deceleration” and “smooth” segments based on the task of robot manipulator. During the “acceleration/deceleration” segment, the maximum acceleration will be considered as the objective function. During the “smooth” segment, the expression of the smooth jerk will be added to the objective function. In the end, the objective function is given by the sum of two terms having opposite effects: the first term is proportional to the reciprocal of the integral of the squared acceleration during the “acceleration/deceleration” segment; the second term is proportional to the integral of the squared jerk during the “smooth” segment. Reducing the first term will lead to non-smooth jerk trajectory, while reducing the second term will lead to a faster trajectory. The trade-off between the two terms can be performed by suitably adjusting the weights of the two terms: a larger weight related to the jerk term will lead to smoother, while a larger weight related to the acceleration term will lead to faster trajectory.
On the basis of the above analysis, the piecewise acceleration-optimal and smooth trajectory planning problem can be formulated as follows:
Subject to the following constraints:
where U is the wei ght of the first term; s(1) (t), s(2) (t) are the velocity and acceleration profiles of the trajectory;
Variables determination and constraints redefinition
The problem of computing a trajectory through multipoint can be solved by means of polynomial functions, orthogonal and trigonometric polynomials function, B-spline functions, and son on. Although B-spline function requires more information such as degree of the curve and a knot vector, and in general involve a more complex theory than other functions, it possess many advantages that offset this shortcoming. Firstly, some continuous derivatives and integral operators can be computed with relative ease from its spline coefficients. Further B-spline function can provide more control flexibility than other interpolation functions. In order to compute continuous derivatives up to four orders in this paper, the trajectories will be represented by B-spline function. For top-notch optimal performance, both the control points of B-spline function and the time interval between two interpolation points are chosen as the optimal variables. Thus, the optimal variables can be defined as follows:
where h i are time intervals between any adjacent two interpolation points; p j are the control points of B-spline function; m and n are the numbers of the interpolation points and control points, respectively.
where p j is the control point; Bp−1 j (t) are the basis function of degree p − 1.
In order to implement easily the optimal formulation in computer, constraints inequalities (2) should be redefined as constraints of optimal variables of B-spline function. Given the velocity and acceleration bound vectors QOVmax and QOAmax, the first and second formulations in inequalities (2) can be expressed as follows:
where
Given the velocity and acceleration bound vectors QJVmax and QJAmax of the joints, we also can formulate the following constraint inequalities about the third and forth formulations in inequalities (2).
where
where J is the Jacobian matrix of robot manipulator.
The fifth and sixth formulations in constraints inequalities (2) describe the periodic conditions on the velocity and acceleration. Given the interpolation points q i (i = 1,···,m) and the control point's vector P = [p0, p1, ···, pm−1, p m ] T , the last three formulations in constraints inequalities (2) can be obtained as follows:
Since any time intervals between a pair of consecutive via-points can not be run at infinite acceleration and jerk, another type of constraint about any time interval h i can be expressed as follows:
For the convenience of the programming, the objective function in Eq. (1) defined in terms of B-spline can be formulated as follows:
being
where
and tr(P T C T ACP);tr(P T D T BDP) are the trace of the matrix P T C T ACP and P T D T BDP, respectively.
The optimal trajectory planning problem of a robot manipulator is a constrained nonlinear optimization problem. Some constraint equations have no explicitly analytical expressions with respect to the optimal variables. Furthermore, there may many local minima in the feasible search region. Some conventional optimization algorithms, e.g., the sequential quadratic programming (SQP) method, are known to converge to local minima. Compared with SQP, genetic algorithms (GA) can avoid the problems associated with local optima [20]. However, it should be known that the ability of local searching in GA is weak so that it would lead to convergence slow. It would be a good choice to design a hybrid GA by combining standard GA with other robust and fast algorithms. For strong ability of complex function approximation and remarkable speed in simulation, ANN will be chosen to be combined with standard GA to generate a hybrid GA-ANN algorithm, where ANN is utilized to represent expressions of the solutions, and the objective function is solved using GA. The combination of ANN and GA has been widely used in the field of materials science [21], chemical engineering [22, 23], robot manipulators [24], and heat transfer [25, 26]. In this section, three conventional and evolutionary optimization methods are utilized to solve the minimization problem formulated in Eq. (9), which is subjected some kinematic constraints in Eqs. (5), (6), (7) and (8).
Conventional optimal technique
The conventional iterative optimal techniques, such as sequential quadratic programming (SQP) have been widely applied to solve nonlinearly constrained optimization problems. As a form of the gradient-based optimal technique, SQP performs well in local search problems. But it can not assure that the calculated solution values are the global optimal value because of its relatively weak global search ability. Moreover, the optimal performance of SQP greatly depends on the choice of the initialization values. Improper initial values will lead to local optima or even infeasible solutions. The fmincon function in MATLAB'S OPTIMIZATION TOOLBOX, which uses the SQP method to perform nonlinear constrained optimization and support linear and nonlinear constraints, will be utilized to generate the optimal value of the optimal trajectory planning problem in this paper.
Genetic algorithm (GA)
Genetic algorithms, as a powerful and broadly applicable search method, follow the Darwinian evolutionary principle of “survival-of-the- fittest,” where strong traits are retained in the population and weak traits are eliminated. Thus, genetic algorithms can avoid the problems associated with local optima. There are three operations in genetic algorithms, such as selection, crossover and mutation. The parameters of genetic algorithms utilized in this paper are shown in Tab.1.
Parameters of genetic algorithm utilized in this paper
Parameters of genetic algorithm utilized in this paper
ANN model in the hybrid GA-ANN algorithm is designed and implemented using software developed in MATLAB 6.5 package. The back-propagation algorithm is used to minimize the instantaneous error in a particular training pattern. Additionally, the input parameters of the model are the optimal variables in this paper, and the output of the ANN is the optimal objective function. The ideal ANN model is considered to be obtained with single hidden layer and 15 neurons in it. The tansig and logsig function are employed as the activation functions between input-hidden layer and hidden-output layer, respectively.
An illustrative example
One example is provided to demonstrate the effectiveness of the piecewise acceleration-optimal and smooth trajectory planning method. Chinese culinary arts have a long history and are famous all over the world. Chinese dishes appeal to the senses through their color, aroma, taste, and appearance. However, its cooking process is extraordinarily complicated [27, 28]. For purpose of replacing the chef's cooking process motions by using the intelligent cooking equipment, we proposed a cooking robot including a pan mechanism, as shown in Fig. 1 [29, 30]. It consists of a moving platform and a 2-DOF pan mechanism. The 2-DOF pan mechanism, whose kinematics model is shown in Fig. 1(b), is fixed to the moving platform. The moving platform can move using a group of ball screws and a pair of linear guides. The 2-DOF pan mechanism is composed of nine bars (1) ∼ (8) and (9). The motion of the pan can be obtained through the two input angles θ1 and θ2, respectively. A fixed global reference frame G: OXY is located at the point A2.
The most significant featured motion of the cooking process in Chinese cuisine is the motion of turning over the cuisine being cooked [30]. It can cause cuisines to continuously change position relative to pan, such as “ascent-descent”. Nevertheless, these position changes need to be accomplished through the variable acceleration motion of pan mechanism, which will be determined and optimized by the optimal trajectory planning method. Furthermore, the reduction of vibration, stemmed from the variable acceleration motion, will also be considered in the optimal trajectory planning method. Hence, it is of utmost importance to determine the acceleration and generate a smooth trajectory through the optimal trajectory planning method.

Cooking robot and pan mechanism: (a) cooking robot; (b) kinematics model of pan mechanism
Values of the interpolation points and kinematics constraints
To facilitate the analysis, the dimensions of pan mechanism are given as follows: A 1 B 1 =0.11m, A 2 B 2 =0.019m, A 3 B 3 =0.08m, B 1 C 1 =0.14m, B 2 C 2 =0.096m, B 3 C 3 =0.23m, C 2 B 1 =0.08m, C 3 C 1 =0.07m. As shown in Fig. 2(a), its prototype was developed, and its path is shown in Fig. 2(b). The “ascent” segment is defined as the curve from A to B, while the “descent” segment is the curve from B to A. The values of the interpolation points and kinematic constraints are listed in Table 2.

Prototype and path: (a) prototype of pan mechanism; (b) predefined path of pan mechanism
The optimal result histories of the fmincon function, GA method and hybrid GA-ANN algorithm are shown in Fig. 3. The chief findings from Fig. 3 are as follows: (1) there are the same convergence pattern in both GA method and hybrid GA-ANN algorithm, i.e., both are in lower region. And the convergence velocity of hybrid GA-ANN is higher than other two methods. (2) In terms of objective function value, both GA method and hybrid GA-ANN algorithm provide the lowest optimal values in comparison with the fmincon function. Due to an unsuitable initial value, the fmincon function may converge to local minima. (3) Considerable reduction in computational time is achieved for the hybrid GA-ANN algorithm in comparison with other two methods. From the above analysis results, a conclusion can be drawn that hybrid GA-ANN algorithm is a superior method in terms of computational effort and solution accuracy.
Then, the optimal results of acceleration using the hybrid GA-ANN algorithm are shown in Fig. 4. The labels “*” represent the interpolation points. During the “ascent” segment, the acceleration after optimization is higher than the initial acceleration, which is helpful to turn over the cuisine being cooked. During the “descent” segment, the total time is shortened through optimization, which will prevent the cuisine being cooked from adhering to the pan. We can draw a conclusion from Fig. 4 that during the “ascent” segment, the acceleration after optimization is more favorable for the motion of turning over the cuisine being cooked, and during the “descent” segment, the less time after optimization will prevent the cuisine being cooked from adhering to the pan.
Jerk values with the optimal objective function including jerk term and excluding jerk term are shown in Fig. 5. We can intuitively observe from Fig. 5 that the jerk values with the optimal objective function including jerk term are less and smoother than those with the optimal objective function excluding jerk term. Smoother jerk values will reduce the vibration of the cooking robot.

Optimal result histories using three optimization methods

Optimal results of acceleration

Jerk values with the optimal objective function including jerk term and excluding jerk term
In the end, we can draw a conclusion that during the “ascent” segment, the acceleration after optimization is more favorable for the motion of turning over the cuisine being cooked, and during the “descent” segment, the less time after optimization will prevent the cuisine being cooked from adhering to the pan.
In order to testify the effectiveness of the optimal results, a few cuisine experiments, as shown in Fig. 6 have been conducted with fried green beans. Cuisines in Fig. 6(b) are turned over higher than those in Fig. 6(a). Thus, the optimal results will improve the quality of the cooking.

Dish-cooking experiments with fried green beans: (a) the non-optimal velocity; (b) the optimal velocity
As shown in Fig. 7, a test system for measuring the acceleration of pan mechanism is composed of acceleration sensor, charge amplifier, signal adjust circuit and data acquisition card, and so on. From Fig. 7(a), it is observed that the acceleration sensor is installed at the center of pan. Fig. 8 shows the acceleration signal of pan mechanism obtained by the test system. Although there existing some measuring errors caused by installation clearance, the following common characteristics between the theoretical values in Fig. 4 and the experimental values in Fig. 8 can be obtained: (1) there existing a maximal acceleration during the “ascent” segment, which results in the motion of turning over the cuisine being cooked. (2) The acceleration values during the “ascent” segment after optimization are greater than the initial acceleration.

Test system of pan mechanism: (a) schematic diagram of test system; (b) experimental system

Acceleration signal obtained by the test system
The comparison results between the theoretical values and experimental values are shown in Tab.3. Both the theoretical values and experimental values after optimization are superior to those initial values. And, the optimization efficiency is improved by approximately 40%. Hence, we can draw a conclusion from the comparison results that these optimization results will provide a powerful support to the motion of turning over the cuisine being cooked, however, the error rates between the theoretical values and experimental values are still very great.
Comparison results between the theoretical values and experimental values
A piecewise acceleration-optimal and smooth-jerk trajectory planning problem for robot manipulator along a predefined path was defined as an optimal B-spline function that takes both the time interval and the control points as the optimal variables, and results in minimal jerk value and maximal acceleration value. Some computing techniques were proposed to determine the optimal solution. These techniques transformed the kinematics constraints into the constraints of the optimal variables, and reformulated the objective function as matrix form.
A few of cuisine experiments were carried out to verify the effectiveness and feasibility of the optimal results. Future works will include utilizing the techniques developed here as the basis for solving other application, so as to validate the generality of the algorithm. Substantial further work will be paid to the control scheme for the robotic manipulator and further adjust the optimal parameters in a certain field.
Footnotes
6.
The work was supported by the National Natural Science Foundation of China (Grant No. 60875060,51175105).
