Next Article in Journal
Use of Distributed Energy Resources Integrated with the Electric Grid in the Amazon: A Case Study of the Universidade Federal do Pará Poraquê Electric Boat Using a Digital Twin
Previous Article in Journal
Adaptive Multi-Scale Bayesian Framework for MFL Inspection of Steel Wire Ropes
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Smooth and Time-Optimal Trajectory Planning for Robots Using Improved Carnivorous Plant Algorithm

1
School of Advanced Manufacturing Engineering, Chongqing University of Posts and Telecommunications, Chongqing 400065, China
2
Menlo Intelligence Company, Chongqing 518129, China
*
Author to whom correspondence should be addressed.
Machines 2024, 12(11), 802; https://doi.org/10.3390/machines12110802
Submission received: 17 October 2024 / Revised: 8 November 2024 / Accepted: 9 November 2024 / Published: 12 November 2024
(This article belongs to the Section Automation and Control Systems)

Abstract

:
To improve the safety and reliability of robotic manipulators during high-speed precision movements, this paper proposes a method for smooth and time-optimal trajectory planning incorporating kinodynamic constraints. The primary objective is to use an evolutionary algorithm to determine a trajectory by considering time and jerk within the feasible path-pseudo-velocity phase plane region. Firstly, the path parameterization theory extracted the maximum pseudo-velocity projection curve from the kinodynamic constraints. Subsequently, the feasible region in the phase plane was defined through reachability analysis of discrete linear systems. Thereafter, we constructed the trajectory function using a cubic B-spline curve, optimizing its control points with an improved carnivorous plant optimization algorithm. Finally, the effectiveness and practicality of this method were verified through simulations on a 6-DOF manipulator.

1. Introduction

Introducing dynamic constraints is crucial for improving the safety and reliability of mobile robots, especially during high-speed manipulator operations. Limiting jerk helps reduce mechanical strain, avoid resonance, and prevent actuator damage, ensuring smoother, more precise trajectories. While third-order constraints (jerk-based) enhance trajectory smoothness and component durability, they come with higher computational costs. Second-order constraints (acceleration-based) are sufficient for speed-focused tasks, but third-order constraints are essential for applications prioritizing smooth motion and longevity. In summary, smooth, time-optimal trajectory planning with third-order dynamic constraints improves system performance and ensures accurate, efficient operation.
One solution of trajectory planning is to interpolate the position and time series of joints with smooth curves at several intermediate points of the geometric path, and then optimize the specific coefficient of the interpolation function according to the relevant constraints and performance indexes. In earlier studies, Lin et al. used cubic interpolation from splines to approximate the path and optimized the spline node position by the local iterative polyhedral search method [1]. Gasparetto and Zanotto [2] proposed quintic B-splines in joint trajectory interpolation and optimized the trajectory using sequential quadratic programming to further ensure the continuity of the trajectory. In 2008, they proposed an optimal trajectory planning technology for a robot manipulator. In order to obtain the optimal trajectory, Gasparetto and Zanotto minimized the objective function, consisting of the total execution time and the square integral of the jerk (the derivative of acceleration) [3]. Wang et al. employed a quintic B-spline function to interpolate the trajectory and combined it with a hybrid WOA-GA algorithm to realize the time–jerk optimal trajectory under kinematic constraints [4]. Machmudah et al. successfully planned the joint motion trajectory with the optimal time and torque by using the high-order polynomial curve method, combined with the genetic algorithm and particle swarm optimization algorithm. The kinematic and dynamic constraints occur at the same time in the environment where the manipulators are facing obstacles [5]. However, trajectory planning directly in joint space is a complex, high-dimensional problem. While existing methods are capable of generating trajectories that meet optimal performance metrics, they rely on a large number of parameters and high-order interpolation operations. This dependence increases the calculation’s time complexity and may reduce motion accuracy due to fluctuations in the interpolation function’s coefficient.
Another solution involves transforming the many-body differential equations and system constraints into one-dimensional motion along a specific geometric path, reducing the multi-dimensional state space of a robotic system to a low-dimensional state space [6]. In this context, Bobrow et al. [7], along with Shin and McKay [8], pioneered the idea of characterizing the equations of motion using scalar path parameters and their time derivatives. They parameterized the joint torque constraints to path-curve coordinates, making it possible to find a time-optimal curve in the path-pseudo-velocity phase plane. Building on this, Shiller and Lu [9] extended this work by transforming the original problem into an equivalent reduction problem, replacing the torque constraint with a constraint on maximum pseudo-acceleration and pseudo-velocity along the path. Verscheure et al. converted the time-optimal trajectory planning (TOTP) problem into a convex optimization problem [10]. They expressed the original problem as a large sparse optimization problem after discretization, then adopted second-order cone programming to improve solving efficiency. To avoid abrupt changes in torque, Oberherber et al. used spline curves to approximate the planning results in the phase plane, optimizing the control points of the spline curves [11]. Pham et al. proposed a Reachability Analysis-based TOPP method (TOPP-RA) [12], focusing on solving the time optimization problem under second-order constraints. By carefully controlling the bidirectional numerical integration process and using the dichotomous algorithm to address constraint violations during integration, E. Barnett et al. proposed the widely applicable bisection algorithm for TOTP (TOTP-BA) method [13]. Lin presented a unified methodology to find the near optimal solution of a minimum-jerk trajectory based on PSO [14]. Kucuk [15] combined cubic spline with the seventh order polynomial to construct minimum-time smooth motion trajectories beginning and ending with zero jerk using a PSO algorithm for serial and parallel manipulators. Huang et al. [16] also described a methodology adopting the quintic B-spline interpolation in joint space but applied a non-dominated sorting genetic algorithm (NSGA-II) as a multi-objective optimization algorithm to obtain a time–jerk optimal trajectory.
Despite significant progress in these parameterization solutions, satisfying third-order constraints and finding optimal trajectories in multi-objective environments remains challenging. Faced with these challenges, we draw inspiration from previous discussions by analyzing the convex polygonal region formed by the first to third order constraints of discrete path points within the path-pseudo-velocity phase plane, allowing us to extract the maximum pseudo-velocity curve. Additionally, we further define the feasible region by assessing the reachability of adjacent path points. To reduce the dimensionality of the variables during the optimization process, we selected the control points of the cubic B-spline curve as our optimization variables and employed an improved carnivorous plant optimization algorithm for solving. Throughout the iterative resolution process, we took into account both efficiency and smoothness to ensure an optimal outcome.
The rest of this paper is organized as follows. The constraints in trajectory planning and the parameterization of the smooth and time-optimal path are discussed in the upcoming section. Then, the reconstruction of feasible regions and the mathematical model for applying cubic B-spline interpolation in the phase plane are presented in Section 3. In Section 4, the Carnivorous Plant Algorithm and its enhancements are introduced. Section 5 provides an analysis of the numerical simulation results. Finally, Section 6 summarizes the key findings and conclusions of this study.

2. Modeling Optimization Problems

2.1. Path Parameterization

Consider a smooth path represented in the joint space coordinates, denoted as θ(s), where s represents a scalar path parameter. The parameter s describes the geometric shape of the path, and its mapping relationship with time t , s t : R 0 , Λ , reveals the law of trajectory change over time. Furthermore, to ensure continuous advancement of the robot along the path of total length Λ , it must satisfy s ˙ t 0 .
The joint velocity, acceleration, and jerk of the robot can be determined by the chain derivation rule as follows:
q ˙ = s ˙ q q ¨ = s ¨ q + s ˙ 2 q q = s q + 3 s ˙ s ¨ q + s ˙ 3 q
In this equation, q = q s / s , q = 2 q s / s 2 , a n d q = 3 q s / s 3 denote the first, second, and third derivatives of the joint position with respect to s. Similarly, s ˙ = d s / d t , s ¨ = d 2 s / d t 2 and s = d 3 s / d t 3 represent the pseudo-velocity, pseudo-acceleration, and pseudo-jerk, respectively.
For an n-axis robot with rigid components, the complete dynamic equation under a nonlinear friction model can be expressed as follows:
τ q , q ˙ , q ¨ = M q q ¨ + C q q ˙ + G q
where τ R n is the joint force vector; M ( q ) R n × n is the inertia matrix; C q R n × n is the Coriolis and centripetal force matrix; and G q R n is the gravity term vector.
We substitute Equation (1) into Equation (2) to achieve the mapping of joint torques to s space:
τ s , s ˙ , s ¨ = m s s ¨ + c s s ˙ 2 + g s m s = M q q c s = M q q + q T C q q g s = G q
To ensure smooth and precise movement of the robot during trajectory movement, it is necessary to control the rate of torque. Calculate the time derivative from Equation (3):
τ ˙ s , s ˙ , s ¨ , s = m s s + p s s ˙ s ¨ + c s s ˙ 3 + g s s ˙ p s = m s + 2 c s

2.2. Objective Function Parameterization

The objective function combines task completion time and normalized jerk (the derivative of acceleration). For a robot moving along a predetermined path, the total travel time is defined as follows:
0 T 1 d t = 0 Λ d s d t 1 d s = 0 Λ 1 s ˙ d s
The smoothness of the trajectory is assessed by integrating the squared normalized jerk of the joints:
0 T λ k n q k 2 q ¯ k d t = 0 Λ λ k n q k 2 q ¯ k d s d t 1 d s = 0 Λ λ k n q k 2 q ¯ k 1 s ˙ d s  
where λ is a weighting factor used to balance different factors, and for k = 1 n ,     q ¯ k = m a x s 0 , Λ q ¯ k s .
Based on this, the smooth time-optimal trajectory planning problem can be formulated as the following constrained optimization problem:
min s t J = 0 Λ 1 s ˙ + λ k n q k 2 q ¯ k 1 s ˙ d s s . t τ m i n m s s ¨ + c s s ˙ 2 + g s τ m a x τ ˙ m i n m s s + p s s ˙ s ¨ + c s s ˙ 3 + g s s ˙ τ ˙ m a x q ˙ m i n q s s ˙ q ˙ m a x , q ¨ m i n q s s ¨ + q s s ˙ 2 q ¨ m a x q m i n q s s + 3 q s s ¨ s ˙ + q s s ˙ 3 q m a x s 0 = 0 , s T = Λ , s ˙ 0 = s ˙ 0 , s ˙ T = s ˙ T , s ˙ t 0 , t 0 , T

3. Optimization Problem Solving

3.1. Feasibility Region Analysis in the Phase Plane

The optimization variable s t constitutes a typical functional optimization problem. Directly solving this problem is challenging; hence, we simplify it into a finite discrete form.
Taking Δs as the step size, we sample along the path length, dividing the interval [ 0 , Λ ] into N segments and N + 1 grid points 0 = : s 0 , s 1 s N 1 , s N : = Λ . For each grid point s , we identify a series of surface regions with varying shapes. We arrange these surface regions in order to form a four-dimensional state space ( s , s ˙ , s ¨ , s ) defined by the boundaries of these surfaces. Within this high-dimensional space, motion is constrained independently of the initial conditions. When mapping from the subspace of ( s ˙ , s ¨ , s ) to the subspace of ( s ˙ 2 , s ¨ ) , we observe that the set of linear inequalities formed by second-order constraints delineates a convex polygonal region, as shown in Figure 1.
These constraints can be expressed by the following inequalities:
Γ i , m i n A i s ¨ + B i s ˙ 2 + C i Γ i , m a x , i = 1 , , 2 n ,
where A i , B i , C i , Γ i , m i n and Γ i , m a x   represent the elements in the vectors of physical quantities under the kinematic constraints q ¨ and dynamic constraints τ in model (7), respectively.
For each value of s, the pseudo-velocity and pseudo-acceleration are limited by the following:
0 s ˙ s ˙ m a x , Γ s s ¨ m i n , Γ s , s ˙ s ¨ s ¨ m a x , Γ s , s ˙
where:
                                                      s ˙ m a x , Γ s = m i n i , j m a x Γ i , Γ j A j Γ i C i A i Γ j C j A j B i A i B j , i , j = 1 , , 2 n , s ¨ m i n , Γ s , s ˙ = m a x i m i n Γ i Γ i C i B i s ˙ 2 A i , i = 1 , , 2 n , s ¨ m a x , Γ s , s ˙ = m i n i m a x Γ i Γ i C i B i s ˙ 2 A i , i = 1 , , 2 n ,
Similarly, when mapping to the ( s ¨ , s ) subspace, a set of linear inequalities formed by third-order constraints also defines another convex polygonal region, as shown in Figure 2. These third-order constraints are expressed as follows:
Ψ i , m i n a i s + b i * s ¨ + c i * Ψ i , m a x , i = 1 , , 2 n ,
where b i * = b i s ˙ , c i * = c i s ˙ 3 + h i s ˙ ; a i , b i , c i , Ψ i , m i n and Ψ i , m a x represent the elements in the vectors of physical quantities under the kinematic constraints q and dynamic constraints τ ˙ in model (7), respectively.
For each set of values for s and s ˙ , the boundaries for the pseudo-acceleration s ¨ and the pseudo-jerk s induced by the third-order constraints are as follows:
s ¨ m i n , Ψ s , s ˙ s ¨ s ¨ m a x , Ψ s , s ˙   s m i n s , s ˙ , s ¨ s s m a x s , s ˙ , s ¨
where:
          s ¨ m i n , Ψ s , s ˙ = m a x i , j m i n Ψ i , Ψ j a j Ψ i c i * a i Ψ j c j * a j b i * a i b j * , i , j = 1 , , 2 n s ¨ m a x , Ψ s , s ˙ = m i n i , j m a x Ψ i , Ψ j a j Ψ i c i * a i Ψ j c j * a j b i * a i b j * , i , j = 1 , , 2 n s m i n s , s ˙ , s ¨ = m a x i m i n Ψ i Ψ i c i * b i * s ¨ a i , i = 1 , , 2 n s m a x s , s ˙ , s ¨ = m i n i m a x Ψ i Ψ i c i * b i * s ¨ a i , i = 1 , , 2 n
We can redefine the first-order constraint q ˙ in model (7) as | s ˙ m a x , q q | q ˙ . For a fixed grid point s , set s ˙ as min s ˙ m a x , q s , s ˙ m a x , Γ s . Then, using a vector positioning algorithm, quickly determine whether the space enclosed by the third-order constraints within the s ¨ s plane is non-empty.
If not, calculate the pseudo-acceleration range s ¨ m i n , Ψ s , s ˙ , s ¨ m a x , Ψ s , s ˙ according to Equation (13) and verify whether this range intersects with the reference range s ¨ m i n , Γ s , s ˙ , s ¨ m a x , Γ s , s ˙ defined by Equation (11). If the initial space is empty or there is no intersection in the pseudo-acceleration range, gradually reduce s ˙ until an intersection is found.
By implementing the above method at each grid point on the path, it becomes possible to construct a set S s d of s , s ˙ that meets all the constraints, obtaining the projection of the high-dimensional state space boundary onto the s s ˙ plane.
Since calculations in high-dimensional space are complex and time-consuming, simplifying the problem to the s s ˙ plane can improve algorithm efficiency and speed. This “maximum pseudo-velocity projection” reveals the limited relationship between the path and joint speeds and narrows down the feasible region on the s s ˙ plane.
Furthermore, by employing Model Predictive Control reachability theory, we can analyze the constraint relationships between path points, and we can further refine the feasible region range on the s s ˙ plane. Given that d s ˙ 2 d s = 2 s ¨ , the velocity relationship between adjacent path points can be discretized as follows:
x i + 1 = x i + 2 Δ u i , i = 0 N 1 x i X i ,   u i U i
where x i is the state variable at stage i , representing the squared pseudo-velocity s ˙ i 2 at point s i ; u i is the control variable at stage i , representing a constant path pseudo-acceleration s ¨ i (covering the interval [ s i , s i + 1 ] ); and X i and U i are the explicit constraints for the state variable and control variable at stage i, respectively.
The maximum pseudo-velocity projection curve obtained is defined as an explicit constraint for the state variable, and the second-order kinodynamic constraints are defined as an explicit constraint for the control variable. The control-state set Ω i , defined jointly by these constraints, still maintains a convex polygonal shape:
Ω i u , x A i u i + B i x i + C i Γ i , x i S s d , i
Equations (14) and (15) describe a discrete-time linear system constrained by linear control-state inequality conditions. Based on this system, the optimal parameterization is computed in two passes, as depicted in Figure 3. In the first pass, starting from the initial pseudo-velocity state along the predetermined path, the boundaries of the reachable set L i are calculated stage by stage using a forward (fw) recursive method. The calculation process is as follows:
x + m a x u , x ~ Ω i , x + X i + 1 x ~ + 2 Δ u x m i n u , x ~ Ω i , x X i + 1 x ~ + 2 Δ u L i x x x x +
In the second pass, starting from the path’s end state and using a backward (bw) recursive minimum control strategy to ensure each state falls within the reachable set of its previous stage, the specific calculation formula is the following:
x i * min x i + 1 * 2 Δ m i n u i , x i +
Through this method, the backward phase trajectory x* updates the upper bound of the feasible region.

3.2. Trajectory Construction

When constructing a discrete model to ensure that the pseudo-velocity curve meets the constraint conditions throughout the entire motion process, it is typically necessary to use densely sampled points. However, this approach increases the dimensionality of the optimization variables, thereby reducing the efficiency of model solving. To address this issue, we used cubic B-spline curves within the feasible region of the phase plane to construct third-order continuous ( C 3 ) [17] pseudo-velocity curves, as shown in Figure 4.
In the process of defining the B-spline curves, we selected a set of path nodes, denoted as S = [ S 0 , S 1 , , S l 1 ] , where each pair of adjacent nodes encompasses mmm original path segments. Based on these nodes, we defined the corresponding pseudo-velocity vector f = [ f 0 , f 1 , , f l 1 ] , where each node S i corresponds to a pseudo-velocity vector component f i . These components f i , serving as control points, have a decisive impact on the geometric shape of the B-spline curve.
By substituting the optimization variable s t in model (7) with the pseudo-velocity vector f , the discrete model for the optimal trajectory planning problem can be reformulated as follows:
min f J = i = 1 N 1 s ˙ s i 1 + λ k n q k , i 2 q ¯ k , i s s . t τ m i n τ s i , s ˙ s i , s ¨ s i τ m a x τ ˙ m i n τ ˙ s i , s ˙ s i , s ¨ s i , s s i τ ˙ m a x q ˙ m i n q ˙ s i , s ˙ s i q ˙ m a x q ¨ m i n q ¨ s i , s ˙ s i , s ¨ s i q ¨ m a x q m i n q s i , s ˙ s i , s ¨ s i , s s i q m a x 0 s ˙ s i x i *
Since the number of control points is far less than the number of sampling points, the dimensionality of the optimization variables is accordingly reduced, thereby speeding up the model solving process.
Despite the control points being relatively sparse, B-splines demonstrate a robust ability for shape expression, allowing the pseudo-velocity curve to be finely adjusted to complex shapes to fulfill model requirements. Furthermore, B-splines exhibit local support characteristics, meaning the interaction between distant control points is minimal. This feature significantly facilitates the rapid convergence of the pseudo-velocity curve during the optimization process. The pseudo-velocity curve is represented in cubic B-spline form as follows:
s ˙ u = i = 0 n 1 N i , 3 u f i
Here, u = s Λ is a normalized path parameter, which maps the path length   s to intervals 0 ,   1 .
In Equation (19), the basis function N i , 3 u   in the cubic B-spline is calculated according to the following recursive relation:
        N i , 0 u = 1 , if u i u u i + 1 , 0 , otherwise .   N i , k u = u u i u i + k u i N i , k 1 u + u i + k + 1 u u i + k + 1 u i + 1 N i + 1 , k 1 u , k = 1,2 , 3 .  
The first and second derivatives of B-spline with respect to the normalized path parameter u are
d s ˙ u d u = d N 0,3 u d u f 0 + + d N n 1,3 u d u f n 1 = i = 0 n 1 d N i , 3 u d u f i d 2 s ˙ u d u 2 = d 2 N 0,3 u d u 2 f 0 + + d 2 N n 1,3 u d u 2 f n 1 = i = 0 n 1 d 2 N i , 3 u d u 2 f i
where
              d k N i , 3 u d u k = 3 d k 1 N i , 2 u d u k 1 1 u i + 3 u i d k 1 N i + 1,2 u d u k 1 1 u i + 4 u i + 1 , k = 1,2
The parameter vector u used in the B-spline contains n 2 uniformly distributed knots, calculated as follows:
u = 0 u 1 u 2 1 = 0 Δ s 2 Δ s Λ n 2 × 1 Λ  
where Δ s = Λ n 3 .
To ensure that the B-spline passes through the starting and ending points, i.e., s 0 = 0 , f 0 = s ˙ 0 and s T = Λ , f n 1 = s ˙ Λ , the first and last elements of the parameter vector u are each repeated four times:
u = 0 0 4 u i u i + 1 1 1 4 .
Therefore, the calculations for the pseudo-acceleration s ¨ and the pseudo-jerk s along the path s are as follows:
                                                                          s ¨ s = 1 Λ s ˙ u d s ˙ u d u u = s Λ   s s = 1 Λ 2 s ˙ ( u ) 2 d 2 s ˙ u d u 2 u = s Λ + 1 Λ s ˙ u d s ˙ u d u u = s Λ 2

4. Improved Carnivorous Plant Algorithm

To address complex kinematic and dynamic constraints and optimize robot manipulation paths in multi-objective environments, previous studies have utilized heuristic algorithms to identify optimal trajectories that satisfy third-order constraints [14,15,16,17]. Building on these findings, we conducted an in-depth analysis and developed further enhancements for the cubic B-spline curve. Specifically, this paper introduces the Improved Carnivorous Plant Algorithm (ICPA) to optimize the distribution of control points in the cubic B-spline, meeting third-order constraint requirements while enhancing path smoothness and efficiency.

4.1. Carnivorous Plant Algorithm

The Carnivorous Plant Algorithm (CPA) [18], introduced by Ong in 2021, is a bio-inspired meta-heuristic designed to mimic the survival strategies and adaptation mechanisms of carnivorous plants in challenging environments. The algorithm demonstrates high performance in tackling complex search space problems characterized by high-dimensional design variables, multiple constraints, and numerous local optima. The CPA operates through four main stages: initialization, classification and grouping, growth, and reproduction.
During the initialization stage, CPA constructs an initial population of N individuals consisting of carnivorous plants ( n CPlant ) and prey ( n Prey ) through random allocation. Importantly, n Prey should be k times of n CPlant . The spatial distribution of these individuals is represented in matrix form.
P o p = X 1,1 X 1,2 X 1 , D X 2,1 X 2,2 X 2 , D X N , 1 X N , 2 X N , D
where D represents the spatial dimension, and the sum of n CPlant and n Prey equals N . The random initialization of the population follows the equation:
X i , j = L b j + U b j L b j × rand
Let i = 1,2 , , N and j = 1,2 , , D , where L b and U b represent the lower and upper bounds of the search space, respectively. The term “ r a n d ” refers to a random number within the interval [0, 1].
Entering the classification and grouping stage, the algorithm sorts each individual in descending order according to the fitness value, and then it labels the top n CPlant individuals as carnivorous plants and the remaining n Prey individuals as prey. The most suitable prey is assigned to the top carnivorous plant. Immediately afterward, the second and third most suitable prey are paired with the corresponding carnivorous plants. This process repeats until each carnivorous plant is paired with its corresponding prey. After that, the extra prey is paired again starting with the highest-ranking carnivorous plant, and the pattern continues. Take Figure 5 as an example: it shows the visualization of carnivorous plants and prey, in which the population size n is set to 6 and the coefficient k is 2.
During the growth stage, which is part of the exploration phase, carnivorous plants release scents to attract prey. Captured prey provide nutrients that foster plant growth; however, not all preys are successfully captured. To account for this, an attraction rate ( a r ) is introduced, determining prey capture by comparing the a r value with a random number between 0 and 1. The equations used in this phase are as follows:
N e w C P i , j = g r o w t h × C P i , j + 1 g r o w t h × P r e y v , j g r o w t h = g r o w t h r a t e × r a n d i , j
  N e w P r e y i , j = g r o w t h × P r e y u , j + 1 g r o w t h × P r e y v , j , u v g r o w t h = g r o w t h _ r a t e × r a n d i , j i f f P r e y v > f P r e y u 1 g r o w t h _ r a t e × r a n d i , j i f f P r e y v < f P r e y u
where C P i , j represents the carnivorous plant of group i , P r e y v , j and P r e y u , j   respectively represent two randomly selected preys in group i , g r o w t h _ r a t e is a predefined value, and r a n d i , j is a random value chosen from the range [0, 1].
The reproduction stage marks the beginning of the exploitation process and is repeated based on the value of n CPlant . In this stage, carnivorous plants use the nutrients obtained to grow and reproduce, thereby ensuring that the optimal individual in the population, that is, the top-ranked individuals, can reproduce. This allows the CPA algorithm to focus on pursuing the optimal solution.
The mathematical expression of this reproduction stage is as follows:
N e w C P i , j = C P 1 , j + R e p r o d u c t i o n _ r a t e × r a n d i , j × m a t e i , j m a t e i , j = C P v , j C P i , j , i f f C P i > f C P v C P i , j C P v , j , i f f C P i < f C P v , i v 1
where C P 1 , j is the best solution, C P v , j is the randomly selected carnivorous plant, and R e p r o d u c t i o n _ r a t e is a predefined value.
The pseudocode of CPA is as follows (Algorithm 1):
Algorithm 1 Carnivorous Plant Algorithm
Input: Objective function   f x , where x = x 1 ,   x 2 ,   .   .   .   ,   x d ;
1: Number of iterations, population size, attraction rate, growth rate, and other parameters.
Output: Best solution found by the algorithm.
2: Initialize population with n individuals in d dimensions;
3: Evaluate the fitness of each individual;
4: Rank individuals according to their fitness values;
5: Determine the best individual g * as the first carnivorous plant;
6: while stopping criterion not met do
7:     Classify the top n CPlant individuals as carnivorous plants;
8:     Classify the remaining n Prey individuals as prey;
9:      Group the carnivorous plants and prey;
10:     /* Growth of carnivorous plants and prey */
11:     for  i = 1  to  n CPlant  do
12:          for  G r o u p   c y c l e = 1 to g r o u p _ i t e r do
13:               if  a t t r a c t i o n _ r a t e > random number then
14:                    Prey is captured and digested;
15:                     Generate a new carnivorous plant using Equation (27);
16:               else
17:                    Prey escapes;
18:                    Generate new prey using Equation (28);
19:               end if
20:          end for
21:     end for
22:     /* Reproduction of the first carnivorous plant */
23:     for  i = 1  to  n CPlant  do
24:      Generate a new carnivorous plant based on the first carnivorous plant using Equation (29);
25:     end for
26:     Evaluate the fitness of each new carnivorous plant and prey;
27:     Merge old and newly formed carnivorous plants and prey;
28:     Rank all individuals by fitness;
29:     Determine the current best individual g * as the first carnivorous plant;
30: end while

4.2. Improved Carnivorous Plant Algorithm

As the number of control points increases, the search efficiency of the Carnivorous Plant Algorithm (CPA) tends to decrease. To address this issue, this paper introduces the following improvements to the CPA: first, a chaotic search strategy is employed to optimize the algorithm’s initial solution, enhancing search diversity. Second, a growth stage strategy based on the normal distribution is implemented, allowing the algorithm to dynamically adjust the growth direction during the search process according to the quality of the solution. These enhancements improve both the efficiency and accuracy of the search. The improved algorithm is referred to as the Improved Carnivorous Plant Algorithm (ICPA).
Tent map has become an ideal choice for initializing the population due to its simplicity and efficiency in generating chaotic sequences [19], whose equation is the following:
  x n + 1 = x n 0.7 , 0 < x n 0.7 x n 1 x n 0.3 , 0.7 < x n 1
The specific method of using Tent map to initialize the population is as follows:
X i j 0 = x min + Chaos × x max x min , i = 1,2 , , n j = 1,2 , , d
where X i j 0 represents the initial value of the i -th individual on the j -th decision variable; x min and x max represent the lower and upper bounds of the search space for the independent variables, respectively; M denotes the number of individuals in the population; d is the dimension of the problem considered; and Chaos is the chaos factor generated through the tent map.
In the optimization problem of solving the minimum value, individuals with smaller objective function values are more likely to be close to the optimal solution. To use this characteristic to guide the search direction, we propose a new strategy in which the growth of offspring depends on the normal distribution N ( μ , σ 2 ) . Here, μ is the preferred parent, and σ is an adjustable standard deviation that controls the exploration range of new individuals.
According to the 6 σ principle of the normal distribution, the interval ( μ 3 σ , μ + 3 σ ) encompasses the majority of possible values. By adjusting σ, we can ensure that the generated offspring are concentrated around μ, thereby enhancing the algorithm’s ability to focus on the current best solution. Simultaneously, this approach allows for the exploration of new solutions within a certain range.
To implement this strategy, we replace the previous Equations (27) and (28) with new Equations (32) and (33) during the offspring generation phase:
N e w C P i , j = N C P i , j , ε + C P i , j P r e y v , j 6 2
N e w Prey i , j = N P r e y v , j , ε + P r e y v , j P r e y u , j 6 2 i f f P r e y v > f P r e y u N P r e y u , j , ε + P r e y u , j P r e y v , j 6 2 i f f P r e y v < f P r e y u
where ε is a small constant to ensure stability and maintain a certain degree of randomness.

4.3. Smooth and Time-Optimal Trajectory Planning Algorithm

During trajectory optimization, the fitness function evaluates the performance of the solution and guides it to meet objectives and constraints. To handle constraints that may be violated by the solution, we construct a fitness function based on a static penalty approach [20]. Specifically, at each node of the trajectory, we apply functions P c o n s t r a i n to compute various constraints:
P c o n s t r a i n x , x m i n , x m a x , C = C I x < x m i n + I x > x m a x
Here, x represents a certain constrained variable; x m i n and x m a x are the minimum and maximum limits of this variable, respectively. C is a fixed positive constant for this type of constraint, and I ( c o n d i t i o n ) is an indicator function used to check if the condition c o n d i t i o n is satisfied. P c o n s t r a i n produces a positive value when any constraint violation exists; if there are no violations, it returns 0.
The specific penalty terms constructed from the constraints in the discrete model (17) are as follows:
      P τ s j = i = 1 6 P c o n s t r a i n τ i s j , s ˙ j , s ¨ j , τ min , i , τ max , i , C τ , P τ ˙ s j = i = 1 6 P c o n s t r a i n τ ˙ i s j , s ˙ j , s ¨ j , s j , τ ˙ min , i , τ ˙ max , i , C τ ˙ , P q ˙ s j = i = 1 6 P c o n s t r a i n q ˙ i s j , s ˙ j , s ¨ j , q ˙ min , i , q ˙ max , i , C q ˙ , P q ¨ s j = i = 1 6 P c o n s t r a i n q ¨ i s j , s ˙ j , s ¨ j , q ¨ min , i , q ¨ max , i , C q ¨ , P q s j = i = 1 6 P c o n s t r a i n q i s j , s ˙ j , s ¨ j , q min , i , q max , i , C q , P s ˙ * s j = i = 1 6 P c o n s t r a i n s ˙ s j , 0 , s ˙ j * , C s ˙ * ,
By summing up the penalty terms for joint constraints at every point along the trajectory, the total penalty value can be determined. Utilizing this value, the fitness function is defined as follows:
i t n e s s = J + j = 1 n P τ s j + P τ ˙ s j + P q ˙ s j + P q ¨ s j + P q s j + P s ˙ * s j
In summary, the complete algorithm flow for achieving the smooth and time-optimal trajectory planning algorithm (TS-ICPA) of the robot is shown in Figure 6 based on the above discussion.

5. Simulation and Result Analysis

5.1. Analysis of Performance Improvement of Carnivorous Plant Algorithm

To assess the optimization performance of the Improved Carnivorous Plant Algorithm (ICPA), this study used six commonly referenced benchmark test functions from the literature [21]. Additionally, we conducted a detailed comparison of the ICPA with several other algorithms, including the original Carnivorous Plant Algorithm (CPA), Genetic Algorithm (GA) [22], Particle Swarm Optimization (PSO) [23], and Artificial Bee Colony (ABC) [24].
This comparison mainly focuses on the performance of each algorithm on the following characteristics: the ability to converge quickly, the effect of identifying a large number of local minima points, the ability to escape from local optimal solutions, and the avoidance of premature convergence.
The detailed information of each test function is listed in Table 1, where F1, F2, and F3 are unimodal benchmark functions, and F4, F5, and F6 are multimodal benchmark functions. For the parameters of the comparison algorithms, we adopted the fine-tuning values recommended in previous work. The parameters of all algorithms are summarized as follows:
(1)
CPA: group iteration = 2; attraction rate = 0.8; growth rate = 2; reproduction rate = 1.8; nCPlant = 20; nPrey = 80;
(2)
ICAP: group iteration = 2; attraction rate = 0.8; growth rate = 2; reproduction rate = 1.8; nCPlant = 20; nPrey = 80; Epsilon = 1 × 10−6;
(3)
GA: population size = 100; crossover probability, Pc = 0.8; mutation probability, Pm = 0.2;
(4)
PSO: population size = 100; learning factor, c = 1.5; learning factor, c2 = 1.5; inertia weight, wmax = 0.8; inertia weight, wmin = 0.4;
(5)
ABC: population size = 100.
The statistical significance of the results is ensured and errors are reduced by conducting 30 Monte Carlo runs for each function, with the mean and standard deviation of CPA, ICPA, GA, PSO, and ABC being recorded.
The corresponding test results are presented in Table 2. The optimal iterative convergence curve of each test function is illustrated in Figure 7. It can be observed that ICPA outperforms its comparison algorithm across all test functions.

5.2. Simulation Experiments and Analysis

A trajectory optimization simulation experiment was conducted on the UR5 collaborative robot along a predetermined path. Figure 8 shows the UR5 collaborative robot used in the simulation experiment. The DH parameters are used to calculate the kinematics and dynamics of the UR5 robot, with its coordinate system and associated parameters illustrated in Figure 9 and Table 3.
In the experiments of this paper, Matlab and CoppeliaSim (formerly V-REP) were mainly used as simulation platforms. The control code was written in C++. The experiments were run in the ROS environment, and the hardware platform was a computer equipped with an Intel(R) Xeon(R) i5-7500 3.4 GHz processor and 16 GB memory. With this hardware and software configuration, the experiment was able to achieve efficient simulation and data analysis of robot motion control, verifying the effectiveness and practical applicability of the algorithm.
Table 4 presents the required configurations and motion limits for each robot joint, including constraints on velocity, acceleration, and other key parameters. These limits define the safe operating range for each joint, ensuring that the robot’s motion stays within feasible boundaries. Based on the physical and mechanical specifications of the robot’s joints, these constraints are crucial for maintaining operational stability and ensuring smooth performance.
The generation process for the test path is as follows: firstly, five nodes are randomly selected within the range of [−80°, 80]6, and from these nodes, 200 equidistant nodes are generated. Then, cubic spline interpolation is applied to these equidistant nodes to form the joint space path q (s).
The positions of the five initial nodes used in the experiment are shown in Table 5. The s path is defined by ds = ‖dq‖. To ensure high accuracy of the trajectory solution, the test path was resampled before the experiment with an s resolution of 0.293, thereby transforming it into a dense s path containing 2400 nodes.
In this paper, we explore an innovative trajectory planning method based on phase plane theory. This method adopts the comprehensive optimization of total jerk and time as the core goal while considering complex kinodynamic constraints up to the third order.
Currently, there are no similar studies that consider these factors comprehensively, which makes comparative analysis of our approach with existing studies challenging. To demonstrate the effectiveness and advantages of our proposed method, this study compares two approaches through time-optimal simulation experiments. The first is our newly developed method, TS-ICPA (where the time-jerk optimization weight λ is set to 0), and the second is the Advanced TOPP-BA, which employs second-order kinodynamic constraints.
The number of B-spline control points of our trajectory optimization algorithm is 120, the upper limit of ICPA iterations is 200, and the penalty coefficient is set to 50. Apart from this, other experimental parameters remain consistent with those in the performance test.
Figure 10 shows the time parameterization results generated by the TOPP-BA using second-order kinodynamic constraints and our method (λ = 0) on the test path. Preliminary observations show that the two curves behave fairly closely in most cases, and the relative errors with each other remain within a small range. The results show a high correlation of 0.986. This numerical analysis, along with our observations, suggests that while there are some minor differences between the two algorithms, they generally produce very similar outcomes overall.
For further analysis, Figure 10 and Figure 11 present the normalized trajectory results for each joint. The constant-step fifth-order Dormand–Prince method, an explicit Runge–Kutta ODE solver, is applied to process the time-parameterized curve. To ensure accuracy, an integration step size of 0.008 s was used during the processing.
As shown in Figure 11, the joint velocity, acceleration, and torque trajectories of the two methods are highly similar in terms of overall shape, peak positions, and proximity to the set boundaries, which further supports the validity of our approach. In theory, both methods should result in the same motion time; however, our method exhibited a slight increase of 0.31 s. Despite this, the trajectories generated by our algorithm demonstrate greater smoothness and consistency compared to the reference TOPP-RA.
Two key factors contribute to this outcome. First, our method is heuristic, meaning it asymptotically approaches the optimal solution rather than directly finding the global optimum. Second, unlike TOPP-RA, our method incorporates additional constraints, specifically on jerk and torque rate, which enhances the smoothness and control of the generated trajectories.
The application of the TS-ICPA method results in improved joint motion stability, as illustrated in Figure 12. A comparative analysis of jerk and torque rate variations reveals that with the TOPP-BA approach (Figure 12a,c), the robot’s normalized joint jerk falls within the range of (−14.8, 6.0), while the normalized torque rate ranges from (−6.1, 17.4). In contrast, when the TS-ICPA method is applied (Figure 12b,d), both the normalized squared jerk and torque rate are significantly reduced and confined within the narrower range of (−1, 1), demonstrating the method’s effectiveness in enhancing motion smoothness and stability.
In the absence of additional constraints, the TOPP-BA method results in significant variations in jerk and torque rates along certain path segments. For example, Figure 12a demonstrates substantial fluctuations in the jerk of joint 1 between t = 0.59 s and t = 0.88 s, while Figure 12c shows marked variations in the torque rate of joint 2 between t = 0.68 s and t = 0.78 s. In contrast, our method introduces third-order motion dynamics constraints and employs cubic spline interpolation to smooth these abrupt changes. This approach effectively reduces the peak values of the parameter trajectories and enhances the smoothness of motion, as evidenced in Figure 12b,d. Although this method results in a slight increase in motion time, it significantly improves stability.
Figure 13 illustrates the relationship between the trajectory planning objectives—time efficiency and motion smoothness—as the trade-off coefficient λ takes on different values. This demonstrates how varying λ impacts the balance between minimizing the trajectory duration and enhancing the smoothness of the motion.
For an intuitive comparison with the case where λ = 0, both the trajectory duration and the total squared jerk have been normalized relative to their values at λ = 0. When the trade-off coefficient λ is set to 0.5, 1, and 1.5, the corresponding normalized jerk results for the trajectories generated by the proposed method are presented in Figure 14. This comparison highlights how adjusting λ influences the balance between trajectory duration and smoothness.
The results in Figure 13 indicate that as the trade-off coefficient λ increases from 0 to 0.5, the trajectory duration rises by 3.5% (reaching approximately 1.035), while the normalized total squared jerk decreases by about 38% (to approximately 0.62). As λ increases further to 1, the trajectory duration increases by an additional 9.8% compared to the baseline, with the normalized total squared jerk decreasing by around 54%. When λ reaches 1.5, the trajectory duration increases by 17.9%, accompanied by a significant reduction in normalized total squared jerk by about 65%.
From Figure 14, it can be inferred that as λ increases, the acceleration range for each joint contracts. For example, joint 1’s minimum acceleration decreases from −0.465 at λ = 0.5 to −0.351 at λ = 1.5, while its maximum acceleration reduces from 0.247 to 0.171. This suggests that increasing λ leads to smoother motion at the cost of longer trajectory duration, as reflected by the reduced acceleration extremes.
The numerical results align with our engineering intuition: achieving time efficiency often requires making compromises in motion smoothness. These findings highlight the adaptability and flexibility of our proposed trajectory optimization model, which can dynamically adjust the trade-off coefficient to meet specific requirements. This allows the model to strike an optimal balance between high-speed motion and smoothness. The demonstrated optimization strategy is highly valuable in scenarios where both motion efficiency and stability are critical considerations.

6. Conclusions

This paper introduces a novel approach for smooth and time-optimal trajectory planning of robots. The method centers on constructing an integrated objective function in the phase plane, which accounts for both the total execution time and the squared integral of acceleration. By optimizing these factors, the approach ensures that the robot’s motion is both efficient and smooth throughout the trajectory.
After formulating the objective function, this paper performs a comprehensive analysis of the kinematic and dynamic constraints up to the third order in the phase plane to define the feasible trajectory region. To further enhance trajectory smoothness and improve computational efficiency, a third-order B-spline interpolation method was utilized for trajectory generation.
Additionally, an enhanced Carnivorous Plant Algorithm was employed to optimize the trajectories, demonstrating notable efficiency in the optimization process. The conducted simulation experiments validate the effectiveness and superiority of the proposed method, showing its ability to generate smooth, time-optimal trajectories under constrained conditions.

Author Contributions

Conceptualization, X.Z.; formal analysis, B.W.; funding acquisition, B.W.; investigation, K.Z. and Z.C. (Zhengfeng Cao); methodology, C.L. and X.Z.; project administration, B.W.; resources, B.W. and Z.C. (Zhengfeng Cao); software, C.L. and X.Z.; supervision, B.W., K.Z., Z.C. (Zhengfeng Cao), and Z.C. (Zexin Chen); validation, C.L., X.Z., and Z.C. (Zexin Chen); visualization, C.L. and X.Z.; writing—original draft, C.L. and X.Z.; writing—review and editing, C.L. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by scientific and technological research program of chongqing municipal education commission: KJZD-K202400607 and special projects for technological innovation and application development in chongqing municipality: CSTC2021JSCX-GKSBX0055.

Data Availability Statement

Data are contained within the article.

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. Lin, C.; Chang, P.; Luh, J. Formulation and optimization of cubic polynomial joint trajectories for industrial robots. IEEE Trans. Autom. Control. 1983, 28, 1066–1074. [Google Scholar] [CrossRef]
  2. Gasparetto, A.; Zanotto, V. A new method for smooth trajectory planning of robot manipulators. Mech. Mach. Theory 2007, 42, 455–471. [Google Scholar] [CrossRef]
  3. Gasparetto, A.; Zanotto, V. A technique for time-jerk optimal planning of robot trajectories. Robot. Comput.-Integr. Manuf. 2008, 24, 415–426. [Google Scholar] [CrossRef]
  4. Wang, F.; Wu, Z.; Bao, T. Time-jerk optimal trajectory planning of industrial robots based on a hybrid woa-ga algorithm. Processes 2022, 10, 1014. [Google Scholar] [CrossRef]
  5. Machmudah, A.; Parman, S.; Zainuddin, A.; Chacko, S. Polynomial joint angle arm robot motion planning in complex geometrical obstacles. Appl. Soft Comput. 2013, 13, 1099–1109. [Google Scholar] [CrossRef]
  6. Hou, R.; Niu, J.; Guo, Y.; Ren, T.; Yu, X.; Han, B.; Ma, Q. A novel resolution scheme of time-energy optimal trajectory for precise acceleration controlled industrial robot using neural networks. Actuators 2022, 11, 130. [Google Scholar] [CrossRef]
  7. Bobrow, J.E.; Dubowsky, S.; Gibson, J.S. Time-optimal control of robotic manipulators along specified paths. Int. J. Robot. Res. 1985, 4, 3–17. [Google Scholar] [CrossRef]
  8. Shin, K.; Mckay, N. Minimum-time control of robotic manipulators with geometric path constraints. IEEE Trans. Autom. Control. 1985, 30, 531–541. [Google Scholar] [CrossRef]
  9. Shiller, Z.; Lu, H.H. Computation of path constrained time optimal motions with dynamic singularities. J. Dyn. Sys., Meas., Control 1992, 114, 34–40. [Google Scholar] [CrossRef]
  10. Verscheure, D.; Demeulenaere, B.; Swevers, J.; De Schutter, J.; Diehl, M. Time-optimal path tracking for robots: A convex optimization approach. IEEE Trans. Autom. Control. 2009, 54, 2318–2327. [Google Scholar] [CrossRef]
  11. Oberherber, M.; Gattringer, H.; Müller, A. Successive dynamic programming and subsequent spline optimization for smooth time optimal robot path tracking. Mech. Sci. 2015, 6, 245–254. [Google Scholar] [CrossRef]
  12. Ham, H.; Pham, Q.C. A new approach to time-optimal path parameterization based on reachability analysis. IEEE Trans. Robot. 2018, 34, 645–659. [Google Scholar]
  13. Barnett, E.; Gosselin, C. A bisection algorithm for time-optimal trajectory planning along fully specified paths. IEEE Trans. Robot. 2020, 37, 131–145. [Google Scholar] [CrossRef]
  14. Lin, H.I. A fast and unified method to find a minimum-jerk robot joint trajectory using particle swarm optimization. J. Intell. Robot. Syst. 2014, 75, 379–392. [Google Scholar] [CrossRef]
  15. Gao, X.; Mu, Y.; Gao, Y. Optimal trajectory planning for robotic manipulators using improved teaching-learning-based optimization algorithm. Ind. Robot. 2016, 43, 308–316. [Google Scholar] [CrossRef]
  16. Huang, J.; Hu, P.; Wu, K.; Zeng, M. Optimal time-jerk trajectory planning for industrial robots. Mech. Mach. Theory 2018, 121, 530–544. [Google Scholar] [CrossRef]
  17. Sencer, B.; Altintas, Y.; Croft, E. Feed optimization for five-axis cnc machine tools with drive constraints. Int. J. Mach. Tools Manuf. 2008, 48, 733–745. [Google Scholar] [CrossRef]
  18. Ong, K.M.; Ong, P.; Sia, C.K. A carnivorous plant algorithm for solving global optimization problems. Appl. Soft Comput. 2021, 98, 106833. [Google Scholar] [CrossRef]
  19. Javidi, M.; Hosseinpourfard, R. Chaos Genetic Algorithm Instead Genetic Algorithm. Int. Arab. J. Inf. Technol. 2015, 12, 163–168. [Google Scholar]
  20. Mezura-Montes, E.; Coello, C.A.C. Constraint-handling in nature-inspired numerical optimization: Past, present and future. Swarm Evol. Comput. 2011, 1, 173–194. [Google Scholar] [CrossRef]
  21. Jamil, M.; Yang, X.S. A literature survey of benchmark functions for global optimisation problems. Int. J. Math. Model. Numer. Optim. 2013, 4, 150–194. [Google Scholar] [CrossRef]
  22. Deng, W.; Zhang, X.; Zhou, Y.; Liu, Y.; Zhou, X.; Chen, H.; Zhao, H. An enhanced fast non-dominated solution sorting genetic algorithm for multi-objective problems. Inf. Sci. 2022, 585, 441–453. [Google Scholar] [CrossRef]
  23. Li, G.; Chou, W. Path planning for mobile robot using self-adaptive learning particle swarm optimization. Sci. China Inf. Sci. 2018, 61, 1–18. [Google Scholar] [CrossRef] [PubMed]
  24. Bhattacharjee, P.; Rakshit, P.; Goswami, I.; Konar, A.; Nagar, A.K. Multi-robot path-planning using artificial bee colony optimization algorithm. In Proceedings of the Third World Congress on Nature and Biologically Inspired Computing, Salamanca, Spain, 19–21 October 2011; pp. 219–224. [Google Scholar]
Figure 1. Convex polygonal region on the s ˙ 2 s ¨   plane.
Figure 1. Convex polygonal region on the s ˙ 2 s ¨   plane.
Machines 12 00802 g001
Figure 2. Convex polygonal region on the s s ¨   plane.
Figure 2. Convex polygonal region on the s s ¨   plane.
Machines 12 00802 g002
Figure 3. Determining the upper bound of the feasible region through reachability analysis.
Figure 3. Determining the upper bound of the feasible region through reachability analysis.
Machines 12 00802 g003
Figure 4. B-spline curves in the feasible region.
Figure 4. B-spline curves in the feasible region.
Machines 12 00802 g004
Figure 5. Grouping process with population size 6 and proportionality factor 2.
Figure 5. Grouping process with population size 6 and proportionality factor 2.
Machines 12 00802 g005
Figure 6. Time-smoothing optimal trajectory algorithm process based on ICPA.
Figure 6. Time-smoothing optimal trajectory algorithm process based on ICPA.
Machines 12 00802 g006
Figure 7. Atlas of optimal iteration convergence curves for benchmark functions.
Figure 7. Atlas of optimal iteration convergence curves for benchmark functions.
Machines 12 00802 g007
Figure 8. Graphical result of UR5 modelled in CoppeliaSim.
Figure 8. Graphical result of UR5 modelled in CoppeliaSim.
Machines 12 00802 g008
Figure 9. Schematic and frames assignment of UR5.
Figure 9. Schematic and frames assignment of UR5.
Machines 12 00802 g009
Figure 10. TOPP—BA and TS—ICPA (λ = 0) time parameterization results compared.
Figure 10. TOPP—BA and TS—ICPA (λ = 0) time parameterization results compared.
Machines 12 00802 g010
Figure 11. (a) Normalized results of TOTP-BA; (b) normalized results of TS-ICPA.
Figure 11. (a) Normalized results of TOTP-BA; (b) normalized results of TS-ICPA.
Machines 12 00802 g011
Figure 12. (a) The normalized jerk results for TOTP-BA. (b) The normalized jerk results for TS-ICPA. (c) The normalized torque rate results for TOTP-BA. (d) The normalized torque rate results for TS-ICPA.
Figure 12. (a) The normalized jerk results for TOTP-BA. (b) The normalized jerk results for TS-ICPA. (c) The normalized torque rate results for TOTP-BA. (d) The normalized torque rate results for TS-ICPA.
Machines 12 00802 g012
Figure 13. Relationship between normalized trajectory duration and normalized total squared jerk.
Figure 13. Relationship between normalized trajectory duration and normalized total squared jerk.
Machines 12 00802 g013
Figure 14. (a)The results when λ equals 0. (b) The results when λ equals 0.5. (c) The results when λ equals 1.5.
Figure 14. (a)The results when λ equals 0. (b) The results when λ equals 0.5. (c) The results when λ equals 1.5.
Machines 12 00802 g014
Table 1. Set of benchmark functions.
Table 1. Set of benchmark functions.
FunctionDimRangeOptimal
F 1 x = i = 1 n j 1 i x j 2 10[−100, 100]0
F 2 x = max i x i , 1 i n 10[−100, 100]0
F 3 x = i = 1 n x i + 0.5 2 10[−100, 100]0
F 4 x = i = 1 n x i 2 10 cos 2 π x i + 10 10[−5.12, 5.12]0
F 5 x = 20 e x p 0.2 1 n i = 1 n x i 2
e x p 1 n i = 1 n cos 2 π x i + 20 + e
10[−32, 32]0
F 6 x = i = 1 11 a i x 1 b i 2 + b i x 2 b i 2 + b i x 3 + x 4 2 4[−5, 5]0.00030
Table 2. Results of benchmark functions.
Table 2. Results of benchmark functions.
FunctionTypeCPAICPAGAPSOABC
F1Mean 1.59 × 1 0 0 1.60 × 1 0 1 3.85 × 1 0 3 4.41 × 1 0 1 3.57 × 1 0 2
Std. 9.48 × 10 1 3.61 × 10 2 1.98 × 10 2 6.06 × 10 1 1.63 × 10 2
F2Mean 3.46 × 10 2 1.77 × 10 3 2.45 × 10 1 3.04 × 10 2 4.54 × 10 0
Std. 1.98 × 10 3 5.34 × 10 4 2.14 × 10 0 1.65 × 10 2 7.61 × 10 1
F3Mean 1.38 × 10 5 2.29 × 10 8 1.19 × 10 2 5.39 × 10 6 3.38 × 10 2
Std. 3.67 × 10 6 5.44 × 10 9 4.15 × 10 1 7.30 × 10 6 5.31 × 10 4
F4Mean 2.24 × 10 1 4.64 × 10 0 2.94 × 10 1 1.53 × 10 1 3.22 × 10 1
Std. 7.55 × 10 0 6.74 × 10 1 9.43 × 10 0 9.04 × 10 0 5.10 × 10 0
F5Mean 1.11 × 10 3 3.98 × 10 5 9.30 × 10 0 8.23 × 10 1 1.61 × 10 1
Std. 3.41 × 10 5 1.28 × 10 5 5.50 × 10 0 1.16 × 10 0 1.67 × 10 2
F6Mean 3.09 × 10 4 3.07 × 10 4 6.65 × 10 3 3.08 × 10 4 7.31 × 10 4
Std. 1.51 × 10 6 8.06 × 10 8 5.54 × 10 3 9.59 × 10 16 5.27 × 10 6
Table 3. The DH parameters used to calculate the UR5 kinematics and dynamics.
Table 3. The DH parameters used to calculate the UR5 kinematics and dynamics.
Kinematicsalpha [rad]a [m]d [m]theta [rad]
Joint 1π/200.0891590
Joint 20−0.4250π/2
Joint 30−0.3922500
Joint 4π/200.10915−π/2
Joint 5−π/200.094650
Joint 6000.08230
Table 4. UR5 experimental boundary conditions.
Table 4. UR5 experimental boundary conditions.
Joint i123456
Velocity (deg/s)160160160160160160
Acceleration (deg/s2)573573573114611461146
Jerk(deg/s3)10,00010,00010,00010,00010,00010,000
Torque (Nm)100100100150150150
Torque rate(Nm/s)500500500500500500
Table 5. Five initial node positions of the test path.
Table 5. Five initial node positions of the test path.
Position No.Joint No. (°)
123456
1−27.16−1.13−66.756.3117.22−32.13
233.52−11.10−70.92−44.91−52.19−13.37
357.5232.53−34.89−75.9955.31−28.93
4−6.75−54.11−10.69−57.0869.6258.80
5−23.6268.46−50.3565.07−78.6056.47
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Wei, B.; Liu, C.; Zhang, X.; Zheng, K.; Cao, Z.; Chen, Z. Smooth and Time-Optimal Trajectory Planning for Robots Using Improved Carnivorous Plant Algorithm. Machines 2024, 12, 802. https://doi.org/10.3390/machines12110802

AMA Style

Wei B, Liu C, Zhang X, Zheng K, Cao Z, Chen Z. Smooth and Time-Optimal Trajectory Planning for Robots Using Improved Carnivorous Plant Algorithm. Machines. 2024; 12(11):802. https://doi.org/10.3390/machines12110802

Chicago/Turabian Style

Wei, Bo, Changyi Liu, Xin Zhang, Kai Zheng, Zhengfeng Cao, and Zexin Chen. 2024. "Smooth and Time-Optimal Trajectory Planning for Robots Using Improved Carnivorous Plant Algorithm" Machines 12, no. 11: 802. https://doi.org/10.3390/machines12110802

APA Style

Wei, B., Liu, C., Zhang, X., Zheng, K., Cao, Z., & Chen, Z. (2024). Smooth and Time-Optimal Trajectory Planning for Robots Using Improved Carnivorous Plant Algorithm. Machines, 12(11), 802. https://doi.org/10.3390/machines12110802

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop