Abstract
Keywords
1. Introduction
The redundancy of manipulators can be used to achieve secondary goals, such as joint limits avoidance [1], obstacle avoidance [2–4], minimization of joint torque [5], etc., without disturbances to the main task [6]. In order to drive redundant manipulators, an appropriate sequence of joint velocities is generated from the desired velocity of the end-effector and the predefined constraints of the inverse kinematics (IK) [7]. However, the underdetermined ability of the Jacobian matrix would result in infinite IK solutions and a probable singularity [8]. This is the primary difficulty in the application of redundant manipulators. Thus, prior literature [9] has proposed abundant methods, including damped least-squares (DLS) [10], gradient projection (GP) [11], weighted least-norm (WLN) [1] and augmented, or extended, Jacobian matrix (AJM or EJM) [7, 12] methods to cope with these difficulties.
Obviously, it is essential to drive manipulators to avoid collisions with obstacles, and this secondary goal has inspired the development of a variety of methods. Some of the prior literature achieved obstacle avoidance kinematically based on the determination of the closest point to the obstacle (called the obstacle avoidance point). A. A. Maciejewski and C. A. Klein [2] calculated the obstacle avoidance point based on a Jacobian matrix and the end-effector velocity, and utilized the GP method to achieve obstacle avoidance with lower priority. F. T. Cheng, T. H. Chen, Y. S. Wang and Y. Y. Sun [13] formulated the IK problem of redundant manipulators considering obstacle avoidance and drift-free criteria using compact quadratic programming (QP). Y. N. Zhang and J. Wang [14] improved the equality-based QP formulation in [13] to create an inequality-based one, and used a dual neural network to generate joint velocities. Recent progress in the kinematical method of obstacle avoidance can be found in [15–17]. Nevertheless, these methods require the identification of the obstacle avoidance point for every calculation step, which is time-consuming and sometimes difficult when the obstacle contour becomes complex. On the other hand, some researchers have resolved the problem at a dynamical level. O. Khatib [3] established an artificial potential field around obstacles and substituted potential forces into the dynamical equation of manipulators. The application of harmonic potential functions can be seen in [4], and some other definitions of potential functions have been provided in recent work [18,19]. However, methods based on artificial potential field achieve obstacle avoidance in a dynamical way and are not applicable when manipulators’ dynamical parameters, such as link masses, positions of mass centres, inertias, etc., are unknown. Thus, a kinematical method for obstacle avoidance involving less calculation burden is eagerly anticipated.
This is the motivation of the present paper. Since the obstacle avoidance point is located between the two end-points of each manipulators’ link, and because the trajectories of all end-points can be easily obtained during calculation, it is naturally expected that the detection and avoidance of possible collisions depend on the relationship between obstacles and the manipulators’ end-points alone. Assuming that all obstacles can be enveloped by different ellipsoids, this paper will reveal the categories of collision based on the property of a derived quadratic function. Utilizing some recent IK algorithms [20–22] dealing with unilateral constraints, a backward quadratic search algorithm (BQSA) is developed to control redundant manipulators moving along desired end-effectors’ trajectories, as well as away from obstacles, by employing a hybrid scheme of GP and WLN methods.
The rest of this paper is arranged as follows. Section 2 presents the geometrical model of the problem and a hybrid IK scheme. Collisions are divided into several categories based on the derived quadratic function, and the basic procedure and determination of parameters of the BQSA are introduced in Section 3. Section 3 also compares the computational load between a previous kinematical method and the BQSA. A seven degree-of-freedom (DOF) planar serial-link manipulator and a PUMA 560 robot are numerically simulated, respectively, to validate the effectiveness of the proposed algorithms in Section 4. Finally, Section 5 presents the conclusions of this paper.
2. Problem Formulation
2.1. Geometric modelling
The geometric model of manipulators and obstacles is depicted in Figure 1. Neglecting the shapes of all links and joints, the manipulators have
Here, all obstacles are assumed to be enveloped in ellipsoids that have smooth convex contours and can be determined according to nine parameters, including its centre location, axis length and axis direction. Most obstacle shapes (such as points, rectangles and triangles, etc.) can be conservatively included in the ellipsoid, and some can even be obtained from the deformation of an ellipsoid. Take a wall obstacle, for instance, and denote the three ellipsoidal axis lengths as

Geometric model of redundant manipulators and obstacles
Generally, manipulators move and OEEs are shaped in the three-dimensional Euclidean space. The collision between manipulators and OEEs can be avoided by one of the three two-dimensional link-obstacle pairs, which are the projections of the three-dimensional link-obstacle pairs to three mutually orthogonal planes that avoid the collision. This proposition is depicted in Figure 2 and further proved by Lemma 1.

Collision avoidance between manipulators and OEEs: a three-dimensional and three mutually orthogonal planar situation
The converse negative proposition of Lemma 1 indicates that, if the collision happens between the three-dimensional link-obstacle pair, all of the three planar-projected pairs are involved in the collision. However, the negative proposition of Lemma 1 is incorrect. Thus, planar obstacle avoidance can be adopted as a conservative way to assure three-dimensional obstacle avoidance, which simplifies the problem to a two-dimensional situation. The following discussions in this paper are conducted in the
and
respectively. The end-points of the
Parameters of the
2.2. Hybrid scheme of inverse kinematics
Let
with the initial configuration
in which vectors
The aim of the inverse kinematics is to resolve an appropriate sequence of joint velocity
in which the matrix
where the matrix
The self-motion that arises from the redundancy of the manipulator can be utilized to achieve secondary tasks, such as joint limits avoidance, obstacle avoidance, etc. without any disturbances to the primary task. GP is one such method [11], projecting secondary goals into the null space of the Jacobian matrix, which can be written as
in which
in which
Define the weighted Jacobian matrix and joint velocity as
and the singular value decomposition (SVD) of
where the matrix
and
with
in which the velocities
The DLS [10] can effectively increase the Jacobian singular robustness and is utilized to avoid a potential Jacobian singularity. Nevertheless, as the non-zero damping factor
it is better to take the zero value for the damping factor when the Jacobian matrix does not approach the singularity; when the Jacobian singularity occurs, the value for the damping factor should be positive but as small as possible. The detailed method to determine the value of
the trajectory tracking task can be bounded by
In this paper, obstacle avoidance is considered as the secondary task and the WLN method is utilized to enforce this constraint. However, the traditional WLN method [1] will result in the loss of DOF, so the clamping velocity to the kernel of the weighted Jacobian by the GP method [22] is added to the WLN scheme. These two measures are presented in subsection 3.3 in further detail.
It should be noted that there is not always a feasible solution for the IK problem with constraints like joint limits and obstacle avoidance. One of the most significant factors influencing the feasibility of the IK problem is the manipulator's redundancy. Considering an
3. Backward Quadratic Search Algorithm
3.1. Quadratic category of collisions
According to the problem formulation, obstacle avoidance is modelled as the geometrical relationship between a line segment and an ellipse. Generally, assume
the coefficients of which can be obtained as
Furthermore, define Δ
and
respectively. The collision between the
Thus, the collision between the link and the obstacle can be determined by calculating the root discriminant Δ

Quadratic categories of collisions
3.2. Basic procedure of BQSA
Assume that the initial configuration of the manipulator avoids all obstacles and the trajectory of the end-effector has been appropriately programmed outside all obstacles. The backward quadratic search algorithm (BQSA) combines the proposed hybrid scheme of IK with the root properties of derived quadratic functions
Since the end-effector always moves outside obstacles, the collision detection can be conducted from link
Thus, the word ‘
for
in which vectors
Details of Step 4 (Joints Clamping), including the determination of

Basic procedure of the backward quadratic search algorithm
3.3. Discussions on joints clamping
Following the detection of collisions, the BQSA enters into the joints clamping step before updating and outputting the kinematical resolutions. The algorithm makes this choice automatically by setting the value of the weighted matrix, which can be expressed as
The weighted matrix
Elements of the clamping velocity
where
Subsequently, the position of the end-point
in a planar case. Note that BQSA will not affect
in which vectors
Finally, the updated value of
in which the symbol <
3.4. Discussions on computational load
As mentioned above, the proposed BQSA is motivated primarily by the aim of relieving the computational load. A comparison of computational complexity between traditional kinematical methods for two-dimensional obstacle avoidance and BQSA is discussed in this subsection.
In prior literature [2, 13, 15–17], kinematically redundant manipulators’ obstacle avoidance is dependent on the real-time determination of the obstacle avoidance point, contributing the greater portion of the method's computational load. Without the assistance of extra sensors, like laser range finders, cameras, etc., the search for the obstacle avoidance point that is least far from the obstacles on the links in the structured environment is conducted based on the computation of the Euclidean distance between every point on the obstacles’ surface and manipulator links, for every iteration step. Considering the scenario depicted in Figure 1, assume that the
Nevertheless, the BQSA achieves obstacle avoidance without searching for the obstacle avoidance point, but rather by determining the states of collisions based on the position of end-points for every link and the shape of every elliptical obstacle. Assume that the position (
Assuming that
and
Therefore, the computational complexity of the BQSA will be lower than previous kinematical methods based on the determination of the obstacle avoidance point, as long as
In order to demonstrate the reduction in computational load achieved by the BQSA as compared with previous methods, the cost of computation time versus the number of test points for each obstacle-link pair (i.e., the value of
Setting
The computation time consumed by both previous methods and the BQSA, where

Computation time versus ‘

Computation time versus ‘
4. Numerical Simulations
4.1. A seven-DOF planar manipulator
Since three-dimensional obstacle avoidance can be guaranteed by three mutually orthogonal two-dimensional obstacle avoidance processes, as indicated by Lemma 1, a planar case is numerically simulated to verify the effectiveness of the proposed BQSA. The simulation scenario is depicted in Figure 7, in which a planar seven-link manipulator is expected to move its end-effector along the surface of an elliptic object while avoiding an elliptic obstacle. The shape and location of both the elliptic object and obstacle are assumed to be known before the resolution of IK, and the parameters specification of the simulation are summarized in Table 1. The seven-DOF planar manipulator is obviously redundant since the planar trajectory tracking mission only consumes two DOF. Therefore, the manipulator has five extra DOF to be utilized for the obstacle avoidance task.

Simulation scenario: a planar seven-DOF manipulator is expected to move its end-effector along a desired trajectory on the surface of an elliptic object, avoiding collisions between the object and an elliptic obstacle
Parameters specification of the simulation of a planar manipulator
Depicted as Figure 8, manipulator configurations obtained by BQSA illustrate an avoidance of the elliptic obstacle without deviation from the desired end-effector trajectory. It should be noted that the collision involving the object is unexpected, so the avoidance of the object is also necessary during the simulation. The trajectory tracking is considered the main task, which requires at least two DOF to guarantee tracking accuracy, and the redundancy of the remaining five DOF for the seven-link manipulator is utilized to achieve the secondary task of avoiding collision with both the obstacle and the object.

Manipulator configurations illustrating the trajectory tracking by the end-effector, as well as obstacle avoidance utilizing BQSA

Criteria of the quadratic categories of collisions as defined in Figure 3, where possible collisions occur only between link seven and the object, and link six and the obstacle
According to the results of collision detection, possible collisions only occur between link seven and the object, and link six and the obstacle. Figure 9 depicts the value of classification criteria of the quadratic categories, as defined in Figure 3. The manipulator configurations satisfy either Δ ≤ 0 or Δ > 0 ∩
Figure 10 compares the desired end-effector trajectory and the practical trajectory. Clearly, the manipulator can achieve an accurate trajectory tracking mission, even though the tracking precision decreases slightly as the manipulator avoids the obstacle. A further illustration of the tracking performance is depicted in Figure 11, which shows that the tracking errors along both the x-axis and y-axis are below 3.5 mm. Figure 11 also illustrates smooth trajectory tracking when the manipulator meets no obstacles, while the end-effector moves non-smoothly as the manipulator encounters and actively avoids obstacles.

A comparison of the desired end-effector trajectory and the practical trajectory

Trajectory tracking errors along both the x-axis and y-axis
The seven joint angles are depicted in Figure 12, which displays continuous but clearly non-smooth curves. The non-smooth aspect arises when the manipulator encounters and avoids the obstacles, and indicates a discontinuous property for joint velocities during obstacle avoidance. This phenomenon is compatible with the characteristics of the BQSA, shown as Eqs. (24) and (27).

Joint angles during the manipulation
4.2. A demonstration of a PUMA 560 robot
In order to verify the feasibility and effectiveness of the BQSA for three-dimensional situation, numerical simulations are conducted on a PUMA 560 robot. The configuration and the Denavit-Hartenberg (DH) coordinates are depicted in Figure 13 and the DH parameters are summarized in Table 2. The robot has six DOF in total, and the trajectory tracking mission costs three DOF. The remaining three DOF can be utilized for the obstacle avoidance task.

The configuration and the DH coordinates of the PUMA 560 robot
DH parameters of the PUMA 560 robot
During the manipulation task, the robot starts from an initial state with joint angles set as

PUMA 560 robot configurations illustrating the end-effector trajectory tracking and obstacle avoidance utilizing BQSA, projected from the three-dimensional space to the XOZ plane
Depicted in Figure 17, the comparison of the desired and the practical circular trajectories demonstrates accurate trajectory tracking by the end-effector. However, when the BQSA activates obstacle avoidance, the tracking trajectory becomes a little less smooth and deviates from the desired path. As shown in Figure 18, the tracking error along the x-axis is less than 1 mm, and along the y-axis is less than 4 mm. The largest tracking error, of approximately 20 mm, occurs on the y-axis, which is reasonable given that the BQSA is performed on the XOZ planar projection of the robot. The joint angles shown in Figure 19 have similar shape properties to the curves shown in Figure 12. The non-smooth change occurs when the robot avoids the obstacle, which indicates a discontinuity in joint velocities and accords with the weighted characteristics of the BQSA.
Aiming to illustrate the effectiveness of the BQSA with regard to a wall obstacle, the three axis lengths of the ellipsoidal obstacle are set as 0.1 mm, 100 mm and 10000 mm. The ellipsoid thereby approximates a wall, relative to the robot demo. The three-dimensional configurations depicted in Figure 20 illustrates success in avoiding the wall obstacle, achieved by the utilization of the BQSA.

PUMA 560 robot configurations illustrating the end-effector trajectory tracking, as well as obstacle avoidance utilizing BQSA

Criteria of quadratic categories of collisions as defined in Figure 3, where possible collisions occur only between the end-effector and the ellipsoidal obstacle

A comparison of a desired and a practical end-effector trajectory

Tracking errors of the end-effector of the PUMA 560 robot along three axes

Joint angles of the PUMA 560 robot during the manipulation

Puma 560 robot configurations during wall obstacle avoidance
5. Conclusions
This paper develops a backward quadratic search algorithm (BQSA) for inverse kinematics (IK) of redundant manipulators, with trajectory tracking as the primary task and obstacle avoidance as the secondary task. As the BQSA uses end-points’ positions, which can be easily obtained, rather than the closest point to the obstacle on each link, the computational burden of IK resolution is expected to be reduced. The design of the backward search ensures that the obstacle avoidance by the
Furthermore, although most of the discussions and simulations are conducted on the basis of planar situations, three-dimensional obstacle avoidance can also be achieved by utilizing the BQSA in three mutually orthogonal two-dimensional planes, as indicated by Lemma 1. Numerical simulations of a PUMA 560 robot support the feasibility and effectiveness of the BQSA in the three-dimensional situation.
Since the PUMA 560 robot is widely used in the design of industrial manipulators, applications of the proposed BQSA are promising and eagerly anticipated. Moreover, obstacle avoidance is only a small subset of the secondary tasks that can be achieved by utilizing manipulators’ redundancy. A series of extra constraints, including joint limits, joint torque minimization, etc., are expected to be addressed in the developed hybrid scheme of inverse kinematics.
