Abstract
We consider a motion planning problem with task space constraints in a complex environment for redundant manipulators. For this problem, we propose a motion planning algorithm that combines kinematics control with rapidly exploring random sampling methods. Meanwhile, we introduce an optimization structure similar to dynamic programming into the algorithm. The proposed algorithm can generate an asymptotically optimized smooth path in joint space, which continuously satisfies task space constraints and avoids obstacles. We have confirmed that the proposed algorithm is probabilistically complete and asymptotically optimized. Finally, we conduct multiple experiments with path length and tracking error as optimization targets and the planning results reflect the optimization effect of the algorithm.
Keywords
Introduction
Task space constrains are common in robotic applications, both in service and in industrial applications. For example, a common task in service applications is to move a water-filled cup with a manipulator. This requires the manipulator to move with a certain posture and a constrained end acceleration. Also for welding occasions, the manipulator needs to follow a given end-effector path which is called welding line. Kinematically redundant robots, 1 such as humanoids or manipulators, possess the dexterity to plan multiple trajectories that meet the task constraints. Therefore, they have the ability to pursue additional objectives, among which the most important is obstacle avoidance. In a complex environment, robot autonomous motion planning requires to plan a trajectory that meets the task space constraints while avoiding self-collision or collisions with environment.
Motion planning in obstacle environment is a very common problem in the field of robotics research. The initial attempts to solve this problem included grid search methods such as the A* algorithm 2 and artificial potential field methods. 3 These algorithms are ideal for mobile robots to perform obstacle avoidance motion planning. For unknown environments with obstacles, Micheal Hoy et al. 4 reviewed a range of techniques related to navigation of both single and multiple coordinated unmanned vehicles. The main drawback of these methods is their computational complexity and they quickly become computationally intractable with the increase of the configuration space dimension. Wenrui Wang et al. 5 proposed an improved artificial potential field method for redundant manipulators. However, the calculation of the obstacle potential field is complicated, and the algorithm tends to fall into local extremes for complex environments.
In order to plan a feasible and optimal trajectory, some trajectory optimization methods have been proposed. For example, covariant Hamiltonian optimization for motion planning 6 optimizes an initial trajectory using covariant gradient descent. For problems with non-differentiable constraints, Mrinal Kalakrishnan et al. 7 proposed the stochastic trajectory optimization for motion planning method which samples a series of noisy trajectories to explore the space around an initial trajectory. All of the above methods optimize a discrete initial trajectory, and a fine discretization is needed to reason about obstacles in complex environment. Then, the computational cost will increase significantly. To overcome this problem, Gaussian Process Motion Planner 8 samples a few states on the initial trajectory and uses Gaussian process interpolation to query the trajectory at any time of interest. Trajectory optimization approaches start with an initial trajectory and then optimizes the trajectory by minimizing a cost function. The main disadvantage of these methods is that the optimization effect depends on the choice of the initial trajectory and the solutions are only locally optimal. They are incomplete and not optimal.
Sampling-based approaches have become popular in obstacle avoidance motion planning due to the probability completeness, and they can easily plan a valid path for high degrees of freedom (DOF) systems such as humanoid robots. The most basic sampling-based algorithms are the probabilistic road map (PRM) 9 and rapidly exploring random trees (RRT). 10,11 Many improved algorithms have also been proposed. For robots with differential constraints, Kuffner and LaValle proposed a control-based RRT algorithm (Kinodynamic RRT), 12 applying robot kinematics to node expansion and finally generating an effective trajectory. In order to obtain the asymptotic optimality, Karaman and Frazzoli 13 proposed RRT* algorithm, which introduced an optimization structure based on RRT algorithm. Slow convergence is the main disadvantage of this algorithm. To overcome it, Jauwairia Nasir et al. 14 proposed RRT*-SMART algorithm which accelerates the rate of convergence and reduces the execution time effectively. In general, the sampling-based algorithm is very efficient and probabilistically complete. We use this type of algorithm to solve the obstacle avoidance motion planning problem with task constraints for kinematically redundant manipulators.
In this article, we focus on kinematically redundant manipulators and the task is to follow a given end-effector path. Such problems require the robot to follow a path with high precision in continuous time and meet the obstacle avoidance requirements at the same time. Here we use the redundancy of the manipulator to achieve obstacle avoidance, so the planned path will inevitably appear redundant in the joint space. The second goal of this article is to reduce the redundancy of joint trajectories and optimize the trajectory quality. Finally, a high-order smooth joint trajectory facilitates stable operation of the manipulator and it is another goal for this article. The following are the requirements that we have summarized for the planned trajectory: follow a given path with high precision in continuous time; avoid self-collision or collisions with environment; reduce excessive redundancy in joint space; and meet the requirements of high-order smoothing in joint space.
The remainder of this article is organized as follows. The second section discusses the related work about the task-constrained motion planning problems. In the third section, we formally define the problem and present some expressions and frameworks for the problem. The fourth section describes the entire algorithm in detail. Then, the algorithm is analyzed in the fifth section, including the probability completeness and optimization principle of the algorithm. The sixth section presents the experimental results and illustrates the effectiveness and superiority of the algorithm. Finally, several directions to improve the current work have been mentioned in the concluding section.
Related work
Traditional task-constrained motion is generalized through kinematic control techniques. 15 –18 They are online motion planning that use an inverse of the task Jacobian to track a specified task path. Usually, the internal motions (motions in null-space) that do not perturb the execution of the task will be added for local optimization. So for the problems with obstacles in the environment, some methods 19,20 take the distance from obstacles or the corresponding potential function as an optimization objective to achieve obstacle avoidance. These approaches have proved to be unpractical for realistic motion planning. First, the generation of distance or potential functions is challenging and time-consuming in the high-dimensional joint configuration spaces. Moreover, for manipulators, the problem leads to a nonlinear Two-Point Boundary Value Problem (TPBVP) whose solution can only be solved via numerical techniques. Numerical techniques do not guarantee successful solution and are susceptible to local optimization.
For a more comprehensive exploration of the configuration space, sampling-based algorithms have been proposed such as PRM 9 and RRT. 10,11 To satisfy the task constraint, Oriolo et al. 21 proposed a sampling-based algorithm called RRT_LIKE. They divide the joint vector into base joints and redundant joints. Then, they randomly expand the redundant joints and optimize base joints to satisfy the task constraints. The approach was extended to the case of a unified representation of end-effector constraints by Stilman. 22 The essence of these planning techniques is to build a road map consisting of admissible configurations. A continuous path will be created by connecting these admissible configurations (typically, a linear connection). Hence, the path between two admissible configurations cannot strictly meet the task constraints. For path tracking issues, a higher sampling rate in the task space can reduce tracking error, but the calculation time will increase. The main disadvantage of such algorithms is that they cannot meet the task constraints in continuous time and have low tracking accuracy for the problems with a given end-effector path.
To solve this problem, Oriolo and Vendittelli 23 apply kinematic control techniques to sampling-based algorithms. They divide the specified task path into multiple leaf areas. Then, they use the reverse kinematics of redundant manipulators to track the given path, and a random self-motion in null space is utilized to realize random expansion. This approach was extended to the repetitive task constraints problems (e.g. repeatedly tracking an elliptical track) by Cefalo et al. 24 and Oriolo et al. 25 The approach essentially uses the self-motion in null space to achieve obstacle avoidance, and the planned path will inevitably be redundant in joint space. So the path generated by it can only satisfy constraints, but not optimal.
To achieve asymptotic optimization, we propose an optimized algorithm builds upon Oriolo and Vendittelli.
23
The core task of the algorithm is to let the manipulator follow the given end-effector path with high precision. Meanwhile, the proposed algorithm introduces an optimization structure in the joint path generation process. Currently, the tracking accuracy in task space and the path length in joint space are optimized. We have confirmed the probability completeness of the algorithm and have illustrated the optimization principle of the algorithm. The salient features of the proposed algorithm are as follows. Complete probability: The proposed algorithm is sampling-based and we have proved this property in the fifth section. High tracking accuracy: We use the reduced gradient method
26,27
and the error feedback mechanism for nodes connection to ensure the end-effector path tracking accuracy in continuous time. Low joint path redundancy: Sampling-based approach can easily lead to redundancy for the planned path in joint space. The proposed algorithm introduces an optimization structure in the path generation process and shortens the length of the planned path in joint space significantly. High-order smoothing for the planned joint trajectory: As mentioned before, we use the reduced gradient method for node connections and this allows us to perform a fifth-order polynomial programming on redundant joints.
Preliminary material
The proposed optimized algorithm in this article is improved on the basis of the algorithm given by Oriolo and Vendittelli. 23 So we will adopt the expression and framework introduced in it. Meanwhile, since the article mainly focuses on kinematically redundant manipulators, we assume that the robot is not subject to nonholonomic constraints. 28
Kinematics model
Consider a robot with configuration q and its nq
-dimensional configuration space is denoted by C. Let Cobs
be the set of obstacles in the configuration space. Correspondingly, C\Cobs
will be the obstacle-free space which is called Cfree
. The movement of each joint can be seen as a process of continuous integration. The admissible tangent vectors to a configuration space path q(s) can be used as an integral object, where
where
where f is a nonlinear forward kinematics function. The differential form is
where
Problem formulation
Consider a specific path td
(s) in task space with
the robot does not collide with obstacles or with itself throughout the path; and the generated configuration space path is asymptotically optimized with continuous iteration.
Due to task constraints, the planning space for this problem is
For each
and
So the manifold Ctask
has a foliation structure naturally which consists of multiple leaf regions. The process of motion planning is to connect each leaf in the intersecting space
Motion generation
In this article, motion generation is divided into two types, that is, forward motion generation and steering motion generation. The forward motion generation is to generate an arbitrary configuration belongs to the next leaf from a given initial configuration. Differently for the steering motion generation, the initial configuration and the goal configuration are specified and the task is to generate a valid smooth path in joint space.
Forward motion generation
The purpose of forward motion generation is to satisfy the probability completeness of the algorithm, and it steers the robot to an arbitrary configuration that belongs to the next leaf. The planning process is generated by the following scheme
where
Then, we set the error gain k to be 1/Δs and equation (5) will be converted as follows
where α denotes self-motion coefficient, and t(n) and td (n + 1) represent the current actual pose and the desired pose of the next moment in the task space, respectively.
Considering that if a damping coefficient
29
is introduced to solve the problem of singular configurations, it will reduce the tracking accuracy. So in this article, we set
For the purpose of ensuring the tracking accuracy of the system, the norms of the two terms in the right-hand side (rhs) of equation (6) are constrained in a certain proportion β by adjusting the self-motion coefficient α. The larger the α, the faster the exploration of feasible space is. However, as the value of α increases, the total path length and the tracking error will increase. So a suitable limit proportion is necessary.
In order to achieve the randomness of exploring, each value in the residual input vector ω is randomly generated. Meanwhile, this process is simply to generate a valid configuration that belongs to the next leaf, and the path will be optimized in the following process, so the residual input vector ω is constant throughout the integration interval [sk , sk + 1] and does not need to consider path smoothing.
Steering motion generation
The purpose of steering motion generation is to optimize the connections of existing nodes in the tree as is shown in the next section. So the initial configuration and the goal configuration are specified. There are two requirements need to be met for this motion. The first is the task constraint, and the second is to meet the constraint of the goal configuration. Here, we adopt the reduced gradient method introduced by Luca et al. 26 and make some improvements to smooth the joint path.
For an m-dimensional task constraints, the core of the algorithm is to divide the n-dimensional configuration space of redundant manipulators into two parts: qr and qb , where the redundant coordinates qr is (n − m)-dimensional, and the base coordinates qb is m-dimensional. Then plan the redundant coordinates qr to move the manipulator to the specified goal configuration and adjust the base coordinates qb to satisfy the task constraint.
Correspondingly, the m × n task Jacobian Jt
(q) in equation (4) can be block partitioned as Jt
= (Jt
,r
Jt
,b
), where Jt
, r
is m × (n − m) and Jt
, b
is m × m. The number of possible ways for the division is
At a differential level, the direct kinematic relation can be written as
In order to improve the tracking accuracy, we introduce a negative feedback mechanism
where et = td − t. Considering that the matrix Jt , b is non-singular, equation (7) can be converted to
Then
From equation (10), it can be seen that the base coordinates qb are determined by the task constraints and the redundant coordinates qr . By the above negative feedback mechanism, the task coordinates t will converge exponentially to the final desired value td , k+1. So in the case of the matrix Jt , b non-singular, the calculated base coordinates qb can ensure that the task constraints are met regardless of the choice of qr .
Then, we plan the redundant coordinates qr
to meet the constraints of the goal configuration. Given a pair of configurations (qk
, qk
+1) to be joined, where qk
belongs to the leaf Lk
and qk
+1 belongs to the leaf Lk
+1. The configurations qk
and qk
+1 are the nodes already in the random tree, so the boundary geometric velocities and accelerations are specified. Corresponding to redundant coordinates, the task is to make a connection between
where
Then, the geometric inputs
As mentioned before, the task coordinates t converge to the desired task value td , k+1. Meanwhile qr converges to qr , k+1, therefore qb is destined to converge to one of the inverse kinematic solutions of the degenerate robot corresponding to the desired task value td , k+1. Here, the degenerate robot is a redundant manipulator whose redundant coordinates qr frozen at qr , k+1. When the degenerate robot is noncuspidal 30 and qb , k and qb , k+1 belong to the same homotopy class (which was defined by Oriolo et al. 25 ), qb , k will converge to qb , k+1 and the detailed proofs have been given by Oriolo et al. 25
For this method, there are some points that need attention in practice. The first is that the preconditions it needs are not always satisfied, so we will discard the optimized connection when qb
, k
cannot converge to qb
, k+1. Second, when the specified path has speed constraints, the computed
In fact, using the process 2 of steering motion generation, the randomness of the algorithm can also be achieved by randomly generating redundant coordinates qr . However, we still use the process 1 of forward motion generation for several reasons. First, it takes very little extra time to generate a random configuration. Next, using the configuration generated by process 1 can establish effective connections between two adjacent leaves with greater probability. Finally, the parameter β can well control the exploratory nature of the tree and is useful in a complex environment.
Tree extension
Our randomized planner introduces the idea of optimal RRTs (RRT*s)
13
and builds an asymptotically optimized rapidly exploring random tree in task-constrained configuration space Ctask
, as shown in Figure 1. The whole algorithm is given in Algorithms 1
to 3. Before building the trees, we use an equispaced sequence of N + 1 path parameter values

The extension of an asymptotically optimized rapidly exploring random tree. The dotted lines in the figure indicate the original connections and the solid lines indicate the optimized connections.
Optimized sampling_based algorithm(
Backward optimization(T, q
Forward optimization(T,
The main procedure of tree extension is shown in Algorithm 1. First, a given initial state
The optimization process which is shown in Algorithms 2 and 3 is the core of the planner. Different from the traditional RRT* algorithm,
13
in our planner, we divide the optimization process into two parts: backward optimization and forward optimization. The backward optimization is to select an optimal parent node of
After
Algorithm analysis
In this section, we will confirm the probability completeness of the algorithm and illustrate the optimization principle of the algorithm.
Probabilistic completeness
We will now confirm the probability completeness of the planner. Explain in advance that this proof draws on some of the claims given by Oriolo et al. 25 The optimization procedure is simply to optimize the connection without reducing the connection between adjacent leaves, so it does not affect the convergence properties of the algorithm. Then for the sake of proof, we now simplify the planner by only using the process of steering motion generation to smooth the path generated by forward motion generation without any optimization.
Assume that there is a valid path q*(s) which is generated by the simplified planner. Then our purpose is to confirm that the probability which the simplified planner can generate such path converges to 1, with constant iteration.
The configuration of the path q*(s) on each leaf Li
is generated by forward motion generation. Meanwhile, the subpath between any two adjacent leaves Li
and Li
+1 is generated by steering motion generation and the function is continuous in equations (10) and (11). So two spherical neighborhoods exist, S(q*(si
)) for q*(si
) and S(q*(si
+ 1)) for q*(si
+1), where q*(si
) and q*(si
+1) belong to Li
and Li
+1, respectively. For any pair of configurations (q
1, q
2) with
For any intermediate configuration q*(si
) in the path, it has two spherical area Sb
(q*(si
)) and Sf
(q*(si
)) corresponding to the front and back configurations as shown in Figure 2. Note that q*(si
) belongs to the intersection of Sb
(q*(si
)), Sf
(q*(si
)), Cfree
, and Li
, so the intersection is not empty and we set

The schematic diagram of intersection area for adjacent configurations.
The valid subpath to q*(si ) can be denoted as follows
where the coefficient i can begin from 1 to N. Since the configurations in
Combined with equation (4), we can see that the special area
Then the problem can be converted to produce a series of residual inputs
Algorithm optimization
In our approach, we divide the optimization process into two parts: backward optimization and forward optimization. The core theory is similar to the idea of dynamic programming.
31
For two configurations (q
1, q
2) on the adjacent leaves (Li
, Li
+1), if the cost of connecting from the initial configuration
In our planner, when a new configuration
In the backward optimization process, we search the optimal parent node of
To reduce calculation consumption, we just search in area
Then, the forward optimization is to determine whether
The optimization process can be converted to a typical dynamic programming model as shown in Figure 3. Each leaf corresponds to a stage and each configuration corresponds to a state. Then, the forward state transition equation is

The schematic diagram of dynamic programming.
where qi –1: represents all states in the stage i − 1. It is similar to equation (15).
In our approach, each configuration in the tree T is connected to its optimal parent node through the above optimization process. So each connection in the tree T satisfies equation (16) and the generated path is optimal under the existing situation.
As new nodes are added, the resulting path will be optimized continuously. However, the subpath is generated by equations (10) and (11) and it is not optimal subpath. So the resulting path is asymptotically optimized, but not asymptotically optimal.
Simulation results
We have implemented our algorithm in C++ and rely on an open source motion planning platform MoveIt! 32 which has been released into the Robot Operating System (ROS). All simulations run on a personal computer with 3.7 GHz Intel CPU and 8 GB memory under a 64-bit Ubuntu operating system.
We perform simulation experiments on a traditional 6-DOF robot and a 7-DOF KUKA LWR manipulator, respectively. In all experiments, we set the optimization goal or the cost of configurations as
where L(q) is the path length from q init to q in the configuration space C, e(q) is the average tracking error, and λ is the weight of the tracking error.
We get the path length L(q) by superimposing each integration segment and the distance for nq -DOF joint robot in C is computed by
The tracking error is obtained by accumulating the error of each integration point in the task space and then calculating the average. For each integration point, its tracking error is computed by
We will present numerical experimental results and illustrate the performance of the optimized planner compared to the algorithm without optimization proposed by Oriolo and Vendittelli.
23
In order to ensure the fairness of the comparative experiment, we avoid self-motions
A KUKA LWR manipulator drawing an arc
The first experiment (see Figure 4) is to plan a KUKA LWR manipulator to draw a specified arc in an environment with obstacles. In order to make the simulation more accurate, we build a simulation environment in MoveIt! using the URDF file of LWR robot and then add some obstacles. In high-dimensional space, collision detection is very challenging, so we use an open source library called Flexible Collision Library 33 which is supported by MoveIt!.

A KUKA LWR manipulator draws a specified arc in the environment with obstacles. Six snapshots from a solution are shown and correspond to six states from s = 0 to s = 1 in turn.
In this experiment, for a 7-DOF robot we set qb = (θ 1, θ 2, θ 4) and qr = (θ 3, θ 5, θ 6, θ 7). Meanwhile, the specified arc starts from coordinate (−0.5, −0.4, 0.7) to (0, −0.4, 0.8) and is represented as
Table 1 gives the values of the parameters required in the planner. The explanation for these parameters is as follows.
N is the number of samples by equispacing the assigned task path and N + 1 leaves are created. The value of N usually depends on the length of the task path and it is similar to the incremental distance in traditional RRT algorithm. When the environment is relatively simple, a smaller value of N will speed up the trajectory search. However, when the environment is complicated, a larger value of N will make the manipulator easier to pass through some narrow space. Δs is the integration step of Euler method which is used for motion generation between adjacent leaves. Since the mapping from joint space to task space is nonlinear, planning errors are unavoidable. A smaller value of Δs will reduce such errors.
β is the maximum allowed norm of the second term as a proportion of the norm of the first term in the rhs of equation (6). It corresponds to the parameter goal bias in traditional RRT algorithm. The larger the β, the faster the feasible space is explored. At the same time, it increases the redundancy of the planned joint path.
λ is the weight of the tracking error in the cost of configurations.
IT_NUM is the number of feasible solutions obtained by iterative optimization in Algorithm 1.
The given parameters of the planner for simulation.
Through simulation experiments, we get the operating states of the robot at different times in Figure 4. By performing a fifth-order polynomial programming on redundant coordinates qr , we can get relatively smooth paths and geometric velocity in joint space as shown in Figure 5. At each stage of the planning, we set the starting acceleration and the ending acceleration to 0. So the planned geometric acceleration is continuous and we cannot guarantee the continuity of the jerk as shown in Figure 5. Here the velocity, acceleration, and jerk are geometric representations relative to the parameter Δs. In practical applications, considering the limitation of the maximum velocity or acceleration of each joint of the current manipulator, it only necessarily sets the parameter Δs to a suitable specific time interval for each stage. Figure 6 illustrates that the proposed algorithm can track the specified path well and the specific parameters are as follows.

The four figures represent the planned path, geometric velocity, acceleration, and jerk in joint space. They will be real velocity, acceleration, and jerk when s = t.

The above figure is tracking performances in task space and the below is the tracking errors of three dimensions.
We have obtained the averaged performance data after many experiments and compared with the Control_Based planner 23 and the RRT_Like planner. 21 As presented in Table 2, for the RRT_Like planner, due to the linear connection between two admissible configurations, large task error is its main drawback. The tracking accuracy can be improved by increasing the number of path samples N. However, it will lead to an increase in execution time obviously. For the Control_Based planner, short execution time and relatively low task error are its main advantages. However, due to the existence of joint redundancy, the length of the planned joint path is relatively large. We propose an optimized planner based on the Control_Based planner. As the number of iterations (IT_NUM) increases, the values of task error and path length will decrease significantly. Experiments show that the optimized planner is asymptotically optimized and have better path performance compared to the previous algorithms.
The comparative experimental performance data (averaged).
All of the italic entries highlight the best performance in the column.
A traditional 6-DOF robot moving following a straight line
We have also experimented on the traditional 6-DOF robot. Since the task constraints in this experiment are only position constraints, the 6-DOF robot is also redundant for this problem. We use the robot model of DENSO (Japan) to perform simulation experiments in ROS. The parameters N, Δs, IT_NUM, and λ are the same as those in Table 1.
In this experiment, we set the tracking path to be a straight line from coordinate (0, −0.1, 0.9) to (0, −0.5, 0.75). Meanwhile, we set the first three joints as the base coordinates and the rest are redundant coordinates. The selection criterion for base coordinates is to ensure that the Jacobian matrix of the base coordinates is nonsingular. Then, the operating states are shown in Figure 7 and the proposed algorithm can generate a smooth joint path and track the specified trajectory well as shown in Figure 8.

A DENSO manipulator draws a specified line in the environment with obstacles. Six snapshots from a solution are shown and correspond to six states from s = 0 to s = 1 in turn.

The figure above is the joint space path and the below is tracking performance in task space.
Table 3 shows the effect of parameter β on path performance. When β = 0, the motion generation can only get a pseudoinverse solution without any self-motion in equation (4) and it usually cannot generate a feasible path in an environment with obstacles. Hence, the larger the β, the faster the feasible space is explored. However, when the value of β is too large, excessive self-motion will also reduce the path generation speed and it depends on the complexity of the current environment. Meanwhile, we can find that as parameter β increases, both the task error and the joint path length increase. In the case where the value of parameter IT_NUM is the same, the larger the β, the more obvious the optimization effect is. So for complex environments, when the parameter β needs to be large, the proposed algorithm will have better optimization effect.
The performance data as parameter β changes.
All of the italic entries highlight the best performance in the column.
Next, in order to reflect the optimization effect of the proposed algorithm, we set β = 10 and other parameters are the same as those in Table 1. We also compared the RRT_Like planner and the Control_Based planner as presented in Table 4. Since the 6-DOF manipulator is relatively simple, both in solving the Jacobian matrix and in the dimension of the configuration space, the planning speed is faster than the first experiment with LWR robot. Low tracking accuracy is still the main defect of the RRT_Like planner. By adjusting parameter IT_NUM to increase the number of iterations, we can get the performance data of the optimized planner as presented in Table 1. It is obvious that when the number of iterations increases, the optimization times will increase and then the path length decreases significantly. When IT_NUM
The performance data as parameter IT_NUM changes.
All of the italic entries highlight the best performance in the column.
A traditional 6-DOF robot tracking an irregular curve
To ensure the base coordinates qb smooth, we assume that the task path is second-order continuous. In practical applications (e.g. welding), the task path is usually irregular and unsmooth. Here, we usually preprocess the task path in two ways. One is to split the task path into multiple smooth subpaths and plan the subpaths separately. The second is to uniformly sample the task path, and then use the least squares curve to fit the sampling points. In this experiment, we use the second.
The experiment is to draw an irregular curve on a drawing board parallel to the x-axis as shown in Figure 10. We evenly sampled 56 points based on the y-axis and the fitting path is shown in Figure 9. We use polynomial for least squares curve fitting and the order is selected after multiple trials. As presented in Table 5, if the order is too small, the fitting error will be large, and if the order is too large, it will cause over-fitting. So in this experiment, we chose a polynomial with an order of 21.

The above figure is the actual path in three dimensions and the below is a fitting curve for the sampling points.

A DENSO manipulator draws an irregular curve on a drawing board. The green spheres are obstacles added in the environment.
The fitting error for different orders.
We have changed the environment and still use the robot model of the last experiment as shown in Figure 10. Then, we set β = 10 and other parameters are the same as those in Table 1. From Figure 11, we can see that the proposed algorithm can generate a smooth joint path. The use of curve fitting inevitably produces an error between the starting point of the fitted curve and the actual initial position of the robot end effector, so a certain tracking error is caused at the beginning of the planned trajectory and it will gradually decrease due to the error feedback mechanism as shown in Figure 11. Note that the tracking error or task error here is relative to the smooth path after fitting.

The above figure is the joint space path and the below is the tracking errors of three dimensions.
As presented in Table 6, the mean task error is increased compared to the last experiment whose performance data are presented in Table 4. It can be seen that the smoothness and length of the tracking path have an impact on the tracking accuracy under the same experimental parameters. In practical applications, the values of Δs and N need to be adjusted to accommodate different end-effector paths. Similar to the previous experiment, the proposed optimized planner is far superior to the RRT_Like planner in tracking accuracy. At the same time, as the number of iterations increases, the planned joint path length will gradually decrease compared to the Control_Based planner. When IT_NUM
The performance data for tracking an irregular curve.
All of the italic entries highlight the best performance in the column.
Conclusion
For the problem of motion planning with task constraints, a sampling-based optimized algorithm has been proposed. In order to improve tracking accuracy, we apply kinematic control techniques and introduce negative feedback to the sampling-based algorithms. Then, by random self-motion in null space, the probabilistic completeness of the algorithm is ensured. Next, we adopt the reduced gradient method and perform a fifth-order polynomial programming on redundant coordinates to get a smooth path in joint space. Finally, we build an optimized structure similar to dynamic programming and it can generate an optimal path in joint space under the existing situation. So as new nodes are added, the resulting path is asymptotically optimized. There are several directions to improve the current work, such as: attempt of generating an optimal subpath between adjacent leaves to achieve asymptotically optimality; and dynamic adjustment of parameter β during path search.
Footnotes
Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
Funding
The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: This work is supported by Major Science and Technology Project of Henan Province [Grant No. 161100210300].
