Heuristic linked trajectory planning method for redundant mobile manipulators

By employing a redundant mobile robotic arm trajectory planning method based on two-layer co-evolution and adaptive parameter adjustment, the problem of motion coupling between the mobile platform and the robotic arm is solved, achieving efficient trajectory planning and multi-objective optimization, thereby improving the quality and efficiency of operations.

CN122033997BActive Publication Date: 2026-07-07NABOT CONTROL TECH (SUZHOU) CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
NABOT CONTROL TECH (SUZHOU) CO LTD
Filing Date
2026-04-15
Publication Date
2026-07-07

AI Technical Summary

Technical Problem

Existing redundant mobile robotic arm trajectory planning methods fail to effectively coordinate the motion coupling between the mobile platform and the robotic arm, resulting in speed mismatch of the end effector, making it difficult to balance work quality and efficiency, and lacking adaptability and efficiency in multi-objective optimization.

Method used

A two-layer co-evolutionary approach is adopted, which decomposes the multi-objective optimization problem into sub-problems through Chebyshev decomposition and allows for interactive evolution between the upper and lower populations. Combined with adaptive parameter adjustment and local search, the coordination between the platform path and the robot arm trajectory and the multi-objective trade-offs are optimized.

Benefits of technology

It improves linkage coordination and search efficiency, generates a uniformly distributed non-dominated solution set, adapts to different task scenarios, and ensures the physical feasibility and efficiency of the output solution.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122033997B_ABST
    Figure CN122033997B_ABST
Patent Text Reader

Abstract

The application discloses a kind of redundancy mobile manipulator heuristic linkage trajectory planning method.For the linkage control problem of the mobile platform and manipulator of redundancy mobile manipulator, platform path and joint trajectory are encoded into upper and lower layer population respectively, and multidimensional conflict target is decomposed into several subproblems;Through the collaborative evolution mechanism under the neighborhood constraint of subproblem, it is forced to match combination under the same preference of upper and lower layer, to ensure that search direction is consistent;Fusion differential evolution parameter self-adaptation and problem-specific local search, periodically optimize solution set;And according to the population state dynamic adjustment neighborhood scale and local search intensity.The application can efficiently generate uniform distribution optimal trajectory solution set, improve the quality of trajectory planning of redundancy mobile manipulator.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of robot control, specifically relating to a heuristic linkage trajectory planning method for redundant mobile robotic arms. Background Technology

[0002] Redundant mobile robotic arms, consisting of an omnidirectional mobile platform and a high-degree-of-freedom robotic arm connected in series, have broad application prospects in logistics handling, manufacturing assembly, and other fields. However, the motion coupling between the mobile platform and the robotic arm makes it difficult for traditional decoupling control methods to achieve efficient linkage: first, independent planning of the platform path and joint trajectory can easily lead to end-effector velocity mismatch, reducing work quality; second, redundant degrees of freedom are only used for singularity avoidance or obstacle avoidance, without systematically improving work efficiency and space utilization; and third, it is difficult to obtain a globally optimal compromise solution under multi-objective conflicts.

[0003] Existing trajectory planning methods for redundant mobile robotic arms suffer from the following shortcomings: Planning the mobile platform and robotic arm independently ignores their motion coupling, leading to poor end effector speed coordination and difficulty in balancing work quality and efficiency; while capable of handling multi-objective optimization (e.g., "A Multi-Objective Optimization Method for Analytical Inverse Kinematics of Redundant Robotic Arms," ​​Mechanical Science and Technology, June 2024), they lack a co-evolutionary mechanism for coupled subsystems, failing to guarantee matching between upper and lower level solutions under the same preferences, easily resulting in uncoordinated linkage schemes; existing methods typically employ random pairing evaluation, resulting in high computational costs and convergence direction drift, lacking guidance on subproblem preferences; and fixed evolutionary parameters (such as mutation factors and neighborhood size) cannot adapt to different evolutionary stages, limiting search efficiency and solution set distribution. Therefore, an intelligent planning method capable of adaptively coordinating the motion of the platform and robotic arm while simultaneously optimizing multiple conflicting objectives is urgently needed. Summary of the Invention

[0004] This invention discloses a heuristic linkage trajectory planning method for redundant mobile robotic arms, which includes the following steps:

[0005] Step 1: Construct the upper-level population of the mobile platform path and the lower-level population of the robotic arm joint trajectory, with each individual encoded using parametric curves;

[0006] Step 2: Decompose the multi-objective optimization problem of the mobile robotic arm into multiple sub-problems, each sub-problem corresponds to a set of weight vectors, and determine the neighborhood for each sub-problem;

[0007] Step 3: The upper and lower populations are made to evolve interactively under the constraints of the sub-problem neighborhood through a co-evolution mechanism, wherein each upper individual is paired with an individual in the same sub-problem neighborhood in the lower population to form a complete solution, and the population is updated according to the joint fitness.

[0008] Step 4: Dynamically adjust algorithm parameters based on population status during the evolutionary process;

[0009] Step 5: Refine the non-dominated solutions obtained through evolution by local search, and inject the improved solutions into the corresponding subproblems;

[0010] Step 6: Repeat steps 3 to 5 until the termination condition is met, and output the final solution set.

[0011] Specifically, in step 1, the path of the mobile platform is described using uniform cubic B-splines, and the control points include position and heading. The first and last control points are fixed, and the middle control points are variables to be optimized. The trajectory of each joint of the robotic arm is described using cubic B-splines, and the control points represent the joint angles. The first and last control points are determined by the starting and target joint angles, and the middle control points are variables to be optimized. The lower-level individual is composed of the middle control points of all joints connected in series.

[0012] Specifically, in step 2, the multi-objective problem is transformed into a single-objective subproblem using the Chebyshev decomposition method, and the Chebyshev value of subproblem i is: L i (x u i ,x l i ,λ i )=max 1≤j≤m (λ ij ·z ij (x u i ,x l i ), where m is the number of targets, j is the index number of each target, and λ i Let x be the weight vector corresponding to subproblem i. u i ,x l i Let z be the upper-level and lower-level individuals corresponding to subproblem i. ij (x u i ,x l i ) is x u i ,x l i The normalized target value corresponding to the j-th objective.

[0013] Specifically, in step 3, the joint fitness of the upper-level individuals is: Where |Q(i)| is the neighborhood size, x u best Let α be the optimal upper-level individual for subproblem i, and let α be the balance factor.

[0014] Specifically, step 3 also includes collaborative information exchange: every Gco generation, select several non-dominated solutions from the external archive, inject their upper part into the lower population, replace the upper part of the subproblem corresponding to the individual with the worst joint fitness in the lower population, and inject their lower part into the upper population, replace the lower part of the subproblem corresponding to the individual with the worst joint fitness in the upper population, and update the subproblem solution after re-evaluation.

[0015] Specifically, in step 4, the differential evolution parameter adaptation involves: independently maintaining an archive of historical success scaling factors F and crossover probabilities CR for each subproblem; obtaining the current parameters in each generation through sampling using Cauchy and normal distributions; storing successfully updated parameters in the archive; and updating the global mean μ based on the Lehmer mean. F and μ CR .

[0016] Specifically, in step 4, the neighborhood size adaptive method is as follows: every few generations, the proportion ρ of non-dominated solutions in the population is statistically analyzed; if ρ < lower limit ρ... low Then increase the neighborhood size if ρ > upper limit ρ high Then reduce the neighborhood size, adjust the step size to ±2, and limit it to a preset range.

[0017] Specifically, in step 4, the local search intensity adaptive method is as follows: if the optimal Chebyshev value does not improve over multiple consecutive generations, the execution interval of the variable neighborhood search is reduced and the perturbation amplitude is increased; otherwise, the default value is restored.

[0018] Specifically, in step 5, the variable neighborhood search includes three neighborhood structures: single-point perturbation, two-point exchange, and path reconnection. For each non-dominated solution, each neighborhood is tried in turn, and jittering and local descent are performed. If a dominant original solution or a non-dominated solution with a better Chebyshev value is found, the subproblem solution is updated and the neighborhood index is reset.

[0019] Specifically, it also includes constraint processing steps: the merits of solutions are compared using the constraint dominance principle, the constraint violation degree (CV) is obtained by weighted summation of the maximum relative violations of each constraint, and all constraints are normalized.

[0020] Beneficial technical effects: Improved coordination: Through co-evolution of upper and lower layers under the constraint of sub-problem neighborhood, the platform path and joint trajectory are forced to match and optimize under the same preferences, ensuring coordination from the source and reducing linkage error; Multi-objective trade-off optimization: Decompose multi-dimensional conflicting objectives and generate a uniformly distributed non-dominated solution set, allowing users to flexibly choose the best compromise solution according to actual needs; Enhanced search efficiency: Integrate adaptive parameter control and problem-specific variable neighborhood search, improving convergence speed and avoiding premature convergence; Robustness and adaptability: The neighborhood size is dynamically adjusted according to population diversity, and the local search intensity automatically increases as evolution stagnates, requiring no manual parameter tuning and exhibiting strong adaptability to different task scenarios; Feasibility guarantee: Constraint dominance principles and normalized constraint violation degrees are used to handle constraints such as joint limits and obstacle avoidance, ensuring that all output solutions are physically feasible. Attached Figure Description

[0021] Figure 1 This is a schematic diagram of the redundant mobile robotic arm of the present invention;

[0022] Figure 2 This is a schematic diagram of the heuristic linkage trajectory planning method for redundant mobile robotic arms described in an embodiment of the present invention. Detailed Implementation

[0023] like Figure 1 As shown, the redundant mobile robotic arm of the present invention includes an omnidirectional mobile platform and a multi-degree-of-freedom robotic arm. During operation, the end effector of the robotic arm moves from an initial pose to a target pose in a two-dimensional / three-dimensional environment with or without static obstacles, passing through several designated path points. The trajectory planning method of the present invention simultaneously plans the path of the mobile platform and the joint trajectory of the robotic arm, enabling them to coordinate and optimize multiple conflicting objectives such as operation time, energy consumption, motion smoothness, linkage consistency, and workspace utilization.

[0024] The mobile platform moves in a two-dimensional plane with pose p. base (t)=[x(t),y(t),θ(t)] T The path of the moving platform is described by a uniform cubic B-spline curve, i.e., p. base = Where u is the normalized time variable, u = t / T base B i =[B i x B i y B i θ ] T N is the control point. i,3 (u) is a cubic B-spline basis function with uniformly distributed node vectors. The first and last control points are fixed at the start and end positions, and the intermediate control points are B1, ..., B1.m-1 Let L be the variable to be optimized. base The motion time T is obtained by B-spline integration. base =L base / v base-avg , where v base-avg Let be the average speed of the platform, which is a given constant.

[0025] The robotic arm has n degrees of freedom, and the angles of each joint change over time, denoted as q. j (t), j=1,……,n, the trajectory of each joint is described by a cubic uniform B-spline. For joint j, its trajectory is represented as:

[0026] s is the normalized time variable, s = t / T arm s∈[0,1], control point is C j,0 ,……,C j,k Among them, the first and last control points C j,0 and C j,k Determined by the starting joint angle and target joint angle required by the task, and fixed, with intermediate control point C. j,1 ,……,C j,k-1 The variable to be optimized is constrained by the joint angle limit. The time interval is [0, T]. arm Normalize to [0,1]. To ensure synchronization with the mobile platform, the robotic arm's motion time must match the platform's motion time, i.e., T... arm =T base Furthermore, the end effector satisfies the pose constraints at the path points.

[0027] The optimization objectives can include or be selected from multiple factors such as operation time, energy consumption, motion smoothness, linkage coordination, workspace utilization, and obstacle avoidance margin. The smaller the value of each objective (the specific setting can be based on the calculation of the objective value; for example, workspace utilization can be a negative number or its reciprocal), the better the performance. The calculation of each objective uses common robot evaluation methods. Since the dimensions of each objective are different, normalization is required, and the normalized target values ​​of each objective are used. Specifically, normalization can utilize the worst-case scenario z maintained during maintenance. nad (Current maximum value for each objective) and optimal point z * (The current minimum value of each objective) Normalize the objective values ​​so that the current value of each objective is mapped to the interval [0,1]. The normalized objective value is z=(z cur -z * ) / (z nad -z * +ε), where z curThis represents the current value of each objective; the smaller the value, the better the corresponding performance. ε is a minimum value to prevent division by zero. Since the objectives are not consistent and may even conflict, this invention will obtain non-dominated solutions based on requirements, i.e., objectives with different weights.

[0028] It should be noted that the above optimization targets are only examples, and their specific number and settings can be flexibly adjusted according to actual application needs. Those skilled in the art can add, reduce, replace or modify targets based on their understanding of the concept of the present invention without departing from the protection scope of the present invention. Even if the settings of some targets do not meet the requirements, the targets can be modified or deleted without affecting the substantive implementation effect of the present invention.

[0029] The constraints include: joint angle limits (ranging from minimum to maximum joint angle), joint velocity limits (ranging from minimum to maximum joint velocity), joint acceleration limits (ranging from minimum to maximum joint acceleration), platform velocity / angular velocity limits (ranging from minimum to maximum platform velocity / angular velocity), specified path point constraints (at a specified moment, the actual end-effector pose is equal to the specified target pose, and the end-effector pose error is ≤ permissible error), and obstacle avoidance constraints (during the entire motion process, the distance between any point on the robot (including the mobile platform and the robotic arm) and obstacles in the environment is not less than the safe distance).

[0030] Constraint handling prioritizes feasibility, requiring the quantification of the degree to which each planned trajectory violates constraints. Since different constraints differ significantly in scale and magnitude, direct summation would lead to the dominance of constraints with larger values; therefore, normalization is necessary. Furthermore, the importance of different constraints may vary, which can be reflected by introducing weights.

[0031] For each constraint, the maximum violation value over the entire trajectory is calculated. Then, the weighted sum of the maximum violation values ​​for all constraints is taken as the constraint violation coefficient (CV). Specifically, the summation range includes: the maximum violation values ​​for angle, velocity, and acceleration constraints at each joint; the maximum violation values ​​for platform velocity and platform angular velocity constraints; and the obstacle avoidance constraint violation value. Where T is the motion time of the entire trajectory, j is the index number of the upper and lower limit constraints (i.e., the constraints are expressed as the maximum upper limit and / or the minimum lower limit), including the joint angles, velocities, and accelerations of joints 1 to n, as well as the platform velocity, platform angular velocity, and obstacle avoidance constraints, J is the total number of upper and lower limit constraints, so J = 3n + 3, g j It is the current value of the j-th inequality constraint, g j max and g j min These are the upper and lower limits of the j-th constraint, respectively, where Δj is the allowed range (e.g., g). j max -g j minSince the obstacle avoidance constraint only has a unilateral lower bound constraint, Δj can be set using an empirical value, and the upper bound constraint can be omitted, i.e., g is left as the default. j (x(t))-g j max From 0 and g j min -g j In (x(t)), the maximum value is selected, k is the index number of the equality constraint (i.e., the constraint is expressed as not deviating from a certain fixed value). In this invention, only specified path point constraints are included for the time being, that is, the total number of equality constraints K is the number of preset necessary path points, h k h is the current value of the k-th equality constraint. k target It is the target value of the k-th equality constraint, such as the target end pose of the k-th path point (which may include position and orientation, and can be set according to requirements), ε is the allowable end pose error, and w j ,w k It is a weight, which can be set as needed.

[0032] Since the trajectory is continuous, it can be sampled discretely in actual calculations. Let the sampling times be t1, t2, ..., t M (For example, if 100 points are taken evenly, then M=100). For each time moment, calculate the constraint value for that time moment, and then compare to obtain the maximum value among the M time moments.

[0033] It should be noted that path point constraints are hard constraints and must be satisfied (within tolerable limits); coordination is an optimization objective used to smooth speed transitions and does not force precise path point matching. If the task simultaneously requires passing through a certain path point with continuous speed, then the path point constraints should include both position and time requirements, and the coordination objective is only used to optimize speed matching quality.

[0034] It should be noted that the number and specific form of the above constraints can be flexibly adjusted according to actual application needs. Those skilled in the art can add, reduce or modify constraints based on their understanding of the concept of the present invention without departing from the protection scope of the present invention. Even if the setting of some constraints does not meet the requirements, the constraints can be modified or deleted without affecting the substantive implementation effect of the present invention.

[0035] The method of this invention includes: two-layer co-evolution, which treats the mobile platform path (upper layer) and the robotic arm trajectory (lower layer) as two coupled subpopulations and interacts with information through a co-evolution mechanism; multi-objective decomposition, which decomposes the multi-objective optimization problem into several single-objective subproblems, each subproblem corresponding to a set of weight vectors, with the upper and lower layer populations each maintaining a set of subproblem solutions and co-evolving through neighborhood relationships; and an adaptive strategy, which adaptively adjusts the differential evolution parameters, neighborhood size, and local search intensity to improve search efficiency and solution set distribution.

[0036] 1. Problem Decomposition: Problem decomposition can be achieved using the Chebyshev decomposition method. For a subproblem, such as the i-th subproblem, its Chebyshev value is the maximum deviation of the weights of each objective, that is, the maximum value selected from the products of m objectives and their weights, specifically: L i (x u i ,x l i ,λ i )=max 1≤j≤m (λ ij ·z ij (x u i ,x l i L i (x u i ,x l i ,λ i (x) is the complete solution u i ,x l i The weight vector λ of subproblem i i The corresponding Chebyshev value, where m is the number of targets and j is the index number of each target. λ i Let λ be the weight vector corresponding to subproblem i. i =(λ i1 ,……,λ ij ,……,λ im ), λ ij Let λ be the weight value of the j-th objective in the i-th subproblem, satisfying λ ij ≥0, preferably, the sum of the weights of the objectives of the same subproblem is 1, x u i ,x l i Let z be the upper-level and lower-level individuals corresponding to subproblem i. ij (x u i ,x l i ) is x u i ,x l i The normalized target value corresponding to the j-th objective.

[0037] 2. Adaptability Settings

[0038] A complete candidate solution consists of a pair (x u ,x lTo improve control efficiency, a co-evolutionary structure is adopted, with upper and lower populations evolving independently. Individuals are evaluated based on fitness, and partners are selected from the other population.

[0039] The fitness setting serves two purposes. First, it forces the upper and lower layers to perform optimal pairing within the same subproblem neighborhood, thus maintaining the consistency of solutions to the decomposed subproblems. Second, it promotes compatibility between the upper and lower layers, thereby accelerating collaborative convergence between them.

[0040] If individuals at different levels independently calculate their fitness (i.e., each finding the minimum Chebyshev value for the best combination), the evolutionary direction may still drift. This is because upper (or lower) individuals only care about "finding a good partner," not about their own adaptability to lower (or upper) individuals. Therefore, considering the individual's own quality and compatibility with the other, the fitness is calculated by introducing the difference between the average Chebyshev value of the upper (or lower) individual and all lower (or lower) individuals in its neighborhood, and the best upper (or lower) individual in the neighborhood. This constitutes a joint fitness, prompting upper (or lower) individuals to not only pursue the best combination but also to be compatible with as many lower (or upper) individuals as possible, thus accelerating the cooperative convergence of upper and lower levels. When comparing the merits of upper or lower individuals in evolution, their joint fitness is used. However, when evaluating the quality of a complete solution (a pair of upper and lower individual combinations), their Chebyshev value can still be used.

[0041] Upper-level individual x u i The joint fitness of (belonging to subproblem i) is specifically as follows: Where |Q(i)| is the neighborhood size, i.e., the number of lower-level individuals participating in the calculation, x u best Let L be the currently optimal upper-level individual for subproblem i, i.e., the upper part of the optimal solution selected by comparing the Chebyshev values ​​of the complete solutions under this subproblem (the smaller the Chebyshev value, the better). α is a balance factor used to adjust the weights of individual potential and group fitness. i (x u i ,x l ,λ i ), x l ∈P l ∩Q(i) (The formula here is written in text; to avoid ambiguity, x is not included) l ∈P l ∩Q(i) is used as the min index, that is: from the lower-level population, select the lower-level individual x that is in the neighborhood of the current subproblem. l After combining, calculate the Chebyshev value L for each combination. i (x u i ,x l ,λi Take the minimum value.

[0042] Similarly, the lower-level individual x l i The joint fitness is specifically as follows: Where |Q(i)| is the neighborhood size, i.e., the number of upper-level individuals participating in the calculation, x l best Let L be the currently optimal lower-level individual for subproblem i (i.e., the lower-level part of the current solution to the subproblem), where α is a balance factor used to adjust the weights of the individual's potential and the group fitness, and minL i (x u ,x l i ,λ i ), x u ∈P u ∩Q(i), that is: from the upper-level population, select the upper-level individual x that is in the neighborhood of the current subproblem. u After combining, calculate the Chebyshev value L for each combination. i (x u ,x l i ,λ i Take the minimum value.

[0043] Alternatively, during evolution at different levels, the joint fitness of an individual can be calculated incidentally when it is evaluated (since Chebyshev values ​​need to be calculated with all its partners in the neighborhood). Alternatively, it can be calculated only once per generation or incrementally updated, for example, calculating the joint fitness of all individuals (based on the current partner population and neighborhood) before the start of each generation and then using it in that generation.

[0044] 3. Conditional Generative Adversarial Network (cGAN) Feasible Solution Generator

[0045] By learning the distribution of feasible solutions (i.e., complete trajectories satisfying all constraints) through generative adversarial networks (cGANs), high-quality candidate solutions are provided for population initialization and diversity supplementation, thereby accelerating convergence and avoiding premature convergence. cGANs output an encoding of a complete solution (i.e., a vector concatenated with all control points in sequence) conditioned on the subproblem weight vector λ. cGANs consist of a generator and a discriminator; their network structure, training process, and usage are detailed below.

[0046] (1) Construction of solution vectors

[0047] A complete solution is derived from the upper-level individual x. u and lower-level individuals x l It is formed by connecting series, that is, y=[x u ;x l Upper-level individual x uThe platform path control point sequence, i.e., the three components of all intermediate control points connected in sequence: x u =[B1 x B1 y B1 θ B2 x B2 y B2 θ , ……, B m-1 x B m-1 y B m-1 θ The dimension of the lower-level individual x is 3×(m-1); l It is formed by connecting all the intermediate control points of all joints of the robotic arm in sequence, that is: x l =[C 1,1 ,……,C 1,k-1 C 2,1 ,……,C 2,k-1 ,……, C n,1 ,……,C n,k-1 Therefore, the dimension of the lower-level individuals is n×(k-1). The dimension of the complete solution y is 3×(m-1)+n×(k-1).

[0048] (2) Generator G

[0049] The generator takes a weight vector λ and a noise vector as input and outputs an original vector y' with the same dimensions as the solution vector, and the range of each component is (-1, 1). The noise vector is usually sampled from a standard normal distribution or a uniform distribution.

[0050] The network structure includes: an input layer, which concatenates the weight vector λ and the noise vector; a hidden layer, which includes several fully connected layers (e.g., 3 layers), with the number of neurons in each layer being 128, 256, and 128 respectively, and ReLU activation function; and an output layer, which is a fully connected layer with the number of neurons 3×(m-1)+n×(k-1), and Tanh activation function, which restricts the output to (-1,1).

[0051] Post-processing: Inversely normalize each component of y' to the actual physical range, for platform control point B. i x B i y Mapped to the workspace extent; for B i θ Mapping to [-π, π], for joint control points, mapping to the corresponding joint angle limits. The mapping formula is v. phys =v min +(v tanh +1)·(v max -vmin ), where v tanh The raw value output by the generator is obtained through the Tanh activation function, and its value ranges from -1 to 1. min This refers to the minimum permissible value of the physical quantity, such as the lower limit of a joint angle, v. max This refers to the maximum permissible value of a physical quantity, such as the upper limit of a joint angle, v. phy The actual physical values ​​obtained after linear mapping can be directly used to construct platform path control points or joint trajectory control points. The transformed physically feasible trajectory parameters are the solution vectors.

[0052] (3) Discriminator D

[0053] The discriminator takes the solution vector y and its condition λ as input and outputs a scalar representing the probability that the input is a true feasible solution.

[0054] The network structure includes: an input layer that concatenates y and λ; a hidden layer that includes several fully connected layers (e.g., 2 layers), each with 128 or 64 neurons, using LeakyReLU as the activation function; and an output layer that is a single neuron that uses the Sigmoid activation function and outputs a probability value p∈(0,1).

[0055] (4) Training process

[0056] Pre-training: A large number of candidate solutions are randomly generated (control points are randomly selected), and feasible solutions that satisfy all constraints are selected through constraint checks. These feasible solutions and their corresponding weight vectors (weight vectors can be randomly generated or uniformly sampled) are collected to form an initial training set. The cGAN is trained using this training set until convergence, enabling the generator to initially possess the ability to generate feasible solutions.

[0057] Online fine-tuning: During the evolution process, the elite solutions generated in each generation (non-dominated feasible solutions in the external archive EP) are added to the training set. Every few generations (e.g., 20 generations), the cGAN is fine-tuned using the current training set (continuing to train for several more rounds), allowing the generator to gradually learn the distribution of solutions near the current non-dominated solution.

[0058] cGAN can consistently provide high-quality candidate solutions that closely approximate the current optimal solution distribution, significantly reducing invalid searches and accelerating convergence. It should be noted that cGAN generates complete solutions, which are initially split into upper and lower layer individuals. During evolution, when population diversity declines or new individuals need to be introduced, several new solutions can be sampled from cGAN to replace some of the worst-fit symbionts.

[0059] like Figure 2 As shown, the redundant mobile robotic arm heuristic linkage trajectory planning method of the present invention includes:

[0060] (a) Initialization, which specifically includes:

[0061] 1. Generate weight vectors and neighborhood: Generate N sets of uniformly distributed weight vectors {λ1,……,λ N} Calculate the Euclidean distance between each weight vector, and determine the neighborhood Q(i) for each subproblem i (containing the indices of the Tn nearest weight vectors, including itself).

[0062] The neighborhood Q(i) is obtained by calculating the Euclidean distance, specifically: for each subproblem i, calculate the Euclidean distance d(i,j) = ||λ between its weight vector and the weight vectors of all other subproblems j. i -λ j ||2, the smaller the distance, the closer the preferences of the two subproblems are; given a neighborhood size Tn (e.g., initially Tn=10), for each i, find the Tn nearest indices (including i itself) to form the neighborhood Q(i).

[0063] The neighborhood size Tn affects population diversity, and a feedback mechanism can be used for adaptive adjustment in the future.

[0064] 2. Initialize the population: Initialize the upper-level population P u ={x u 1 ,……,x u N}, lower population P l ={x l 1 ,……,x l N The solutions can be randomly generated, or optionally initialized using cGAN, i.e., N complete solutions are sampled from cGAN to form the initial upper and lower populations. Alternatively, cGAN-assisted initialization can be used, i.e., several complete solutions are sampled from cGAN, and some individuals are randomly generated and mixed together, with the two combined to form the initial upper and lower populations.

[0065] 3. Initialize solutions to subproblems: For each subproblem i, start from P u With P l Randomly select x u i ,x l i Combined to form the complete solution (x) u i ,x l i ), calculate its Chebyshev value L. i (x u i ,x li ,λ i This is recorded as the current solution to subproblem i. Simultaneously, all objective values ​​are evaluated, and the ideal point z is initialized. * (Minimum value of each objective) and worst point z nad (Maximum values ​​for each target).

[0066] 4. Initialize the external file EP to empty, which will be used to store the global non-dominated solution.

[0067] A solution is called a non-dominated solution if it is not dominated by any other solution. In other words, there is no other solution that is no worse than it in all respects and is better in at least one respect. For example, suppose there are two solutions A and B. A is said to dominate B if the following two conditions are met: (1) A is no worse than B in all objectives (i.e., every objective value of A is less than or equal to the corresponding objective value of B, assuming that all objectives are minimized); (2) A is strictly better than B in at least one objective (i.e., at least one objective value of A is less than that of B).

[0068] In this invention, Chebyshev values ​​are calculated only between feasible solutions; infeasible solutions are compared directly using CV values. Specifically, the constraint dominance principle can be adopted: if individual A is feasible but B is infeasible, then A dominates B; if both are infeasible, then the constraint with the smaller violation dominates the one with the larger violation; if both are feasible, then the aforementioned dominance relationships are compared.

[0069] 5. Initialize cGAN: If applicable, pre-train until convergence.

[0070] (ii) Main Loop: The main loop starts from the first generation and continues until the maximum number of iterations is reached. It includes the following steps:

[0071] Step 0: Calculate joint fitness: For each upper-level individual and lower-level individual, calculate the joint fitness (the smaller the value, the better).

[0072] Step 1: Upper-level Evolution

[0073] For subproblem i (i=1, ...,N):

[0074] 1. Parent selection: From P u Among ∩Q(i) (i.e., the upper-level individuals in the neighborhood), select the two parent individuals x with the smallest joint fitness. u r1 ,x u r2 And randomly select an individual x from the global pool. u r3 .

[0075] 2. Parameter Generation: Generate scaling factor F according to the adaptive strategy. i and crossover probability CR i.

[0076] 3. Mutation: Mutation vector v u =x u r1 +F i ·(x u r2 -x u r3 )).

[0077] 4. Crossover: Using the crossover probability CR i v u With the current individual x u i Mixing to generate experimental individuals u u .

[0078] 5. Combinatorial evaluation: Taking the lower-level individual x of the current subproblem as an example. l i As partners, the combination (u u ,x l i To obtain the complete solution, calculate its Chebyshev value L. i (u u ,x l i ,λ i ) and constraint violation degree (CV).

[0079] 6. Update the reference point: If the objective values ​​of the new solution are better than the current ideal point or worst-case point, update z. * With z nad .

[0080] 7. Update subproblem: If the new solution (u) u ,x l i It is feasible and its Chebyshev value is less than the solution to the current subproblem (x). u i ,x l i If the Chebyshev value of ) is not feasible, or if it is not feasible but has a smaller CV, then: replace the upper-level individual of the subproblem with u. u , that is, x u i =u u The F used this time was successfully used i ,CR i Saved successfully. For all subproblems j in the neighborhood Q(i), if the new solution (u u ,x l i The Chebyshev value of ) is less than the current solution (x) of subproblem j. u j ,x l jIf the Chebyshev value of ) is given, then the solution to subproblem j is replaced with the new solution (i.e., let x be the value of ) u j =u u ,x l j =x l i ).

[0081] For each subproblem i, maintain an independent scaling factor F for historical successes. i With crossover probability CR i The F-value used in each generation of records for successfully updating the subproblem is... i CR i Store it in the archive, and update the next generation of F based on the weighted average of the archive. i CR i The specific steps include: Initialization: setting the initial μ. F , μ CR All are 0.5; for each subproblem i, F is sampled from the Cauchy distribution. i = randc(μ F , 0.1), that is, generating a value with a position parameter (similar to the mean) of μ. F Random numbers from a Cauchy distribution with a scaling parameter of 0.1 are used as the new F. i CR sampled from normal distribution i = randn(μ CR , 0.1), that is, generating a value with a mean of μ. CR Random numbers from a normal distribution (Gaussian distribution) with a standard deviation of 0.1 are used as the new CR. i And truncate to [0,1]; when the test individual successfully updates the subproblem, F is set to F. i CR i Store in the corresponding set S F , S CR After each generation ends, update μ. F and μ CR μ F = (1-c)·μ F + c·mean L (S F ), where F is a set S F The element, mean L This represents the Lehmer mean. μ CR Update in the same way.

[0082] The value range of the crossover probability CR is [0, 1]. The larger CR is, the more components of the mutant vector in the trial individual, and the greater the randomness of the search; the smaller CR is, the closer it is to the current individual and the search is more conservative. The specific steps of crossover are as follows. Suppose there are 3 control point coordinates for the upper-layer individual, and the current individual x u i = [a1, a2, a3], and the mutant vector v u = [b1, b2, b3] (for the convenience of explanation here, only one parameter represents the control point coordinates), and the crossover probability CR = 0.5. First, generate a random number sequence, such as [0.2, 0.7, 0.3] (generate a [0, 1] random number independently for each dimension). For the first dimension, the random number 0.2 < CR, so take b1; for the second dimension, 0.7 > CR, take a2; for the third dimension, 0.3 < CR, take b3. At the same time, randomly select a dimension and force it to use the mutant value. For example, select the 2nd dimension, but the 2nd dimension originally took a2, and force it to be b2. In this way, the final trial individual u u is [b1, b2, b3].

[0083] Step2: Lower-layer evolution

[0084] For sub-problem i (i = 1,..., N)

[0085] 1. Parent selection: Select two parent individuals x l with the smallest combined fitness from P l r1 , x l r2 , and take the optimal lower-layer individual x l best (the lower-layer individual that makes the Chebyshev value of the complete solution the smallest) of the current sub-problem from ∩Q(i) (that is, the lower-layer individuals in the neighborhood).

[0086] 2. Parameter generation: Generate the scaling factor F i and the crossover probability CR i according to the adaptive strategy.

[0087] 3. Mutation: The mutant vector v l = x l best + F i ·(x u r1 - x u r2 )

[0088] 4. Crossover: Mix v i with the current individual x l at the crossover probability CR l i to generate the trial individual ul .

[0089] 5. Combinatorial evaluation: Taking the upper-level individual x of the current subproblem as an example. u i As partners, the combination (x u i ,u l To obtain the complete solution, calculate its Chebyshev value L. i (x u i ,u l ,λ i ) and constraint violation degree (CV).

[0090] 6. Update the reference point: If the objective values ​​of the new solution are better than the current ideal point or worst-case point, update z. * With z nad .

[0091] 7. Update subproblem: If the new solution (x) u i ,u l It is feasible and its Chebyshev value is less than the solution to the current subproblem (x). u i ,x l i If the Chebyshev value of ) is not feasible, or if it is not feasible but has a smaller CV, then: replace the upper-level individual of the subproblem with u. l , that is, x l i =u l The F used this time was successfully used i ,CR i If the file is successfully saved, for all subproblems j in the neighborhood Q(i), if the new solution (x u i ,u l The Chebyshev value of ) is less than the current solution (x) of subproblem j. u j ,x l j If the Chebyshev value of ) is obtained, then the solution to subproblem j is replaced with the new solution.

[0092] Although the parameters have the same sign, F and CR in the upper and lower evolutionary layers can be set to different values ​​as needed.

[0093] Step 3: Collaborative Information Exchange (per G) co (Trigger by proxy):

[0094] 1. Randomly select several non-dominated solutions from EP, and extract their upper-level portion x. u ∗ and the lower part x l ∗ .

[0095] 2. Upper-layer injection into lower-layer population: In the lower-layer population, identify the k individuals with the worst joint fitness (i.e., Fk). joint (where the value is the largest), let j1, ..., j be the subproblems to which these individuals belong. k ; All subproblems (e.g., j t Replace the corresponding upper-level individual with x. u ∗ (Random pairing is possible); use the new upper-level individual with the current lower-level individual of the subproblem (e.g., the original x). l jt Combine the subproblems to form a complete solution, calculate its Chebyshev value, and if the Chebyshev value is less than that of the subproblem (e.g., j), then... t The original Chebyshev value is then used to update the solution to the subproblem.

[0096] 3. Lower-level injection into upper-level population: Similarly, in the upper-level population, identify the k individuals with the worst joint fitness and replace their lower-level individuals with x. l ∗ Combine the new lower-level individual with the current upper-level individual of the subproblem to form a complete solution, calculate its Chebyshev value, and if the Chebyshev value is less than the original Chebyshev value of the subproblem, then update the solution of the subproblem.

[0097] 4. Update z * z nad .

[0098] Step 4: Local search (triggered every Gvns generation)

[0099] For each nondominated solution (x) in the current EP u ,x l Perform a variable neighborhood search:

[0100] 1. Initialize the neighborhood index l=1.

[0101] 2. From the neighborhood structure N l A new solution (x) is randomly generated from (N1: single-point perturbation, N2: two-point swap, N3: path reconnection). u ',x l ').

[0102] 3. with (x u ',x l Starting from '), in N l A greedy search is performed within the solution (each time only accepting a neighborhood solution that dominates the current solution or is not dominated but has a smaller Chebyshev value, and immediately moving to that solution, then repeating the process until no better neighborhood solution is found), to obtain a local optimum (x). u '',x l '').

[0103] 4. If (x u '',x l If the solution dominates the original solution, or if it is not dominated but its Chebyshev value is less than the Chebyshev value of the original solution, then replace the original solution with the new solution, update the external file EP, and if the solution corresponds to a subproblem, then update the solution of the subproblem at the same time and reset l=1; otherwise, l=l+1.

[0104] 5. If l≤3, proceed to step 2; otherwise, terminate.

[0105] The neighborhood structure N1 is as follows: randomly select an upper-level individual x. u Or lower-level individual x l From all decision variables of the individual, a component is randomly selected and a Gaussian perturbation N(0,σ) is added (i.e., a value is randomly sampled from a normal distribution with a mean of 0 and a standard deviation of σ, and added as a perturbation value to the selected component), where σ decreases with the number of generations; the neighborhood structure N2 is specifically: randomly selecting an upper-level individual x u Or lower-level individual x l And randomly swap the coordinates of two control points in its control sequence; neighborhood structure N3, specifically: randomly select upper-level individual x u Or lower-level individual x l Remove a segment of continuous control points, and then regenerate that segment of control points through mutation and crossover. For upper-level individuals, the regeneration method is the same as the mutation and crossover in the upper-level evolution; for lower-level individuals, the regeneration method is the same as the mutation and crossover in the lower-level evolution.

[0106] Step 5: Update external archives: Add all feasible non-dominated complete solutions of the current population to EP, and remove dominated solutions.

[0107] For a candidate solution A (a combination of upper-level individuals and lower-level individuals), the update rules are as follows: (1) Feasibility check: If A is not feasible (constraint violation degree CV>0), then it is not considered to be added to EP (because EP only contains feasible solutions); (2) Domination relationship check: If there is a solution in EP that dominates A, then A is not added; if A dominates some solutions in EP, then these dominated solutions are removed from EP and A is added; if A does not dominate any solution in EP, then A is added directly.

[0108] Step 6: Parameter Adaptation: Update μ based on successful records F ,μ CR Every few generations, the proportion ρ of non-dominated solutions in the population is counted. If ρ < lower limit ρ low Then increase the neighborhood size Tn, if ρ > upper limit ρ highThen reduce Tn, adjust the step size ±2, and limit it to [5,20]; detect stagnation, if the optimal Chebyshev value does not improve for several consecutive generations, then reduce Gvns and increase the perturbation amplitude σ, otherwise restore the default value; fine-tune cGAN every few generations (using the solution in the current EP).

[0109] Step 7: Update Joint Fitness: Since the population has been updated, before the next cycle begins, return to Step 0 to recalculate the joint fitness of all individuals.

[0110] (III) Output: Upon termination, EP is the target solution set. Each solution contains: the path control point of the mobile platform, the trajectory control point of the robotic arm joint, and the corresponding weight vector λ.

[0111] The redundant mobile robotic arm heuristic linkage trajectory planning method described in this invention has been validated in typical material handling scenarios (such as warehouse stacking, tunnel shotcreting, and large component assembly). The speed coordination error between the mobile platform and the robotic arm is reduced compared to traditional decoupled planning methods, resulting in smoother end-effector movement and effectively avoiding material jitter and collision risks. Planning efficiency is improved, enabling the handling of higher-dimensional trajectory planning tasks with the same computing resources. Users can flexibly select the optimal trajectory based on site requirements (such as prioritizing energy saving, time saving, or obstacle avoidance), significantly improving operational flexibility.

Claims

1. A heuristic linkage trajectory planning method for a redundant mobile robotic arm, characterized in that, Includes the following steps: Step 1: Construct the upper-level population of the mobile platform path and the lower-level population of the robotic arm joint trajectory, with each individual encoded using parametric curves; Step 2: Decompose the multi-objective optimization problem of the mobile robotic arm into multiple sub-problems, each sub-problem corresponding to a set of weight vectors, and determine the neighborhood of each sub-problem; wherein, the Chebyshev decomposition method is used to transform the multi-objective problem into a single-objective sub-problem, and the Chebyshev value of sub-problem i is: L i (x u i ,x l i ,λ i )=max 1≤j≤m (λ ij ·z ij (x u i ,x l i ), where m is the number of targets, j is the index number of each target, and λ i Let x be the weight vector corresponding to subproblem i. u i ,x l i Let z be the upper-level and lower-level individuals corresponding to subproblem i. ij (x u i ,x l i ) is x u i ,x l i The normalized target value corresponding to the j-th objective; Step 3: The upper and lower populations evolve interactively under the constraint of sub-problem neighborhoods through a co-evolution mechanism. Each upper-level individual pairs with individuals in the same sub-problem neighborhood within the lower population to form a complete solution, and the population is updated based on the joint fitness. The joint fitness of the upper-level individuals is: , where P l ∩Q(i) represents the lower-level individual in the neighborhood, |Q(i)| is the size of the neighborhood, and x u best Let α be the current best upper-level individual for subproblem i, and let α be the balance factor. Step 3 also includes collaborative information exchange: every few generations, select several non-dominated solutions from the external archive, inject their upper-level parts into the lower-level population, replace the upper-level parts of the subproblem corresponding to the individual with the worst joint fitness in the lower level, and inject their lower-level parts into the upper-level population, replace the lower-level parts of the subproblem corresponding to the individual with the worst joint fitness in the upper level, and update the subproblem solutions after re-evaluation. Step 4: Dynamically adjust algorithm parameters based on population status during the evolution process; the neighborhood size adaptive method is as follows: every few generations, calculate the proportion ρ of non-dominated solutions in the population; if ρ < lower limit ρ low Then increase the neighborhood size if ρ > upper limit ρ high Then reduce the neighborhood size, adjust the step size to ±2, and limit it to a preset range; the local search intensity adaptive method is: if the optimal Chebyshev value does not improve for several consecutive generations, then reduce the execution interval of the variable neighborhood search and increase the perturbation amplitude; otherwise, restore the default value. Step 5: Refine the non-dominated solutions obtained through evolution by local search and inject the improved solutions into the corresponding subproblems; among them, the variable neighborhood search includes three neighborhood structures: single-point perturbation, two-point exchange, and path reconnection; for each non-dominated solution, try each neighborhood in turn, perform jitter and local descent, and if a dominant original solution or a non-dominated solution with a better Chebyshev value is found, update the subproblem solution and reset the neighborhood index; Step 6: Repeat steps 3 to 5 until the termination condition is met, and output the final solution set.

2. The method according to claim 1, characterized in that, In step 1, the path of the mobile platform is described by uniform cubic B-spline, and the control points include position and heading. The first and last control points are fixed, and the middle control points are variables to be optimized. The trajectory of each joint of the robotic arm is described by cubic B-spline, and the control points represent the joint angles. The first and last control points are determined by the starting and target joint angles, and the middle control points are variables to be optimized. The lower-level individual is composed of the middle control points of all joints connected in series.

3. The method according to claim 1, characterized in that, In step 4, the differential evolution parameter adaptation specifically involves: independently maintaining an archive of historical success scaling factors F and crossover probabilities CR for each subproblem; obtaining the current parameters in each generation through Cauchy and normal distribution sampling; storing successfully updated parameters in the archive; and updating the global mean μ based on the Lehmer mean. F and μ CR .

4. The method according to claim 1, characterized in that, It also includes constraint processing steps: the constraint dominance principle is used to compare the quality of solutions, the constraint violation degree (CV) is obtained by weighted summation of the maximum relative violation of each constraint, and all constraints are normalized.