Method for obtaining optimized trajectory of robotic arm based on improved multi-objective PSO algorithm
By improving the multi-objective PSO algorithm and NURBS curve to optimize the joint trajectory of the robotic arm, the multi-objective and multi-constraint problems in the robotic arm trajectory optimization are solved, and more efficient robotic arm operation and smoother joint movement are achieved.
Patent Information
- Application Number
- CN202211555177.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-12-06
- Publication Date
- 2025-07-08
- Estimated Expiration
- 2042-12-06
AI Technical Summary
The prior art is difficult to achieve comprehensive optimization on multiple indicators in the optimization of robotic arm trajectory, and it is easy to fall into local optimal solutions, and traditional methods are difficult to reasonably allocate weight coefficients, resulting in insufficient operating efficiency and performance of robotic arm.
The improved multi-objective PSO algorithm is adopted, combined with NURBS curve and non-dominant sorting genetic algorithm II, and the optimal solution set is obtained by optimizing joint trajectories, establishing variation strategies and dynamic weighting methods.
It improves the operating efficiency and mechanical performance of the robotic arm, reduces joint running time, smooths joint trajectory, and optimizes joint time, acceleration and torque indicators.
Smart Images

Figure CN116352697B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of robotic arm trajectory acquisition, and particularly to a method for optimizing and acquiring a robotic arm trajectory based on an improved multi-objective PSO algorithm. Background Art
[0002] In practical applications, robotic arms (robotic hands or robots) often need to achieve comprehensive optimization in multiple metrics. Under the constraints of joint angles, speeds, and accelerations, trajectory optimization has different objectives for different tasks. Therefore, in the process of robot trajectory optimization, traditional and obviously simple trajectory fitting methods, single-objective optimization, or single-constraint optimization are significantly insufficient. In addition, the orders of magnitude and dimensions of the optimization objectives are regularly different, which makes it difficult to reasonably allocate weight coefficients, and thus it is easy to fall into local optimal solutions, especially when the Pareto optimal front surface is involved.
[0003] Therefore, in order to solve problems such as trajectory fitting methods, multi-objectives, multi-constraints, and optimization algorithm complexity in robotic arm trajectory optimization, and to improve the operation efficiency and mechanical performance of robotic arms.
[0004] The present invention is hereby proposed. Summary of the Invention
[0005] The object of the present invention is to provide a method for optimizing and acquiring a robotic arm trajectory based on an improved multi-objective PSO algorithm. The trajectory obtained by using the present invention can significantly improve the operation efficiency and mechanical performance of the robotic arm.
[0006] To achieve the above object, the present invention adopts the following scheme:
[0007] A method for optimizing and acquiring a robotic arm trajectory based on an improved multi-objective PSO algorithm, comprising the following steps:
[0008] SA: Construct a joint trajectory of each joint of the target robotic arm with respect to angle and time, and use the joint trajectory as the object to be optimized;
[0009] SB: Use the improved multi-objective PSO algorithm to optimize the joint trajectory to obtain an optimal solution set, and obtain the joint trajectory corresponding to the optimal solution set.
[0010] Preferably,
[0011] SA specifically is:
[0012] SA1: Establish a simulation model of the target robotic arm, and the simulation model of the target robotic arm is a spatial simulation model;
[0013] SA2: Perform inverse calculation on the path point trajectory of each joint of the target robotic arm simulation model to obtain the angle value of each joint;
[0014] SA3: According to the angle values of each joint, NURBS curves are used for joint trajectory planning to obtain the joint trajectories corresponding to each joint. The joint trajectories are obtained by fitting the angle values of the joints in space with NURBS curves;
[0015] SA4: Obtain the basic motion parameters of each joint required for optimization according to the joint trajectories.
[0016] Preferably,
[0017] SB specifically includes:
[0018] SB1. Construct an initial particle swarm P related to the angle and time of each joint based on the joint trajectories i ;
[0019] SB2. Use a single best evaluation and selection method to evaluate and select each joint of the initial particle swarm P i to obtain the initial individual Pareto solution set and its corresponding fitness, denoted as pBest i and pF i ; Use a global best evaluation and selection method to evaluate and select each joint of the initial particle swarm P i to obtain the initial global Pareto solution set and its corresponding fitness, denoted as gBest i and gF i ;
[0020] SB3. Update the velocity and position of the particles, mutate the particle swarm to obtain a new particle swarm, and denote the new particle swarm as P
[0021] ; i+1 ;
[0022] SB4. Use a single best evaluation and selection method to evaluate and select each particle of each joint of the particle swarm P i+1 to obtain the initial individual Pareto solution set and its corresponding fitness, denoted as pBest i+1 and pF i+1 ; Use a global best evaluation and selection method to evaluate and select each joint of the particle swarm P i+1 to obtain the initial global Pareto solution set and its corresponding fitness, denoted as gBest i+1 and gF i+1 ;
[0023] SB5. Perform a loop determination operation. If pBest i+1 < pBest i and gBest i+1 < gBest i , then repeat SB3 to SB5. Otherwise, output gBest = gBesti+1 and gF i+1 。
[0024] Preferably,
[0025] The specific method for individual best evaluation and selection includes:
[0026] Individual evaluation: Taking f (i,j) , g (i,j) , h (i,j) as the first improved multi-objective, obtain the evaluation values of each joint f (i,j) , g (i,j) , h (i,j) , and the objective functions of f (i,j) , g (i,j) , h (i,j) are:
[0027]
[0028] where f (i,j) is the total time of each joint, used to evaluate the efficiency of the joint; g (i,j) is the average beating of each joint, used to evaluate the pulsation index of the joint force; h (i,j) is the average acceleration of each joint, used to evaluate the index of joint energy consumption;
[0029] where t (i,j) is each step moment of each joint, Δt (i,j) is the time of each step of each joint, T j is the total time of each joint, a (i,j) is the acceleration of each joint, J (i,j) is the curvature of the angular acceleration of each joint, M is the number of path points, and j is the joint number;
[0030] t (i,j) , a (i,j) , J (i,j) are the motion basic parameters of each joint required for optimization obtained according to the joint trajectory;
[0031] Taking f (i,j) , g (i,j) , h (i,j) as the solutions obtained by the objective function are the non-dominated solutions obtained in this evaluation;
[0032] Individual selection:
[0033] Adopt the cyclic crowding sorting algorithm to filter and obtain the retained solutions from the non-dominated solutions as the individual Pareto solution set;
[0034] The specific method for global optimal evaluation and selection includes:
[0035] Global evaluation: Taking f1, f2, and f3 as the second improved multi-objectives, the objective functions of f1, f2, and f3 are as follows:
[0036]
[0037] Among them, f1 is the total time for evaluating the efficiency of the robotic arm, f2 is the total average joint torque for evaluating the joint stress state, and f3 is the joint force pulsation index;
[0038] Among them, T j is the total time of each joint, T is the total time of all joints, τ (i,j) is the torque of each joint, J (i,j) is the jerk of the angular acceleration of each joint, N is the number of joints, and M is the number of path points;
[0039] τ (i,j) 、J (i,j) are the motion basic parameters of each joint required for optimization according to the joint trajectory;
[0040] The solutions obtained with f1, f2, and f3 as the objective functions are the non-dominated solutions obtained in this evaluation;
[0041] Global selection:
[0042] The cyclic crowding sorting algorithm is used to filter and obtain the retained solutions from the non-dominated solutions according to the congestion distance as the global Pareto solution set.
[0043] Preferably,
[0044] Before individual selection, it also includes normalizing the non-dominated solutions f (i,j) , g (i,j) , h (i,j) .
[0045] Preferably,
[0046] Before global selection, it also includes normalizing the non-dominated solutions f1, f2, and f3.
[0047] Preferably,
[0048] The dynamic fitness of each particle in the Pareto solution set is denoted as F, and the particle with the largest dynamic fitness F
[0049] is the individual best particle or the global optimal particle, and F is obtained in the following way:
[0050]
[0051] Among them, ω i is a random value, P is the best number of particles, and f i (x) takes the normalized f(i,j) , g (i,j) , h (i,j) or the normalized f1, f2, f3 or f (i,j) , g (i,j) , h (i,j) or f1, f2, f3.
[0052] Preferably,
[0053] The parameters of the path points in the path point trajectory of each joint include: position and pose information, and the position and pose information is denoted as: (X, Y, Z, R_X(°), R_Y(°), R_Z(°)), where X represents the X-axis coordinate position of the path point, Y represents the Y-axis coordinate position of the path point, Z represents the Z-axis coordinate position of the path point, R_X(°) represents the rotation angle of the path point around the X-axis, R_Y(°) represents the rotation angle of the path point around the Y-axis, and R_Z(°) represents the rotation angle of the path point around the Z-axis;
[0054] After inverse calculation based on the position and pose information, the corresponding joint angle q of each joint is obtained j,g =(q j , t g ), q j,g represents the angle value of joint j at the control vertex g, and the time at this moment is t g ;
[0055] The NURBS curve is obtained through the following formula:
[0056]
[0057] where, N g,k (u) is the k-th basis function, n is the number of joint path points, k is the order of NURBS, q g is the control vertex of joint j on the NURBS curve, and the angle value of q g at the control vertex g takes q j,g , is the weight of the control vertex.
[0058] The beneficial effects of the present invention are:
[0059] To improve the operating efficiency and mechanical performance of the robotic arm, an improved multi-objective particle swarm optimization (IMPSO) algorithm is proposed to optimize the "joint trajectory fitted by NURBS curve (quintic non-uniform rational B-spline curve)". The improved non-dominated sorting genetic algorithm II (NSGA-II) is used to sort the particles to achieve filtering and obtaining the retained solutions from the non-dominated solutions according to the crowding distance. And a mutation strategy, a dynamic weighting method, and a normalized weight multi-objective function are established in IMPSO. The improved multi-objective is the biggest innovation, especially in the evaluation of single optimal particles and global optimal particles. With f (i,j) , g (i,j) , h (i,j) as the objectives to evaluate the best single particle corresponding to each joint. With f1, f2, f3 as the objectives to evaluate the global optimal particle. The optimal Pareto is obtained under the kinematic constraints of the robot. Compared with the existing method that seeks the optimal path with the end path as the objective. The optimal joint path obtained by fitting the joint path with the angle as the objective in the present invention can make the running time of each joint shorter and the trajectory in the joint space smoother. BRIEF DESCRIPTION OF THE DRAWINGS
[0060] Figure 1 is the schematic flow chart of the present invention.
[0061] Figure 2 is the schematic flow chart of the sorting method of the present invention.
[0062] Figure 3 is the schematic diagram of the preferred ions. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0063] To enable those skilled in the art to better understand the technical solutions of the present invention / invention, the present invention / invention will be further described in detail below with reference to the drawings and specific embodiments.
[0064] Example 1:
[0065] As Figures 1 to 2 shown.
[0066] An improved multi-objective PSO algorithm is proposed to optimize the trajectory of the current KR16. First, a quintic NURBS curve is selected for joint space trajectory (joint trajectory) interpolation. The overall is initialized, evaluated, and returned to the Pareto solution set. Then after cyclic crowding sorting, it is returned to the Pareto solution set. According to the dynamic weighting method and the improved normalized weight multi-objective function, the individual optimal and global optimal particles are selected. Next, the offspring particles are updated, mutated, and evaluated again for solution set update. The cyclic crowding sorting is performed again until the number of iterations reaches the preset value, and finally the solution is completed and the optimal solution set is output.
[0067] Finally, an experimental comparison was made between the proposed method and the current KR16. In this paper, the results using IMPSO show that, compared with the current KR16, the running time of each individual joint is shorter and the trajectory in the joint space is smoother. The contributions of the present invention are as follows: an improved multi-objective PSO is proposed to optimize a multi-objective function including time, angular acceleration, jerk (angular acceleration rate), and joint torque. For the first time, two sets of dynamic evaluation methods are adopted to select the individual best and global best particles. For the first time, a mathematical model of a quintic NURBS curve for joint space trajectory (joint trajectory) interpolation is established. For the first time, an improved non-dominated sorting genetic algorithm II (NSGA-II) is adopted in the improved multi-objective PSO.
[0068] Next, based on the above technical concept, in this embodiment, the KUKA KR16 robot (a type of robotic arm) model will be taken as an example to seek the optimal trajectory using the present invention.
[0069] The KUKA KR16 robot model is a common robotic arm model.
[0070] SA1: Establish a simulation model of the target robotic arm, and the simulation model of the target robotic arm is a spatial simulation model; specifically, this process can be: modeling KUKA KR16 using matlab.
[0071] SA2: Perform inverse calculation on the path point trajectories of each joint of the simulation model of the target robotic arm to obtain the angle values of each joint; specifically, this procedure can be: after performing kinematic analysis to obtain the path point trajectories of each joint, and using inverse calculation to obtain the angle values of each joint.
[0072] As shown in Table 1, Table 1 represents the parameters of four path points in the Cartesian space, where X represents the X-axis coordinate position of the path point, Y represents the Y-axis coordinate position of the path point, Z represents the Z-axis coordinate position of the path point, R_X(°) represents the rotation angle of the path point around the X-axis, R_Y(°) represents the rotation angle of the path point around the Y-axis, and R_Z(°) represents the rotation angle of the path point around the Z-axis. Point_1, Point_2, Point_3, Point_4 represent the four path points of one joint, and for generality, these four path points are randomly selected in the working space of the robot.
[0073] Table 1:
[0074]
[0075] After performing inverse calculation based on the above path point parameters, Table 2 is obtained, and Table 2 represents the angle values corresponding to each joint at the four path points in the joint space. J-1, J-2, J-3, J-4, J-5, J-6 represent six joints.
[0076] Table 2:
[0077]
[0078] After obtaining the above parameters, perform the following steps to obtain the joint trajectory (joint space trajectory) and the motion basic parameters of each joint.
[0079] SA3: According to the angle values of each joint, perform joint trajectory planning using NURBS curves to obtain the joint trajectory corresponding to each joint. The joint trajectory is obtained by fitting the angle values of the joint in space with NURBS curves;
[0080] SA4: Obtain the motion basic parameters of each joint required for optimization according to the joint trajectory.
[0081] Specifically, the joint trajectory can be obtained by fitting these joint space points with a fifth-order NURBS curve. The point q in the joint space j,g =(q j , t g ) can be obtained through the above inverse calculation, where q j,g - the angle value of joint j at point g, and t g represents the time at this moment. In the formula: j = 1, 2, 3... m, g = 1, 2, 3... n, m - the number of joints of the robot 6; n - the number of path points.
[0082] The NURBS curve is a function C(u) of the knot vector u controlled by the control point q g . It is a non-uniform rational polynomial of the NURBS curve and is obtained through:
[0083] Obtained.
[0084] Where N g,k (u) is the k-th basis function, n - the number of joint path points, k is the order of the NURBS, q g is the control vertex of the NURBS curve, and q g takes the angle value q j,g at the control vertex g, is the weight of the control point. The knot vector is a non-decreasing real vector. The knot vector u is defined as: u = [u0, u1... u g ... u n+k+1 ; where, u g ≤ u g+1 (g = 1, 2, 3... n + k), and u g is the knot value of the knot vector.
[0085] Typically, the repeat times of the first and last knots of a Nurbs curve are k + 1, u0 = u1... = u k , u n+1 = u n+2 ... = u n+k+1 , and the parameter domain of u is [u k , u n+1 . The curve will pass through the first and last control vertices. Specifically, when and are both non-zero, the curve is tangent to the head point and the end point. Therefore, typically, u0 = u1... = u k = 0, u n+1 = u n+2 ... = u n+k+1 = 1, and the parameter domain of u is [0, 1]. According to the deboor-cox recurrence formula, the B-spline basis function N g,k (u) of the NURBS curve is defined as:
[0086]
[0087] where N g,k (u) is the B-spline basis function of order k defined in the knot vector u, g is the knot number, and k is the order of the basis function.
[0088] So far, each joint of the target robotic arm in this embodiment constructs a joint trajectory with respect to angle and time.
[0089] Taking the joint trajectory as the object to be optimized, how to obtain the optimal joint trajectory is what needs to be achieved in the following of this embodiment.
[0090] The process of obtaining the optimal joint trajectory includes:
[0091] SB1. Based on the joint trajectory, construct an initial particle swarm P i for each joint with respect to angle and time;
[0092] SB2. Use a single best evaluation and selection method to evaluate and select each joint of the initial particle swarm P i to obtain the initial individual Pareto solution set and its corresponding fitness, denoted as pBest i and pF i ; use a global best evaluation and selection method to evaluate and select each joint of the initial particle swarm P i to obtain the initial global Pareto solution set and its corresponding fitness, denoted as gBest i and gF i ;
[0093] SB3. Update the velocity and position of the particles, mutate the particle swarm to obtain a new particle swarm, and denote the new particle swarm as P i+1 ;
[0094] SB4. Use a single best evaluation and selection method to evaluate and select each particle of each joint of the particle swarm P i+1 to obtain the initial individual Pareto solution set and its corresponding fitness, denoted as pBest i+1 and pF i+1 ; Use a global best evaluation and selection method to evaluate and select each joint of the particle swarm P i+1 to obtain the initial global Pareto solution set and its corresponding fitness, denoted as gBest i+1 and gF i+1 ;
[0095] SB5. Perform a loop determination operation. If pBesti+1 < pBest i and gBesti+1 < gBest i are satisfied, then repeat SB3 to SB5. Otherwise, output gBest = gBesti+1 and gF i+1 .
[0096] Specifically, it is first necessary to set up a robot trajectory optimization problem, which consists of two sets of multi-objective, multi-variable, and kinematic constraints.
[0097] Compared with the standard multi-objective particle swarm optimization algorithm, the improved multi-objective PSO algorithm in this embodiment mainly makes the following improvements:
[0098] (1) The improved multi-objective is particularly suitable for the evaluation of single best particles and global best particles.
[0099] (2) Adopt an improved NSGA-II sorting method, that is, cyclic crowding sorting as the sorting strategy for the optimal solutions.
[0100] (3) Establish a mutation strategy, a dynamic weighting method, and a normalized weight multi-objective function in IMPSO.
[0101] First of all, the single best evaluation and selection method specifically includes:
[0102] Individual evaluation: Taking f (i,j) , g (i,j) , h (i,j) as the first improved multi-objective, obtain the evaluation values of f (i,j) , g (i,j) , h (i,j) for each joint, and the objective functions of f (i,j) , g (i,j) , h (i,j) are:
[0103]
[0104] Among them, f (i,j) is the total time of each joint, used to evaluate the efficiency of the joint; g (i,j) is the average beat of each joint, used to evaluate the pulsation index of the joint force; h (i,j) is the average acceleration of each joint, used to evaluate the index of joint energy consumption;
[0105] Among them, t (i,j) is each step time of each joint, Δt (i,j) is the time of each step of each joint, T j is the total time of each joint, a (i,j) is the acceleration of each joint, J (i,j) the gradient of the angular acceleration of each joint, M is the number of path points, and j is the joint number;
[0106] t (i,j) 、a (i,j) 、J (i,j) are the motion basic parameters of each joint required for optimization according to the joint trajectory;
[0107] Taking f (i,j) , g (i,j) , h (i,j) as the solutions obtained by the objective function are the non-dominated solutions obtained in this evaluation;
[0108] Individual selection:
[0109] The loop crowding sorting algorithm is used to filter and obtain the retained solutions from the non-dominated solutions according to the congestion distance as the individual Pareto solution set.
[0110] The specific methods for global optimal evaluation and selection include:
[0111] Global evaluation: Taking f1, f2, f3 as the second improved multi-objectives, the objective functions of f1, f2, f3 are:
[0112]
[0113] Among them, f1 is the total time for evaluating the efficiency of the robotic arm, f2 is the total average joint torque for evaluating the joint stress state, and f3 is the evaluation of the joint force pulsation index;
[0114] Among them, T j is the total time of each joint, T is the total time of all joints, τ (i,j) is the torque of each joint, J (i,j) the gradient of the angular acceleration of each joint, N is the number of joints, and M is the number of path points;
[0115] τ (i,j) 、J (i,j) are the motion basic parameters of each joint required for obtaining optimization according to the joint trajectory;
[0116] The solutions obtained with f1, f2, and f3 as the objective functions are the non-dominated solutions obtained in this evaluation;
[0117] Global selection:
[0118] The loop crowded sorting algorithm is used to filter and obtain the retained solutions from the non-dominated solutions according to the congestion distance as the global Pareto solution set.
[0119] Furthermore, in this embodiment, the loop crowded sorting algorithm is used to filter and obtain the retained solutions from the non-dominated solutions according to the congestion distance. Specifically, to solve the singularity problem of the crowded distance sorting in NSGA-II, this embodiment applies the loop crowded sorting (CCS) algorithm to improve it. The improved non-dominated sorting process is as Figure 2 shown. P t is the current solution set, Q t is the offspring particle, R t contains all particles (P t and Q t ). In the worst case, when all solutions are non-inferior solutions, N solutions need to be selected from 2N through crowded distance sorting (N is the population size); k is the size of the saved solution set. The task of the CCS algorithm is to filter and retain k solutions from the non-dominated solutions F (a total of t solutions) according to the congestion distance. P t+1 is the solution set after the CCS algorithm.
[0120] The non-dominated solutions are sorted to obtain the first sorting result, then the first sorting result is sorted by the crowded distance, then the solutions with the minimum crowded distance are screened, and then the solutions with the minimum crowded distance are deleted to obtain the second sorting result, and finally P t+1 is obtained. Among them, for SB2, the individual Pareto solution set obtained through the evaluation of the single best and the global Pareto solution set obtained through the evaluation of the global optimum are the initial Pareto solutions. Since there are no offspring particles, the initial Pareto solutions are maintained after selection.
[0121] In this embodiment, the boundary conditions also need to be set in the conventional manner, and the positions and velocities of the particles are updated, and the mutant particle swarm is obtained to get a new particle swarm.
[0122] The process of obtaining the optimal solution set in this embodiment can be summarized as follows:
[0123] First, initialize the particle swarm to obtain the particle swarm: P0. Then, evaluate the optimal individual and the optimal global particle of P0 respectively, and return the Pareto solutions of P0, pBest0, and gBest0. Through non-dominated sorting and calculating the crowding distance of particle P i , it returns F1 (the Pareto front of P0), F2 (the order level below F1), and F3 (the order level below F2). Then, initialize the velocity V0 and position X0 of particle P0. After updating the particle swarm P0 and particle swarm mutation, the particle swarm P1 is obtained. After entering the particle swarm iteration loop optimization program, update the velocity V i and position X i of particle Pi. Evaluate particle P i with two multi-objective functions, perform non-dominated sorting and calculate F 1_i-1 (the Pareto front of P _i-1 ), F 2_i-1 (the order level below F 1_i-1 ), F 3_i-1 (the consecutive level above F 2_i-1 ), and the crowding distance of particle P i , which returns the new F 1_i , F 2_i , F 3_i , pBest _i , and gBest _i . Compared with the previous pBest and gBest, new pBest and pBest can be further obtained. Finally, update the particle swarm P i according to the velocity V i and position X i+1 . The new particle swarm P i+1 is updated after particle swarm variation, and the optimization loop program is executed again until the number of iterations reaches the preset value, and finally the solution is completed and the optimal solution set is output.
[0124] In the improved multi-objective PSO algorithm, its optimization parameters are: weight factor w = [1 1 0.8 0.8 1 1], NURBS knot vector; the number of particles in the initial population is 200, the number of iterations is 50, the individual optimal learning factor is 0.3, the global optimal learning factor is 0.4, the average mutation rate is 0.2, and the maximum speed search space percentage is 8%. The archive size of the non-dominated relationship is 220 particles, and the archive size after cyclic crowding sorting is 200 particles.
[0125] See Figure 3 , which is the Pareto solution set of joint trajectory optimization obtained in this embodiment.
[0126] Parse the corresponding T IMOPSO , a IMOPSO , J IMOPSO , τIMOPSO , T IMOPSO , a IMOPSO , J IMOPSO , τ IMOPSO are the time, angular acceleration, acceleration jerk, and torque of the joints obtained through improved multi-objective particle swarm optimization (IMOPSO).
[0127] To verify the effectiveness of the proposed invention, a comparison verification was carried out using the current KUKA KR16 experiment. The KUKA KR16 experiment is as follows: According to the robot path points in Table 1 and Table 2 above, input the above four-point information into the robot teaching device system, then run the robot program at the fastest speed and record the robot data. Finally, organize the motion parameters of each joint of the robot, T KR16 , a KR16 , J KR16 , τ KR16 are the time, angular acceleration, acceleration jerk, and torque of the joints obtained using the existing KR16.
[0128] See Table 3 below. Table 3 shows the comparison of the multi-objective values of the joint parameters between the current KR16 experiment and IMOPSO. It can be seen from Table 3 that in the current KR16 experiment, the current time of each joint is 2 seconds, the total time of each joint is 6 seconds, and the total time of all joints is 36 seconds. Through IMOPSO, the total joint time is reduced to 32.182 seconds, a reduction of 10.60%. The total joint acceleration is 2.957 rad / s2, a decrease of 58.61%. The total joint jerk is 6.27 rad / s3, a decrease of 71.15%. The total joint torque is 1341.107 N·m, a reduction of 14.29%. After IMPSO, all other parameters are significantly reduced except for the torque of the fifth joint, which increases by 4.43%.
[0129] Table 3:
[0130]
[0131]
[0132] It can be clearly seen from the above parameters that the amplitude of IMOPSO is generally lower, and the curve is smoother compared to KR16.
[0133] It is understood that the above embodiments are merely exemplary embodiments adopted to illustrate the principle of the present invention / invention. However, the present invention / invention is not limited thereto. For those of ordinary skill in the art, various modifications and improvements can be made without departing from the spirit and essence of the present invention / invention, and these modifications and improvements are also considered within the protection scope of the present invention / invention.
Claims
1. A method for obtaining the trajectory optimization of a robotic arm based on an improved multi-objective PSO algorithm, characterized in that, Including the following steps: SA: Construct the joint trajectories of each joint of the target robotic arm with respect to angle and time, and use the joint trajectories as the objects to be optimized; SB: Use the improved multi-objective PSO algorithm to optimize the joint trajectories to obtain the optimal solution set, and obtain the joint trajectories corresponding to the optimal solution set; SB specifically is: SB1. Construct an initial particle swarm P related to each joint in terms of angle and time based on the joint trajectories i ; SB2. Use a single best evaluation and selection method to evaluate and select each joint of the initial particle swarm P i to obtain the initial individual Pareto solution set and its corresponding fitness, denoted as pBest i and pF i ; Use a global best evaluation and selection method to evaluate and select each joint of the initial particle swarm P i to obtain the initial global Pareto solution set and its corresponding fitness, denoted as gBest i and gF i ; SB3. Update the velocity and position of the particles, mutate the particle swarm to obtain a new particle swarm, and denote the new particle swarm as P i+1 ; SB4. Each particle of each joint of the particle swarm P is evaluated and selected using a single best evaluation and selection method to obtain an initial individual Pareto solution set and its corresponding fitness, denoted as pBest i+1 and pF i+1 ; Each joint of the particle swarm P is evaluated and selected using a global best evaluation and selection method to obtain an initial global Pareto solution set and its corresponding fitness, denoted as gBest i+1 and gF i+1 ; i+1 and gF i+1 ; SB5. Perform a loop determination operation. If it meets pBest i+1 <pBest i and gBest i+1 <gBest i , then repeat SB3 to SB5. Otherwise, output gBest = gBest i+1 and gF i+1 .
2. The robotic arm trajectory optimization acquisition method based on the improved multi-objective PSO algorithm according to claim 1, characterized in that, SA specifically is: SA1: Establish a simulation model of the target robotic arm, and the simulation model of the target robotic arm is a spatial simulation model; SA2: Perform inverse calculation on the path point trajectories of each joint of the target robotic arm simulation model to obtain the angle values of each joint; SA3: According to the angle values of each joint, use the NURBS curve for joint trajectory planning to obtain the joint trajectories corresponding to each joint. The joint trajectories are obtained by fitting the angle values of the joints in space with the NURBS curve; SA4: Obtain the motion basic parameters of each joint required for optimization according to the joint trajectories.
3. The robotic arm trajectory optimization acquisition method based on the improved multi-objective PSO algorithm according to claim 1, characterized in that, The specific method for evaluating and selecting a single best specifically includes: Individual evaluation: with f (i,j) , g (i,j) , h (i,j) As the first improved multi-objective, obtain the evaluation values of each joint f (i,j) , g (i,j) , h (i,j) , and the objective functions of f (i,j) , g (i,j) , h (i,j) are as follows: where, f (i,j) is the total time of each joint, used to evaluate the efficiency of the joint; g (i,j) is the average beat of each joint, used to evaluate the pulsation index of the joint force; h (i,j) is the average acceleration of each joint, used to evaluate the index of joint energy consumption; where t (i,j) is the step time of each joint, Δt (i,j) is the time per step of each joint, a (i,j) is the acceleration of each joint, M is the number of path points, and j is the joint number; t (i,j) 、a (i,j) 、J (i,j) are the motion basic parameters of each joint required for obtaining optimization according to the joint trajectory; With f (i,j) ,g (i,j) ,h (i,j) The solutions obtained for the objective functions are the non-dominated solutions obtained in this evaluation; Individual selection: Use the cyclic crowding sorting algorithm to filter and obtain the retained solutions from the non-dominated solutions according to the crowding distance as the individual Pareto solution set; The specific method for evaluating and selecting the global optimum specifically includes: Global evaluation: Take f1, f2, f3 as the second improved multi-objectives, and the objective functions of f1, f2, f3 are: Wherein, f1 is the total time for evaluating the robotic arm efficiency, f2 is the total average joint torque for evaluating the joint stress state, and f3 is the joint force pulsation index; Among them, T j is the total time of each joint, T is the total time of all joints, τ (i,j) is the torque of each joint, J (i,j) is the angular jerk of each joint, N is the number of joints, and M is the number of path points; τ (i,j) , J (i,j) are the basic motion parameters of each joint required for optimization according to the joint trajectory; The solutions obtained with f1, f2, f3 as the objective functions are the non-dominated solutions obtained in this evaluation; Global selection: Use the cyclic crowding sorting algorithm to filter and obtain the retained solutions from the non-dominated solutions according to the crowding distance as the global Pareto solution set.
4. The robotic arm trajectory optimization acquisition method based on the improved multi-objective PSO algorithm according to claim 3, characterized in that, Before individual selection, normalization processing is also performed on non-dominated solutions f (i,j) , g (i,j) , h (i,j) .
5. The robotic arm trajectory optimization acquisition method based on the improved multi-objective PSO algorithm according to claim 3, characterized in that, Before global selection, it also includes normalizing the non-dominated solutions f1, f2, f3.
6. The robotic arm trajectory optimization acquisition method based on the improved multi-objective PSO algorithm according to claim 3 or 4 or 5, characterized in that, The dynamic fitness of each particle in the Pareto solution set is denoted as F. Among them, the particle with the largest dynamic fitness F is the individual best particle or the global optimum particle, and F is obtained in the following way: where is a random value, P is the optimal number of particles, and f i (x) takes f (i,j) , g (i,j) , h (i,j) or f1, f2, f3 or the normalized f (i,j) , g (i,j) , h (i,j) or the normalized f1, f2, f3.
7. The robotic arm trajectory optimization acquisition method based on the improved multi-objective PSO algorithm according to claim 2, characterized in that, The parameters of the path points in the path point trajectories of each joint include: position and pose information, and the position and pose information are denoted as: X, Y, Z, R_X(°), R_Y(°), R_Z(°), where X represents the X-axis coordinate position of the path point, Y represents the Y-axis coordinate position of the path point, Z represents the Z-axis coordinate position of the path point, R_X(°) represents the rotation angle of the path point around the X-axis, R_Y(°) represents the rotation angle of the path point around the Y-axis, and R_Z(°) represents the rotation angle of the path point around the Z-axis; After inverse calculation based on the position and attitude information, the corresponding joint angle q of each joint is obtained j,g =(q j , t g ), where q j,g represents the angle value of joint j at the control vertex g, and the time at this moment is t g ; The NURBS curve is obtained by the following formula: Among them, N g,k (u) is the k-th basis function, the number of n-joint path points, k is the order of the NURBS, q g is the control vertex of joint j on the NURBS curve, q g The angular value at the control vertex g takes q j,g , is the weight of the control vertex.
Citation Information
Patent Citations
Multi-objective particle swarm algorithm-based humanoid robot gait planning method
CN108009680A